python-amazon-paapi 6.1.0__tar.gz → 6.3.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (303) hide show
  1. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/CHANGELOG.md +17 -0
  2. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/PKG-INFO +1 -1
  3. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_creatorsapi/aio/api.py +14 -2
  4. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_creatorsapi/aio/auth.py +28 -11
  5. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_creatorsapi/api.py +4 -0
  6. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/__init__.py +1 -0
  7. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/api/default_api.py +15 -0
  8. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/api_client.py +6 -3
  9. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/auth/oauth2_config.py +20 -4
  10. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/auth/oauth2_token_manager.py +29 -16
  11. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/__init__.py +1 -0
  12. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/variation_summary.py +7 -1
  13. python_amazon_paapi-6.3.0/creatorsapi_python_sdk/models/variation_summary_price.py +101 -0
  14. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/docs/conf.py +1 -1
  15. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/pyproject.toml +1 -1
  16. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/tests/amazon_creatorsapi/aio/api_test.py +135 -0
  17. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/tests/amazon_creatorsapi/aio/auth_test.py +63 -4
  18. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/tests/amazon_creatorsapi/api_test.py +36 -0
  19. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/.agent/rules/code-style-guide.md +0 -0
  20. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/.env.template +0 -0
  21. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/.github/ISSUE_TEMPLATE/---bug-report.md +0 -0
  22. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/.github/ISSUE_TEMPLATE/---feature-request.md +0 -0
  23. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/.github/ISSUE_TEMPLATE/config.yml +0 -0
  24. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/.github/workflows/check.yml +0 -0
  25. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/.github/workflows/release.yml +0 -0
  26. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/.gitignore +0 -0
  27. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/.pre-commit-config.yaml +0 -0
  28. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/.readthedocs.yml +0 -0
  29. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/LICENSE +0 -0
  30. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/Makefile +0 -0
  31. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/README.md +0 -0
  32. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_creatorsapi/__init__.py +0 -0
  33. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_creatorsapi/aio/__init__.py +0 -0
  34. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_creatorsapi/aio/client.py +0 -0
  35. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_creatorsapi/core/__init__.py +0 -0
  36. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_creatorsapi/core/constants.py +0 -0
  37. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_creatorsapi/core/error_handling.py +0 -0
  38. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_creatorsapi/core/marketplaces.py +0 -0
  39. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_creatorsapi/core/parsers.py +0 -0
  40. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_creatorsapi/core/resources.py +0 -0
  41. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_creatorsapi/core/validation.py +0 -0
  42. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_creatorsapi/errors.py +0 -0
  43. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_creatorsapi/models.py +0 -0
  44. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/__init__.py +0 -0
  45. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/api.py +0 -0
  46. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/errors/__init__.py +0 -0
  47. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/errors/exceptions.py +0 -0
  48. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/helpers/__init__.py +0 -0
  49. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/helpers/arguments.py +0 -0
  50. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/helpers/generators.py +0 -0
  51. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/helpers/items.py +0 -0
  52. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/helpers/requests.py +0 -0
  53. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/models/__init__.py +0 -0
  54. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/models/browse_nodes_result.py +0 -0
  55. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/models/item_result.py +0 -0
  56. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/models/regions.py +0 -0
  57. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/models/search_result.py +0 -0
  58. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/models/variations_result.py +0 -0
  59. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/COPYING.txt +0 -0
  60. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/LICENSE.txt +0 -0
  61. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/NOTICE.txt +0 -0
  62. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/__init__.py +0 -0
  63. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/api/__init__.py +0 -0
  64. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/api/default_api.py +0 -0
  65. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/api_client.py +0 -0
  66. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/auth/__init__.py +0 -0
  67. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/auth/sign_helper.py +0 -0
  68. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/configuration.py +0 -0
  69. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/__init__.py +0 -0
  70. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/availability.py +0 -0
  71. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/big_decimal.py +0 -0
  72. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/browse_node.py +0 -0
  73. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/browse_node_ancestor.py +0 -0
  74. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/browse_node_child.py +0 -0
  75. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/browse_node_info.py +0 -0
  76. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/browse_nodes_result.py +0 -0
  77. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/by_line_info.py +0 -0
  78. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/classifications.py +0 -0
  79. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/condition.py +0 -0
  80. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/content_info.py +0 -0
  81. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/content_rating.py +0 -0
  82. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/contributor.py +0 -0
  83. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/customer_reviews.py +0 -0
  84. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/deal_details.py +0 -0
  85. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/delivery_flag.py +0 -0
  86. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/dimension_based_attribute.py +0 -0
  87. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/duration_price.py +0 -0
  88. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/error_data.py +0 -0
  89. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/external_ids.py +0 -0
  90. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/get_browse_nodes_request.py +0 -0
  91. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/get_browse_nodes_resource.py +0 -0
  92. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/get_browse_nodes_response.py +0 -0
  93. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/get_items_request.py +0 -0
  94. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/get_items_resource.py +0 -0
  95. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/get_items_response.py +0 -0
  96. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/get_variations_request.py +0 -0
  97. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/get_variations_resource.py +0 -0
  98. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/get_variations_response.py +0 -0
  99. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/image_size.py +0 -0
  100. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/image_type.py +0 -0
  101. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/images.py +0 -0
  102. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/item.py +0 -0
  103. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/item_id_type.py +0 -0
  104. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/item_info.py +0 -0
  105. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/items_result.py +0 -0
  106. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/language_type.py +0 -0
  107. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/languages.py +0 -0
  108. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/manufacture_info.py +0 -0
  109. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/max_price.py +0 -0
  110. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/merchant.py +0 -0
  111. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/min_price.py +0 -0
  112. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/min_reviews_rating.py +0 -0
  113. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/min_saving_percent.py +0 -0
  114. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/money.py +0 -0
  115. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/multi_valued_attribute.py +0 -0
  116. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/offer_availability.py +0 -0
  117. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/offer_availability_v2.py +0 -0
  118. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/offer_condition.py +0 -0
  119. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/offer_condition_note.py +0 -0
  120. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/offer_condition_v2.py +0 -0
  121. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/offer_count.py +0 -0
  122. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/offer_delivery_info.py +0 -0
  123. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/offer_listing.py +0 -0
  124. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/offer_listing_v2.py +0 -0
  125. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/offer_listings.py +0 -0
  126. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/offer_listings_v2.py +0 -0
  127. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/offer_loyalty_points.py +0 -0
  128. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/offer_loyalty_points_v2.py +0 -0
  129. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/offer_merchant_info.py +0 -0
  130. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/offer_merchant_info_v2.py +0 -0
  131. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/offer_price.py +0 -0
  132. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/offer_price_v2.py +0 -0
  133. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/offer_program_eligibility.py +0 -0
  134. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/offer_promotion.py +0 -0
  135. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/offer_saving_basis.py +0 -0
  136. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/offer_savings.py +0 -0
  137. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/offer_savings_v2.py +0 -0
  138. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/offer_shipping_charge.py +0 -0
  139. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/offer_sub_condition.py +0 -0
  140. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/offer_summary.py +0 -0
  141. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/offer_type.py +0 -0
  142. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/offers.py +0 -0
  143. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/offers_v2.py +0 -0
  144. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/partner_type.py +0 -0
  145. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/price.py +0 -0
  146. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/price_type.py +0 -0
  147. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/product_advertising_api_client_exception.py +0 -0
  148. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/product_advertising_api_service_exception.py +0 -0
  149. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/product_info.py +0 -0
  150. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/properties.py +0 -0
  151. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/rating.py +0 -0
  152. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/refinement.py +0 -0
  153. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/refinement_bin.py +0 -0
  154. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/rental_offer_listing.py +0 -0
  155. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/rental_offers.py +0 -0
  156. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/saving_basis_type.py +0 -0
  157. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/search_index.py +0 -0
  158. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/search_items_request.py +0 -0
  159. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/search_items_resource.py +0 -0
  160. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/search_items_response.py +0 -0
  161. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/search_refinements.py +0 -0
  162. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/search_result.py +0 -0
  163. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/single_boolean_valued_attribute.py +0 -0
  164. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/single_integer_valued_attribute.py +0 -0
  165. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/single_string_valued_attribute.py +0 -0
  166. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/sort_by.py +0 -0
  167. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/technical_info.py +0 -0
  168. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/trade_in_info.py +0 -0
  169. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/trade_in_price.py +0 -0
  170. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/unit_based_attribute.py +0 -0
  171. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/variation_attribute.py +0 -0
  172. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/variation_dimension.py +0 -0
  173. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/variation_summary.py +0 -0
  174. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/variations_result.py +0 -0
  175. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/models/website_sales_rank.py +0 -0
  176. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/sdk/rest.py +0 -0
  177. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/tools/__init__.py +0 -0
  178. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/amazon_paapi/tools/asin.py +0 -0
  179. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/api/__init__.py +0 -0
  180. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/api_response.py +0 -0
  181. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/auth/__init__.py +0 -0
  182. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/configuration.py +0 -0
  183. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/exceptions.py +0 -0
  184. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/access_denied_exception_response_content.py +0 -0
  185. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/access_denied_reason.py +0 -0
  186. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/availability.py +0 -0
  187. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/browse_node.py +0 -0
  188. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/browse_node_ancestor.py +0 -0
  189. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/browse_node_child.py +0 -0
  190. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/browse_node_info.py +0 -0
  191. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/browse_nodes_result.py +0 -0
  192. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/by_line_info.py +0 -0
  193. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/classifications.py +0 -0
  194. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/condition.py +0 -0
  195. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/content_info.py +0 -0
  196. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/content_rating.py +0 -0
  197. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/contributor.py +0 -0
  198. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/customer_reviews.py +0 -0
  199. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/deal_details.py +0 -0
  200. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/delivery_flag.py +0 -0
  201. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/dimension_based_attribute.py +0 -0
  202. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/error_data.py +0 -0
  203. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/external_ids.py +0 -0
  204. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/feed.py +0 -0
  205. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/get_browse_nodes_request_content.py +0 -0
  206. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/get_browse_nodes_resource.py +0 -0
  207. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/get_browse_nodes_response_content.py +0 -0
  208. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/get_feed_request_content.py +0 -0
  209. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/get_feed_response_content.py +0 -0
  210. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/get_items_request_content.py +0 -0
  211. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/get_items_resource.py +0 -0
  212. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/get_items_response_content.py +0 -0
  213. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/get_report_request_content.py +0 -0
  214. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/get_report_response_content.py +0 -0
  215. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/get_variations_request_content.py +0 -0
  216. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/get_variations_resource.py +0 -0
  217. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/get_variations_response_content.py +0 -0
  218. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/image_size.py +0 -0
  219. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/image_type.py +0 -0
  220. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/images.py +0 -0
  221. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/internal_server_exception_response_content.py +0 -0
  222. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/item.py +0 -0
  223. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/item_info.py +0 -0
  224. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/items_result.py +0 -0
  225. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/language_type.py +0 -0
  226. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/languages.py +0 -0
  227. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/list_feeds_response_content.py +0 -0
  228. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/list_reports_response_content.py +0 -0
  229. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/manufacture_info.py +0 -0
  230. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/money.py +0 -0
  231. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/multi_valued_attribute.py +0 -0
  232. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/offer_availability_v2.py +0 -0
  233. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/offer_condition_v2.py +0 -0
  234. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/offer_listing_v2.py +0 -0
  235. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/offer_loyalty_points_v2.py +0 -0
  236. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/offer_merchant_info_v2.py +0 -0
  237. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/offer_price_v2.py +0 -0
  238. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/offer_saving_basis.py +0 -0
  239. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/offer_savings.py +0 -0
  240. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/offer_type.py +0 -0
  241. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/offers_v2.py +0 -0
  242. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/product_info.py +0 -0
  243. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/rating.py +0 -0
  244. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/refinement.py +0 -0
  245. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/refinement_bin.py +0 -0
  246. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/report_metadata.py +0 -0
  247. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/resource_not_found_exception_response_content.py +0 -0
  248. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/saving_basis_type.py +0 -0
  249. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/search_items_request_content.py +0 -0
  250. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/search_items_resource.py +0 -0
  251. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/search_items_response_content.py +0 -0
  252. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/search_refinements.py +0 -0
  253. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/search_result.py +0 -0
  254. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/single_boolean_valued_attribute.py +0 -0
  255. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/single_integer_valued_attribute.py +0 -0
  256. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/single_string_valued_attribute.py +0 -0
  257. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/sort_by.py +0 -0
  258. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/technical_info.py +0 -0
  259. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/throttle_exception_response_content.py +0 -0
  260. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/trade_in_info.py +0 -0
  261. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/trade_in_price.py +0 -0
  262. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/unauthorized_exception_reason.py +0 -0
  263. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/unauthorized_exception_response_content.py +0 -0
  264. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/unit_based_attribute.py +0 -0
  265. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/validation_exception_field.py +0 -0
  266. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/validation_exception_reason.py +0 -0
  267. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/validation_exception_response_content.py +0 -0
  268. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/variation_attribute.py +0 -0
  269. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/variation_dimension.py +0 -0
  270. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/variations_result.py +0 -0
  271. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/models/website_sales_rank.py +0 -0
  272. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/py.typed +0 -0
  273. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/creatorsapi_python_sdk/rest.py +0 -0
  274. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/docs/Makefile +0 -0
  275. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/docs/_static/pa-paapi-icon.ico +0 -0
  276. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/docs/_static/pa-paapi-logo.png +0 -0
  277. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/docs/amazon_creatorsapi.aio.rst +0 -0
  278. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/docs/amazon_creatorsapi.core.rst +0 -0
  279. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/docs/amazon_creatorsapi.errors.rst +0 -0
  280. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/docs/amazon_creatorsapi.models.rst +0 -0
  281. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/docs/amazon_creatorsapi.rst +0 -0
  282. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/docs/index.rst +0 -0
  283. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/docs/make.bat +0 -0
  284. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/docs/pages/migration-guide-6.md +0 -0
  285. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/docs/pages/usage-guide.md +0 -0
  286. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/docs/requirements.txt +0 -0
  287. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/scripts/check_version.py +0 -0
  288. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/tests/__init__.py +0 -0
  289. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/tests/amazon_creatorsapi/__init__.py +0 -0
  290. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/tests/amazon_creatorsapi/aio/__init__.py +0 -0
  291. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/tests/amazon_creatorsapi/aio/client_test.py +0 -0
  292. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/tests/amazon_creatorsapi/aio/integration_test.py +0 -0
  293. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/tests/amazon_creatorsapi/integration_test.py +0 -0
  294. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/tests/amazon_creatorsapi/tools_test.py +0 -0
  295. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/tests/api_test.py +0 -0
  296. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/tests/errors_test.py +0 -0
  297. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/tests/helpers_arguments_test.py +0 -0
  298. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/tests/helpers_generators_test.py +0 -0
  299. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/tests/helpers_items_test.py +0 -0
  300. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/tests/helpers_requests_test.py +0 -0
  301. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/tests/integration_test.py +0 -0
  302. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/tests/offersv2_test.py +0 -0
  303. {python_amazon_paapi-6.1.0 → python_amazon_paapi-6.3.0}/tests/tools_test.py +0 -0
@@ -5,6 +5,23 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [6.3.0] - 2026-05-15
9
+
10
+ ### Added
11
+
12
+ - `delivery_flags` parameter in `search_items` for `amazon_creatorsapi` and `amazon_creatorsapi.aio`
13
+
14
+ ## [6.2.0] - 2026-03-12
15
+
16
+ ### Added
17
+
18
+ - LWA support in the `amazon_creatorsapi.aio` API layer
19
+
20
+ ### Changed
21
+
22
+ - Bumped `creatorsapi-python-sdk` from `1.1.2` to `1.2.0`
23
+ - Updated bundled SDK support to include LWA endpoints for v3.x
24
+
8
25
  ## [6.1.0] - 2026-02-09
9
26
 
10
27
  ### Added
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: python-amazon-paapi
3
- Version: 6.1.0
3
+ Version: 6.3.0
4
4
  Summary: Amazon Product Advertising API 5.0 wrapper for Python
5
5
  Project-URL: Homepage, https://github.com/sergioteula/python-amazon-paapi
6
6
  Project-URL: Repository, https://github.com/sergioteula/python-amazon-paapi
@@ -41,6 +41,7 @@ if TYPE_CHECKING:
41
41
 
42
42
  from amazon_creatorsapi.core.marketplaces import CountryCode
43
43
  from creatorsapi_python_sdk.models.condition import Condition
44
+ from creatorsapi_python_sdk.models.delivery_flag import DeliveryFlag
44
45
  from creatorsapi_python_sdk.models.sort_by import SortBy
45
46
 
46
47
  from creatorsapi_python_sdk.models.browse_node import BrowseNode
@@ -106,7 +107,8 @@ class AsyncAmazonCreatorsApi:
106
107
 
107
108
  Raises:
108
109
  InvalidArgumentError: If neither country nor marketplace is provided.
109
- ValueError: If version is not supported (valid versions: 2.1, 2.2, 2.3).
110
+ ValueError: If version is not supported (valid versions: 2.1, 2.2, 2.3,
111
+ 3.1, 3.2, 3.3).
110
112
 
111
113
  """
112
114
 
@@ -244,6 +246,7 @@ class AsyncAmazonCreatorsApi:
244
246
  item_page: int | None = None,
245
247
  condition: Condition | None = None,
246
248
  currency_of_preference: str | None = None,
249
+ delivery_flags: list[DeliveryFlag] | None = None,
247
250
  languages_of_preference: list[str] | None = None,
248
251
  max_price: int | None = None,
249
252
  min_price: int | None = None,
@@ -270,6 +273,7 @@ class AsyncAmazonCreatorsApi:
270
273
  item_page: Page of items to return (1-10). Defaults to 1.
271
274
  condition: Filter offers by condition type.
272
275
  currency_of_preference: ISO 4217 currency code for prices.
276
+ delivery_flags: Delivery programs to filter search results by.
273
277
  languages_of_preference: Languages in order of preference.
274
278
  max_price: Max price in lowest currency denomination.
275
279
  min_price: Min price in lowest currency denomination.
@@ -318,6 +322,8 @@ class AsyncAmazonCreatorsApi:
318
322
  request_body["condition"] = condition.value
319
323
  if currency_of_preference is not None:
320
324
  request_body["currencyOfPreference"] = currency_of_preference
325
+ if delivery_flags is not None:
326
+ request_body["deliveryFlags"] = [flag.value for flag in delivery_flags]
321
327
  if languages_of_preference is not None:
322
328
  request_body["languagesOfPreference"] = languages_of_preference
323
329
  if max_price is not None:
@@ -483,7 +489,7 @@ class AsyncAmazonCreatorsApi:
483
489
  token = await self._token_manager.get_token()
484
490
 
485
491
  headers = {
486
- "Authorization": f"Bearer {token}, Version {self._version}",
492
+ "Authorization": self._build_authorization_header(token),
487
493
  "Content-Type": "application/json; charset=utf-8",
488
494
  "x-marketplace": self.marketplace,
489
495
  }
@@ -501,6 +507,12 @@ class AsyncAmazonCreatorsApi:
501
507
 
502
508
  return response.json()
503
509
 
510
+ def _build_authorization_header(self, token: str) -> str:
511
+ """Build the version-appropriate Authorization header."""
512
+ if self._version.startswith("3."):
513
+ return f"Bearer {token}"
514
+ return f"Bearer {token}, Version {self._version}"
515
+
504
516
  def _handle_error_response(self, status_code: int, body: str) -> None:
505
517
  """Handle API error responses and raise appropriate exceptions.
506
518
 
@@ -21,7 +21,10 @@ except ImportError as exc: # pragma: no cover
21
21
 
22
22
 
23
23
  # OAuth2 constants
24
- SCOPE = "creatorsapi/default"
24
+ COGNITO_SCOPE = "creatorsapi/default"
25
+ LWA_SCOPE = "creatorsapi::default"
26
+ # Backward-compatible alias for existing v2.x users.
27
+ SCOPE = COGNITO_SCOPE
25
28
  GRANT_TYPE = "client_credentials"
26
29
 
27
30
  # Token expiration buffer in seconds (refresh 30s before actual expiration)
@@ -32,6 +35,9 @@ VERSION_ENDPOINTS = {
32
35
  "2.1": "https://creatorsapi.auth.us-east-1.amazoncognito.com/oauth2/token",
33
36
  "2.2": "https://creatorsapi.auth.eu-south-2.amazoncognito.com/oauth2/token",
34
37
  "2.3": "https://creatorsapi.auth.us-west-2.amazoncognito.com/oauth2/token",
38
+ "3.1": "https://api.amazon.com/auth/o2/token",
39
+ "3.2": "https://api.amazon.co.uk/auth/o2/token",
40
+ "3.3": "https://api.amazon.co.jp/auth/o2/token",
35
41
  }
36
42
 
37
43
 
@@ -97,6 +103,14 @@ class AsyncOAuth2TokenManager:
97
103
 
98
104
  return VERSION_ENDPOINTS[version]
99
105
 
106
+ def is_lwa(self) -> bool:
107
+ """Return whether this token manager uses the LWA auth flow."""
108
+ return self._version.startswith("3.")
109
+
110
+ def get_scope(self) -> str:
111
+ """Return the version-appropriate OAuth2 scope."""
112
+ return LWA_SCOPE if self.is_lwa() else COGNITO_SCOPE
113
+
100
114
  @property
101
115
  def lock(self) -> asyncio.Lock:
102
116
  """Lazy initialization of the asyncio.Lock.
@@ -168,20 +182,23 @@ class AsyncOAuth2TokenManager:
168
182
  "grant_type": GRANT_TYPE,
169
183
  "client_id": self._credential_id,
170
184
  "client_secret": self._credential_secret,
171
- "scope": SCOPE,
172
- }
173
-
174
- headers = {
175
- "Content-Type": "application/x-www-form-urlencoded",
185
+ "scope": self.get_scope(),
176
186
  }
177
187
 
178
188
  try:
179
189
  async with httpx.AsyncClient() as client:
180
- response = await client.post(
181
- self._auth_endpoint,
182
- data=request_data,
183
- headers=headers,
184
- )
190
+ if self.is_lwa():
191
+ response = await client.post(
192
+ self._auth_endpoint,
193
+ json=request_data,
194
+ headers={"Content-Type": "application/json"},
195
+ )
196
+ else:
197
+ response = await client.post(
198
+ self._auth_endpoint,
199
+ data=request_data,
200
+ headers={"Content-Type": "application/x-www-form-urlencoded"},
201
+ )
185
202
 
186
203
  if response.status_code != 200: # noqa: PLR2004
187
204
  self.clear_token()
@@ -40,6 +40,7 @@ if TYPE_CHECKING:
40
40
  from amazon_creatorsapi.core.marketplaces import CountryCode
41
41
  from creatorsapi_python_sdk.models.browse_node import BrowseNode
42
42
  from creatorsapi_python_sdk.models.condition import Condition
43
+ from creatorsapi_python_sdk.models.delivery_flag import DeliveryFlag
43
44
  from creatorsapi_python_sdk.models.item import Item
44
45
  from creatorsapi_python_sdk.models.search_result import SearchResult
45
46
  from creatorsapi_python_sdk.models.sort_by import SortBy
@@ -171,6 +172,7 @@ class AmazonCreatorsApi:
171
172
  item_page: int | None = None,
172
173
  condition: Condition | None = None,
173
174
  currency_of_preference: str | None = None,
175
+ delivery_flags: list[DeliveryFlag] | None = None,
174
176
  languages_of_preference: list[str] | None = None,
175
177
  max_price: int | None = None,
176
178
  min_price: int | None = None,
@@ -197,6 +199,7 @@ class AmazonCreatorsApi:
197
199
  item_page: Page of items to return (1-10). Defaults to 1.
198
200
  condition: Filter offers by condition type.
199
201
  currency_of_preference: ISO 4217 currency code for prices.
202
+ delivery_flags: Delivery programs to filter search results by.
200
203
  languages_of_preference: Languages in order of preference.
201
204
  max_price: Max price in lowest currency denomination.
202
205
  min_price: Min price in lowest currency denomination.
@@ -229,6 +232,7 @@ class AmazonCreatorsApi:
229
232
  itemPage=item_page,
230
233
  condition=condition,
231
234
  currencyOfPreference=currency_of_preference,
235
+ deliveryFlags=delivery_flags,
232
236
  languagesOfPreference=languages_of_preference,
233
237
  maxPrice=max_price,
234
238
  minPrice=min_price,
@@ -123,5 +123,6 @@ from creatorsapi_python_sdk.models.validation_exception_response_content import
123
123
  from creatorsapi_python_sdk.models.variation_attribute import VariationAttribute
124
124
  from creatorsapi_python_sdk.models.variation_dimension import VariationDimension
125
125
  from creatorsapi_python_sdk.models.variation_summary import VariationSummary
126
+ from creatorsapi_python_sdk.models.variation_summary_price import VariationSummaryPrice
126
127
  from creatorsapi_python_sdk.models.variations_result import VariationsResult
127
128
  from creatorsapi_python_sdk.models.website_sales_rank import WebsiteSalesRank
@@ -424,6 +424,7 @@ class DefaultApi:
424
424
  '401': "UnauthorizedExceptionResponseContent",
425
425
  '403': "AccessDeniedExceptionResponseContent",
426
426
  '404': "ResourceNotFoundExceptionResponseContent",
427
+ '429': "ThrottleExceptionResponseContent",
427
428
  '500': "InternalServerExceptionResponseContent",
428
429
  }
429
430
  response_data = self.api_client.call_api(
@@ -500,6 +501,7 @@ class DefaultApi:
500
501
  '401': "UnauthorizedExceptionResponseContent",
501
502
  '403': "AccessDeniedExceptionResponseContent",
502
503
  '404': "ResourceNotFoundExceptionResponseContent",
504
+ '429': "ThrottleExceptionResponseContent",
503
505
  '500': "InternalServerExceptionResponseContent",
504
506
  }
505
507
  response_data = self.api_client.call_api(
@@ -576,6 +578,7 @@ class DefaultApi:
576
578
  '401': "UnauthorizedExceptionResponseContent",
577
579
  '403': "AccessDeniedExceptionResponseContent",
578
580
  '404': "ResourceNotFoundExceptionResponseContent",
581
+ '429': "ThrottleExceptionResponseContent",
579
582
  '500': "InternalServerExceptionResponseContent",
580
583
  }
581
584
  response_data = self.api_client.call_api(
@@ -1026,6 +1029,7 @@ class DefaultApi:
1026
1029
  '401': "UnauthorizedExceptionResponseContent",
1027
1030
  '403': "AccessDeniedExceptionResponseContent",
1028
1031
  '404': "ResourceNotFoundExceptionResponseContent",
1032
+ '429': "ThrottleExceptionResponseContent",
1029
1033
  '500': "InternalServerExceptionResponseContent",
1030
1034
  }
1031
1035
  response_data = self.api_client.call_api(
@@ -1102,6 +1106,7 @@ class DefaultApi:
1102
1106
  '401': "UnauthorizedExceptionResponseContent",
1103
1107
  '403': "AccessDeniedExceptionResponseContent",
1104
1108
  '404': "ResourceNotFoundExceptionResponseContent",
1109
+ '429': "ThrottleExceptionResponseContent",
1105
1110
  '500': "InternalServerExceptionResponseContent",
1106
1111
  }
1107
1112
  response_data = self.api_client.call_api(
@@ -1178,6 +1183,7 @@ class DefaultApi:
1178
1183
  '401': "UnauthorizedExceptionResponseContent",
1179
1184
  '403': "AccessDeniedExceptionResponseContent",
1180
1185
  '404': "ResourceNotFoundExceptionResponseContent",
1186
+ '429': "ThrottleExceptionResponseContent",
1181
1187
  '500': "InternalServerExceptionResponseContent",
1182
1188
  }
1183
1189
  response_data = self.api_client.call_api(
@@ -1627,6 +1633,7 @@ class DefaultApi:
1627
1633
  '401': "UnauthorizedExceptionResponseContent",
1628
1634
  '403': "AccessDeniedExceptionResponseContent",
1629
1635
  '404': "ResourceNotFoundExceptionResponseContent",
1636
+ '429': "ThrottleExceptionResponseContent",
1630
1637
  '500': "InternalServerExceptionResponseContent",
1631
1638
  }
1632
1639
  response_data = self.api_client.call_api(
@@ -1699,6 +1706,7 @@ class DefaultApi:
1699
1706
  '401': "UnauthorizedExceptionResponseContent",
1700
1707
  '403': "AccessDeniedExceptionResponseContent",
1701
1708
  '404': "ResourceNotFoundExceptionResponseContent",
1709
+ '429': "ThrottleExceptionResponseContent",
1702
1710
  '500': "InternalServerExceptionResponseContent",
1703
1711
  }
1704
1712
  response_data = self.api_client.call_api(
@@ -1771,6 +1779,7 @@ class DefaultApi:
1771
1779
  '401': "UnauthorizedExceptionResponseContent",
1772
1780
  '403': "AccessDeniedExceptionResponseContent",
1773
1781
  '404': "ResourceNotFoundExceptionResponseContent",
1782
+ '429': "ThrottleExceptionResponseContent",
1774
1783
  '500': "InternalServerExceptionResponseContent",
1775
1784
  }
1776
1785
  response_data = self.api_client.call_api(
@@ -1899,6 +1908,8 @@ class DefaultApi:
1899
1908
  '400': "ValidationExceptionResponseContent",
1900
1909
  '401': "UnauthorizedExceptionResponseContent",
1901
1910
  '403': "AccessDeniedExceptionResponseContent",
1911
+ '404': "ResourceNotFoundExceptionResponseContent",
1912
+ '429': "ThrottleExceptionResponseContent",
1902
1913
  '500': "InternalServerExceptionResponseContent",
1903
1914
  }
1904
1915
  response_data = self.api_client.call_api(
@@ -1970,6 +1981,8 @@ class DefaultApi:
1970
1981
  '400': "ValidationExceptionResponseContent",
1971
1982
  '401': "UnauthorizedExceptionResponseContent",
1972
1983
  '403': "AccessDeniedExceptionResponseContent",
1984
+ '404': "ResourceNotFoundExceptionResponseContent",
1985
+ '429': "ThrottleExceptionResponseContent",
1973
1986
  '500': "InternalServerExceptionResponseContent",
1974
1987
  }
1975
1988
  response_data = self.api_client.call_api(
@@ -2041,6 +2054,8 @@ class DefaultApi:
2041
2054
  '400': "ValidationExceptionResponseContent",
2042
2055
  '401': "UnauthorizedExceptionResponseContent",
2043
2056
  '403': "AccessDeniedExceptionResponseContent",
2057
+ '404': "ResourceNotFoundExceptionResponseContent",
2058
+ '429': "ThrottleExceptionResponseContent",
2044
2059
  '500': "InternalServerExceptionResponseContent",
2045
2060
  }
2046
2061
  response_data = self.api_client.call_api(
@@ -107,7 +107,7 @@ class ApiClient:
107
107
  self.default_headers[header_name] = header_value
108
108
  self.cookie = cookie
109
109
  # Set default User-Agent.
110
- self.user_agent = 'creatorsapi-python-sdk/1.1.2'
110
+ self.user_agent = 'creatorsapi-python-sdk/1.2.0'
111
111
  self.client_side_validation = configuration.client_side_validation
112
112
 
113
113
  # OAuth2 properties
@@ -387,8 +387,11 @@ class ApiClient:
387
387
  self._token_manager = OAuth2TokenManager(config)
388
388
  # Get token (will use cached token if valid)
389
389
  token = self._token_manager.get_token()
390
- # Add Authorization headers
391
- header_params['Authorization'] = 'Bearer {}, Version {}'.format(token, self.version)
390
+ # Add Authorization headers - Version only for v2.x
391
+ if self.version.startswith("3."):
392
+ header_params['Authorization'] = 'Bearer {}'.format(token)
393
+ else:
394
+ header_params['Authorization'] = 'Bearer {}, Version {}'.format(token, self.version)
392
395
  except Exception as error:
393
396
  raise error
394
397
 
@@ -24,7 +24,8 @@ class OAuth2Config:
24
24
  """OAuth2 configuration class that manages version-specific cognito endpoints"""
25
25
 
26
26
  # Constants
27
- SCOPE = "creatorsapi/default"
27
+ COGNITO_SCOPE = "creatorsapi/default"
28
+ LWA_SCOPE = "creatorsapi::default"
28
29
  GRANT_TYPE = "client_credentials"
29
30
 
30
31
  def __init__(self, credential_id, credential_secret, version, auth_endpoint):
@@ -54,15 +55,30 @@ class OAuth2Config:
54
55
  if auth_endpoint and auth_endpoint.strip():
55
56
  return auth_endpoint
56
57
 
57
- # Fall back to version-based defaults
58
+ # Cognito endpoints (v2.x)
58
59
  if version == "2.1":
59
60
  return "https://creatorsapi.auth.us-east-1.amazoncognito.com/oauth2/token"
60
61
  elif version == "2.2":
61
62
  return "https://creatorsapi.auth.eu-south-2.amazoncognito.com/oauth2/token"
62
63
  elif version == "2.3":
63
64
  return "https://creatorsapi.auth.us-west-2.amazoncognito.com/oauth2/token"
65
+ # LWA endpoints (v3.x)
66
+ elif version == "3.1":
67
+ return "https://api.amazon.com/auth/o2/token"
68
+ elif version == "3.2":
69
+ return "https://api.amazon.co.uk/auth/o2/token"
70
+ elif version == "3.3":
71
+ return "https://api.amazon.co.jp/auth/o2/token"
64
72
  else:
65
- raise ValueError("Unsupported version: {}. Supported versions are: 2.1, 2.2, 2.3".format(version))
73
+ raise ValueError("Unsupported version: {}. Supported versions are: 2.1, 2.2, 2.3, 3.1, 3.2, 3.3".format(version))
74
+
75
+ def is_lwa(self):
76
+ """
77
+ Checks if this is an LWA (v3.x) configuration
78
+
79
+ :return: True if using LWA authentication
80
+ """
81
+ return self.version.startswith("3.")
66
82
 
67
83
  def get_token_endpoint(self, version):
68
84
  """
@@ -112,7 +128,7 @@ class OAuth2Config:
112
128
 
113
129
  :return: The OAuth2 scope
114
130
  """
115
- return OAuth2Config.SCOPE
131
+ return OAuth2Config.LWA_SCOPE if self.is_lwa() else OAuth2Config.COGNITO_SCOPE
116
132
 
117
133
  def get_grant_type(self):
118
134
  """
@@ -67,22 +67,35 @@ class OAuth2TokenManager:
67
67
  :raises Exception: If token refresh fails
68
68
  """
69
69
  try:
70
- request_data = {
71
- 'grant_type': self.config.get_grant_type(),
72
- 'client_id': self.config.get_credential_id(),
73
- 'client_secret': self.config.get_credential_secret(),
74
- 'scope': self.config.get_scope()
75
- }
76
-
77
- headers = {
78
- 'Content-Type': 'application/x-www-form-urlencoded'
79
- }
80
-
81
- response = requests.post(
82
- self.config.get_cognito_endpoint(),
83
- data=request_data,
84
- headers=headers
85
- )
70
+ if self.config.is_lwa():
71
+ # LWA (v3.x) uses JSON body
72
+ request_data = {
73
+ 'grant_type': self.config.get_grant_type(),
74
+ 'client_id': self.config.get_credential_id(),
75
+ 'client_secret': self.config.get_credential_secret(),
76
+ 'scope': self.config.get_scope()
77
+ }
78
+ headers = {'Content-Type': 'application/json'}
79
+ response = requests.post(
80
+ self.config.get_cognito_endpoint(),
81
+ json=request_data,
82
+ headers=headers
83
+ )
84
+ else:
85
+ # Cognito (v2.x) uses form-encoded
86
+ request_data = {
87
+ 'grant_type': self.config.get_grant_type(),
88
+ 'client_id': self.config.get_credential_id(),
89
+ 'client_secret': self.config.get_credential_secret(),
90
+ 'scope': self.config.get_scope()
91
+ }
92
+ headers = {'Content-Type': 'application/x-www-form-urlencoded'}
93
+ response = requests.post(
94
+ self.config.get_cognito_endpoint(),
95
+ data=request_data,
96
+ headers=headers
97
+ )
98
+
86
99
  if response.status_code != 200:
87
100
  raise Exception("OAuth2 token request failed with status {}: {}".format(response.status_code, response.text))
88
101
 
@@ -106,5 +106,6 @@ from creatorsapi_python_sdk.models.validation_exception_response_content import
106
106
  from creatorsapi_python_sdk.models.variation_attribute import VariationAttribute
107
107
  from creatorsapi_python_sdk.models.variation_dimension import VariationDimension
108
108
  from creatorsapi_python_sdk.models.variation_summary import VariationSummary
109
+ from creatorsapi_python_sdk.models.variation_summary_price import VariationSummaryPrice
109
110
  from creatorsapi_python_sdk.models.variations_result import VariationsResult
110
111
  from creatorsapi_python_sdk.models.website_sales_rank import WebsiteSalesRank
@@ -26,6 +26,7 @@ import json
26
26
  from pydantic import BaseModel, ConfigDict, Field, StrictFloat, StrictInt
27
27
  from typing import Any, ClassVar, Dict, List, Optional, Union
28
28
  from creatorsapi_python_sdk.models.variation_dimension import VariationDimension
29
+ from creatorsapi_python_sdk.models.variation_summary_price import VariationSummaryPrice
29
30
  from typing import Optional, Set
30
31
  from typing_extensions import Self
31
32
 
@@ -34,9 +35,10 @@ class VariationSummary(BaseModel):
34
35
  The container for Variations Summary response. It consists of metadata of variations response like page numbers, number of variations, Price range and Variation Dimensions.
35
36
  """ # noqa: E501
36
37
  page_count: Optional[Union[StrictFloat, StrictInt]] = Field(default=None, description="Number of pages in the variation result set.", alias="pageCount")
38
+ price: Optional[VariationSummaryPrice] = None
37
39
  variation_count: Optional[Union[StrictFloat, StrictInt]] = Field(default=None, description="Total number of variations available for the product. This represents the complete count of all child ASINs across all pages. Use this value along with pageCount to understand the full scope of available variations.", alias="variationCount")
38
40
  variation_dimensions: Optional[List[VariationDimension]] = Field(default=None, description="List of variation dimensions associated with the product. Variation dimensions define the attributes on which products vary (e.g., size, color). Each dimension includes: - Display name and locale for presentation - Dimension name (internal identifier) - List of all possible values for that dimension For example, a clothing item might have two dimensions: 'Size' with values ['S', 'M', 'L'] and 'Color' with values ['Red', 'Blue', 'Green']. These dimensions help users understand how variations differ from each other.", alias="variationDimensions")
39
- __properties: ClassVar[List[str]] = ["pageCount", "variationCount", "variationDimensions"]
41
+ __properties: ClassVar[List[str]] = ["pageCount", "price", "variationCount", "variationDimensions"]
40
42
 
41
43
  model_config = ConfigDict(
42
44
  populate_by_name=True,
@@ -76,6 +78,9 @@ class VariationSummary(BaseModel):
76
78
  exclude=excluded_fields,
77
79
  exclude_none=True,
78
80
  )
81
+ # override the default output from pydantic by calling `to_dict()` of price
82
+ if self.price:
83
+ _dict['price'] = self.price.to_dict()
79
84
  # override the default output from pydantic by calling `to_dict()` of each item in variation_dimensions (list)
80
85
  _items = []
81
86
  if self.variation_dimensions:
@@ -96,6 +101,7 @@ class VariationSummary(BaseModel):
96
101
 
97
102
  _obj = cls.model_validate({
98
103
  "pageCount": obj.get("pageCount"),
104
+ "price": VariationSummaryPrice.from_dict(obj["price"]) if obj.get("price") is not None else None,
99
105
  "variationCount": obj.get("variationCount"),
100
106
  "variationDimensions": [VariationDimension.from_dict(_item) for _item in obj["variationDimensions"]] if obj.get("variationDimensions") is not None else None
101
107
  })
@@ -0,0 +1,101 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Copyright 2025 Amazon.com, Inc. or its affiliates. All Rights Reserved.
5
+
6
+ Licensed under the Apache License, Version 2.0 (the "License").
7
+ You may not use this file except in compliance with the License.
8
+ A copy of the License is located at
9
+
10
+ http://www.apache.org/licenses/LICENSE-2.0
11
+
12
+ or in the "license" file accompanying this file. This file is distributed
13
+ on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
14
+ express or implied. See the License for the specific language governing
15
+ permissions and limitations under the License.
16
+
17
+ """ # noqa: E501
18
+
19
+
20
+
21
+ from __future__ import annotations
22
+ import pprint
23
+ import re # noqa: F401
24
+ import json
25
+
26
+ from pydantic import BaseModel, ConfigDict, Field
27
+ from typing import Any, ClassVar, Dict, List, Optional
28
+ from creatorsapi_python_sdk.models.money import Money
29
+ from typing import Optional, Set
30
+ from typing_extensions import Self
31
+
32
+ class VariationSummaryPrice(BaseModel):
33
+ """
34
+ The container for highest and lowest price for variations.
35
+ """ # noqa: E501
36
+ highest_price: Optional[Money] = Field(default=None, alias="highestPrice")
37
+ lowest_price: Optional[Money] = Field(default=None, alias="lowestPrice")
38
+ __properties: ClassVar[List[str]] = ["highestPrice", "lowestPrice"]
39
+
40
+ model_config = ConfigDict(
41
+ populate_by_name=True,
42
+ validate_assignment=True,
43
+ protected_namespaces=(),
44
+ )
45
+
46
+
47
+ def to_str(self) -> str:
48
+ """Returns the string representation of the model using alias"""
49
+ return pprint.pformat(self.model_dump(by_alias=True))
50
+
51
+ def to_json(self) -> str:
52
+ """Returns the JSON representation of the model using alias"""
53
+ return self.model_dump_json(by_alias=True, exclude_unset=True)
54
+
55
+ @classmethod
56
+ def from_json(cls, json_str: str) -> Optional[Self]:
57
+ """Create an instance of VariationSummaryPrice from a JSON string"""
58
+ return cls.from_dict(json.loads(json_str))
59
+
60
+ def to_dict(self) -> Dict[str, Any]:
61
+ """Return the dictionary representation of the model using alias.
62
+
63
+ This has the following differences from calling pydantic's
64
+ `self.model_dump(by_alias=True)`:
65
+
66
+ * `None` is only added to the output dict for nullable fields that
67
+ were set at model initialization. Other fields with value `None`
68
+ are ignored.
69
+ """
70
+ excluded_fields: Set[str] = set([
71
+ ])
72
+
73
+ _dict = self.model_dump(
74
+ by_alias=True,
75
+ exclude=excluded_fields,
76
+ exclude_none=True,
77
+ )
78
+ # override the default output from pydantic by calling `to_dict()` of highest_price
79
+ if self.highest_price:
80
+ _dict['highestPrice'] = self.highest_price.to_dict()
81
+ # override the default output from pydantic by calling `to_dict()` of lowest_price
82
+ if self.lowest_price:
83
+ _dict['lowestPrice'] = self.lowest_price.to_dict()
84
+ return _dict
85
+
86
+ @classmethod
87
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
88
+ """Create an instance of VariationSummaryPrice from a dict"""
89
+ if obj is None:
90
+ return None
91
+
92
+ if not isinstance(obj, dict):
93
+ return cls.model_validate(obj)
94
+
95
+ _obj = cls.model_validate({
96
+ "highestPrice": Money.from_dict(obj["highestPrice"]) if obj.get("highestPrice") is not None else None,
97
+ "lowestPrice": Money.from_dict(obj["lowestPrice"]) if obj.get("lowestPrice") is not None else None
98
+ })
99
+ return _obj
100
+
101
+
@@ -23,7 +23,7 @@ copyright = "2026, Sergio Abad"
23
23
  author = "Sergio Abad"
24
24
 
25
25
  # The full version, including alpha/beta/rc tags
26
- release = "6.1.0"
26
+ release = "6.3.0"
27
27
 
28
28
 
29
29
  # -- General configuration ---------------------------------------------------
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "python-amazon-paapi"
3
- version = "6.1.0"
3
+ version = "6.3.0"
4
4
  description = "Amazon Product Advertising API 5.0 wrapper for Python"
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.9"