sp_api_clients 2.0.0

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 (90) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGELOG.md +161 -0
  3. data/LICENSE +21 -0
  4. data/README.md +284 -0
  5. data/lib/amazon_sp_clients/adapter_loader.rb +28 -0
  6. data/lib/amazon_sp_clients/api_client.rb +309 -0
  7. data/lib/amazon_sp_clients/api_error.rb +37 -0
  8. data/lib/amazon_sp_clients/api_response.rb +54 -0
  9. data/lib/amazon_sp_clients/configuration.rb +144 -0
  10. data/lib/amazon_sp_clients/marketplaces.rb +63 -0
  11. data/lib/amazon_sp_clients/middlewares/raise_error.rb +166 -0
  12. data/lib/amazon_sp_clients/session.rb +124 -0
  13. data/lib/amazon_sp_clients/sp_fba_inventory.rb +8 -0
  14. data/lib/amazon_sp_clients/sp_feeds_2021.rb +8 -0
  15. data/lib/amazon_sp_clients/sp_fulfillment_outbound_2020.rb +8 -0
  16. data/lib/amazon_sp_clients/sp_listings_items_2021.rb +8 -0
  17. data/lib/amazon_sp_clients/sp_orders_v0.rb +8 -0
  18. data/lib/amazon_sp_clients/sp_reports_2021.rb +8 -0
  19. data/lib/amazon_sp_clients/sp_tokens_2021.rb +8 -0
  20. data/lib/amazon_sp_clients/sp_vdf_inventory_v1.rb +8 -0
  21. data/lib/amazon_sp_clients/sp_vdf_orders_v1.rb +8 -0
  22. data/lib/amazon_sp_clients/sp_vdf_shipping_v1.rb +8 -0
  23. data/lib/amazon_sp_clients/sp_vendor_invoices.rb +8 -0
  24. data/lib/amazon_sp_clients/sp_vendor_orders.rb +8 -0
  25. data/lib/amazon_sp_clients/sp_vendor_transaction_status.rb +8 -0
  26. data/lib/amazon_sp_clients/sp_vendors_shipments.rb +8 -0
  27. data/lib/amazon_sp_clients/token_exchange_auth.rb +82 -0
  28. data/lib/amazon_sp_clients/uploader.rb +77 -0
  29. data/lib/amazon_sp_clients/v2/api.rb +43 -0
  30. data/lib/amazon_sp_clients/v2/apis/fba_inventory.rb +80 -0
  31. data/lib/amazon_sp_clients/v2/apis/feeds_2021.rb +86 -0
  32. data/lib/amazon_sp_clients/v2/apis/fulfillment_outbound_2020.rb +184 -0
  33. data/lib/amazon_sp_clients/v2/apis/listings_items_2021.rb +144 -0
  34. data/lib/amazon_sp_clients/v2/apis/orders_v0.rb +165 -0
  35. data/lib/amazon_sp_clients/v2/apis/reports_2021.rb +117 -0
  36. data/lib/amazon_sp_clients/v2/apis/tokens_2021.rb +25 -0
  37. data/lib/amazon_sp_clients/v2/apis/vdf_inventory_v1.rb +26 -0
  38. data/lib/amazon_sp_clients/v2/apis/vdf_orders_v1.rb +61 -0
  39. data/lib/amazon_sp_clients/v2/apis/vdf_shipping_v1.rb +139 -0
  40. data/lib/amazon_sp_clients/v2/apis/vendor_invoices.rb +25 -0
  41. data/lib/amazon_sp_clients/v2/apis/vendor_orders.rb +106 -0
  42. data/lib/amazon_sp_clients/v2/apis/vendor_transaction_status.rb +25 -0
  43. data/lib/amazon_sp_clients/v2/apis/vendors_shipments.rb +120 -0
  44. data/lib/amazon_sp_clients/v2/apis.rb +82 -0
  45. data/lib/amazon_sp_clients/v2/client.rb +198 -0
  46. data/lib/amazon_sp_clients/v2/config.rb +85 -0
  47. data/lib/amazon_sp_clients/v2/credentials.rb +91 -0
  48. data/lib/amazon_sp_clients/v2/documents.rb +115 -0
  49. data/lib/amazon_sp_clients/v2/error_mapper.rb +235 -0
  50. data/lib/amazon_sp_clients/v2/errors.rb +117 -0
  51. data/lib/amazon_sp_clients/v2/lwa.rb +100 -0
  52. data/lib/amazon_sp_clients/v2/rdt.rb +104 -0
  53. data/lib/amazon_sp_clients/v2/token.rb +39 -0
  54. data/lib/amazon_sp_clients/v2.rb +33 -0
  55. data/lib/amazon_sp_clients/version.rb +3 -0
  56. data/lib/amazon_sp_clients.rb +69 -0
  57. data/lib/sp_api_clients.rb +6 -0
  58. data/sp_api_clients.gemspec +53 -0
  59. data/vendor/fba_inventory/lib/sp_fba_inventory/api/fba_inventory_api.rb +289 -0
  60. data/vendor/fba_inventory/lib/sp_fba_inventory.rb +12 -0
  61. data/vendor/feeds_2021/lib/sp_feeds_2021/api/feeds_api.rb +367 -0
  62. data/vendor/feeds_2021/lib/sp_feeds_2021.rb +12 -0
  63. data/vendor/fulfillment_outbound_2020/lib/sp_fulfillment_outbound_2020/api/fba_outbound_api.rb +845 -0
  64. data/vendor/fulfillment_outbound_2020/lib/sp_fulfillment_outbound_2020.rb +12 -0
  65. data/vendor/listings_items_2021/lib/sp_listings_items_2021/api/listings_api.rb +480 -0
  66. data/vendor/listings_items_2021/lib/sp_listings_items_2021.rb +12 -0
  67. data/vendor/orders_v0/lib/sp_orders_v0/api/orders_v0_api.rb +593 -0
  68. data/vendor/orders_v0/lib/sp_orders_v0/api/shipment_api.rb +83 -0
  69. data/vendor/orders_v0/lib/sp_orders_v0.rb +13 -0
  70. data/vendor/reports_2021/lib/sp_reports_2021/api/reports_api.rb +530 -0
  71. data/vendor/reports_2021/lib/sp_reports_2021.rb +12 -0
  72. data/vendor/tokens_2021/lib/sp_tokens_2021/api/tokens_api.rb +77 -0
  73. data/vendor/tokens_2021/lib/sp_tokens_2021.rb +12 -0
  74. data/vendor/vdf_inventory_v1/lib/sp_vdf_inventory_v1/api/update_inventory_api.rb +83 -0
  75. data/vendor/vdf_inventory_v1/lib/sp_vdf_inventory_v1.rb +12 -0
  76. data/vendor/vdf_orders_v1/lib/sp_vdf_orders_v1/api/vendor_orders_api.rb +217 -0
  77. data/vendor/vdf_orders_v1/lib/sp_vdf_orders_v1.rb +12 -0
  78. data/vendor/vdf_shipping_v1/lib/sp_vdf_shipping_v1/api/customer_invoices_api.rb +152 -0
  79. data/vendor/vdf_shipping_v1/lib/sp_vdf_shipping_v1/api/vendor_shipping_api.rb +264 -0
  80. data/vendor/vdf_shipping_v1/lib/sp_vdf_shipping_v1/api/vendor_shipping_labels_api.rb +208 -0
  81. data/vendor/vdf_shipping_v1/lib/sp_vdf_shipping_v1.rb +14 -0
  82. data/vendor/vendor_invoices/lib/sp_vendor_invoices/api/vendor_payments_api.rb +77 -0
  83. data/vendor/vendor_invoices/lib/sp_vendor_invoices.rb +12 -0
  84. data/vendor/vendor_orders/lib/sp_vendor_orders/api/vendor_orders_api.rb +323 -0
  85. data/vendor/vendor_orders/lib/sp_vendor_orders.rb +12 -0
  86. data/vendor/vendor_transaction_status/lib/sp_vendor_transaction_status/api/vendor_transaction_api.rb +75 -0
  87. data/vendor/vendor_transaction_status/lib/sp_vendor_transaction_status.rb +12 -0
  88. data/vendor/vendors_shipments/lib/sp_vendors_shipments/api/vendor_shipping_api.rb +337 -0
  89. data/vendor/vendors_shipments/lib/sp_vendors_shipments.rb +12 -0
  90. metadata +321 -0
@@ -0,0 +1,845 @@
1
+ =begin
2
+ #Selling Partner APIs for Fulfillment Outbound
3
+
4
+ #The Selling Partner API for Fulfillment Outbound lets you create applications that help a seller fulfill Multi-Channel Fulfillment orders using their inventory in Amazon's fulfillment network. You can get information on both potential and existing fulfillment orders.
5
+
6
+ OpenAPI spec version: 2020-07-01
7
+
8
+ Generated by: lib/generator (bundle exec rake generate)
9
+ =end
10
+
11
+ module AmazonSpClients
12
+ module SpFulfillmentOutbound2020
13
+ class FbaOutboundApi
14
+ attr_accessor :api_client
15
+
16
+ def initialize(session)
17
+ @api_client = AmazonSpClients::ApiClient.new(session)
18
+ end
19
+ # Requests that Amazon stop attempting to fulfill the fulfillment order indicated by the specified order identifier. **Usage Plan:** | Rate (requests per second) | Burst | | ---- | ---- | | 2 | 30 | 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 have 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).
20
+ # @param seller_fulfillment_order_id The identifier assigned to the item by the seller when the fulfillment order was created.
21
+ # @param [Hash] opts the optional parameters
22
+ # @return [CancelFulfillmentOrderResponse]
23
+ def cancel_fulfillment_order(seller_fulfillment_order_id, opts = {})
24
+ data = cancel_fulfillment_order_with_http_info(seller_fulfillment_order_id, opts)
25
+ return data
26
+ end
27
+
28
+ # Requests that Amazon stop attempting to fulfill the fulfillment order indicated by the specified order identifier. **Usage Plan:** | Rate (requests per second) | Burst | | ---- | ---- | | 2 | 30 | 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 have 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).
29
+ # @param seller_fulfillment_order_id The identifier assigned to the item by the seller when the fulfillment order was created.
30
+ # @param [Hash] opts the optional parameters
31
+ # @return [Array<(CancelFulfillmentOrderResponse)>] CancelFulfillmentOrderResponse data, response status code and response headers
32
+ def cancel_fulfillment_order_with_http_info(seller_fulfillment_order_id, opts = {})
33
+ if @api_client.config.debugging
34
+ @api_client.config.logger.debug 'Calling API: FbaOutboundApi.cancel_fulfillment_order ...'
35
+ end
36
+ # verify the required parameter 'seller_fulfillment_order_id' is set
37
+ if @api_client.config.client_side_validation && seller_fulfillment_order_id.nil?
38
+ fail ArgumentError, "Missing the required parameter 'seller_fulfillment_order_id' when calling FbaOutboundApi.cancel_fulfillment_order"
39
+ end
40
+ # resource path
41
+ local_var_path = '/fba/outbound/2020-07-01/fulfillmentOrders/{sellerFulfillmentOrderId}/cancel'.sub('{' + 'sellerFulfillmentOrderId' + '}', seller_fulfillment_order_id.to_s)
42
+
43
+ # query parameters
44
+ query_params = opts[:query_params] || {}
45
+
46
+ # header parameters
47
+ header_params = opts[:header_params] || {}
48
+ # HTTP header 'Accept' (if needed)
49
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
50
+
51
+ # form parameters
52
+ form_params = opts[:form_params] || {}
53
+
54
+ # http body (model)
55
+ post_body = opts[:body]
56
+
57
+ return_type = opts[:return_type] || 'AmazonSpClients::ApiResponse'
58
+
59
+ auth_names = opts[:auth_names] || []
60
+ data = @api_client.call_api(:PUT, local_var_path,
61
+ :header_params => header_params,
62
+ :query_params => query_params,
63
+ :form_params => form_params,
64
+ :body => post_body,
65
+ :auth_names => auth_names,
66
+ :return_type => return_type)
67
+
68
+ if @api_client.config.debugging
69
+ @api_client.config.logger.debug "API called: FbaOutboundApi#cancel_fulfillment_order\nData: #{data.inspect}"
70
+ end
71
+ return data
72
+ end
73
+ # Requests that Amazon ship items from the seller's inventory in Amazon's fulfillment network to a destination address. **Usage Plan:** | Rate (requests per second) | Burst | | ---- | ---- | | 2 | 30 | 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 have 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)
74
+ # @param body CreateFulfillmentOrderRequest parameter
75
+ # @param [Hash] opts the optional parameters
76
+ # @return [CreateFulfillmentOrderResponse]
77
+ def create_fulfillment_order(body, opts = {})
78
+ data = create_fulfillment_order_with_http_info(body, opts)
79
+ return data
80
+ end
81
+
82
+ # Requests that Amazon ship items from the seller&#x27;s inventory in Amazon&#x27;s fulfillment network to a destination address. **Usage Plan:** | Rate (requests per second) | Burst | | ---- | ---- | | 2 | 30 | The &#x60;x-amzn-RateLimit-Limit&#x60; 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 have 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)
83
+ # @param body CreateFulfillmentOrderRequest parameter
84
+ # @param [Hash] opts the optional parameters
85
+ # @return [Array<(CreateFulfillmentOrderResponse)>] CreateFulfillmentOrderResponse data, response status code and response headers
86
+ def create_fulfillment_order_with_http_info(body, opts = {})
87
+ if @api_client.config.debugging
88
+ @api_client.config.logger.debug 'Calling API: FbaOutboundApi.create_fulfillment_order ...'
89
+ end
90
+ # verify the required parameter 'body' is set
91
+ if @api_client.config.client_side_validation && body.nil?
92
+ fail ArgumentError, "Missing the required parameter 'body' when calling FbaOutboundApi.create_fulfillment_order"
93
+ end
94
+ # resource path
95
+ local_var_path = '/fba/outbound/2020-07-01/fulfillmentOrders'
96
+
97
+ # query parameters
98
+ query_params = opts[:query_params] || {}
99
+
100
+ # header parameters
101
+ header_params = opts[:header_params] || {}
102
+ # HTTP header 'Accept' (if needed)
103
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
104
+ # HTTP header 'Content-Type'
105
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
106
+
107
+ # form parameters
108
+ form_params = opts[:form_params] || {}
109
+
110
+ # http body (model)
111
+ post_body = opts[:body] || @api_client.object_to_http_body(body)
112
+
113
+ return_type = opts[:return_type] || 'AmazonSpClients::ApiResponse'
114
+
115
+ auth_names = opts[:auth_names] || []
116
+ data = @api_client.call_api(:POST, local_var_path,
117
+ :header_params => header_params,
118
+ :query_params => query_params,
119
+ :form_params => form_params,
120
+ :body => post_body,
121
+ :auth_names => auth_names,
122
+ :return_type => return_type)
123
+
124
+ if @api_client.config.debugging
125
+ @api_client.config.logger.debug "API called: FbaOutboundApi#create_fulfillment_order\nData: #{data.inspect}"
126
+ end
127
+ return data
128
+ end
129
+ # Creates a fulfillment return. **Usage Plan:** | Rate (requests per second) | Burst | | ---- | ---- | | 2 | 30 | 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 have 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).
130
+ # @param body CreateFulfillmentReturnRequest parameter
131
+ # @param seller_fulfillment_order_id An identifier assigned by the seller to the fulfillment order at the time it was created. The seller uses their own records to find the correct &#x60;SellerFulfillmentOrderId&#x60; value based on the buyer&#x27;s request to return items.
132
+ # @param [Hash] opts the optional parameters
133
+ # @return [CreateFulfillmentReturnResponse]
134
+ def create_fulfillment_return(body, seller_fulfillment_order_id, opts = {})
135
+ data = create_fulfillment_return_with_http_info(body, seller_fulfillment_order_id, opts)
136
+ return data
137
+ end
138
+
139
+ # Creates a fulfillment return. **Usage Plan:** | Rate (requests per second) | Burst | | ---- | ---- | | 2 | 30 | The &#x60;x-amzn-RateLimit-Limit&#x60; 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 have 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).
140
+ # @param body CreateFulfillmentReturnRequest parameter
141
+ # @param seller_fulfillment_order_id An identifier assigned by the seller to the fulfillment order at the time it was created. The seller uses their own records to find the correct &#x60;SellerFulfillmentOrderId&#x60; value based on the buyer&#x27;s request to return items.
142
+ # @param [Hash] opts the optional parameters
143
+ # @return [Array<(CreateFulfillmentReturnResponse)>] CreateFulfillmentReturnResponse data, response status code and response headers
144
+ def create_fulfillment_return_with_http_info(body, seller_fulfillment_order_id, opts = {})
145
+ if @api_client.config.debugging
146
+ @api_client.config.logger.debug 'Calling API: FbaOutboundApi.create_fulfillment_return ...'
147
+ end
148
+ # verify the required parameter 'body' is set
149
+ if @api_client.config.client_side_validation && body.nil?
150
+ fail ArgumentError, "Missing the required parameter 'body' when calling FbaOutboundApi.create_fulfillment_return"
151
+ end
152
+ # verify the required parameter 'seller_fulfillment_order_id' is set
153
+ if @api_client.config.client_side_validation && seller_fulfillment_order_id.nil?
154
+ fail ArgumentError, "Missing the required parameter 'seller_fulfillment_order_id' when calling FbaOutboundApi.create_fulfillment_return"
155
+ end
156
+ # resource path
157
+ local_var_path = '/fba/outbound/2020-07-01/fulfillmentOrders/{sellerFulfillmentOrderId}/return'.sub('{' + 'sellerFulfillmentOrderId' + '}', seller_fulfillment_order_id.to_s)
158
+
159
+ # query parameters
160
+ query_params = opts[:query_params] || {}
161
+
162
+ # header parameters
163
+ header_params = opts[:header_params] || {}
164
+ # HTTP header 'Accept' (if needed)
165
+ header_params['Accept'] = @api_client.select_header_accept(['application/json', 'payload'])
166
+ # HTTP header 'Content-Type'
167
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
168
+
169
+ # form parameters
170
+ form_params = opts[:form_params] || {}
171
+
172
+ # http body (model)
173
+ post_body = opts[:body] || @api_client.object_to_http_body(body)
174
+
175
+ return_type = opts[:return_type] || 'AmazonSpClients::ApiResponse'
176
+
177
+ auth_names = opts[:auth_names] || []
178
+ data = @api_client.call_api(:PUT, local_var_path,
179
+ :header_params => header_params,
180
+ :query_params => query_params,
181
+ :form_params => form_params,
182
+ :body => post_body,
183
+ :auth_names => auth_names,
184
+ :return_type => return_type)
185
+
186
+ if @api_client.config.debugging
187
+ @api_client.config.logger.debug "API called: FbaOutboundApi#create_fulfillment_return\nData: #{data.inspect}"
188
+ end
189
+ return data
190
+ end
191
+ # Returns delivery options that include an estimated delivery date and offer expiration, based on criteria that you specify. **Usage Plan:** | Rate (requests per second) | Burst | | ---- | ---- | | 5 | 30 | 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 have 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).
192
+ # @param body GetDeliveryOffersRequest parameter
193
+ # @param [Hash] opts the optional parameters
194
+ # @return [GetDeliveryOffersResponse]
195
+ def delivery_offers(body, opts = {})
196
+ data = delivery_offers_with_http_info(body, opts)
197
+ return data
198
+ end
199
+
200
+ # Returns delivery options that include an estimated delivery date and offer expiration, based on criteria that you specify. **Usage Plan:** | Rate (requests per second) | Burst | | ---- | ---- | | 5 | 30 | The &#x60;x-amzn-RateLimit-Limit&#x60; 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 have 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).
201
+ # @param body GetDeliveryOffersRequest parameter
202
+ # @param [Hash] opts the optional parameters
203
+ # @return [Array<(GetDeliveryOffersResponse)>] GetDeliveryOffersResponse data, response status code and response headers
204
+ def delivery_offers_with_http_info(body, opts = {})
205
+ if @api_client.config.debugging
206
+ @api_client.config.logger.debug 'Calling API: FbaOutboundApi.delivery_offers ...'
207
+ end
208
+ # verify the required parameter 'body' is set
209
+ if @api_client.config.client_side_validation && body.nil?
210
+ fail ArgumentError, "Missing the required parameter 'body' when calling FbaOutboundApi.delivery_offers"
211
+ end
212
+ # resource path
213
+ local_var_path = '/fba/outbound/2020-07-01/deliveryOffers'
214
+
215
+ # query parameters
216
+ query_params = opts[:query_params] || {}
217
+
218
+ # header parameters
219
+ header_params = opts[:header_params] || {}
220
+ # HTTP header 'Accept' (if needed)
221
+ header_params['Accept'] = @api_client.select_header_accept(['application/json', 'payload'])
222
+ # HTTP header 'Content-Type'
223
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
224
+
225
+ # form parameters
226
+ form_params = opts[:form_params] || {}
227
+
228
+ # http body (model)
229
+ post_body = opts[:body] || @api_client.object_to_http_body(body)
230
+
231
+ return_type = opts[:return_type] || 'AmazonSpClients::ApiResponse'
232
+
233
+ auth_names = opts[:auth_names] || []
234
+ data = @api_client.call_api(:POST, local_var_path,
235
+ :header_params => header_params,
236
+ :query_params => query_params,
237
+ :form_params => form_params,
238
+ :body => post_body,
239
+ :auth_names => auth_names,
240
+ :return_type => return_type)
241
+
242
+ if @api_client.config.debugging
243
+ @api_client.config.logger.debug "API called: FbaOutboundApi#delivery_offers\nData: #{data.inspect}"
244
+ end
245
+ return data
246
+ end
247
+ # Returns a list of inventory items that are eligible for the fulfillment feature you specify. **Usage Plan:** | Rate (requests per second) | Burst | | ---- | ---- | | 2 | 30 | 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 have 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)..
248
+ # @param marketplace_id The marketplace for which to return a list of the inventory that is eligible for the specified feature.
249
+ # @param feature_name The name of the feature for which to return a list of eligible inventory.
250
+ # @param [Hash] opts the optional parameters
251
+ # @option opts [String] :next_token A string token returned in the response to your previous request that is used to return the next response page. A value of null will return the first page.
252
+ # @option opts [DateTime] :query_start_date A date that you can use to select inventory that has been updated since a specified date. An update is defined as any change in feature-enabled inventory availability. The date must be in the format yyyy-MM-ddTHH:mm:ss.sssZ
253
+ # @return [GetFeatureInventoryResponse]
254
+ def get_feature_inventory(marketplace_id, feature_name, opts = {})
255
+ data = get_feature_inventory_with_http_info(marketplace_id, feature_name, opts)
256
+ return data
257
+ end
258
+
259
+ # Returns a list of inventory items that are eligible for the fulfillment feature you specify. **Usage Plan:** | Rate (requests per second) | Burst | | ---- | ---- | | 2 | 30 | The &#x60;x-amzn-RateLimit-Limit&#x60; 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 have 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)..
260
+ # @param marketplace_id The marketplace for which to return a list of the inventory that is eligible for the specified feature.
261
+ # @param feature_name The name of the feature for which to return a list of eligible inventory.
262
+ # @param [Hash] opts the optional parameters
263
+ # @option opts [String] :next_token A string token returned in the response to your previous request that is used to return the next response page. A value of null will return the first page.
264
+ # @option opts [DateTime] :query_start_date A date that you can use to select inventory that has been updated since a specified date. An update is defined as any change in feature-enabled inventory availability. The date must be in the format yyyy-MM-ddTHH:mm:ss.sssZ
265
+ # @return [Array<(GetFeatureInventoryResponse)>] GetFeatureInventoryResponse data, response status code and response headers
266
+ def get_feature_inventory_with_http_info(marketplace_id, feature_name, opts = {})
267
+ if @api_client.config.debugging
268
+ @api_client.config.logger.debug 'Calling API: FbaOutboundApi.get_feature_inventory ...'
269
+ end
270
+ # verify the required parameter 'marketplace_id' is set
271
+ if @api_client.config.client_side_validation && marketplace_id.nil?
272
+ fail ArgumentError, "Missing the required parameter 'marketplace_id' when calling FbaOutboundApi.get_feature_inventory"
273
+ end
274
+ # verify the required parameter 'feature_name' is set
275
+ if @api_client.config.client_side_validation && feature_name.nil?
276
+ fail ArgumentError, "Missing the required parameter 'feature_name' when calling FbaOutboundApi.get_feature_inventory"
277
+ end
278
+ # resource path
279
+ local_var_path = '/fba/outbound/2020-07-01/features/inventory/{featureName}'.sub('{' + 'featureName' + '}', feature_name.to_s)
280
+
281
+ # query parameters
282
+ query_params = opts[:query_params] || {}
283
+ query_params[:'marketplaceId'] = marketplace_id
284
+ query_params[:'nextToken'] = opts[:'next_token'] if !opts[:'next_token'].nil?
285
+ query_params[:'queryStartDate'] = opts[:'query_start_date'] if !opts[:'query_start_date'].nil?
286
+
287
+ # header parameters
288
+ header_params = opts[:header_params] || {}
289
+ # HTTP header 'Accept' (if needed)
290
+ header_params['Accept'] = @api_client.select_header_accept(['application/json', 'payload'])
291
+
292
+ # form parameters
293
+ form_params = opts[:form_params] || {}
294
+
295
+ # http body (model)
296
+ post_body = opts[:body]
297
+
298
+ return_type = opts[:return_type] || 'AmazonSpClients::ApiResponse'
299
+
300
+ auth_names = opts[:auth_names] || []
301
+ data = @api_client.call_api(:GET, local_var_path,
302
+ :header_params => header_params,
303
+ :query_params => query_params,
304
+ :form_params => form_params,
305
+ :body => post_body,
306
+ :auth_names => auth_names,
307
+ :return_type => return_type)
308
+
309
+ if @api_client.config.debugging
310
+ @api_client.config.logger.debug "API called: FbaOutboundApi#get_feature_inventory\nData: #{data.inspect}"
311
+ end
312
+ return data
313
+ end
314
+ # Returns the number of items with the sellerSKU you specify that can have orders fulfilled using the specified feature. Note that if the sellerSKU isn't eligible, the response will contain an empty skuInfo object. The parameters for this operation may contain special characters that require URL encoding. To avoid errors with SKUs when encoding URLs, refer to [URL Encoding](https://developer-docs.amazon.com/sp-api/docs/url-encoding). **Usage Plan:** | Rate (requests per second) | Burst | | ---- | ---- | | 2 | 30 | 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 have 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).
315
+ # @param marketplace_id The marketplace for which to return the count.
316
+ # @param feature_name The name of the feature.
317
+ # @param seller_sku Used to identify an item in the given marketplace. &#x60;SellerSKU&#x60; is qualified by the seller&#x27;s &#x60;SellerId&#x60;, which is included with every operation that you submit.
318
+ # @param [Hash] opts the optional parameters
319
+ # @return [GetFeatureSkuResponse]
320
+ def get_feature_sku(marketplace_id, feature_name, seller_sku, opts = {})
321
+ data = get_feature_sku_with_http_info(marketplace_id, feature_name, seller_sku, opts)
322
+ return data
323
+ end
324
+
325
+ # Returns the number of items with the sellerSKU you specify that can have orders fulfilled using the specified feature. Note that if the sellerSKU isn&#x27;t eligible, the response will contain an empty skuInfo object. The parameters for this operation may contain special characters that require URL encoding. To avoid errors with SKUs when encoding URLs, refer to [URL Encoding](https://developer-docs.amazon.com/sp-api/docs/url-encoding). **Usage Plan:** | Rate (requests per second) | Burst | | ---- | ---- | | 2 | 30 | The &#x60;x-amzn-RateLimit-Limit&#x60; 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 have 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).
326
+ # @param marketplace_id The marketplace for which to return the count.
327
+ # @param feature_name The name of the feature.
328
+ # @param seller_sku Used to identify an item in the given marketplace. &#x60;SellerSKU&#x60; is qualified by the seller&#x27;s &#x60;SellerId&#x60;, which is included with every operation that you submit.
329
+ # @param [Hash] opts the optional parameters
330
+ # @return [Array<(GetFeatureSkuResponse)>] GetFeatureSkuResponse data, response status code and response headers
331
+ def get_feature_sku_with_http_info(marketplace_id, feature_name, seller_sku, opts = {})
332
+ if @api_client.config.debugging
333
+ @api_client.config.logger.debug 'Calling API: FbaOutboundApi.get_feature_sku ...'
334
+ end
335
+ # verify the required parameter 'marketplace_id' is set
336
+ if @api_client.config.client_side_validation && marketplace_id.nil?
337
+ fail ArgumentError, "Missing the required parameter 'marketplace_id' when calling FbaOutboundApi.get_feature_sku"
338
+ end
339
+ # verify the required parameter 'feature_name' is set
340
+ if @api_client.config.client_side_validation && feature_name.nil?
341
+ fail ArgumentError, "Missing the required parameter 'feature_name' when calling FbaOutboundApi.get_feature_sku"
342
+ end
343
+ # verify the required parameter 'seller_sku' is set
344
+ if @api_client.config.client_side_validation && seller_sku.nil?
345
+ fail ArgumentError, "Missing the required parameter 'seller_sku' when calling FbaOutboundApi.get_feature_sku"
346
+ end
347
+ # resource path
348
+ local_var_path = '/fba/outbound/2020-07-01/features/inventory/{featureName}/{sellerSku}'.sub('{' + 'featureName' + '}', feature_name.to_s).sub('{' + 'sellerSku' + '}', seller_sku.to_s)
349
+
350
+ # query parameters
351
+ query_params = opts[:query_params] || {}
352
+ query_params[:'marketplaceId'] = marketplace_id
353
+
354
+ # header parameters
355
+ header_params = opts[:header_params] || {}
356
+ # HTTP header 'Accept' (if needed)
357
+ header_params['Accept'] = @api_client.select_header_accept(['application/json', 'payload'])
358
+
359
+ # form parameters
360
+ form_params = opts[:form_params] || {}
361
+
362
+ # http body (model)
363
+ post_body = opts[:body]
364
+
365
+ return_type = opts[:return_type] || 'AmazonSpClients::ApiResponse'
366
+
367
+ auth_names = opts[:auth_names] || []
368
+ data = @api_client.call_api(:GET, local_var_path,
369
+ :header_params => header_params,
370
+ :query_params => query_params,
371
+ :form_params => form_params,
372
+ :body => post_body,
373
+ :auth_names => auth_names,
374
+ :return_type => return_type)
375
+
376
+ if @api_client.config.debugging
377
+ @api_client.config.logger.debug "API called: FbaOutboundApi#get_feature_sku\nData: #{data.inspect}"
378
+ end
379
+ return data
380
+ end
381
+ # Returns a list of features available for Multi-Channel Fulfillment orders in the marketplace you specify, and whether the seller for which you made the call is enrolled for each feature. **Usage Plan:** | Rate (requests per second) | Burst | | ---- | ---- | | 2 | 30 | 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 have 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).
382
+ # @param marketplace_id The marketplace for which to return the list of features.
383
+ # @param [Hash] opts the optional parameters
384
+ # @return [GetFeaturesResponse]
385
+ def get_features(marketplace_id, opts = {})
386
+ data = get_features_with_http_info(marketplace_id, opts)
387
+ return data
388
+ end
389
+
390
+ # Returns a list of features available for Multi-Channel Fulfillment orders in the marketplace you specify, and whether the seller for which you made the call is enrolled for each feature. **Usage Plan:** | Rate (requests per second) | Burst | | ---- | ---- | | 2 | 30 | The &#x60;x-amzn-RateLimit-Limit&#x60; 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 have 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).
391
+ # @param marketplace_id The marketplace for which to return the list of features.
392
+ # @param [Hash] opts the optional parameters
393
+ # @return [Array<(GetFeaturesResponse)>] GetFeaturesResponse data, response status code and response headers
394
+ def get_features_with_http_info(marketplace_id, opts = {})
395
+ if @api_client.config.debugging
396
+ @api_client.config.logger.debug 'Calling API: FbaOutboundApi.get_features ...'
397
+ end
398
+ # verify the required parameter 'marketplace_id' is set
399
+ if @api_client.config.client_side_validation && marketplace_id.nil?
400
+ fail ArgumentError, "Missing the required parameter 'marketplace_id' when calling FbaOutboundApi.get_features"
401
+ end
402
+ # resource path
403
+ local_var_path = '/fba/outbound/2020-07-01/features'
404
+
405
+ # query parameters
406
+ query_params = opts[:query_params] || {}
407
+ query_params[:'marketplaceId'] = marketplace_id
408
+
409
+ # header parameters
410
+ header_params = opts[:header_params] || {}
411
+ # HTTP header 'Accept' (if needed)
412
+ header_params['Accept'] = @api_client.select_header_accept(['application/json', 'payload'])
413
+
414
+ # form parameters
415
+ form_params = opts[:form_params] || {}
416
+
417
+ # http body (model)
418
+ post_body = opts[:body]
419
+
420
+ return_type = opts[:return_type] || 'AmazonSpClients::ApiResponse'
421
+
422
+ auth_names = opts[:auth_names] || []
423
+ data = @api_client.call_api(:GET, local_var_path,
424
+ :header_params => header_params,
425
+ :query_params => query_params,
426
+ :form_params => form_params,
427
+ :body => post_body,
428
+ :auth_names => auth_names,
429
+ :return_type => return_type)
430
+
431
+ if @api_client.config.debugging
432
+ @api_client.config.logger.debug "API called: FbaOutboundApi#get_features\nData: #{data.inspect}"
433
+ end
434
+ return data
435
+ end
436
+ # Returns the fulfillment order indicated by the specified order identifier. **Usage Plan:** | Rate (requests per second) | Burst | | ---- | ---- | | 2 | 30 | 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 have 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).
437
+ # @param seller_fulfillment_order_id The identifier assigned to the item by the seller when the fulfillment order was created.
438
+ # @param [Hash] opts the optional parameters
439
+ # @return [GetFulfillmentOrderResponse]
440
+ def get_fulfillment_order(seller_fulfillment_order_id, opts = {})
441
+ data = get_fulfillment_order_with_http_info(seller_fulfillment_order_id, opts)
442
+ return data
443
+ end
444
+
445
+ # Returns the fulfillment order indicated by the specified order identifier. **Usage Plan:** | Rate (requests per second) | Burst | | ---- | ---- | | 2 | 30 | The &#x60;x-amzn-RateLimit-Limit&#x60; 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 have 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).
446
+ # @param seller_fulfillment_order_id The identifier assigned to the item by the seller when the fulfillment order was created.
447
+ # @param [Hash] opts the optional parameters
448
+ # @return [Array<(GetFulfillmentOrderResponse)>] GetFulfillmentOrderResponse data, response status code and response headers
449
+ def get_fulfillment_order_with_http_info(seller_fulfillment_order_id, opts = {})
450
+ if @api_client.config.debugging
451
+ @api_client.config.logger.debug 'Calling API: FbaOutboundApi.get_fulfillment_order ...'
452
+ end
453
+ # verify the required parameter 'seller_fulfillment_order_id' is set
454
+ if @api_client.config.client_side_validation && seller_fulfillment_order_id.nil?
455
+ fail ArgumentError, "Missing the required parameter 'seller_fulfillment_order_id' when calling FbaOutboundApi.get_fulfillment_order"
456
+ end
457
+ # resource path
458
+ local_var_path = '/fba/outbound/2020-07-01/fulfillmentOrders/{sellerFulfillmentOrderId}'.sub('{' + 'sellerFulfillmentOrderId' + '}', seller_fulfillment_order_id.to_s)
459
+
460
+ # query parameters
461
+ query_params = opts[:query_params] || {}
462
+
463
+ # header parameters
464
+ header_params = opts[:header_params] || {}
465
+ # HTTP header 'Accept' (if needed)
466
+ header_params['Accept'] = @api_client.select_header_accept(['application/json', 'payload'])
467
+
468
+ # form parameters
469
+ form_params = opts[:form_params] || {}
470
+
471
+ # http body (model)
472
+ post_body = opts[:body]
473
+
474
+ return_type = opts[:return_type] || 'AmazonSpClients::ApiResponse'
475
+
476
+ auth_names = opts[:auth_names] || []
477
+ data = @api_client.call_api(:GET, local_var_path,
478
+ :header_params => header_params,
479
+ :query_params => query_params,
480
+ :form_params => form_params,
481
+ :body => post_body,
482
+ :auth_names => auth_names,
483
+ :return_type => return_type)
484
+
485
+ if @api_client.config.debugging
486
+ @api_client.config.logger.debug "API called: FbaOutboundApi#get_fulfillment_order\nData: #{data.inspect}"
487
+ end
488
+ return data
489
+ end
490
+ # Returns a list of fulfillment order previews based on shipping criteria that you specify. **Usage Plan:** | Rate (requests per second) | Burst | | ---- | ---- | | 2 | 30 | 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 have 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).
491
+ # @param body GetFulfillmentPreviewRequest parameter
492
+ # @param [Hash] opts the optional parameters
493
+ # @return [GetFulfillmentPreviewResponse]
494
+ def get_fulfillment_preview(body, opts = {})
495
+ data = get_fulfillment_preview_with_http_info(body, opts)
496
+ return data
497
+ end
498
+
499
+ # Returns a list of fulfillment order previews based on shipping criteria that you specify. **Usage Plan:** | Rate (requests per second) | Burst | | ---- | ---- | | 2 | 30 | The &#x60;x-amzn-RateLimit-Limit&#x60; 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 have 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).
500
+ # @param body GetFulfillmentPreviewRequest parameter
501
+ # @param [Hash] opts the optional parameters
502
+ # @return [Array<(GetFulfillmentPreviewResponse)>] GetFulfillmentPreviewResponse data, response status code and response headers
503
+ def get_fulfillment_preview_with_http_info(body, opts = {})
504
+ if @api_client.config.debugging
505
+ @api_client.config.logger.debug 'Calling API: FbaOutboundApi.get_fulfillment_preview ...'
506
+ end
507
+ # verify the required parameter 'body' is set
508
+ if @api_client.config.client_side_validation && body.nil?
509
+ fail ArgumentError, "Missing the required parameter 'body' when calling FbaOutboundApi.get_fulfillment_preview"
510
+ end
511
+ # resource path
512
+ local_var_path = '/fba/outbound/2020-07-01/fulfillmentOrders/preview'
513
+
514
+ # query parameters
515
+ query_params = opts[:query_params] || {}
516
+
517
+ # header parameters
518
+ header_params = opts[:header_params] || {}
519
+ # HTTP header 'Accept' (if needed)
520
+ header_params['Accept'] = @api_client.select_header_accept(['application/json', 'payload'])
521
+ # HTTP header 'Content-Type'
522
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
523
+
524
+ # form parameters
525
+ form_params = opts[:form_params] || {}
526
+
527
+ # http body (model)
528
+ post_body = opts[:body] || @api_client.object_to_http_body(body)
529
+
530
+ return_type = opts[:return_type] || 'AmazonSpClients::ApiResponse'
531
+
532
+ auth_names = opts[:auth_names] || []
533
+ data = @api_client.call_api(:POST, local_var_path,
534
+ :header_params => header_params,
535
+ :query_params => query_params,
536
+ :form_params => form_params,
537
+ :body => post_body,
538
+ :auth_names => auth_names,
539
+ :return_type => return_type)
540
+
541
+ if @api_client.config.debugging
542
+ @api_client.config.logger.debug "API called: FbaOutboundApi#get_fulfillment_preview\nData: #{data.inspect}"
543
+ end
544
+ return data
545
+ end
546
+ # Returns delivery tracking information for a package in an outbound shipment for a Multi-Channel Fulfillment order. **Usage Plan:** | Rate (requests per second) | Burst | | ---- | ---- | | 2 | 30 | 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 have 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).
547
+ # @param package_number The unencrypted package identifier returned by the &#x60;getFulfillmentOrder&#x60; operation.
548
+ # @param [Hash] opts the optional parameters
549
+ # @return [GetPackageTrackingDetailsResponse]
550
+ def get_package_tracking_details(package_number, opts = {})
551
+ data = get_package_tracking_details_with_http_info(package_number, opts)
552
+ return data
553
+ end
554
+
555
+ # Returns delivery tracking information for a package in an outbound shipment for a Multi-Channel Fulfillment order. **Usage Plan:** | Rate (requests per second) | Burst | | ---- | ---- | | 2 | 30 | The &#x60;x-amzn-RateLimit-Limit&#x60; 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 have 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).
556
+ # @param package_number The unencrypted package identifier returned by the &#x60;getFulfillmentOrder&#x60; operation.
557
+ # @param [Hash] opts the optional parameters
558
+ # @return [Array<(GetPackageTrackingDetailsResponse)>] GetPackageTrackingDetailsResponse data, response status code and response headers
559
+ def get_package_tracking_details_with_http_info(package_number, opts = {})
560
+ if @api_client.config.debugging
561
+ @api_client.config.logger.debug 'Calling API: FbaOutboundApi.get_package_tracking_details ...'
562
+ end
563
+ # verify the required parameter 'package_number' is set
564
+ if @api_client.config.client_side_validation && package_number.nil?
565
+ fail ArgumentError, "Missing the required parameter 'package_number' when calling FbaOutboundApi.get_package_tracking_details"
566
+ end
567
+ # resource path
568
+ local_var_path = '/fba/outbound/2020-07-01/tracking'
569
+
570
+ # query parameters
571
+ query_params = opts[:query_params] || {}
572
+ query_params[:'packageNumber'] = package_number
573
+
574
+ # header parameters
575
+ header_params = opts[:header_params] || {}
576
+ # HTTP header 'Accept' (if needed)
577
+ header_params['Accept'] = @api_client.select_header_accept(['application/json', 'payload'])
578
+
579
+ # form parameters
580
+ form_params = opts[:form_params] || {}
581
+
582
+ # http body (model)
583
+ post_body = opts[:body]
584
+
585
+ return_type = opts[:return_type] || 'AmazonSpClients::ApiResponse'
586
+
587
+ auth_names = opts[:auth_names] || []
588
+ data = @api_client.call_api(:GET, local_var_path,
589
+ :header_params => header_params,
590
+ :query_params => query_params,
591
+ :form_params => form_params,
592
+ :body => post_body,
593
+ :auth_names => auth_names,
594
+ :return_type => return_type)
595
+
596
+ if @api_client.config.debugging
597
+ @api_client.config.logger.debug "API called: FbaOutboundApi#get_package_tracking_details\nData: #{data.inspect}"
598
+ end
599
+ return data
600
+ end
601
+ # Returns a list of fulfillment orders fulfilled after (or at) a specified date-time, or indicated by the next token parameter. **Usage Plan:** | Rate (requests per second) | Burst | | ---- | ---- | | 2 | 30 | 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 have 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)
602
+ # @param [Hash] opts the optional parameters
603
+ # @option opts [DateTime] :query_start_date A date used to select fulfillment orders that were last updated after (or at) a specified time. An update is defined as any change in fulfillment order status, including the creation of a new fulfillment order.
604
+ # @option opts [String] :next_token A string token returned in the response to your previous request.
605
+ # @return [ListAllFulfillmentOrdersResponse]
606
+ def list_all_fulfillment_orders(opts = {})
607
+ data = list_all_fulfillment_orders_with_http_info(opts)
608
+ return data
609
+ end
610
+
611
+ # Returns a list of fulfillment orders fulfilled after (or at) a specified date-time, or indicated by the next token parameter. **Usage Plan:** | Rate (requests per second) | Burst | | ---- | ---- | | 2 | 30 | The &#x60;x-amzn-RateLimit-Limit&#x60; 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 have 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)
612
+ # @param [Hash] opts the optional parameters
613
+ # @option opts [DateTime] :query_start_date A date used to select fulfillment orders that were last updated after (or at) a specified time. An update is defined as any change in fulfillment order status, including the creation of a new fulfillment order.
614
+ # @option opts [String] :next_token A string token returned in the response to your previous request.
615
+ # @return [Array<(ListAllFulfillmentOrdersResponse)>] ListAllFulfillmentOrdersResponse data, response status code and response headers
616
+ def list_all_fulfillment_orders_with_http_info(opts = {})
617
+ if @api_client.config.debugging
618
+ @api_client.config.logger.debug 'Calling API: FbaOutboundApi.list_all_fulfillment_orders ...'
619
+ end
620
+ # resource path
621
+ local_var_path = '/fba/outbound/2020-07-01/fulfillmentOrders'
622
+
623
+ # query parameters
624
+ query_params = opts[:query_params] || {}
625
+ query_params[:'queryStartDate'] = opts[:'query_start_date'] if !opts[:'query_start_date'].nil?
626
+ query_params[:'nextToken'] = opts[:'next_token'] if !opts[:'next_token'].nil?
627
+
628
+ # header parameters
629
+ header_params = opts[:header_params] || {}
630
+ # HTTP header 'Accept' (if needed)
631
+ header_params['Accept'] = @api_client.select_header_accept(['application/json', 'payload'])
632
+
633
+ # form parameters
634
+ form_params = opts[:form_params] || {}
635
+
636
+ # http body (model)
637
+ post_body = opts[:body]
638
+
639
+ return_type = opts[:return_type] || 'AmazonSpClients::ApiResponse'
640
+
641
+ auth_names = opts[:auth_names] || []
642
+ data = @api_client.call_api(:GET, local_var_path,
643
+ :header_params => header_params,
644
+ :query_params => query_params,
645
+ :form_params => form_params,
646
+ :body => post_body,
647
+ :auth_names => auth_names,
648
+ :return_type => return_type)
649
+
650
+ if @api_client.config.debugging
651
+ @api_client.config.logger.debug "API called: FbaOutboundApi#list_all_fulfillment_orders\nData: #{data.inspect}"
652
+ end
653
+ return data
654
+ end
655
+ # Returns a list of return reason codes for a seller SKU in a given marketplace. The parameters for this operation may contain special characters that require URL encoding. To avoid errors with SKUs when encoding URLs, refer to [URL Encoding](https://developer-docs.amazon.com/sp-api/docs/url-encoding). **Usage Plan:** | Rate (requests per second) | Burst | | ---- | ---- | | 2 | 30 | 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 have 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).
656
+ # @param seller_sku The seller SKU for which return reason codes are required.
657
+ # @param [Hash] opts the optional parameters
658
+ # @option opts [String] :marketplace_id The marketplace for which the seller wants return reason codes.
659
+ # @option opts [String] :seller_fulfillment_order_id The identifier assigned to the item by the seller when the fulfillment order was created. The service uses this value to determine the marketplace for which the seller wants return reason codes.
660
+ # @option opts [String] :language The language that the &#x60;TranslatedDescription&#x60; property of the &#x60;ReasonCodeDetails&#x60; response object should be translated into.
661
+ # @return [ListReturnReasonCodesResponse]
662
+ def list_return_reason_codes(seller_sku, opts = {})
663
+ data = list_return_reason_codes_with_http_info(seller_sku, opts)
664
+ return data
665
+ end
666
+
667
+ # Returns a list of return reason codes for a seller SKU in a given marketplace. The parameters for this operation may contain special characters that require URL encoding. To avoid errors with SKUs when encoding URLs, refer to [URL Encoding](https://developer-docs.amazon.com/sp-api/docs/url-encoding). **Usage Plan:** | Rate (requests per second) | Burst | | ---- | ---- | | 2 | 30 | The &#x60;x-amzn-RateLimit-Limit&#x60; 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 have 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).
668
+ # @param seller_sku The seller SKU for which return reason codes are required.
669
+ # @param [Hash] opts the optional parameters
670
+ # @option opts [String] :marketplace_id The marketplace for which the seller wants return reason codes.
671
+ # @option opts [String] :seller_fulfillment_order_id The identifier assigned to the item by the seller when the fulfillment order was created. The service uses this value to determine the marketplace for which the seller wants return reason codes.
672
+ # @option opts [String] :language The language that the &#x60;TranslatedDescription&#x60; property of the &#x60;ReasonCodeDetails&#x60; response object should be translated into.
673
+ # @return [Array<(ListReturnReasonCodesResponse)>] ListReturnReasonCodesResponse data, response status code and response headers
674
+ def list_return_reason_codes_with_http_info(seller_sku, opts = {})
675
+ if @api_client.config.debugging
676
+ @api_client.config.logger.debug 'Calling API: FbaOutboundApi.list_return_reason_codes ...'
677
+ end
678
+ # verify the required parameter 'seller_sku' is set
679
+ if @api_client.config.client_side_validation && seller_sku.nil?
680
+ fail ArgumentError, "Missing the required parameter 'seller_sku' when calling FbaOutboundApi.list_return_reason_codes"
681
+ end
682
+ # resource path
683
+ local_var_path = '/fba/outbound/2020-07-01/returnReasonCodes'
684
+
685
+ # query parameters
686
+ query_params = opts[:query_params] || {}
687
+ query_params[:'sellerSku'] = seller_sku
688
+ query_params[:'marketplaceId'] = opts[:'marketplace_id'] if !opts[:'marketplace_id'].nil?
689
+ query_params[:'sellerFulfillmentOrderId'] = opts[:'seller_fulfillment_order_id'] if !opts[:'seller_fulfillment_order_id'].nil?
690
+ query_params[:'language'] = opts[:'language'] if !opts[:'language'].nil?
691
+
692
+ # header parameters
693
+ header_params = opts[:header_params] || {}
694
+ # HTTP header 'Accept' (if needed)
695
+ header_params['Accept'] = @api_client.select_header_accept(['application/json', 'payload'])
696
+
697
+ # form parameters
698
+ form_params = opts[:form_params] || {}
699
+
700
+ # http body (model)
701
+ post_body = opts[:body]
702
+
703
+ return_type = opts[:return_type] || 'AmazonSpClients::ApiResponse'
704
+
705
+ auth_names = opts[:auth_names] || []
706
+ data = @api_client.call_api(:GET, local_var_path,
707
+ :header_params => header_params,
708
+ :query_params => query_params,
709
+ :form_params => form_params,
710
+ :body => post_body,
711
+ :auth_names => auth_names,
712
+ :return_type => return_type)
713
+
714
+ if @api_client.config.debugging
715
+ @api_client.config.logger.debug "API called: FbaOutboundApi#list_return_reason_codes\nData: #{data.inspect}"
716
+ end
717
+ return data
718
+ end
719
+ # Requests that Amazon update the status of an order in the sandbox testing environment. This is a sandbox-only operation and must be directed to a sandbox endpoint. Refer to [Fulfillment Outbound Dynamic Sandbox Guide](https://developer-docs.amazon.com/sp-api/docs/fulfillment-outbound-dynamic-sandbox-guide) and [Selling Partner API sandbox](https://developer-docs.amazon.com/sp-api/docs/the-selling-partner-api-sandbox) for more information.
720
+ # @param body The identifier assigned to the item by the seller when the fulfillment order was created.
721
+ # @param seller_fulfillment_order_id The identifier assigned to the item by the seller when the fulfillment order was created.
722
+ # @param [Hash] opts the optional parameters
723
+ # @return [SubmitFulfillmentOrderStatusUpdateResponse]
724
+ def submit_fulfillment_order_status_update(body, seller_fulfillment_order_id, opts = {})
725
+ data = submit_fulfillment_order_status_update_with_http_info(body, seller_fulfillment_order_id, opts)
726
+ return data
727
+ end
728
+
729
+ # Requests that Amazon update the status of an order in the sandbox testing environment. This is a sandbox-only operation and must be directed to a sandbox endpoint. Refer to [Fulfillment Outbound Dynamic Sandbox Guide](https://developer-docs.amazon.com/sp-api/docs/fulfillment-outbound-dynamic-sandbox-guide) and [Selling Partner API sandbox](https://developer-docs.amazon.com/sp-api/docs/the-selling-partner-api-sandbox) for more information.
730
+ # @param body The identifier assigned to the item by the seller when the fulfillment order was created.
731
+ # @param seller_fulfillment_order_id The identifier assigned to the item by the seller when the fulfillment order was created.
732
+ # @param [Hash] opts the optional parameters
733
+ # @return [Array<(SubmitFulfillmentOrderStatusUpdateResponse)>] SubmitFulfillmentOrderStatusUpdateResponse data, response status code and response headers
734
+ def submit_fulfillment_order_status_update_with_http_info(body, seller_fulfillment_order_id, opts = {})
735
+ if @api_client.config.debugging
736
+ @api_client.config.logger.debug 'Calling API: FbaOutboundApi.submit_fulfillment_order_status_update ...'
737
+ end
738
+ # verify the required parameter 'body' is set
739
+ if @api_client.config.client_side_validation && body.nil?
740
+ fail ArgumentError, "Missing the required parameter 'body' when calling FbaOutboundApi.submit_fulfillment_order_status_update"
741
+ end
742
+ # verify the required parameter 'seller_fulfillment_order_id' is set
743
+ if @api_client.config.client_side_validation && seller_fulfillment_order_id.nil?
744
+ fail ArgumentError, "Missing the required parameter 'seller_fulfillment_order_id' when calling FbaOutboundApi.submit_fulfillment_order_status_update"
745
+ end
746
+ # resource path
747
+ local_var_path = '/fba/outbound/2020-07-01/fulfillmentOrders/{sellerFulfillmentOrderId}/status'.sub('{' + 'sellerFulfillmentOrderId' + '}', seller_fulfillment_order_id.to_s)
748
+
749
+ # query parameters
750
+ query_params = opts[:query_params] || {}
751
+
752
+ # header parameters
753
+ header_params = opts[:header_params] || {}
754
+ # HTTP header 'Accept' (if needed)
755
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
756
+ # HTTP header 'Content-Type'
757
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
758
+
759
+ # form parameters
760
+ form_params = opts[:form_params] || {}
761
+
762
+ # http body (model)
763
+ post_body = opts[:body] || @api_client.object_to_http_body(body)
764
+
765
+ return_type = opts[:return_type] || 'AmazonSpClients::ApiResponse'
766
+
767
+ auth_names = opts[:auth_names] || []
768
+ data = @api_client.call_api(:PUT, local_var_path,
769
+ :header_params => header_params,
770
+ :query_params => query_params,
771
+ :form_params => form_params,
772
+ :body => post_body,
773
+ :auth_names => auth_names,
774
+ :return_type => return_type)
775
+
776
+ if @api_client.config.debugging
777
+ @api_client.config.logger.debug "API called: FbaOutboundApi#submit_fulfillment_order_status_update\nData: #{data.inspect}"
778
+ end
779
+ return data
780
+ end
781
+ # Updates and/or requests shipment for a fulfillment order with an order hold on it. **Usage Plan:** | Rate (requests per second) | Burst | | ---- | ---- | | 2 | 30 | 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 have 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).
782
+ # @param body UpdateFulfillmentOrderRequest parameter
783
+ # @param seller_fulfillment_order_id The identifier assigned to the item by the seller when the fulfillment order was created.
784
+ # @param [Hash] opts the optional parameters
785
+ # @return [UpdateFulfillmentOrderResponse]
786
+ def update_fulfillment_order(body, seller_fulfillment_order_id, opts = {})
787
+ data = update_fulfillment_order_with_http_info(body, seller_fulfillment_order_id, opts)
788
+ return data
789
+ end
790
+
791
+ # Updates and/or requests shipment for a fulfillment order with an order hold on it. **Usage Plan:** | Rate (requests per second) | Burst | | ---- | ---- | | 2 | 30 | The &#x60;x-amzn-RateLimit-Limit&#x60; 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 have 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).
792
+ # @param body UpdateFulfillmentOrderRequest parameter
793
+ # @param seller_fulfillment_order_id The identifier assigned to the item by the seller when the fulfillment order was created.
794
+ # @param [Hash] opts the optional parameters
795
+ # @return [Array<(UpdateFulfillmentOrderResponse)>] UpdateFulfillmentOrderResponse data, response status code and response headers
796
+ def update_fulfillment_order_with_http_info(body, seller_fulfillment_order_id, opts = {})
797
+ if @api_client.config.debugging
798
+ @api_client.config.logger.debug 'Calling API: FbaOutboundApi.update_fulfillment_order ...'
799
+ end
800
+ # verify the required parameter 'body' is set
801
+ if @api_client.config.client_side_validation && body.nil?
802
+ fail ArgumentError, "Missing the required parameter 'body' when calling FbaOutboundApi.update_fulfillment_order"
803
+ end
804
+ # verify the required parameter 'seller_fulfillment_order_id' is set
805
+ if @api_client.config.client_side_validation && seller_fulfillment_order_id.nil?
806
+ fail ArgumentError, "Missing the required parameter 'seller_fulfillment_order_id' when calling FbaOutboundApi.update_fulfillment_order"
807
+ end
808
+ # resource path
809
+ local_var_path = '/fba/outbound/2020-07-01/fulfillmentOrders/{sellerFulfillmentOrderId}'.sub('{' + 'sellerFulfillmentOrderId' + '}', seller_fulfillment_order_id.to_s)
810
+
811
+ # query parameters
812
+ query_params = opts[:query_params] || {}
813
+
814
+ # header parameters
815
+ header_params = opts[:header_params] || {}
816
+ # HTTP header 'Accept' (if needed)
817
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
818
+ # HTTP header 'Content-Type'
819
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
820
+
821
+ # form parameters
822
+ form_params = opts[:form_params] || {}
823
+
824
+ # http body (model)
825
+ post_body = opts[:body] || @api_client.object_to_http_body(body)
826
+
827
+ return_type = opts[:return_type] || 'AmazonSpClients::ApiResponse'
828
+
829
+ auth_names = opts[:auth_names] || []
830
+ data = @api_client.call_api(:PUT, local_var_path,
831
+ :header_params => header_params,
832
+ :query_params => query_params,
833
+ :form_params => form_params,
834
+ :body => post_body,
835
+ :auth_names => auth_names,
836
+ :return_type => return_type)
837
+
838
+ if @api_client.config.debugging
839
+ @api_client.config.logger.debug "API called: FbaOutboundApi#update_fulfillment_order\nData: #{data.inspect}"
840
+ end
841
+ return data
842
+ end
843
+ end
844
+ end
845
+ end