peddler 3.0.0.beta1 → 3.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.
- checksums.yaml +4 -4
- data/README.md +96 -106
- data/lib/peddler/api/amazon_warehousing_and_distribution_2024_05_09.rb +34 -22
- data/lib/peddler/api/aplus_content_2020_11_01.rb +86 -48
- data/lib/peddler/api/application_integrations_2024_04_01.rb +56 -0
- data/lib/peddler/api/application_management_2023_11_30.rb +12 -2
- data/lib/peddler/api/catalog_items_2020_12_01.rb +31 -20
- data/lib/peddler/api/catalog_items_2022_04_01.rb +35 -25
- data/lib/peddler/api/catalog_items_v0.rb +39 -26
- data/lib/peddler/api/data_kiosk_2023_11_15.rb +41 -25
- data/lib/peddler/api/easy_ship_2022_03_23.rb +62 -43
- data/lib/peddler/api/fba_inbound_eligibility_v1.rb +13 -5
- data/lib/peddler/api/fba_inventory_v1.rb +40 -24
- data/lib/peddler/api/feeds_2021_06_30.rb +43 -25
- data/lib/peddler/api/finances_2024_06_19.rb +50 -0
- data/lib/peddler/api/finances_v0.rb +86 -59
- data/lib/peddler/api/fulfillment_inbound_2024_03_20.rb +304 -205
- data/lib/peddler/api/fulfillment_inbound_v0.rb +112 -74
- data/lib/peddler/api/fulfillment_outbound_2020_07_01.rb +90 -53
- data/lib/peddler/api/invoices_2024_06_19.rb +180 -0
- data/lib/peddler/api/listings_items_2020_09_01.rb +44 -33
- data/lib/peddler/api/listings_items_2021_08_01.rb +76 -60
- data/lib/peddler/api/listings_restrictions_2021_08_01.rb +19 -9
- data/lib/peddler/api/merchant_fulfillment_v0.rb +31 -15
- data/lib/peddler/api/messaging_v1.rb +93 -61
- data/lib/peddler/api/notifications_v1.rb +54 -23
- data/lib/peddler/api/orders_v0.rb +87 -72
- data/lib/peddler/api/product_fees_v0.rb +39 -31
- data/lib/peddler/api/product_pricing_2022_05_01.rb +17 -6
- data/lib/peddler/api/product_pricing_v0.rb +63 -45
- data/lib/peddler/api/product_type_definitions_2020_09_01.rb +29 -18
- data/lib/peddler/api/replenishment_2022_11_07.rb +21 -9
- data/lib/peddler/api/reports_2021_06_30.rb +60 -36
- data/lib/peddler/api/sales_v1.rb +20 -12
- data/lib/peddler/api/sellers_v1.rb +16 -4
- data/lib/peddler/api/services_v1.rb +138 -98
- data/lib/peddler/api/shipment_invoicing_v0.rb +25 -12
- data/lib/peddler/api/shipping_v1.rb +54 -29
- data/lib/peddler/api/shipping_v2.rb +132 -80
- data/lib/peddler/api/solicitations_v1.rb +18 -8
- data/lib/peddler/api/supply_sources_2020_07_01.rb +33 -15
- data/lib/peddler/api/tokens_2021_03_01.rb +13 -5
- data/lib/peddler/api/uploads_2020_11_01.rb +16 -6
- data/lib/peddler/api/vendor_direct_fulfillment_inventory_v1.rb +12 -4
- data/lib/peddler/api/vendor_direct_fulfillment_orders_2021_12_28.rb +29 -17
- data/lib/peddler/api/vendor_direct_fulfillment_orders_v1.rb +29 -17
- data/lib/peddler/api/vendor_direct_fulfillment_payments_v1.rb +11 -3
- data/lib/peddler/api/vendor_direct_fulfillment_sandbox_test_data_2021_10_28.rb +14 -4
- data/lib/peddler/api/vendor_direct_fulfillment_shipping_2021_12_28.rb +74 -48
- data/lib/peddler/api/vendor_direct_fulfillment_shipping_v1.rb +74 -50
- data/lib/peddler/api/vendor_direct_fulfillment_transactions_2021_12_28.rb +11 -3
- data/lib/peddler/api/vendor_direct_fulfillment_transactions_v1.rb +11 -3
- data/lib/peddler/api/vendor_invoices_v1.rb +11 -3
- data/lib/peddler/api/vendor_orders_v1.rb +54 -43
- data/lib/peddler/api/vendor_shipments_v1.rb +63 -51
- data/lib/peddler/api/vendor_transaction_status_v1.rb +12 -3
- data/lib/peddler/api.rb +41 -18
- data/lib/peddler/endpoint.rb +51 -0
- data/lib/peddler/error.rb +1 -0
- data/lib/peddler/marketplace.rb +49 -0
- data/lib/peddler/token.rb +70 -0
- data/lib/peddler/version.rb +1 -1
- data/lib/peddler.rb +56 -52
- metadata +10 -6
- data/lib/peddler/access_token.rb +0 -76
- data/lib/peddler/region.rb +0 -30
@@ -3,6 +3,12 @@
|
|
3
3
|
require "peddler/api"
|
4
4
|
|
5
5
|
module Peddler
|
6
|
+
class << self
|
7
|
+
def messaging_v1(...)
|
8
|
+
API::MessagingV1.new(...)
|
9
|
+
end
|
10
|
+
end
|
11
|
+
|
6
12
|
class API
|
7
13
|
# Selling Partner API for Messaging
|
8
14
|
#
|
@@ -15,220 +21,246 @@ module Peddler
|
|
15
21
|
# by an actions object, which contains a path and query parameter(s). You can use the path and parameter(s) to
|
16
22
|
# call an operation that sends a message.
|
17
23
|
#
|
18
|
-
# @
|
24
|
+
# @note This operation can make a static sandbox call.
|
25
|
+
# @param amazon_order_id [String] An Amazon order identifier. This specifies the order for which you want a list
|
19
26
|
# of available message types.
|
20
|
-
# @param [Array<String>]
|
27
|
+
# @param marketplace_ids [Array<String>] A marketplace identifier. This specifies the marketplace in which the
|
21
28
|
# order was placed. Only one marketplace can be specified.
|
29
|
+
# @param rate_limit [Float] Requests per second
|
22
30
|
# @return [Hash] The API response
|
23
|
-
def get_messaging_actions_for_order(amazon_order_id, marketplace_ids)
|
31
|
+
def get_messaging_actions_for_order(amazon_order_id, marketplace_ids, rate_limit: 1.0)
|
24
32
|
path = "/messaging/v1/orders/#{amazon_order_id}"
|
25
33
|
params = {
|
26
34
|
"marketplaceIds" => marketplace_ids,
|
27
35
|
}.compact
|
28
36
|
|
29
|
-
rate_limit
|
37
|
+
meter(rate_limit).get(path, params:)
|
30
38
|
end
|
31
39
|
|
32
40
|
# Sends a message asking a buyer to provide or verify customization details such as name spelling, images,
|
33
41
|
# initials, etc.
|
34
42
|
#
|
35
|
-
# @
|
43
|
+
# @note This operation can make a static sandbox call.
|
44
|
+
# @param amazon_order_id [String] An Amazon order identifier. This specifies the order for which a message is
|
36
45
|
# sent.
|
37
|
-
# @param [Array<String>]
|
46
|
+
# @param marketplace_ids [Array<String>] A marketplace identifier. This specifies the marketplace in which the
|
38
47
|
# order was placed. Only one marketplace can be specified.
|
39
|
-
# @param [Hash]
|
48
|
+
# @param body [Hash]
|
49
|
+
# @param rate_limit [Float] Requests per second
|
40
50
|
# @return [Hash] The API response
|
41
|
-
def confirm_customization_details(amazon_order_id, marketplace_ids, body)
|
51
|
+
def confirm_customization_details(amazon_order_id, marketplace_ids, body, rate_limit: 1.0)
|
42
52
|
path = "/messaging/v1/orders/#{amazon_order_id}/messages/confirmCustomizationDetails"
|
43
53
|
params = {
|
44
54
|
"marketplaceIds" => marketplace_ids,
|
45
55
|
}.compact
|
46
56
|
|
47
|
-
rate_limit
|
57
|
+
meter(rate_limit).post(path, body:, params:)
|
48
58
|
end
|
49
59
|
|
50
60
|
# Sends a message to a buyer to arrange a delivery or to confirm contact information for making a delivery.
|
51
61
|
#
|
52
|
-
# @
|
62
|
+
# @note This operation can make a static sandbox call.
|
63
|
+
# @param amazon_order_id [String] An Amazon order identifier. This specifies the order for which a message is
|
53
64
|
# sent.
|
54
|
-
# @param [Array<String>]
|
65
|
+
# @param marketplace_ids [Array<String>] A marketplace identifier. This specifies the marketplace in which the
|
55
66
|
# order was placed. Only one marketplace can be specified.
|
56
|
-
# @param [Hash]
|
67
|
+
# @param body [Hash]
|
68
|
+
# @param rate_limit [Float] Requests per second
|
57
69
|
# @return [Hash] The API response
|
58
|
-
def create_confirm_delivery_details(amazon_order_id, marketplace_ids, body)
|
70
|
+
def create_confirm_delivery_details(amazon_order_id, marketplace_ids, body, rate_limit: 1.0)
|
59
71
|
path = "/messaging/v1/orders/#{amazon_order_id}/messages/confirmDeliveryDetails"
|
60
72
|
params = {
|
61
73
|
"marketplaceIds" => marketplace_ids,
|
62
74
|
}.compact
|
63
75
|
|
64
|
-
rate_limit
|
76
|
+
meter(rate_limit).post(path, body:, params:)
|
65
77
|
end
|
66
78
|
|
67
79
|
# Sends a critical message that contains documents that a seller is legally obligated to provide to the buyer.
|
68
80
|
# This message should only be used to deliver documents that are required by law.
|
69
81
|
#
|
70
|
-
# @
|
82
|
+
# @note This operation can make a static sandbox call.
|
83
|
+
# @param amazon_order_id [String] An Amazon order identifier. This specifies the order for which a message is
|
71
84
|
# sent.
|
72
|
-
# @param [Array<String>]
|
85
|
+
# @param marketplace_ids [Array<String>] A marketplace identifier. This specifies the marketplace in which the
|
73
86
|
# order was placed. Only one marketplace can be specified.
|
74
|
-
# @param [Hash]
|
87
|
+
# @param body [Hash]
|
88
|
+
# @param rate_limit [Float] Requests per second
|
75
89
|
# @return [Hash] The API response
|
76
|
-
def create_legal_disclosure(amazon_order_id, marketplace_ids, body)
|
90
|
+
def create_legal_disclosure(amazon_order_id, marketplace_ids, body, rate_limit: 1.0)
|
77
91
|
path = "/messaging/v1/orders/#{amazon_order_id}/messages/legalDisclosure"
|
78
92
|
params = {
|
79
93
|
"marketplaceIds" => marketplace_ids,
|
80
94
|
}.compact
|
81
95
|
|
82
|
-
rate_limit
|
96
|
+
meter(rate_limit).post(path, body:, params:)
|
83
97
|
end
|
84
98
|
|
85
99
|
# Sends a non-critical message that asks a buyer to remove their negative feedback. This message should only be
|
86
100
|
# sent after the seller has resolved the buyer's problem.
|
87
101
|
#
|
88
|
-
# @
|
102
|
+
# @note This operation can make a static sandbox call.
|
103
|
+
# @param amazon_order_id [String] An Amazon order identifier. This specifies the order for which a message is
|
89
104
|
# sent.
|
90
|
-
# @param [Array<String>]
|
105
|
+
# @param marketplace_ids [Array<String>] A marketplace identifier. This specifies the marketplace in which the
|
91
106
|
# order was placed. Only one marketplace can be specified.
|
107
|
+
# @param rate_limit [Float] Requests per second
|
92
108
|
# @return [Hash] The API response
|
93
|
-
def create_negative_feedback_removal(amazon_order_id, marketplace_ids)
|
109
|
+
def create_negative_feedback_removal(amazon_order_id, marketplace_ids, rate_limit: 1.0)
|
94
110
|
path = "/messaging/v1/orders/#{amazon_order_id}/messages/negativeFeedbackRemoval"
|
95
111
|
params = {
|
96
112
|
"marketplaceIds" => marketplace_ids,
|
97
113
|
}.compact
|
98
114
|
|
99
|
-
rate_limit
|
115
|
+
meter(rate_limit).post(path, params:)
|
100
116
|
end
|
101
117
|
|
102
118
|
# Sends a message to ask a buyer an order-related question prior to shipping their order.
|
103
119
|
#
|
104
|
-
# @
|
120
|
+
# @note This operation can make a static sandbox call.
|
121
|
+
# @param amazon_order_id [String] An Amazon order identifier. This specifies the order for which a message is
|
105
122
|
# sent.
|
106
|
-
# @param [Array<String>]
|
123
|
+
# @param marketplace_ids [Array<String>] A marketplace identifier. This specifies the marketplace in which the
|
107
124
|
# order was placed. Only one marketplace can be specified.
|
108
|
-
# @param [Hash]
|
125
|
+
# @param body [Hash]
|
126
|
+
# @param rate_limit [Float] Requests per second
|
109
127
|
# @return [Hash] The API response
|
110
|
-
def create_confirm_order_details(amazon_order_id, marketplace_ids, body)
|
128
|
+
def create_confirm_order_details(amazon_order_id, marketplace_ids, body, rate_limit: 1.0)
|
111
129
|
path = "/messaging/v1/orders/#{amazon_order_id}/messages/confirmOrderDetails"
|
112
130
|
params = {
|
113
131
|
"marketplaceIds" => marketplace_ids,
|
114
132
|
}.compact
|
115
133
|
|
116
|
-
rate_limit
|
134
|
+
meter(rate_limit).post(path, body:, params:)
|
117
135
|
end
|
118
136
|
|
119
137
|
# Sends a message to contact a Home Service customer to arrange a service call or to gather information prior to a
|
120
138
|
# service call.
|
121
139
|
#
|
122
|
-
# @
|
140
|
+
# @note This operation can make a static sandbox call.
|
141
|
+
# @param amazon_order_id [String] An Amazon order identifier. This specifies the order for which a message is
|
123
142
|
# sent.
|
124
|
-
# @param [Array<String>]
|
143
|
+
# @param marketplace_ids [Array<String>] A marketplace identifier. This specifies the marketplace in which the
|
125
144
|
# order was placed. Only one marketplace can be specified.
|
126
|
-
# @param [Hash]
|
145
|
+
# @param body [Hash]
|
146
|
+
# @param rate_limit [Float] Requests per second
|
127
147
|
# @return [Hash] The API response
|
128
|
-
def create_confirm_service_details(amazon_order_id, marketplace_ids, body)
|
148
|
+
def create_confirm_service_details(amazon_order_id, marketplace_ids, body, rate_limit: 1.0)
|
129
149
|
path = "/messaging/v1/orders/#{amazon_order_id}/messages/confirmServiceDetails"
|
130
150
|
params = {
|
131
151
|
"marketplaceIds" => marketplace_ids,
|
132
152
|
}.compact
|
133
153
|
|
134
|
-
rate_limit
|
154
|
+
meter(rate_limit).post(path, body:, params:)
|
135
155
|
end
|
136
156
|
|
137
157
|
# Sends a message to a buyer to provide details about an Amazon Motors order. This message can only be sent by
|
138
158
|
# Amazon Motors sellers.
|
139
159
|
#
|
140
|
-
# @
|
160
|
+
# @note This operation can make a static sandbox call.
|
161
|
+
# @param amazon_order_id [String] An Amazon order identifier. This specifies the order for which a message is
|
141
162
|
# sent.
|
142
|
-
# @param [Array<String>]
|
163
|
+
# @param marketplace_ids [Array<String>] A marketplace identifier. This specifies the marketplace in which the
|
143
164
|
# order was placed. Only one marketplace can be specified.
|
144
|
-
# @param [Hash]
|
165
|
+
# @param body [Hash]
|
166
|
+
# @param rate_limit [Float] Requests per second
|
145
167
|
# @return [Hash] The API response
|
146
|
-
def create_amazon_motors(amazon_order_id, marketplace_ids, body)
|
168
|
+
def create_amazon_motors(amazon_order_id, marketplace_ids, body, rate_limit: 1.0)
|
147
169
|
path = "/messaging/v1/orders/#{amazon_order_id}/messages/amazonMotors"
|
148
170
|
params = {
|
149
171
|
"marketplaceIds" => marketplace_ids,
|
150
172
|
}.compact
|
151
173
|
|
152
|
-
rate_limit
|
174
|
+
meter(rate_limit).post(path, body:, params:)
|
153
175
|
end
|
154
176
|
|
155
177
|
# Sends a message to a buyer to provide details about warranty information on a purchase in their order.
|
156
178
|
#
|
157
|
-
# @
|
179
|
+
# @note This operation can make a static sandbox call.
|
180
|
+
# @param amazon_order_id [String] An Amazon order identifier. This specifies the order for which a message is
|
158
181
|
# sent.
|
159
|
-
# @param [Array<String>]
|
182
|
+
# @param marketplace_ids [Array<String>] A marketplace identifier. This specifies the marketplace in which the
|
160
183
|
# order was placed. Only one marketplace can be specified.
|
161
|
-
# @param [Hash]
|
184
|
+
# @param body [Hash]
|
185
|
+
# @param rate_limit [Float] Requests per second
|
162
186
|
# @return [Hash] The API response
|
163
|
-
def create_warranty(amazon_order_id, marketplace_ids, body)
|
187
|
+
def create_warranty(amazon_order_id, marketplace_ids, body, rate_limit: 1.0)
|
164
188
|
path = "/messaging/v1/orders/#{amazon_order_id}/messages/warranty"
|
165
189
|
params = {
|
166
190
|
"marketplaceIds" => marketplace_ids,
|
167
191
|
}.compact
|
168
192
|
|
169
|
-
rate_limit
|
193
|
+
meter(rate_limit).post(path, body:, params:)
|
170
194
|
end
|
171
195
|
|
172
196
|
# Returns a response containing attributes related to an order. This includes buyer preferences.
|
173
197
|
#
|
174
|
-
# @
|
198
|
+
# @note This operation can make a static sandbox call.
|
199
|
+
# @param amazon_order_id [String] An Amazon order identifier. This specifies the order for which a message is
|
175
200
|
# sent.
|
176
|
-
# @param [Array<String>]
|
201
|
+
# @param marketplace_ids [Array<String>] A marketplace identifier. This specifies the marketplace in which the
|
177
202
|
# order was placed. Only one marketplace can be specified.
|
203
|
+
# @param rate_limit [Float] Requests per second
|
178
204
|
# @return [Hash] The API response
|
179
|
-
def get_attributes(amazon_order_id, marketplace_ids)
|
205
|
+
def get_attributes(amazon_order_id, marketplace_ids, rate_limit: 1.0)
|
180
206
|
path = "/messaging/v1/orders/#{amazon_order_id}/attributes"
|
181
207
|
params = {
|
182
208
|
"marketplaceIds" => marketplace_ids,
|
183
209
|
}.compact
|
184
210
|
|
185
|
-
rate_limit
|
211
|
+
meter(rate_limit).get(path, params:)
|
186
212
|
end
|
187
213
|
|
188
214
|
# Sends a message to a buyer to share a digital access key needed to utilize digital content in their order.
|
189
215
|
#
|
190
|
-
# @
|
216
|
+
# @note This operation can make a static sandbox call.
|
217
|
+
# @param amazon_order_id [String] An Amazon order identifier. This specifies the order for which a message is
|
191
218
|
# sent.
|
192
|
-
# @param [Array<String>]
|
219
|
+
# @param marketplace_ids [Array<String>] A marketplace identifier. This specifies the marketplace in which the
|
193
220
|
# order was placed. Only one marketplace can be specified.
|
194
|
-
# @param [Hash]
|
221
|
+
# @param body [Hash]
|
222
|
+
# @param rate_limit [Float] Requests per second
|
195
223
|
# @return [Hash] The API response
|
196
|
-
def create_digital_access_key(amazon_order_id, marketplace_ids, body)
|
224
|
+
def create_digital_access_key(amazon_order_id, marketplace_ids, body, rate_limit: 1.0)
|
197
225
|
path = "/messaging/v1/orders/#{amazon_order_id}/messages/digitalAccessKey"
|
198
226
|
params = {
|
199
227
|
"marketplaceIds" => marketplace_ids,
|
200
228
|
}.compact
|
201
229
|
|
202
|
-
rate_limit
|
230
|
+
meter(rate_limit).post(path, body:, params:)
|
203
231
|
end
|
204
232
|
|
205
233
|
# Sends a critical message to a buyer that an unexpected problem was encountered affecting the completion of the
|
206
234
|
# order.
|
207
235
|
#
|
208
|
-
# @
|
236
|
+
# @note This operation can make a static sandbox call.
|
237
|
+
# @param amazon_order_id [String] An Amazon order identifier. This specifies the order for which a message is
|
209
238
|
# sent.
|
210
|
-
# @param [Array<String>]
|
239
|
+
# @param marketplace_ids [Array<String>] A marketplace identifier. This specifies the marketplace in which the
|
211
240
|
# order was placed. Only one marketplace can be specified.
|
212
|
-
# @param [Hash]
|
241
|
+
# @param body [Hash]
|
242
|
+
# @param rate_limit [Float] Requests per second
|
213
243
|
# @return [Hash] The API response
|
214
|
-
def create_unexpected_problem(amazon_order_id, marketplace_ids, body)
|
244
|
+
def create_unexpected_problem(amazon_order_id, marketplace_ids, body, rate_limit: 1.0)
|
215
245
|
path = "/messaging/v1/orders/#{amazon_order_id}/messages/unexpectedProblem"
|
216
246
|
params = {
|
217
247
|
"marketplaceIds" => marketplace_ids,
|
218
248
|
}.compact
|
219
249
|
|
220
|
-
rate_limit
|
250
|
+
meter(rate_limit).post(path, body:, params:)
|
221
251
|
end
|
222
252
|
|
223
253
|
# Sends a message providing the buyer an invoice
|
224
254
|
#
|
225
|
-
# @
|
255
|
+
# @note This operation can make a static sandbox call.
|
256
|
+
# @param amazon_order_id [String] An Amazon order identifier. This specifies the order for which a message is
|
226
257
|
# sent.
|
227
|
-
# @param [Array<String>]
|
258
|
+
# @param marketplace_ids [Array<String>] A marketplace identifier. This specifies the marketplace in which the
|
228
259
|
# order was placed. Only one marketplace can be specified.
|
229
|
-
# @param [Hash]
|
260
|
+
# @param body [Hash]
|
261
|
+
# @param rate_limit [Float] Requests per second
|
230
262
|
# @return [Hash] The API response
|
231
|
-
def send_invoice(amazon_order_id, marketplace_ids, body)
|
263
|
+
def send_invoice(amazon_order_id, marketplace_ids, body, rate_limit: nil)
|
232
264
|
path = "/messaging/v1/orders/#{amazon_order_id}/messages/invoice"
|
233
265
|
params = {
|
234
266
|
"marketplaceIds" => marketplace_ids,
|
@@ -3,6 +3,12 @@
|
|
3
3
|
require "peddler/api"
|
4
4
|
|
5
5
|
module Peddler
|
6
|
+
class << self
|
7
|
+
def notifications_v1(...)
|
8
|
+
API::NotificationsV1.new(...)
|
9
|
+
end
|
10
|
+
end
|
11
|
+
|
6
12
|
class API
|
7
13
|
# Selling Partner API for Notifications
|
8
14
|
#
|
@@ -16,15 +22,19 @@ module Peddler
|
|
16
22
|
# subscription's information. You can use this API to get subscription information when you do not have a
|
17
23
|
# subscription identifier.
|
18
24
|
#
|
19
|
-
# @
|
25
|
+
# @note This operation can make a static sandbox call.
|
26
|
+
# @param payload_version [String] The version of the payload object to be used in the notification.
|
27
|
+
# @param rate_limit [Float] Requests per second
|
28
|
+
# @param notification_type [String] The type of notification. For more information about notification types, refer
|
29
|
+
# to [Notification Type Values](https://developer-docs.amazon.com/sp-api/docs/notification-type-values).
|
20
30
|
# @return [Hash] The API response
|
21
|
-
def get_subscription(payload_version: nil)
|
31
|
+
def get_subscription(notification_type, payload_version: nil, rate_limit: 1.0)
|
22
32
|
path = "/notifications/v1/subscriptions/#{notification_type}"
|
23
33
|
params = {
|
24
34
|
"payloadVersion" => payload_version,
|
25
35
|
}.compact
|
26
36
|
|
27
|
-
rate_limit
|
37
|
+
meter(rate_limit).get(path, params:)
|
28
38
|
end
|
29
39
|
|
30
40
|
# Creates a subscription for the specified notification type to be delivered to the specified destination. Before
|
@@ -32,24 +42,32 @@ module Peddler
|
|
32
42
|
# where the specified notification type supports multiple payload versions, you can utilize this API to subscribe
|
33
43
|
# to a different payload version if you already have an existing subscription for a different payload version.
|
34
44
|
#
|
35
|
-
# @
|
45
|
+
# @note This operation can make a static sandbox call.
|
46
|
+
# @param body [Hash]
|
47
|
+
# @param rate_limit [Float] Requests per second
|
48
|
+
# @param notification_type [String] The type of notification. For more information about notification types, refer
|
49
|
+
# to [Notification Type Values](https://developer-docs.amazon.com/sp-api/docs/notification-type-values).
|
36
50
|
# @return [Hash] The API response
|
37
|
-
def create_subscription(body)
|
51
|
+
def create_subscription(body, notification_type, rate_limit: 1.0)
|
38
52
|
path = "/notifications/v1/subscriptions/#{notification_type}"
|
39
53
|
|
40
|
-
rate_limit
|
54
|
+
meter(rate_limit).post(path, body:)
|
41
55
|
end
|
42
56
|
|
43
57
|
# Returns information about a subscription for the specified notification type. The `getSubscriptionById`
|
44
58
|
# operation is grantless. For more information, refer to [Grantless
|
45
59
|
# operations](https://developer-docs.amazon.com/sp-api/docs/grantless-operations).
|
46
60
|
#
|
47
|
-
# @
|
61
|
+
# @note This operation can make a static sandbox call.
|
62
|
+
# @param subscription_id [String] The identifier for the subscription that you want to get.
|
63
|
+
# @param rate_limit [Float] Requests per second
|
64
|
+
# @param notification_type [String] The type of notification. For more information about notification types, refer
|
65
|
+
# to [Notification Type Values](https://developer-docs.amazon.com/sp-api/docs/notification-type-values).
|
48
66
|
# @return [Hash] The API response
|
49
|
-
def get_subscription_by_id(subscription_id)
|
67
|
+
def get_subscription_by_id(subscription_id, notification_type, rate_limit: 1.0)
|
50
68
|
path = "/notifications/v1/subscriptions/#{notification_type}/#{subscription_id}"
|
51
69
|
|
52
|
-
rate_limit
|
70
|
+
meter(rate_limit).get(path)
|
53
71
|
end
|
54
72
|
|
55
73
|
# Deletes the subscription indicated by the subscription identifier and notification type that you specify. The
|
@@ -58,56 +76,69 @@ module Peddler
|
|
58
76
|
# `deleteSubscriptionById` operation is grantless. For more information, refer to [Grantless
|
59
77
|
# operations](https://developer-docs.amazon.com/sp-api/docs/grantless-operations).
|
60
78
|
#
|
61
|
-
# @
|
79
|
+
# @note This operation can make a static sandbox call.
|
80
|
+
# @param subscription_id [String] The identifier for the subscription that you want to delete.
|
81
|
+
# @param rate_limit [Float] Requests per second
|
82
|
+
# @param notification_type [String] The type of notification. For more information about notification types, refer
|
83
|
+
# to [Notification Type Values](https://developer-docs.amazon.com/sp-api/docs/notification-type-values).
|
62
84
|
# @return [Hash] The API response
|
63
|
-
def delete_subscription_by_id(subscription_id)
|
85
|
+
def delete_subscription_by_id(subscription_id, notification_type, rate_limit: 1.0)
|
64
86
|
path = "/notifications/v1/subscriptions/#{notification_type}/#{subscription_id}"
|
65
87
|
|
66
|
-
rate_limit
|
88
|
+
meter(rate_limit).delete(path)
|
67
89
|
end
|
68
90
|
|
69
91
|
# Returns information about all destinations. The `getDestinations` operation is grantless. For more information,
|
70
92
|
# refer to [Grantless operations](https://developer-docs.amazon.com/sp-api/docs/grantless-operations).
|
93
|
+
#
|
94
|
+
# @note This operation can make a static sandbox call.
|
95
|
+
# @param rate_limit [Float] Requests per second
|
71
96
|
# @return [Hash] The API response
|
72
|
-
def get_destinations
|
97
|
+
def get_destinations(rate_limit: 1.0)
|
73
98
|
path = "/notifications/v1/destinations"
|
74
99
|
|
75
|
-
rate_limit
|
100
|
+
meter(rate_limit).get(path)
|
76
101
|
end
|
77
102
|
|
78
103
|
# Creates a destination resource to receive notifications. The `createDestination` operation is grantless. For
|
79
104
|
# more information, refer to [Grantless
|
80
105
|
# operations](https://developer-docs.amazon.com/sp-api/docs/grantless-operations).
|
81
106
|
#
|
82
|
-
# @
|
107
|
+
# @note This operation can make a static sandbox call.
|
108
|
+
# @param body [Hash]
|
109
|
+
# @param rate_limit [Float] Requests per second
|
83
110
|
# @return [Hash] The API response
|
84
|
-
def create_destination(body)
|
111
|
+
def create_destination(body, rate_limit: 1.0)
|
85
112
|
path = "/notifications/v1/destinations"
|
86
113
|
|
87
|
-
rate_limit
|
114
|
+
meter(rate_limit).post(path, body:)
|
88
115
|
end
|
89
116
|
|
90
117
|
# Returns information about the destination that you specify. The `getDestination` operation is grantless. For
|
91
118
|
# more information, refer to [Grantless
|
92
119
|
# operations](https://developer-docs.amazon.com/sp-api/docs/grantless-operations).
|
93
120
|
#
|
94
|
-
# @
|
121
|
+
# @note This operation can make a static sandbox call.
|
122
|
+
# @param destination_id [String] The identifier generated when you created the destination.
|
123
|
+
# @param rate_limit [Float] Requests per second
|
95
124
|
# @return [Hash] The API response
|
96
|
-
def get_destination(destination_id)
|
125
|
+
def get_destination(destination_id, rate_limit: 1.0)
|
97
126
|
path = "/notifications/v1/destinations/#{destination_id}"
|
98
127
|
|
99
|
-
rate_limit
|
128
|
+
meter(rate_limit).get(path)
|
100
129
|
end
|
101
130
|
|
102
131
|
# Deletes the destination that you specify. The `deleteDestination` operation is grantless. For more information,
|
103
132
|
# refer to [Grantless operations](https://developer-docs.amazon.com/sp-api/docs/grantless-operations).
|
104
133
|
#
|
105
|
-
# @
|
134
|
+
# @note This operation can make a static sandbox call.
|
135
|
+
# @param destination_id [String] The identifier for the destination that you want to delete.
|
136
|
+
# @param rate_limit [Float] Requests per second
|
106
137
|
# @return [Hash] The API response
|
107
|
-
def delete_destination(destination_id)
|
138
|
+
def delete_destination(destination_id, rate_limit: 1.0)
|
108
139
|
path = "/notifications/v1/destinations/#{destination_id}"
|
109
140
|
|
110
|
-
rate_limit
|
141
|
+
meter(rate_limit).delete(path)
|
111
142
|
end
|
112
143
|
end
|
113
144
|
end
|