plytix-pim-client


Nameplytix-pim-client JSON
Version 1.0.0 PyPI version JSON
download
home_pageNone
SummaryAn HTTP client in Python for Plytix PIM API.
upload_time2024-10-26 13:54:23
maintainerNone
docs_urlNone
authorNone
requires_python>=3.11
licenseNone
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"
}
        
Elapsed time: 0.35417s