Name | plytix-pim-client JSON |
Version |
1.0.0
JSON |
| download |
home_page | None |
Summary | An HTTP client in Python for Plytix PIM API. |
upload_time | 2024-10-26 13:54:23 |
maintainer | None |
docs_url | None |
author | None |
requires_python | >=3.11 |
license | None |
keywords |
|
VCS |
|
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# plytix-pim-client
An HTTP client in Python for Plytix PIM API.
![PyPI](https://img.shields.io/pypi/v/plytix-pim-client?label=pypi%20package)
![PyPI - Downloads](https://img.shields.io/pypi/dm/plytix-pim-client)
![GitHub Action Publish to PyPI](https://github.com/TheTelematic/plytix-pim-client/actions/workflows/publish-to-pypi.yml/badge.svg)
API documentation: https://apidocs.plytix.com
![Example](https://raw.githubusercontent.com/TheTelematic/plytix-pim-client/main/doc/images/example.png)
## Installation
```bash
pip install plytix-pim-client
```
PyPI: https://pypi.org/project/plytix-pim-client/
## Requirements
- Python 3.11+
## Features
- Synchronous and asynchronous clients
- Automatic token refresh
- Automatic rate limiting
- Automatic pagination
- Automatic error handling
- Automatic request retries
- API docs fully covered*
- Configurable Response Cooldown
## Usage
### Synchronous client
```python
from plytix_pim_client import PlytixSync
# Set the environment variables PLYTIX_API_KEY and PLYTIX_API_PASSWORD
plytix = PlytixSync()
```
### Asynchronous client
```python
from plytix_pim_client import PlytixAsync
# Set the environment variables PLYTIX_API_KEY and PLYTIX_API_PASSWORD
plytix = PlytixAsync()
```
All methods are available in both synchronous and asynchronous clients with the same I/O interface.
For the sake of simplicity, only the synchronous client is shown in the examples.
### Available resources
Any of the following resources can be accessed through the client:
- `products`
- `assets`
- `attributes`
- `groups`
- `categories`
- `families`
- `attributes`
- `relationships`
- `variants`
- `assets`
- `categories`
Each resource has specific methods to interact with the API.
If you use an IDE with code completion, you can see all available methods.
If you find a method that is not available or confusing, please open an issue.
Also, you may have a look to the integration tests for more examples.
## Examples
### Create a product
```python
from plytix_pim_client import PlytixSync
plytix = PlytixSync()
plytix.products.create_product(sku="My First Product", label="My First Product")
```
### Create a product family
```python
from plytix_pim_client import PlytixSync
plytix = PlytixSync()
plytix.products.families.create_family(name="My First Family")
```
## * Known issues
Check out the [open Issues with "bug" label](https://github.com/TheTelematic/plytix-pim-client/issues?q=is%3Aopen+is%3Aissue+label%3Abug).
Raw data
{
"_id": null,
"home_page": null,
"name": "plytix-pim-client",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.11",
"maintainer_email": null,
"keywords": null,
"author": null,
"author_email": "Arturo Parra <arturoteleco95@proton.me>",
"download_url": "https://files.pythonhosted.org/packages/1c/89/ad30778dff74b07d6efbfe616390e818cdbf34e4d1ecfcd2afd0e76cc19a/plytix_pim_client-1.0.0.tar.gz",
"platform": null,
"description": "# plytix-pim-client\nAn HTTP client in Python for Plytix PIM API.\n\n![PyPI](https://img.shields.io/pypi/v/plytix-pim-client?label=pypi%20package)\n![PyPI - Downloads](https://img.shields.io/pypi/dm/plytix-pim-client)\n![GitHub Action Publish to PyPI](https://github.com/TheTelematic/plytix-pim-client/actions/workflows/publish-to-pypi.yml/badge.svg)\n\nAPI documentation: https://apidocs.plytix.com\n\n![Example](https://raw.githubusercontent.com/TheTelematic/plytix-pim-client/main/doc/images/example.png)\n\n## Installation\n```bash\npip install plytix-pim-client\n```\nPyPI: https://pypi.org/project/plytix-pim-client/\n\n## Requirements\n- Python 3.11+\n\n## Features\n- Synchronous and asynchronous clients\n- Automatic token refresh\n- Automatic rate limiting\n- Automatic pagination\n- Automatic error handling\n- Automatic request retries\n- API docs fully covered*\n- Configurable Response Cooldown\n\n## Usage\n\n### Synchronous client\n\n```python\nfrom plytix_pim_client import PlytixSync\n\n# Set the environment variables PLYTIX_API_KEY and PLYTIX_API_PASSWORD\nplytix = PlytixSync()\n```\n\n### Asynchronous client\n\n```python\nfrom plytix_pim_client import PlytixAsync\n\n# Set the environment variables PLYTIX_API_KEY and PLYTIX_API_PASSWORD\nplytix = PlytixAsync()\n```\n\nAll methods are available in both synchronous and asynchronous clients with the same I/O interface.\nFor the sake of simplicity, only the synchronous client is shown in the examples.\n\n### Available resources\nAny of the following resources can be accessed through the client:\n- `products`\n - `assets`\n - `attributes`\n - `groups`\n - `categories`\n - `families`\n - `attributes`\n - `relationships`\n - `variants`\n- `assets`\n - `categories`\n\nEach resource has specific methods to interact with the API. \nIf you use an IDE with code completion, you can see all available methods.\nIf you find a method that is not available or confusing, please open an issue.\nAlso, you may have a look to the integration tests for more examples.\n\n## Examples\n### Create a product\n\n```python\nfrom plytix_pim_client import PlytixSync\n\nplytix = PlytixSync()\n\nplytix.products.create_product(sku=\"My First Product\", label=\"My First Product\")\n```\n\n### Create a product family\n\n```python\nfrom plytix_pim_client import PlytixSync\n\nplytix = PlytixSync()\n\nplytix.products.families.create_family(name=\"My First Family\")\n```\n\n\n## * Known issues\nCheck out the [open Issues with \"bug\" label](https://github.com/TheTelematic/plytix-pim-client/issues?q=is%3Aopen+is%3Aissue+label%3Abug).\n",
"bugtrack_url": null,
"license": null,
"summary": "An HTTP client in Python for Plytix PIM API.",
"version": "1.0.0",
"project_urls": {
"Homepage": "https://github.com/TheTelematic/plytix-pim-client",
"Issues": "https://github.com/TheTelematic/plytix-pim-client/issues"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "2d3f63f6855e18064ed9a9774b2b41455ae682426d613c5087fde4b037bc6b8c",
"md5": "5d89d04683bbdb9d00cbcb75e1fa55c0",
"sha256": "089ce2de4553bbfd03ea2956bd833e38ca3f6aa4dcbb0d989c059f2df2d61280"
},
"downloads": -1,
"filename": "plytix_pim_client-1.0.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "5d89d04683bbdb9d00cbcb75e1fa55c0",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.11",
"size": 81044,
"upload_time": "2024-10-26T13:54:22",
"upload_time_iso_8601": "2024-10-26T13:54:22.067434Z",
"url": "https://files.pythonhosted.org/packages/2d/3f/63f6855e18064ed9a9774b2b41455ae682426d613c5087fde4b037bc6b8c/plytix_pim_client-1.0.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "1c89ad30778dff74b07d6efbfe616390e818cdbf34e4d1ecfcd2afd0e76cc19a",
"md5": "a993d5646944341e2122066a35092c5e",
"sha256": "f9a4b35375c6fdfdad994b51ae6cfb0a29ad19937d222867c2f807fe7c994357"
},
"downloads": -1,
"filename": "plytix_pim_client-1.0.0.tar.gz",
"has_sig": false,
"md5_digest": "a993d5646944341e2122066a35092c5e",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.11",
"size": 30999,
"upload_time": "2024-10-26T13:54:23",
"upload_time_iso_8601": "2024-10-26T13:54:23.866866Z",
"url": "https://files.pythonhosted.org/packages/1c/89/ad30778dff74b07d6efbfe616390e818cdbf34e4d1ecfcd2afd0e76cc19a/plytix_pim_client-1.0.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-10-26 13:54:23",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "TheTelematic",
"github_project": "plytix-pim-client",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [],
"lcname": "plytix-pim-client"
}