python-amazon-sp-api 1.9.46__tar.gz → 1.9.48__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.
- {python_amazon_sp_api-1.9.46/python_amazon_sp_api.egg-info → python_amazon_sp_api-1.9.48}/PKG-INFO +1 -1
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48/python_amazon_sp_api.egg-info}/PKG-INFO +1 -1
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/python_amazon_sp_api.egg-info/SOURCES.txt +1 -20
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/python_amazon_sp_api.egg-info/top_level.txt +0 -1
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/setup.py +1 -3
- python_amazon_sp_api-1.9.48/sp_api/__version__.py +1 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/fulfillment_inbound/fulfillment_inbound.py +33 -0
- python_amazon_sp_api-1.9.46/sp_api/__version__.py +0 -1
- python_amazon_sp_api-1.9.46/tests/__init__.py +0 -0
- python_amazon_sp_api-1.9.46/tests/api/__init__.py +0 -0
- python_amazon_sp_api-1.9.46/tests/api/finances/__init__.py +0 -0
- python_amazon_sp_api-1.9.46/tests/api/finances/test_finances.py +0 -19
- python_amazon_sp_api-1.9.46/tests/api/notifications/__init__.py +0 -0
- python_amazon_sp_api-1.9.46/tests/api/notifications/test_notifications.py +0 -26
- python_amazon_sp_api-1.9.46/tests/api/orders/__init__.py +0 -0
- python_amazon_sp_api-1.9.46/tests/api/orders/test_orders.py +0 -122
- python_amazon_sp_api-1.9.46/tests/api/product_fees/__init__.py +0 -0
- python_amazon_sp_api-1.9.46/tests/api/product_fees/product_fees.py +0 -49
- python_amazon_sp_api-1.9.46/tests/api/reports/__init__.py +0 -0
- python_amazon_sp_api-1.9.46/tests/api/reports/test_reports.py +0 -127
- python_amazon_sp_api-1.9.46/tests/api/sellers/__init__.py +0 -0
- python_amazon_sp_api-1.9.46/tests/api/sellers/test_sellers.py +0 -0
- python_amazon_sp_api-1.9.46/tests/client/__init__.py +0 -0
- python_amazon_sp_api-1.9.46/tests/client/test_auth.py +0 -59
- python_amazon_sp_api-1.9.46/tests/client/test_base.py +0 -163
- python_amazon_sp_api-1.9.46/tests/client/test_credential_provider.py +0 -45
- python_amazon_sp_api-1.9.46/tests/client/test_helpers.py +0 -142
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/LICENSE +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/README.md +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/make_endpoint/make_endpoint +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/python_amazon_sp_api.egg-info/dependency_links.txt +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/python_amazon_sp_api.egg-info/requires.txt +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/setup.cfg +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/__init__.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/__init__.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/amazon_warehousing_and_distribu/__init__.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/amazon_warehousing_and_distribu/amazon_warehousing_and_distribu.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/aplus_content/__init__.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/aplus_content/aplus_content.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/application_integrations/__init__.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/application_integrations/application_integrations.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/application_management/__init__.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/application_management/application_management.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/authorization/__init__.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/authorization/authorization.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/catalog/__init__.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/catalog/catalog.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/catalog_items/__init__.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/catalog_items/catalog_items.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/data_kiosk/__init__.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/data_kiosk/data_kiosk.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/easy_ship/__init__.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/easy_ship/easy_ship.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/fba_inbound_eligibility/__init__.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/fba_inbound_eligibility/fba_inbound_eligibility.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/fba_small_and_light/__init__.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/fba_small_and_light/fba_small_and_light.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/feeds/__init__.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/feeds/feeds.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/finances/__init__.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/finances/finances.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/fulfillment_inbound/__init__.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/fulfillment_outbound/__init__.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/fulfillment_outbound/fulfillment_outbound.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/inventories/__init__.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/inventories/inventories.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/listings_items/__init__.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/listings_items/listings_items.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/listings_restrictions/__init__.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/listings_restrictions/listings_restrictions.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/merchant_fulfillment/__init__.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/merchant_fulfillment/merchant_fulfillment.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/messaging/__init__.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/messaging/messaging.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/notifications/__init__.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/notifications/notifications.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/orders/__init__.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/orders/orders.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/product_fees/__init__.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/product_fees/product_fees.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/product_type_definitions/__init__.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/product_type_definitions/product_type_definitions.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/products/__init__.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/products/products.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/products/products_definitions.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/replenishment/__init__.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/replenishment/replenishment.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/reports/__init__.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/reports/reports.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/sales/__init__.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/sales/sales.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/sellers/__init__.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/sellers/sellers.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/services/__init__.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/services/services.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/shipping/__init__.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/shipping/shipping.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/shipping/shippingV2.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/solicitations/__init__.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/solicitations/solicitations.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/supply_sources/__init__.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/supply_sources/supply_sources.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/tokens/__init__.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/tokens/tokens.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/upload/__init__.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/upload/upload.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/vendor_direct_fulfillment_inventory/__init__.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/vendor_direct_fulfillment_inventory/vendor_direct_fulfillment_inventory.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/vendor_direct_fulfillment_orders/__init__.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/vendor_direct_fulfillment_orders/vendor_direct_fulfillment_orders.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/vendor_direct_fulfillment_payments/__init__.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/vendor_direct_fulfillment_payments/vendor_direct_fulfillment_payments.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/vendor_direct_fulfillment_shipping/__init__.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/vendor_direct_fulfillment_shipping/vendor_direct_fulfillment_shipping.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/vendor_direct_fulfillment_transactions/__init__.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/vendor_direct_fulfillment_transactions/vendor_direct_fulfillment_transactions.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/vendor_invoices/__init__.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/vendor_invoices/vendor_invoices.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/vendor_orders/__init__.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/vendor_orders/vendor_orders.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/vendor_shipments/__init__.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/vendor_shipments/vendor_shipments.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/vendor_transaction_status/__init__.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/api/vendor_transaction_status/vendor_transaction_status.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/auth/__init__.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/auth/access_token_client.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/auth/access_token_response.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/auth/credentials.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/auth/exceptions.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/base/ApiResponse.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/base/InventoryEnums.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/base/__init__.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/base/base_client.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/base/client.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/base/credential_provider.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/base/exceptions.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/base/feedTypes.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/base/fulfillment_channel.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/base/helpers.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/base/identifiersType.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/base/included_data.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/base/inegibility_reasons.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/base/marketplaces.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/base/notifications.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/base/processing_status.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/base/reportTypes.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/base/report_status.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/base/sales_enum.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/base/schedules.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/util/__init__.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/util/key_maker.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/util/load_all_pages.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/util/load_date_bound.py +0 -0
- {python_amazon_sp_api-1.9.46 → python_amazon_sp_api-1.9.48}/sp_api/util/retry.py +0 -0
|
@@ -130,23 +130,4 @@ sp_api/util/__init__.py
|
|
|
130
130
|
sp_api/util/key_maker.py
|
|
131
131
|
sp_api/util/load_all_pages.py
|
|
132
132
|
sp_api/util/load_date_bound.py
|
|
133
|
-
sp_api/util/retry.py
|
|
134
|
-
tests/__init__.py
|
|
135
|
-
tests/api/__init__.py
|
|
136
|
-
tests/api/finances/__init__.py
|
|
137
|
-
tests/api/finances/test_finances.py
|
|
138
|
-
tests/api/notifications/__init__.py
|
|
139
|
-
tests/api/notifications/test_notifications.py
|
|
140
|
-
tests/api/orders/__init__.py
|
|
141
|
-
tests/api/orders/test_orders.py
|
|
142
|
-
tests/api/product_fees/__init__.py
|
|
143
|
-
tests/api/product_fees/product_fees.py
|
|
144
|
-
tests/api/reports/__init__.py
|
|
145
|
-
tests/api/reports/test_reports.py
|
|
146
|
-
tests/api/sellers/__init__.py
|
|
147
|
-
tests/api/sellers/test_sellers.py
|
|
148
|
-
tests/client/__init__.py
|
|
149
|
-
tests/client/test_auth.py
|
|
150
|
-
tests/client/test_base.py
|
|
151
|
-
tests/client/test_credential_provider.py
|
|
152
|
-
tests/client/test_helpers.py
|
|
133
|
+
sp_api/util/retry.py
|
|
@@ -14,9 +14,7 @@ setup(
|
|
|
14
14
|
"aws-caching": ["aws-secretsmanager-caching", "boto3"],
|
|
15
15
|
"aws": ["boto3"]
|
|
16
16
|
},
|
|
17
|
-
packages=['
|
|
18
|
-
'tests.api.product_fees', 'tests.api.notifications', 'tests.api.reports', 'tests.client',
|
|
19
|
-
'sp_api',
|
|
17
|
+
packages=['sp_api',
|
|
20
18
|
'sp_api.api',
|
|
21
19
|
'sp_api.api.orders',
|
|
22
20
|
'sp_api.api.sellers',
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = '1.9.48'
|
|
@@ -197,6 +197,39 @@ class FulfillmentInbound(Client):
|
|
|
197
197
|
fill_query_params(kwargs.pop("path"), shipment_id), data={**data, **kwargs}
|
|
198
198
|
)
|
|
199
199
|
|
|
200
|
+
@sp_endpoint(
|
|
201
|
+
"/inbound/fba/<version>/inboundPlans/{}/shipments/{}/name", method="PUT"
|
|
202
|
+
)
|
|
203
|
+
def update_shipment_name(self, inboundPlanId, shipmentId, **kwargs):
|
|
204
|
+
"""
|
|
205
|
+
update_shipment_name(self, inboundPlanId, shipmentId, **kwargs) -> ApiResponse
|
|
206
|
+
|
|
207
|
+
Updates the name of an existing shipment.
|
|
208
|
+
|
|
209
|
+
**Usage Plan:**
|
|
210
|
+
|
|
211
|
+
| Rate (requests per second) | Burst |
|
|
212
|
+
| ---- | ---- |
|
|
213
|
+
| 2 | 30 |
|
|
214
|
+
|
|
215
|
+
The `x-amzn-RateLimit-Limit` response header returns the usage plan rate limits that were applied to the requested operation, when available. The table above indicates the default rate and burst values for this operation. Selling partners whose business demands require higher throughput may see higher rate and burst values than those shown here. For more information, refer to [Usage Plans and Rate Limits in the Selling Partner API](https://developer-docs.amazon.com/sp-api/docs/usage-plans-and-rate-limits-in-the-sp-api).
|
|
216
|
+
|
|
217
|
+
Args:
|
|
218
|
+
|
|
219
|
+
inboundPlanId:string | * REQUIRED Identifier to an inbound plan.
|
|
220
|
+
|
|
221
|
+
shipmentId:string | * REQUIRED Identifier to a shipment. A shipment contains the boxes and units being inbounded.
|
|
222
|
+
|
|
223
|
+
body: | * REQUIRED {'name': {'description': 'A human-readable name to update the shipment name to.'}, 'type': 'string'}
|
|
224
|
+
|
|
225
|
+
Returns:
|
|
226
|
+
ApiResponse:
|
|
227
|
+
"""
|
|
228
|
+
return self._request(
|
|
229
|
+
fill_query_params(kwargs.pop("path"), inboundPlanId, shipmentId),
|
|
230
|
+
data=kwargs,
|
|
231
|
+
)
|
|
232
|
+
|
|
200
233
|
@sp_endpoint("/fba/inbound/<version>/shipments/{}/preorder")
|
|
201
234
|
def preorder(self, shipment_id, **kwargs):
|
|
202
235
|
"""
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
__version__ = '1.9.46'
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import json
|
|
2
|
-
from datetime import datetime, timedelta
|
|
3
|
-
|
|
4
|
-
from sp_api.api import Finances
|
|
5
|
-
from sp_api.base import SellingApiBadRequestException
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
def test_for_order():
|
|
9
|
-
res = Finances().get_financial_events_for_order('485-734-5434857', MaxResultsPerPage=10)
|
|
10
|
-
assert res.payload.get('NextToken') == 'Next token value'
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
def test_for_order_expect_400():
|
|
14
|
-
try:
|
|
15
|
-
Finances().get_financial_events_for_order('BAD-ORDER', MaxResultsPerPage=10)
|
|
16
|
-
except SellingApiBadRequestException as br:
|
|
17
|
-
assert br.code == 400
|
|
18
|
-
assert type(br) == SellingApiBadRequestException
|
|
19
|
-
|
|
File without changes
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
from sp_api.api import Notifications, Reports, Finances
|
|
2
|
-
from sp_api.base import SellingApiException, NotificationType, ReportType, Marketplaces
|
|
3
|
-
from sp_api.util import throttle_retry, load_all_pages
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
def test_create_destination():
|
|
7
|
-
res = Notifications().create_destination(name='test', arn='arn:aws:sqs:us-east-2:444455556666:queue1')
|
|
8
|
-
assert res.payload.get("destinationId") == "TEST_CASE_200_DESTINATION_ID"
|
|
9
|
-
assert res.payload.get("resource").get('sqs').get('arn') == "arn:aws:sqs:us-east-2:444455556666:queue1"
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
def test_create_subscription():
|
|
13
|
-
res = Notifications().create_subscription(NotificationType.MFN_ORDER_STATUS_CHANGE, destination_id='dest_id')
|
|
14
|
-
assert res.payload.get('destinationId') == 'TEST_CASE_200_DESTINATION_ID'
|
|
15
|
-
assert res.payload.get('subscriptionId') == 'TEST_CASE_200_SUBSCRIPTION_ID'
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
def test_delete_subscription():
|
|
19
|
-
res = Notifications().delete_notification_subscription(NotificationType.MFN_ORDER_STATUS_CHANGE, 'subscription_id')
|
|
20
|
-
assert res.errors is None
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
def test_get_subscriptions():
|
|
24
|
-
res = Notifications().get_subscription(NotificationType.REPORT_PROCESSING_FINISHED)
|
|
25
|
-
assert res.payload.get('destinationId') == 'TEST_CASE_200_DESTINATION_ID'
|
|
26
|
-
assert res.payload.get('subscriptionId') == 'TEST_CASE_200_SUBSCRIPTION_ID'
|
|
File without changes
|
|
@@ -1,122 +0,0 @@
|
|
|
1
|
-
from sp_api.api import Orders
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
def test_get_orders():
|
|
5
|
-
res = Orders().get_orders(CreatedAfter='TEST_CASE_200', MarketplaceIds=["ATVPDKIKX0DER"])
|
|
6
|
-
assert res.errors is None
|
|
7
|
-
assert res.payload.get('Orders') is not None
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
def test_get_order_items():
|
|
11
|
-
res = Orders().get_order_items('TEST_CASE_200')
|
|
12
|
-
assert res.errors is None
|
|
13
|
-
assert res.payload.get('AmazonOrderId') is not None
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
def test_get_order_address():
|
|
17
|
-
res = Orders().get_order_address('TEST_CASE_200')
|
|
18
|
-
assert res.errors is None
|
|
19
|
-
assert res.payload.get('AmazonOrderId') is not None
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
def test_get_order_buyer_info():
|
|
23
|
-
res = Orders().get_order_buyer_info('TEST_CASE_200')
|
|
24
|
-
assert res.errors is None
|
|
25
|
-
assert res.payload.get('AmazonOrderId') is not None
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
def test_get_order():
|
|
29
|
-
res = Orders().get_order('TEST_CASE_200')
|
|
30
|
-
assert res.errors is None
|
|
31
|
-
assert res.payload.get('AmazonOrderId') is not None
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
def test_get_order_items_buyer_info():
|
|
35
|
-
res = Orders().get_order_items_buyer_info('TEST_CASE_200')
|
|
36
|
-
assert res.errors is None
|
|
37
|
-
assert res.payload.get('AmazonOrderId') is not None
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
def test_get_orders_400_error():
|
|
41
|
-
from sp_api.base import SellingApiBadRequestException
|
|
42
|
-
try:
|
|
43
|
-
Orders().get_orders(CreatedAfter='TEST_CASE_400')
|
|
44
|
-
except SellingApiBadRequestException as sep:
|
|
45
|
-
assert sep.code == 400
|
|
46
|
-
assert sep.amzn_code == 'InvalidInput'
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
def test_get_order_api_response_call():
|
|
50
|
-
res = Orders().get_order('TEST_CASE_200')
|
|
51
|
-
print(res('DefaultShipFromLocationAddress'))
|
|
52
|
-
assert res('DefaultShipFromLocationAddress') is not None
|
|
53
|
-
assert res.errors is None
|
|
54
|
-
assert res.payload.get('AmazonOrderId') is not None
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
def test_get_orders_attr():
|
|
58
|
-
res = Orders().get_orders(CreatedAfter='TEST_CASE_200', MarketplaceIds=["ATVPDKIKX0DER"])
|
|
59
|
-
assert res.Orders is not None
|
|
60
|
-
assert res.errors is None
|
|
61
|
-
assert res.payload.get('Orders') is not None
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
def test_get_order_api_response_call2():
|
|
65
|
-
res = Orders().get_order('TEST_CASE_200')
|
|
66
|
-
assert res() is not None
|
|
67
|
-
assert isinstance(res(), dict)
|
|
68
|
-
assert res.errors is None
|
|
69
|
-
assert res.payload.get('AmazonOrderId') is not None
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
def test_update_shipment_status():
|
|
73
|
-
res = Orders().update_shipment_status(
|
|
74
|
-
order_id='123-1234567-1234567',
|
|
75
|
-
marketplaceId='ATVPDKIKX0DER',
|
|
76
|
-
shipmentStatus='ReadyForPickup'
|
|
77
|
-
)
|
|
78
|
-
assert res() is not None
|
|
79
|
-
assert isinstance(res(), dict)
|
|
80
|
-
assert res.errors is None
|
|
81
|
-
assert res.payload.get("status_code") == 204
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
def test_confirm_shipment():
|
|
85
|
-
res = Orders().confirm_shipment(
|
|
86
|
-
order_id='123-1234567-1234567',
|
|
87
|
-
marketplaceId='ATVPDKIKX0DER',
|
|
88
|
-
packageDetail={
|
|
89
|
-
'packageReferenceId': '0001',
|
|
90
|
-
'carrierCode': 'DHL',
|
|
91
|
-
"shippingMethod": 'Paket',
|
|
92
|
-
'trackingNumber': '1234567890',
|
|
93
|
-
'shipDate': '2023-03-19T12:00:00Z',
|
|
94
|
-
'orderItems': [
|
|
95
|
-
{
|
|
96
|
-
'orderItemId': '123456789',
|
|
97
|
-
'quantity': 1
|
|
98
|
-
},
|
|
99
|
-
{
|
|
100
|
-
'orderItemId': '2345678901',
|
|
101
|
-
'quantity': 2
|
|
102
|
-
},
|
|
103
|
-
]
|
|
104
|
-
}
|
|
105
|
-
)
|
|
106
|
-
assert res() is not None
|
|
107
|
-
assert isinstance(res(), dict)
|
|
108
|
-
assert res.errors is None
|
|
109
|
-
assert res.payload.get("status_code") is None
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
def test_update_shipment_status_400_error():
|
|
113
|
-
from sp_api.base import SellingApiBadRequestException
|
|
114
|
-
try:
|
|
115
|
-
Orders().update_shipment_status(
|
|
116
|
-
order_id='123-1234567-1234567',
|
|
117
|
-
marketplaceId='1',
|
|
118
|
-
shipmentStatus='ReadyForPickup'
|
|
119
|
-
)
|
|
120
|
-
except SellingApiBadRequestException as sep:
|
|
121
|
-
assert sep.code == 400
|
|
122
|
-
assert sep.amzn_code == 'InvalidInput'
|
|
File without changes
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
from sp_api.api import ProductFees
|
|
2
|
-
from sp_api.base import Marketplaces
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
def test_get_fees_for_sku():
|
|
6
|
-
res = ProductFees().get_product_fees_estimate_for_sku("UmaS1", 10, currency='USD', shipping_price=10, is_fba=False,
|
|
7
|
-
points={
|
|
8
|
-
"PointsNumber": 0,
|
|
9
|
-
"PointsMonetaryValue": {
|
|
10
|
-
"CurrencyCode": "USD",
|
|
11
|
-
"Amount": 0
|
|
12
|
-
}
|
|
13
|
-
})
|
|
14
|
-
assert res.payload.get('FeesEstimateResult').get('Status') == 'Success'
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
def test_get_fees_for_asin():
|
|
18
|
-
res = ProductFees().get_product_fees_estimate_for_asin("UmaS1", 10, currency='USD', shipping_price=10, is_fba=False,
|
|
19
|
-
points={
|
|
20
|
-
"PointsNumber": 0,
|
|
21
|
-
"PointsMonetaryValue": {
|
|
22
|
-
"CurrencyCode": "USD",
|
|
23
|
-
"Amount": 0
|
|
24
|
-
}
|
|
25
|
-
})
|
|
26
|
-
assert res.payload.get('FeesEstimateResult').get('Status') == 'Success'
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
def test_get_product_fees_estimate():
|
|
30
|
-
res = ProductFees().get_product_fees_estimate([
|
|
31
|
-
dict(identifier='UmaS1',id_type='ASIN',id_value="asin123", price=10, currency='USD', shipping_price=10, is_fba=False,
|
|
32
|
-
points={
|
|
33
|
-
"PointsNumber": 0,
|
|
34
|
-
"PointsMonetaryValue": {
|
|
35
|
-
"CurrencyCode": "USD",
|
|
36
|
-
"Amount": 0
|
|
37
|
-
}}
|
|
38
|
-
),
|
|
39
|
-
dict(identifier='UmaS2', marketplace_id=Marketplaces.MX.marketplace_id, id_type='SellerSKU', id_value="sku123", price=10, currency='MXN', shipping_price=10, is_fba=True,
|
|
40
|
-
points={
|
|
41
|
-
"PointsNumber": 0,
|
|
42
|
-
"PointsMonetaryValue": {
|
|
43
|
-
"CurrencyCode": "MXN",
|
|
44
|
-
"Amount": 0
|
|
45
|
-
}}
|
|
46
|
-
),
|
|
47
|
-
])
|
|
48
|
-
for fer in res.payload:
|
|
49
|
-
assert fer['Status'] == 'Success'
|
|
File without changes
|
|
@@ -1,127 +0,0 @@
|
|
|
1
|
-
from sp_api.api import Reports
|
|
2
|
-
from sp_api.base import Marketplaces, Schedules, SellingApiBadRequestException, SellingApiServerException, \
|
|
3
|
-
ProcessingStatus
|
|
4
|
-
from sp_api.base.reportTypes import ReportType
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
def test_create_report():
|
|
8
|
-
res = Reports().create_report(
|
|
9
|
-
reportType=ReportType.GET_MERCHANT_LISTINGS_ALL_DATA,
|
|
10
|
-
dataStartTime='2019-12-10T20:11:24.000Z',
|
|
11
|
-
marketplaceIds=[
|
|
12
|
-
"A1PA6795UKMFR9",
|
|
13
|
-
"ATVPDKIKX0DER"
|
|
14
|
-
])
|
|
15
|
-
assert res.payload.get('reportId') == 'ID323'
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
def test_create_report_expect_400():
|
|
19
|
-
try:
|
|
20
|
-
Reports().create_report(
|
|
21
|
-
reportType="BAD_FEE_DISCOUNTS_REPORT",
|
|
22
|
-
dataStartTime="2019-12-10T20:11:24.000Z",
|
|
23
|
-
marketplaceIds=[
|
|
24
|
-
"A1PA6795UKMFR9",
|
|
25
|
-
"ATVPDKIKX0DER"
|
|
26
|
-
])
|
|
27
|
-
except SellingApiBadRequestException as br:
|
|
28
|
-
assert br.code == 400
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
def test_create_report_expect_500():
|
|
32
|
-
try:
|
|
33
|
-
Reports().create_report(
|
|
34
|
-
reportType="BAD_FEE_DISCasdafsdsfsdfsdOUNTS_REPORT",
|
|
35
|
-
dataStartTime="2019-12-10T20:11:24.000Z",
|
|
36
|
-
marketplaceIds=[
|
|
37
|
-
"A1PA6asfd795UKMFR9",
|
|
38
|
-
"ATVPDKIKX0DER"
|
|
39
|
-
])
|
|
40
|
-
except SellingApiServerException as br:
|
|
41
|
-
assert br.code == 500
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
def test_get_report():
|
|
45
|
-
res = Reports().get_report('ID323')
|
|
46
|
-
assert res.payload.get('reportId') == 'ReportId1'
|
|
47
|
-
assert res.payload.get('reportType') == 'FEE_DISCOUNTS_REPORT'
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
def test_get_report_document_n_decrypt():
|
|
51
|
-
res = Reports().get_report_document('0356cf79-b8b0-4226-b4b9-0ee058ea5760', decrypt=False)
|
|
52
|
-
assert res.errors is None
|
|
53
|
-
assert 'document' not in res.payload
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
def test_create_report_schedule():
|
|
57
|
-
res = Reports().create_report_schedule(reportType='FEE_DISCOUNTS_REPORT',
|
|
58
|
-
period=Schedules.MINUTES_5.value,
|
|
59
|
-
nextReportCreationTime="2019-12-10T20:11:24.000Z",
|
|
60
|
-
marketplaceIds=["A1PA6795UKMFR9", "ATVPDKIKX0DER"])
|
|
61
|
-
assert res.errors is None
|
|
62
|
-
assert 'reportScheduleId' in res.payload
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
def test_delete_schedule_by_id():
|
|
66
|
-
res = Reports().delete_report_schedule('ID')
|
|
67
|
-
assert res.errors is None
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
def test_get_schedule_by_id():
|
|
71
|
-
res = Reports().get_report_schedule('ID323')
|
|
72
|
-
assert res.errors is None
|
|
73
|
-
assert 'period' in res.payload
|
|
74
|
-
assert res.payload.get('reportType') == 'FEE_DISCOUNTS_REPORT'
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
def test_get_reports_1():
|
|
78
|
-
report_types = [
|
|
79
|
-
"FEE_DISCOUNTS_REPORT",
|
|
80
|
-
"GET_AFN_INVENTORY_DATA"
|
|
81
|
-
]
|
|
82
|
-
processing_status = [
|
|
83
|
-
"IN_QUEUE",
|
|
84
|
-
"IN_PROGRESS"
|
|
85
|
-
]
|
|
86
|
-
res = Reports().get_reports(reportTypes=report_types, processingStatuses=processing_status)
|
|
87
|
-
assert res.errors is None
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
def test_get_reports_2():
|
|
91
|
-
report_types = [
|
|
92
|
-
"FEE_DISCOUNTS_REPORT",
|
|
93
|
-
"GET_AFN_INVENTORY_DATA"
|
|
94
|
-
]
|
|
95
|
-
processing_status = [
|
|
96
|
-
ProcessingStatus.IN_QUEUE,
|
|
97
|
-
ProcessingStatus.IN_PROGRESS
|
|
98
|
-
]
|
|
99
|
-
res = Reports().get_reports(reportTypes=report_types, processingStatuses=processing_status)
|
|
100
|
-
assert res.errors is None
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
def test_get_reports_3():
|
|
104
|
-
report_types = [
|
|
105
|
-
ReportType.FEE_DISCOUNTS_REPORT,
|
|
106
|
-
ReportType.GET_AFN_INVENTORY_DATA
|
|
107
|
-
]
|
|
108
|
-
processing_status = [
|
|
109
|
-
ProcessingStatus.IN_QUEUE,
|
|
110
|
-
ProcessingStatus.IN_PROGRESS
|
|
111
|
-
]
|
|
112
|
-
res = Reports().get_reports(reportTypes=report_types, processingStatuses=processing_status)
|
|
113
|
-
assert res.errors is None
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
def test_get_reports_4():
|
|
117
|
-
report_types = [
|
|
118
|
-
ReportType.FEE_DISCOUNTS_REPORT,
|
|
119
|
-
ReportType.GET_AFN_INVENTORY_DATA
|
|
120
|
-
]
|
|
121
|
-
processing_status = [
|
|
122
|
-
ProcessingStatus.IN_QUEUE,
|
|
123
|
-
ProcessingStatus.IN_PROGRESS
|
|
124
|
-
]
|
|
125
|
-
res = Reports().get_reports(reportTypes=report_types, processingStatuses=processing_status,
|
|
126
|
-
marketplaceIds=[Marketplaces.US, Marketplaces.US.marketplace_id])
|
|
127
|
-
assert res.errors is None
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
from sp_api.base import AccessTokenClient
|
|
2
|
-
from sp_api.base import Credentials, CredentialProvider
|
|
3
|
-
from sp_api.base import AuthorizationError
|
|
4
|
-
from sp_api.base.credential_provider import BaseCredentialProvider, FromCodeCredentialProvider
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
refresh_token = '<refresh_token>'
|
|
8
|
-
lwa_app_id = '<lwa_app_id>'
|
|
9
|
-
lwa_client_secret = '<lwa_client_secret>'
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
def test_auth_exception():
|
|
13
|
-
e = AuthorizationError(200, 'Foo', 999)
|
|
14
|
-
assert e.status_code == 999
|
|
15
|
-
assert e.error_code == 200
|
|
16
|
-
assert e.message == 'Foo'
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
def test_credentials():
|
|
20
|
-
x = CredentialProvider()
|
|
21
|
-
assert x.credentials is not None
|
|
22
|
-
assert x.credentials.lwa_app_id is not None
|
|
23
|
-
assert x.credentials.lwa_client_secret is not None
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
def test_credentials_with_custom_provider():
|
|
27
|
-
class CustomCredentialProvider(BaseCredentialProvider):
|
|
28
|
-
def load_credentials(self):
|
|
29
|
-
self.credentials = {
|
|
30
|
-
"refresh_token": refresh_token,
|
|
31
|
-
"lwa_app_id": lwa_app_id,
|
|
32
|
-
"lwa_client_secret": lwa_client_secret,
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
cp = CredentialProvider(credential_providers=(CustomCredentialProvider,))
|
|
36
|
-
assert cp.credentials is not None
|
|
37
|
-
assert cp.credentials.refresh_token == "<refresh_token>"
|
|
38
|
-
assert cp.credentials.lwa_app_id == "<lwa_app_id>"
|
|
39
|
-
assert cp.credentials.lwa_client_secret == "<lwa_client_secret>"
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
def test_auth_client():
|
|
43
|
-
client = AccessTokenClient(credentials=CredentialProvider(credentials=dict(
|
|
44
|
-
refresh_token=refresh_token,
|
|
45
|
-
lwa_app_id=lwa_app_id,
|
|
46
|
-
lwa_client_secret=lwa_client_secret,
|
|
47
|
-
)).credentials)
|
|
48
|
-
x = client._auth_code_request_body('foo')
|
|
49
|
-
assert x.get('grant_type') == 'authorization_code'
|
|
50
|
-
|
|
51
|
-
try:
|
|
52
|
-
client.authorize_auth_code('foo')
|
|
53
|
-
except AuthorizationError as e:
|
|
54
|
-
assert isinstance(e, AuthorizationError)
|
|
55
|
-
|
|
56
|
-
try:
|
|
57
|
-
client._request('https://jsonplaceholder.typicode.com/posts/1', {}, {})
|
|
58
|
-
except AuthorizationError as e:
|
|
59
|
-
assert isinstance(e, AuthorizationError)
|