# XSELLCO-API Python Wrapper
[![CodeFactor](https://www.codefactor.io/repository/github/yberezkin/xsellco-api/badge)](https://www.codefactor.io/repository/github/yberezkin/xsellco-api)
[![pytest](https://github.com/yberezkin/xsellco-api/actions/workflows/python-pytest.yml/badge.svg)](https://github.com/yberezkin/xsellco-api/actions/workflows/python-pytest.yml)
[![codecov](https://codecov.io/gh/yberezkin/xsellco-api/graph/badge.svg?token=ZVJIDL2T54)](https://codecov.io/gh/yberezkin/xsellco-api)
This project provides a Python wrapper for interacting with the [Repricer.com](https://www.repricer.com/) (aka Xsellco) API, simplifying the integration of Repricer.com's API features into Python applications. It offers both synchronous and asynchronous support to accommodate different programming needs, thanks in part to the [httpx library](https://github.com/encode/httpx). Detailed API documentation can be found at [eDesk Developers](https://developers.edesk.com/).
## Getting Started
These instructions will give you a copy of the project up and running on
your local machine for development and testing purposes. See deployment
for notes on deploying the project on a live system.
### Installing
[![Badge](https://img.shields.io/pypi/v/xsellco-api?style=for-the-badge)](https://pypi.org/project/xsellco-api/)
pip install xsellco_api
### For Developing:
Clone the repository and install `requirements-dev.txt`:
---
### Usage
The library provides both synchronous (sync) and asynchronous (async_) interfaces for interacting with the Repricer.com API. Below are examples of how to use each interface:
#### Synchronous Usage
```python
from xsellco_api.sync import Repricers
repricer = Repricers(user_name='your_username', password='your_password')
repricer_data = repricer.get_report()
print(repricer_data) # list of dictionaries
# or
# All classes support context manager usage
with Repricers(user_name='your_username', password='your_password') as repricer:
repricer_data = repricer.get_report()
print(repricer_data) # list of dictionaries
```
#### Asynchronous Usage
```python
import asyncio
from xsellco_api.async_ import AsyncRepricers
async def main():
async with AsyncRepricers(user_name='your_username', password='your_password') as repricer:
repricer_data = await repricer.get_report()
print(repricer_data)
asyncio.run(main())
```
### Deprecation Notice
Please note that the xsellco_api.api module is deprecated and will be removed in future versions. Users are encouraged to switch to the sync or async_ modules for continued support.
## License
![License](https://img.shields.io/github/license/yberezkin/xsellco-api?style=for-the-badge)
Raw data
{
"_id": null,
"home_page": "https://github.com/yberezkin/xsellco-api",
"name": "xsellco-api",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.9",
"maintainer_email": "",
"keywords": "xsellco,repricer",
"author": "Yan Berezkin",
"author_email": "yan.berezkin@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/3f/f5/6594b06a9f9e3f5ec2244199f72a590348cb001c1bea675efbd129a52266/xsellco_api-0.0.9.tar.gz",
"platform": null,
"description": "# XSELLCO-API Python Wrapper\n\n[![CodeFactor](https://www.codefactor.io/repository/github/yberezkin/xsellco-api/badge)](https://www.codefactor.io/repository/github/yberezkin/xsellco-api)\n[![pytest](https://github.com/yberezkin/xsellco-api/actions/workflows/python-pytest.yml/badge.svg)](https://github.com/yberezkin/xsellco-api/actions/workflows/python-pytest.yml)\n[![codecov](https://codecov.io/gh/yberezkin/xsellco-api/graph/badge.svg?token=ZVJIDL2T54)](https://codecov.io/gh/yberezkin/xsellco-api)\n\n\nThis project provides a Python wrapper for interacting with the [Repricer.com](https://www.repricer.com/) (aka Xsellco) API, simplifying the integration of Repricer.com's API features into Python applications. It offers both synchronous and asynchronous support to accommodate different programming needs, thanks in part to the [httpx library](https://github.com/encode/httpx). Detailed API documentation can be found at [eDesk Developers](https://developers.edesk.com/).\n\n## Getting Started\n\nThese instructions will give you a copy of the project up and running on\nyour local machine for development and testing purposes. See deployment\nfor notes on deploying the project on a live system.\n\n### Installing\n[![Badge](https://img.shields.io/pypi/v/xsellco-api?style=for-the-badge)](https://pypi.org/project/xsellco-api/)\n\n pip install xsellco_api\n\n### For Developing:\nClone the repository and install `requirements-dev.txt`:\n\n---\n\n### Usage\n\nThe library provides both synchronous (sync) and asynchronous (async_) interfaces for interacting with the Repricer.com API. Below are examples of how to use each interface:\n\n#### Synchronous Usage\n```python\nfrom xsellco_api.sync import Repricers\n\nrepricer = Repricers(user_name='your_username', password='your_password')\nrepricer_data = repricer.get_report()\nprint(repricer_data) # list of dictionaries\n\n# or\n# All classes support context manager usage\nwith Repricers(user_name='your_username', password='your_password') as repricer:\n repricer_data = repricer.get_report()\n print(repricer_data) # list of dictionaries\n```\n#### Asynchronous Usage\n```python\nimport asyncio\nfrom xsellco_api.async_ import AsyncRepricers\n\nasync def main():\n async with AsyncRepricers(user_name='your_username', password='your_password') as repricer:\n repricer_data = await repricer.get_report()\n print(repricer_data)\n\nasyncio.run(main())\n```\n\n### Deprecation Notice\nPlease note that the xsellco_api.api module is deprecated and will be removed in future versions. Users are encouraged to switch to the sync or async_ modules for continued support.\n\n\n## License\n\n![License](https://img.shields.io/github/license/yberezkin/xsellco-api?style=for-the-badge)\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Wrapper around Repricer.com API (aka Xsellco)",
"version": "0.0.9",
"project_urls": {
"Bug Tracker": "https://github.com/yberezkin/xsellco-api/issues",
"Homepage": "https://github.com/yberezkin/xsellco-api"
},
"split_keywords": [
"xsellco",
"repricer"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "9fb685c2fb498ed181a9f5fb301cae18a50d873bea42af550c680cdccaf7d98f",
"md5": "3f0aef6133e1f7cc5205703a93e2217b",
"sha256": "ed80ce6dd494b4c692c6ee58c9808cf21780fb2a55f617e02c13415180b78702"
},
"downloads": -1,
"filename": "xsellco_api-0.0.9-py3-none-any.whl",
"has_sig": false,
"md5_digest": "3f0aef6133e1f7cc5205703a93e2217b",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.9",
"size": 16031,
"upload_time": "2024-01-22T03:53:25",
"upload_time_iso_8601": "2024-01-22T03:53:25.536773Z",
"url": "https://files.pythonhosted.org/packages/9f/b6/85c2fb498ed181a9f5fb301cae18a50d873bea42af550c680cdccaf7d98f/xsellco_api-0.0.9-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "3ff56594b06a9f9e3f5ec2244199f72a590348cb001c1bea675efbd129a52266",
"md5": "5dcb388da0f6b14dd6aa265909f1490b",
"sha256": "1aa61bde9e16b4ec85fe9b7b8a30b6f34958a7f97e5d51ff3a92ee097157da52"
},
"downloads": -1,
"filename": "xsellco_api-0.0.9.tar.gz",
"has_sig": false,
"md5_digest": "5dcb388da0f6b14dd6aa265909f1490b",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.9",
"size": 12163,
"upload_time": "2024-01-22T03:53:27",
"upload_time_iso_8601": "2024-01-22T03:53:27.130233Z",
"url": "https://files.pythonhosted.org/packages/3f/f5/6594b06a9f9e3f5ec2244199f72a590348cb001c1bea675efbd129a52266/xsellco_api-0.0.9.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-01-22 03:53:27",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "yberezkin",
"github_project": "xsellco-api",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [
{
"name": "requests",
"specs": [
[
">=",
"2.30.0"
]
]
},
{
"name": "httpx",
"specs": [
[
">=",
"0.18.0"
]
]
}
],
"tox": true,
"lcname": "xsellco-api"
}