Skip to main content

PyMagento

PyPI version PyPI downloads

PyMagento is a Python client for the Magento 2 API. Its goal is to provide an easy-to-use Pythonic interface to the Magento 2 API, while being lightweight and extendable.

Features:

  • Lightweight: entities are returned as plain dictionaries; there is no custom Order or Product class
  • Easy to extend: subclass magento.Magento and add your own methods
  • Transparent pagination: functions that make paginated queries return lazy iterables (generators)
  • Fully typed: all functions have type hints
  • Production-ready: at Bixoto, we use PyMagento in production since 2020
  • Python 3.10+ support
  • MIT license

Note: PyMagento is not affiliated to nor endorsed by Adobe or the Magento team.

Install

Pip

python -m pip install pymagento

uv

uv add pymagento

Poetry

poetry add pymagento

Usage

import magento

# To get a token, create an integration and copy the "Access Token"
client = magento.Magento(base_url="...", token="...", scope="all")

product = client.get_product("SKU123")
print(magento.get_custom_attribute(product, "description"))

# Get orders by status
for order in client.get_orders(status="processing"):
    print(order["increment_id"], order["grand_total"])

# Make more complex queries
query = magento.make_search_query([
    [("customer_email", "billgates@example.com", "eq")],
    [("status", "complete", "eq")],
])

for order in client.get_orders(query=query, limit=10):
    print(order["increment_id"], len(order["items"]))

For more information, read the docs.

Note: not all endpoints are implemented with dedicated methods. You can call them with client.get_json_api("/V1/...") for GET endpoints and client.post_json_api("/V1/...", json=...).

License

Copyright 2020-2025 Bixoto. See the LICENSE.

Other projects

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pymagento-2.14.0.tar.gz (26.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pymagento-2.14.0-py3-none-any.whl (28.9 kB view details)

Uploaded Python 3

File details

Details for the file pymagento-2.14.0.tar.gz.

File metadata

  • Download URL: pymagento-2.14.0.tar.gz
  • Upload date:
  • Size: 26.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.33 {"installer":{"name":"uv","version":"0.11.33","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pymagento-2.14.0.tar.gz
Algorithm Hash digest
SHA256 3ff7cb7ffa0ff4fe532f8c20074970bb57b88a254de7cd2f6923dcace99a75ad
MD5 0542fabc816871e06e78d46256802ef2
BLAKE2b-256 3c53a2b732e40f45babc867e542d5cd90f775472c95f78e35d7f57a5c3dde58e

See more details on using hashes here.

File details

Details for the file pymagento-2.14.0-py3-none-any.whl.

File metadata

  • Download URL: pymagento-2.14.0-py3-none-any.whl
  • Upload date:
  • Size: 28.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.33 {"installer":{"name":"uv","version":"0.11.33","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for pymagento-2.14.0-py3-none-any.whl
Algorithm Hash digest
SHA256 296c4df3e66f2a02607373b887a3ef9a29de619bc183bcb01705b27f16d46e9f
MD5 62b134830302c641b620a4b5a1fc8a56
BLAKE2b-256 27f58cf258e3cd8a67e557984c8b26077c4d4947aa7ee83a1d19454b1d3a3fff

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page