Metadata-Version: 2.1
Name: vtexpy
Version: 0.0.0b35
Summary: Unofficial VTEX API's Python SDK
Home-page: https://github.com/lvieirajr/vtex-python
License: Apache
Keywords: vtex,sdk,client,api
Author: Luis Vieira
Author-email: lvieira@lvieira.com
Maintainer: Luis Vieira
Maintainer-email: lvieira@lvieira.com
Requires-Python: >=3.9,<3.14
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Apache Software License
Classifier: License :: Other/Proprietary License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Software Development :: Libraries
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Typing :: Typed
Requires-Dist: cachetools (>=5.0,<6.0)
Requires-Dist: httpx (>=0.17,<1.0)
Requires-Dist: limits (>=3.7,<4.0)
Requires-Dist: pydantic (>=2.0,<3.0)
Requires-Dist: python-dateutil (>=2.9,<3.0)
Requires-Dist: tenacity (>=8.0,<10.0)
Requires-Dist: typing-extensions (>=3.10,<5.0) ; python_version < "3.12"
Project-URL: Documentation, https://github.com/lvieirajr/vtex-python
Project-URL: Repository, https://github.com/lvieirajr/vtex-python
Description-Content-Type: text/markdown

# VTEXPY
[![PyPI Version](https://img.shields.io/pypi/v/vtexpy.svg)](https://pypi.python.org/pypi/vtexpy)

## Unofficial VTEX API's Python SDK

VTEXPY is an unofficial Python SDK designed to facilitate integration with the VTEX API.

Even though it is still tagged as beta, vtexpy has been in use by a _SaaS_ company in a
production environment for over a year, making millions of requests a day to the VTEX
API. The only reason why it is tagged as beta is that it is still under heavy
development and breaking changes are expected on the external API.

### Features

- Easy to use Python interface for calling VTEX API endpoints
- Response format standardization
- Custom exception handling
- Automatic request retrying
- Request logging

### Getting Started

#### Requirements

- Python >= 3.9, < 3.14

#### Installation

```bash
pip install vtexpy
```

#### Usage

If the API you want to call is not yet implemented, feel free to create an issue on the
VTEXPY Github repository and request it to be added.

```python
from vtex import VTEX, VTEXConfig

# Instantiate your VTEX API configuration:
vtex_config = VTEXConfig(
    account_name="<ACCOUNT_NAME>",
    app_key="<APP_KEY>",
    app_token="<APP_TOKEN>",
    # Other arguments such as: retrying, logging, etc...
)

# Instantiate the VTEX client with your configuration:
vtex_client = VTEX(config=vtex_config)

# Call one of the available APIs, e.g.:
account_response = vtex_client.license_manager.get_account()
list_sku_ids_response = vtex_client.catalog.list_sku_ids(page=1, page_size=1000)
list_orders_response = vtex_client.orders.list_orders(page=1, page_size=100)

# If the API you want to call is not yet implemented you can use the `custom` API.
response = vtex_client.custom.request(
    method="GET",
    environment="vtexcommercestable",
    endpoint="/api/catalog_system/pvt/commercialcondition/list",
    # Other arguments such as: query params, headers, json data, response class, etc...
)
```

