# Product Advertising API 5.0 SDK for Python (v1)
https://webservices.amazon.com/paapi5/documentation/index.html
![pypi](https://img.shields.io/pypi/v/paapi5-python-sdk.svg)
This repository contains the official Product Advertising API 5.0 Python SDK called **paapi5-python-sdk** that allows you to access the [Product Advertising API](https://webservices.amazon.com/paapi5/documentation/index.html).
## Requirements
Python 2.7 and 3.4+
## Installation & Usage
### pip install
You can directly install it from pip using:
```sh
pip install paapi5-python-sdk
```
Or, you may also install directly from Github
```sh
pip install git+https://github.com/amzn/paapi5-python-sdk.git
```
(you may need to run `pip` with root permission: `sudo pip install git+https://github.com/amzn/paapi5-python-sdk.git`)
Then import the package:
```python
import paapi5_python_sdk
```
### Setuptools
Install via [Setuptools](http://pypi.python.org/pypi/setuptools).
```sh
python setup.py install --user
```
(or `sudo python setup.py install` to install the package for all users)
Then import the package:
```python
import paapi5_python_sdk
```
## Getting Started
Please follow the [installation procedure](#installation--usage) and then run the following:
Simple example for [SearchItems](https://webservices.amazon.com/paapi5/documentation/search-items.html) to discover Amazon products with the keyword 'Harry Potter' in All categories:
```python
from __future__ import print_function
from paapi5_python_sdk.api.default_api import DefaultApi
from paapi5_python_sdk.search_items_request import SearchItemsRequest
from paapi5_python_sdk.search_items_resource import SearchItemsResource
from paapi5_python_sdk.partner_type import PartnerType
from paapi5_python_sdk.rest import ApiException
def search_items():
""" Following are your credentials """
""" Please add your access key here """
access_key = "<YOUR ACCESS KEY>"
""" Please add your secret key here """
secret_key = "<YOUR SECRET KEY>"
""" Please add your partner tag (store/tracking id) here """
partner_tag = "<YOUR PARTNER TAG>"
""" PAAPI Host and Region to which you want to send request """
""" For more details refer: https://webservices.amazon.com/paapi5/documentation/common-request-parameters.html#host-and-region"""
host = "webservices.amazon.com"
region = "us-east-1"
""" API declaration """
default_api = DefaultApi(
access_key=access_key, secret_key=secret_key, host=host, region=region
)
""" Request initialization"""
""" Specify keywords """
keywords = "Harry Potter"
""" Specify the category in which search request is to be made """
""" For more details, refer: https://webservices.amazon.com/paapi5/documentation/use-cases/organization-of-items-on-amazon/search-index.html """
search_index = "All"
""" Specify item count to be returned in search result """
item_count = 1
""" Choose resources you want from SearchItemsResource enum """
""" For more details, refer: https://webservices.amazon.com/paapi5/documentation/search-items.html#resources-parameter """
search_items_resource = [
SearchItemsResource.IMAGES_PRIMARY_LARGE,
SearchItemsResource.ITEMINFO_TITLE,
SearchItemsResource.OFFERS_LISTINGS_PRICE,
]
""" Forming request """
try:
search_items_request = SearchItemsRequest(
partner_tag=partner_tag,
partner_type=PartnerType.ASSOCIATES,
keywords=keywords,
search_index=search_index,
item_count=item_count,
resources=search_items_resource,
)
except ValueError as exception:
print("Error in forming SearchItemsRequest: ", exception)
return
try:
""" Sending request """
response = default_api.search_items(search_items_request)
print("API called Successfully")
print("Complete Response:", response)
""" Parse response """
if response.search_result is not None:
print("Printing first item information in SearchResult:")
item_0 = response.search_result.items[0]
if item_0 is not None:
if item_0.asin is not None:
print("ASIN: ", item_0.asin)
if item_0.detail_page_url is not None:
print("DetailPageURL: ", item_0.detail_page_url)
if (
item_0.item_info is not None
and item_0.item_info.title is not None
and item_0.item_info.title.display_value is not None
):
print("Title: ", item_0.item_info.title.display_value)
if (
item_0.offers is not None
and item_0.offers.listings is not None
and item_0.offers.listings[0].price is not None
and item_0.offers.listings[0].price.display_amount is not None
):
print(
"Buying Price: ", item_0.offers.listings[0].price.display_amount
)
if response.errors is not None:
print("\nPrinting Errors:\nPrinting First Error Object from list of Errors")
print("Error code", response.errors[0].code)
print("Error message", response.errors[0].message)
except ApiException as exception:
print("Error calling PA-API 5.0!")
print("Status code:", exception.status)
print("Errors :", exception.body)
print("Request ID:", exception.headers["x-amzn-RequestId"])
except TypeError as exception:
print("TypeError :", exception)
except ValueError as exception:
print("ValueError :", exception)
except Exception as exception:
print("Exception :", exception)
search_items()
```
Complete documentation, installation instructions, and examples are available [here](https://webservices.amazon.com/paapi5/documentation/index.html).
## License
This SDK is distributed under the
[Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0),
see LICENSE.txt and NOTICE.txt for more information.
Raw data
{
"_id": null,
"home_page": "https://github.com/LeilaSchooley/paapi5-python-sdk",
"name": "amazon-api-forked",
"maintainer": null,
"docs_url": null,
"requires_python": null,
"maintainer_email": null,
"keywords": "ProductAdvertisingAPI, pa-api, paapi, amazon",
"author": null,
"author_email": null,
"download_url": "https://files.pythonhosted.org/packages/a5/56/a375b1e98b1e21d72c4c44891abb5e31aeba3833c0d2ea8a96ed1cb9487a/amazon-api-forked-1.0.0.tar.gz",
"platform": null,
"description": "# Product Advertising API 5.0 SDK for Python (v1)\n\n\nhttps://webservices.amazon.com/paapi5/documentation/index.html\n\n![pypi](https://img.shields.io/pypi/v/paapi5-python-sdk.svg)\n\nThis repository contains the official Product Advertising API 5.0 Python SDK called **paapi5-python-sdk** that allows you to access the [Product Advertising API](https://webservices.amazon.com/paapi5/documentation/index.html).\n\n## Requirements\n\nPython 2.7 and 3.4+\n\n## Installation & Usage\n\n### pip install\n\nYou can directly install it from pip using:\n\n```sh\npip install paapi5-python-sdk\n```\n\nOr, you may also install directly from Github\n\n```sh\npip install git+https://github.com/amzn/paapi5-python-sdk.git\n```\n(you may need to run `pip` with root permission: `sudo pip install git+https://github.com/amzn/paapi5-python-sdk.git`)\n\nThen import the package:\n```python\nimport paapi5_python_sdk \n```\n\n### Setuptools\n\nInstall via [Setuptools](http://pypi.python.org/pypi/setuptools).\n\n```sh\npython setup.py install --user\n```\n(or `sudo python setup.py install` to install the package for all users)\n\nThen import the package:\n```python\nimport paapi5_python_sdk\n```\n\n## Getting Started\n\nPlease follow the [installation procedure](#installation--usage) and then run the following:\n\nSimple example for [SearchItems](https://webservices.amazon.com/paapi5/documentation/search-items.html) to discover Amazon products with the keyword 'Harry Potter' in All categories:\n\n```python\nfrom __future__ import print_function\n\nfrom paapi5_python_sdk.api.default_api import DefaultApi\nfrom paapi5_python_sdk.search_items_request import SearchItemsRequest\nfrom paapi5_python_sdk.search_items_resource import SearchItemsResource\nfrom paapi5_python_sdk.partner_type import PartnerType\nfrom paapi5_python_sdk.rest import ApiException\n \n \ndef search_items():\n\n \"\"\" Following are your credentials \"\"\"\n \"\"\" Please add your access key here \"\"\"\n access_key = \"<YOUR ACCESS KEY>\"\n\n \"\"\" Please add your secret key here \"\"\"\n secret_key = \"<YOUR SECRET KEY>\"\n\n \"\"\" Please add your partner tag (store/tracking id) here \"\"\"\n partner_tag = \"<YOUR PARTNER TAG>\"\n\n \"\"\" PAAPI Host and Region to which you want to send request \"\"\"\n \"\"\" For more details refer: https://webservices.amazon.com/paapi5/documentation/common-request-parameters.html#host-and-region\"\"\"\n host = \"webservices.amazon.com\"\n region = \"us-east-1\"\n\n \"\"\" API declaration \"\"\"\n default_api = DefaultApi(\n access_key=access_key, secret_key=secret_key, host=host, region=region\n )\n\n \"\"\" Request initialization\"\"\"\n\n \"\"\" Specify keywords \"\"\"\n keywords = \"Harry Potter\"\n\n \"\"\" Specify the category in which search request is to be made \"\"\"\n \"\"\" For more details, refer: https://webservices.amazon.com/paapi5/documentation/use-cases/organization-of-items-on-amazon/search-index.html \"\"\"\n search_index = \"All\"\n\n \"\"\" Specify item count to be returned in search result \"\"\"\n item_count = 1\n\n \"\"\" Choose resources you want from SearchItemsResource enum \"\"\"\n \"\"\" For more details, refer: https://webservices.amazon.com/paapi5/documentation/search-items.html#resources-parameter \"\"\"\n search_items_resource = [\n SearchItemsResource.IMAGES_PRIMARY_LARGE,\n SearchItemsResource.ITEMINFO_TITLE,\n SearchItemsResource.OFFERS_LISTINGS_PRICE,\n ]\n\n \"\"\" Forming request \"\"\"\n try:\n search_items_request = SearchItemsRequest(\n partner_tag=partner_tag,\n partner_type=PartnerType.ASSOCIATES,\n keywords=keywords,\n search_index=search_index,\n item_count=item_count,\n resources=search_items_resource,\n )\n except ValueError as exception:\n print(\"Error in forming SearchItemsRequest: \", exception)\n return\n\n try:\n \"\"\" Sending request \"\"\"\n response = default_api.search_items(search_items_request)\n\n print(\"API called Successfully\")\n print(\"Complete Response:\", response)\n\n \"\"\" Parse response \"\"\"\n if response.search_result is not None:\n print(\"Printing first item information in SearchResult:\")\n item_0 = response.search_result.items[0]\n if item_0 is not None:\n if item_0.asin is not None:\n print(\"ASIN: \", item_0.asin)\n if item_0.detail_page_url is not None:\n print(\"DetailPageURL: \", item_0.detail_page_url)\n if (\n item_0.item_info is not None\n and item_0.item_info.title is not None\n and item_0.item_info.title.display_value is not None\n ):\n print(\"Title: \", item_0.item_info.title.display_value)\n if (\n item_0.offers is not None\n and item_0.offers.listings is not None\n and item_0.offers.listings[0].price is not None\n and item_0.offers.listings[0].price.display_amount is not None\n ):\n print(\n \"Buying Price: \", item_0.offers.listings[0].price.display_amount\n )\n if response.errors is not None:\n print(\"\\nPrinting Errors:\\nPrinting First Error Object from list of Errors\")\n print(\"Error code\", response.errors[0].code)\n print(\"Error message\", response.errors[0].message)\n\n except ApiException as exception:\n print(\"Error calling PA-API 5.0!\")\n print(\"Status code:\", exception.status)\n print(\"Errors :\", exception.body)\n print(\"Request ID:\", exception.headers[\"x-amzn-RequestId\"])\n\n except TypeError as exception:\n print(\"TypeError :\", exception)\n\n except ValueError as exception:\n print(\"ValueError :\", exception)\n\n except Exception as exception:\n print(\"Exception :\", exception)\n \nsearch_items()\n```\nComplete documentation, installation instructions, and examples are available [here](https://webservices.amazon.com/paapi5/documentation/index.html).\n\n\n## License\n\nThis SDK is distributed under the\n[Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0),\nsee LICENSE.txt and NOTICE.txt for more information.\n",
"bugtrack_url": null,
"license": "Apache License 2.0",
"summary": "ProductAdvertisingAPI 5.0 Python SDK",
"version": "1.0.0",
"project_urls": {
"Homepage": "https://github.com/LeilaSchooley/paapi5-python-sdk"
},
"split_keywords": [
"productadvertisingapi",
" pa-api",
" paapi",
" amazon"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "8d32028793399dcab0ddff45fc8083eccd3c49c08389154815aa716c342a8354",
"md5": "0e0a0820aa6d5100b9b0b7d695bf0011",
"sha256": "723dca58575c18a0112685cd2a1b0635eddf47603cbc498ed4667eb8498c8f24"
},
"downloads": -1,
"filename": "amazon_api_forked-1.0.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "0e0a0820aa6d5100b9b0b7d695bf0011",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 336638,
"upload_time": "2024-05-16T14:21:54",
"upload_time_iso_8601": "2024-05-16T14:21:54.594085Z",
"url": "https://files.pythonhosted.org/packages/8d/32/028793399dcab0ddff45fc8083eccd3c49c08389154815aa716c342a8354/amazon_api_forked-1.0.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "a556a375b1e98b1e21d72c4c44891abb5e31aeba3833c0d2ea8a96ed1cb9487a",
"md5": "6aac77a8c942fe13baef5ae3fcd9e57d",
"sha256": "491f542568b8891c42ef86e6501bdcf1cdfa257d351c90914a46e1a7a8d77198"
},
"downloads": -1,
"filename": "amazon-api-forked-1.0.0.tar.gz",
"has_sig": false,
"md5_digest": "6aac77a8c942fe13baef5ae3fcd9e57d",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 90399,
"upload_time": "2024-05-16T14:21:56",
"upload_time_iso_8601": "2024-05-16T14:21:56.867818Z",
"url": "https://files.pythonhosted.org/packages/a5/56/a375b1e98b1e21d72c4c44891abb5e31aeba3833c0d2ea8a96ed1cb9487a/amazon-api-forked-1.0.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-05-16 14:21:56",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "LeilaSchooley",
"github_project": "paapi5-python-sdk",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"requirements": [],
"tox": true,
"lcname": "amazon-api-forked"
}