Class: Peddler::API::FulfillmentInbound20240320

Inherits:
Peddler::API
  • Object
show all
Defined in:
lib/peddler/api/fulfillment_inbound_2024_03_20.rb

Overview

The Selling Partner API for FBA inbound operations.

The Selling Partner API for Fulfillment By Amazon (FBA) Inbound. The FBA Inbound API enables building inbound workflows to create, manage, and send shipments into Amazon’s fulfillment network. The API has interoperability with the Send-to-Amazon user interface.

Instance Attribute Summary

Attributes inherited from Peddler::API

#access_token, #endpoint

Instance Method Summary collapse

Methods inherited from Peddler::API

#cannot_sandbox!, #endpoint_uri, #http, #initialize, #meter, #must_sandbox!, #retriable, #sandbox, #sandbox?, #use, #via

Constructor Details

This class inherits a constructor from Peddler::API

Instance Method Details

#cancel_inbound_plan(inbound_plan_id, rate_limit: 2.0) ⇒ Hash

Note:

This operation can make a static sandbox call.

Cancels an Inbound Plan. Charges may apply if the cancellation is performed outside of a void window. The window for Amazon Partnered Carriers is 24 hours for Small Parcel Delivery (SPD) and one hour for Less-Than-Truckload (LTL) carrier shipments.

Parameters:

  • inbound_plan_id (String)

    Identifier of an inbound plan.

  • rate_limit (Float) (defaults to: 2.0)

    Requests per second

Returns:

  • (Hash)

    The API response



98
99
100
101
102
# File 'lib/peddler/api/fulfillment_inbound_2024_03_20.rb', line 98

def cancel_inbound_plan(inbound_plan_id, rate_limit: 2.0)
  path = "/inbound/fba/2024-03-20/inboundPlans/#{inbound_plan_id}/cancellation"

  meter(rate_limit).put(path)
end

#cancel_self_ship_appointment(inbound_plan_id, shipment_id, body, rate_limit: 2.0) ⇒ Hash

Note:

This operation can make a static sandbox call.

Cancels a self-ship appointment slot against a shipment.

Parameters:

  • inbound_plan_id (String)

    Identifier of an inbound plan.

  • shipment_id (String)

    Identifier of a shipment. A shipment contains the boxes and units being inbounded.

  • body (Hash)

    The body of the request to ‘cancelSelfShipAppointment`.

  • rate_limit (Float) (defaults to: 2.0)

    Requests per second

Returns:

  • (Hash)

    The API response



553
554
555
556
557
# File 'lib/peddler/api/fulfillment_inbound_2024_03_20.rb', line 553

def cancel_self_ship_appointment(inbound_plan_id, shipment_id, body, rate_limit: 2.0)
  path = "/inbound/fba/2024-03-20/inboundPlans/#{inbound_plan_id}/shipments/#{shipment_id}/selfShipAppointmentCancellation"

  meter(rate_limit).put(path, body:)
end

#confirm_delivery_window_options(inbound_plan_id, shipment_id, delivery_window_option_id, rate_limit: 2.0) ⇒ Hash

Note:

This operation can make a static sandbox call.

Confirms the delivery window option for chosen shipment within an inbound plan. A placement option must be confirmed prior to use of this API. Once confirmed, new delivery window options cannot be generated, but the chosen delivery window option can be updated before shipment closure. The window is used to provide the expected time when a shipment will arrive at the warehouse. All transportation options which have the program ‘CONFIRMED_DELIVERY_WINDOW` require a delivery window to be confirmed prior to transportation option confirmation.

Parameters:

  • inbound_plan_id (String)

    Identifier of an inbound plan.

  • shipment_id (String)

    The shipment to confirm the delivery window option for.

  • delivery_window_option_id (String)

    The id of the delivery window option to be confirmed.

  • rate_limit (Float) (defaults to: 2.0)

    Requests per second

Returns:

  • (Hash)

    The API response



482
483
484
485
486
# File 'lib/peddler/api/fulfillment_inbound_2024_03_20.rb', line 482

def confirm_delivery_window_options(inbound_plan_id, shipment_id, delivery_window_option_id, rate_limit: 2.0)
  path = "/inbound/fba/2024-03-20/inboundPlans/#{inbound_plan_id}/shipments/#{shipment_id}/deliveryWindowOptions/#{delivery_window_option_id}/confirmation"

  meter(rate_limit).post(path)
end

#confirm_packing_option(inbound_plan_id, packing_option_id, rate_limit: 2.0) ⇒ Hash

Note:

This operation can make a static sandbox call.

Confirms the packing option for an inbound plan.

Parameters:

  • inbound_plan_id (String)

    Identifier of an inbound plan.

  • packing_option_id (String)

    Identifier of a packing option.

  • rate_limit (Float) (defaults to: 2.0)

    Requests per second

Returns:

  • (Hash)

    The API response



238
239
240
241
242
# File 'lib/peddler/api/fulfillment_inbound_2024_03_20.rb', line 238

def confirm_packing_option(inbound_plan_id, packing_option_id, rate_limit: 2.0)
  path = "/inbound/fba/2024-03-20/inboundPlans/#{inbound_plan_id}/packingOptions/#{packing_option_id}/confirmation"

  meter(rate_limit).post(path)
end

#confirm_placement_option(inbound_plan_id, placement_option_id, rate_limit: 2.0) ⇒ Hash

Note:

This operation can make a static sandbox call.

Confirms the placement option for an inbound plan. Once confirmed, it cannot be changed for the Inbound Plan.

Parameters:

  • inbound_plan_id (String)

    Identifier of an inbound plan.

  • placement_option_id (String)

    The identifier of a placement option. A placement option represents the shipment splits and destinations of SKUs.

  • rate_limit (Float) (defaults to: 2.0)

    Requests per second

Returns:

  • (Hash)

    The API response



307
308
309
310
311
# File 'lib/peddler/api/fulfillment_inbound_2024_03_20.rb', line 307

def confirm_placement_option(inbound_plan_id, placement_option_id, rate_limit: 2.0)
  path = "/inbound/fba/2024-03-20/inboundPlans/#{inbound_plan_id}/placementOptions/#{placement_option_id}/confirmation"

  meter(rate_limit).post(path)
end

#confirm_shipment_content_update_preview(inbound_plan_id, shipment_id, content_update_preview_id, rate_limit: 2.0) ⇒ Hash

Note:

This operation can make a static sandbox call.

Confirm a shipment content update preview and accept the changes in transportation cost.

Parameters:

  • inbound_plan_id (String)

    Identifier of an inbound plan.

  • shipment_id (String)

    Identifier of a shipment. A shipment contains the boxes and units being inbounded.

  • content_update_preview_id (String)

    Identifier of a content update preview.

  • rate_limit (Float) (defaults to: 2.0)

    Requests per second

Returns:

  • (Hash)

    The API response



412
413
414
415
416
417
# File 'lib/peddler/api/fulfillment_inbound_2024_03_20.rb', line 412

def confirm_shipment_content_update_preview(inbound_plan_id, shipment_id, content_update_preview_id,
  rate_limit: 2.0)
  path = "/inbound/fba/2024-03-20/inboundPlans/#{inbound_plan_id}/shipments/#{shipment_id}/contentUpdatePreviews/#{content_update_preview_id}/confirmation"

  meter(rate_limit).post(path)
end

#confirm_transportation_options(inbound_plan_id, body, rate_limit: 2.0) ⇒ Hash

Note:

This operation can make a static sandbox call.

Confirms all the transportation options for an inbound plan. A placement option must be confirmed prior to use of this API. Once confirmed, new transportation options can not be generated or confirmed for the Inbound Plan.

Parameters:

  • inbound_plan_id (String)

    Identifier of an inbound plan.

  • body (Hash)

    The body of the request to ‘confirmTransportationOptions`.

  • rate_limit (Float) (defaults to: 2.0)

    Requests per second

Returns:

  • (Hash)

    The API response



692
693
694
695
696
# File 'lib/peddler/api/fulfillment_inbound_2024_03_20.rb', line 692

def confirm_transportation_options(inbound_plan_id, body, rate_limit: 2.0)
  path = "/inbound/fba/2024-03-20/inboundPlans/#{inbound_plan_id}/transportationOptions/confirmation"

  meter(rate_limit).post(path, body:)
end

#create_inbound_plan(body, rate_limit: 2.0) ⇒ Hash

Note:

This operation can make a static sandbox call.

Creates an inbound plan. An inbound plan contains all the necessary information to send shipments into Amazon’s fufillment network.

Parameters:

  • body (Hash)

    The body of the request to ‘createInboundPlan`.

  • rate_limit (Float) (defaults to: 2.0)

    Requests per second

Returns:

  • (Hash)

    The API response



52
53
54
55
56
# File 'lib/peddler/api/fulfillment_inbound_2024_03_20.rb', line 52

def create_inbound_plan(body, rate_limit: 2.0)
  path = "/inbound/fba/2024-03-20/inboundPlans"

  meter(rate_limit).post(path, body:)
end

#create_marketplace_item_labels(body, rate_limit: 2.0) ⇒ Hash

Note:

This operation can make a static sandbox call.

For a given marketplace - creates labels for a list of mskus.

Parameters:

  • body (Hash)

    The body of the request to ‘createMarketplaceItemLabels`.

  • rate_limit (Float) (defaults to: 2.0)

    Requests per second

Returns:

  • (Hash)

    The API response



740
741
742
743
744
# File 'lib/peddler/api/fulfillment_inbound_2024_03_20.rb', line 740

def create_marketplace_item_labels(body, rate_limit: 2.0)
  path = "/inbound/fba/2024-03-20/items/labels"

  meter(rate_limit).post(path, body:)
end

#generate_delivery_window_options(inbound_plan_id, shipment_id, rate_limit: 2.0) ⇒ Hash

Note:

This operation can make a static sandbox call.

Generates available delivery window options for a given shipment.

Parameters:

  • inbound_plan_id (String)

    Identifier of an inbound plan.

  • shipment_id (String)

    The shipment to generate delivery window options for.

  • rate_limit (Float) (defaults to: 2.0)

    Requests per second

Returns:

  • (Hash)

    The API response



463
464
465
466
467
# File 'lib/peddler/api/fulfillment_inbound_2024_03_20.rb', line 463

def generate_delivery_window_options(inbound_plan_id, shipment_id, rate_limit: 2.0)
  path = "/inbound/fba/2024-03-20/inboundPlans/#{inbound_plan_id}/shipments/#{shipment_id}/deliveryWindowOptions"

  meter(rate_limit).post(path)
end

#generate_packing_options(inbound_plan_id, rate_limit: 2.0) ⇒ Hash

Note:

This operation can make a static sandbox call.

Generates available packing options for the inbound plan.

Parameters:

  • inbound_plan_id (String)

    Identifier of an inbound plan.

  • rate_limit (Float) (defaults to: 2.0)

    Requests per second

Returns:

  • (Hash)

    The API response



225
226
227
228
229
# File 'lib/peddler/api/fulfillment_inbound_2024_03_20.rb', line 225

def generate_packing_options(inbound_plan_id, rate_limit: 2.0)
  path = "/inbound/fba/2024-03-20/inboundPlans/#{inbound_plan_id}/packingOptions"

  meter(rate_limit).post(path)
end

#generate_placement_options(inbound_plan_id, body, rate_limit: 2.0) ⇒ Hash

Note:

This operation can make a static sandbox call.

Generates placement options for the inbound plan.

Parameters:

  • inbound_plan_id (String)

    Identifier of an inbound plan.

  • body (Hash)

    The body of the request to ‘generatePlacementOptions`.

  • rate_limit (Float) (defaults to: 2.0)

    Requests per second

Returns:

  • (Hash)

    The API response



293
294
295
296
297
# File 'lib/peddler/api/fulfillment_inbound_2024_03_20.rb', line 293

def generate_placement_options(inbound_plan_id, body, rate_limit: 2.0)
  path = "/inbound/fba/2024-03-20/inboundPlans/#{inbound_plan_id}/placementOptions"

  meter(rate_limit).post(path, body:)
end

#generate_self_ship_appointment_slots(inbound_plan_id, shipment_id, body, rate_limit: 2.0) ⇒ Hash

Note:

This operation can make a static sandbox call.

Initiates the process of generating the appointment slots list.

Parameters:

  • inbound_plan_id (String)

    Identifier of an inbound plan.

  • shipment_id (String)

    Identifier of a shipment. A shipment contains the boxes and units being inbounded.

  • body (Hash)

    The body of the request to ‘generateSelfShipAppointmentSlots`.

  • rate_limit (Float) (defaults to: 2.0)

    Requests per second

Returns:

  • (Hash)

    The API response



590
591
592
593
594
# File 'lib/peddler/api/fulfillment_inbound_2024_03_20.rb', line 590

def generate_self_ship_appointment_slots(inbound_plan_id, shipment_id, body, rate_limit: 2.0)
  path = "/inbound/fba/2024-03-20/inboundPlans/#{inbound_plan_id}/shipments/#{shipment_id}/selfShipAppointmentSlots"

  meter(rate_limit).post(path, body:)
end

#generate_shipment_content_update_previews(inbound_plan_id, shipment_id, body, rate_limit: 2.0) ⇒ Hash

Note:

This operation can make a static sandbox call.

Generate a shipment content update preview given a set of intended boxes and/or items for a shipment with a confirmed carrier. The shipment content update preview will be viewable with the updated costs and contents prior to confirmation.

Parameters:

  • inbound_plan_id (String)

    Identifier of an inbound plan.

  • shipment_id (String)

    Identifier of a shipment. A shipment contains the boxes and units being inbounded.

  • body (Hash)

    The body of the request to ‘generateShipmentContentUpdatePreviews`.

  • rate_limit (Float) (defaults to: 2.0)

    Requests per second

Returns:

  • (Hash)

    The API response



382
383
384
385
386
# File 'lib/peddler/api/fulfillment_inbound_2024_03_20.rb', line 382

def generate_shipment_content_update_previews(inbound_plan_id, shipment_id, body, rate_limit: 2.0)
  path = "/inbound/fba/2024-03-20/inboundPlans/#{inbound_plan_id}/shipments/#{shipment_id}/contentUpdatePreviews"

  meter(rate_limit).post(path, body:)
end

#generate_transportation_options(inbound_plan_id, body, rate_limit: 2.0) ⇒ Hash

Note:

This operation can make a static sandbox call.

Generates available transportation options for a given placement option.

Parameters:

  • inbound_plan_id (String)

    Identifier of an inbound plan.

  • body (Hash)

    The body of the request to ‘generateTransportationOptions`.

  • rate_limit (Float) (defaults to: 2.0)

    Requests per second

Returns:

  • (Hash)

    The API response



678
679
680
681
682
# File 'lib/peddler/api/fulfillment_inbound_2024_03_20.rb', line 678

def generate_transportation_options(inbound_plan_id, body, rate_limit: 2.0)
  path = "/inbound/fba/2024-03-20/inboundPlans/#{inbound_plan_id}/transportationOptions"

  meter(rate_limit).post(path, body:)
end

#get_delivery_challan_document(inbound_plan_id, shipment_id, rate_limit: 2.0) ⇒ Hash

Note:

This operation can make a static sandbox call.

Provide delivery challan document for PCP transportation in IN marketplace.

Parameters:

  • inbound_plan_id (String)

    Identifier of an inbound plan.

  • shipment_id (String)

    Identifier of a shipment. A shipment contains the boxes and units being inbounded.

  • rate_limit (Float) (defaults to: 2.0)

    Requests per second

Returns:

  • (Hash)

    The API response



426
427
428
429
430
# File 'lib/peddler/api/fulfillment_inbound_2024_03_20.rb', line 426

def get_delivery_challan_document(inbound_plan_id, shipment_id, rate_limit: 2.0)
  path = "/inbound/fba/2024-03-20/inboundPlans/#{inbound_plan_id}/shipments/#{shipment_id}/deliveryChallanDocument"

  meter(rate_limit).get(path)
end

#get_inbound_operation_status(operation_id, rate_limit: 2.0) ⇒ Hash

Note:

This operation can make a static sandbox call.

Gets the status of the processing of an asynchronous API call.

Parameters:

  • operation_id (String)

    Identifier of an asynchronous operation.

  • rate_limit (Float) (defaults to: 2.0)

    Requests per second

Returns:

  • (Hash)

    The API response



752
753
754
755
756
# File 'lib/peddler/api/fulfillment_inbound_2024_03_20.rb', line 752

def get_inbound_operation_status(operation_id, rate_limit: 2.0)
  path = "/inbound/fba/2024-03-20/operations/#{operation_id}"

  meter(rate_limit).get(path)
end

#get_inbound_plan(inbound_plan_id, rate_limit: 2.0) ⇒ Hash

Note:

This operation can make a static sandbox call.

Fetches the top level information about an inbound plan.

Parameters:

  • inbound_plan_id (String)

    Identifier of an inbound plan.

  • rate_limit (Float) (defaults to: 2.0)

    Requests per second

Returns:

  • (Hash)

    The API response



64
65
66
67
68
# File 'lib/peddler/api/fulfillment_inbound_2024_03_20.rb', line 64

def get_inbound_plan(inbound_plan_id, rate_limit: 2.0)
  path = "/inbound/fba/2024-03-20/inboundPlans/#{inbound_plan_id}"

  meter(rate_limit).get(path)
end

#get_self_ship_appointment_slots(inbound_plan_id, shipment_id, page_size: 10, pagination_token: nil, rate_limit: 2.0) ⇒ Hash

Note:

This operation can make a static sandbox call.

Retrieves a list of available self-ship appointment slots used to drop off a shipment at a warehouse.

Parameters:

  • inbound_plan_id (String)

    Identifier of an inbound plan.

  • shipment_id (String)

    Identifier of a shipment. A shipment contains the boxes and units being inbounded.

  • page_size (Integer) (defaults to: 10)

    The number of self ship appointment slots to return in the response matching the given query.

  • pagination_token (String) (defaults to: nil)

    A token to fetch a certain page when there are multiple pages worth of results. The value of this token is fetched from the ‘pagination` returned in the API response. In the absence of the token value from the query parameter the API returns the first page of the result.

  • rate_limit (Float) (defaults to: 2.0)

    Requests per second

Returns:

  • (Hash)

    The API response



571
572
573
574
575
576
577
578
579
580
# File 'lib/peddler/api/fulfillment_inbound_2024_03_20.rb', line 571

def get_self_ship_appointment_slots(inbound_plan_id, shipment_id, page_size: 10, pagination_token: nil,
  rate_limit: 2.0)
  path = "/inbound/fba/2024-03-20/inboundPlans/#{inbound_plan_id}/shipments/#{shipment_id}/selfShipAppointmentSlots"
  params = {
    "pageSize" => page_size,
    "paginationToken" => pagination_token,
  }.compact

  meter(rate_limit).get(path, params:)
end

#get_shipment(inbound_plan_id, shipment_id, rate_limit: 2.0) ⇒ Hash

Note:

This operation can make a static sandbox call.

Provides the full details for a specific shipment within an inbound plan. The ‘transportationOptionId` inside `acceptedTransportationSelection` can be used to retrieve the transportation details for the shipment.

Parameters:

  • inbound_plan_id (String)

    Identifier of an inbound plan.

  • shipment_id (String)

    Identifier of a shipment. A shipment contains the boxes and units being inbounded.

  • rate_limit (Float) (defaults to: 2.0)

    Requests per second

Returns:

  • (Hash)

    The API response



321
322
323
324
325
# File 'lib/peddler/api/fulfillment_inbound_2024_03_20.rb', line 321

def get_shipment(inbound_plan_id, shipment_id, rate_limit: 2.0)
  path = "/inbound/fba/2024-03-20/inboundPlans/#{inbound_plan_id}/shipments/#{shipment_id}"

  meter(rate_limit).get(path)
end

#get_shipment_content_update_preview(inbound_plan_id, shipment_id, content_update_preview_id, rate_limit: 2.0) ⇒ Hash

Note:

This operation can make a static sandbox call.

Retrieve a shipment content update preview which provides a summary of the requested shipment content changes along with the transportation cost implications of the change that can only be confirmed prior to the expiry date specified.

Parameters:

  • inbound_plan_id (String)

    Identifier of an inbound plan.

  • shipment_id (String)

    Identifier of a shipment. A shipment contains the boxes and units being inbounded.

  • content_update_preview_id (String)

    Identifier of a content update preview.

  • rate_limit (Float) (defaults to: 2.0)

    Requests per second

Returns:

  • (Hash)

    The API response



398
399
400
401
402
# File 'lib/peddler/api/fulfillment_inbound_2024_03_20.rb', line 398

def get_shipment_content_update_preview(inbound_plan_id, shipment_id, content_update_preview_id, rate_limit: 2.0)
  path = "/inbound/fba/2024-03-20/inboundPlans/#{inbound_plan_id}/shipments/#{shipment_id}/contentUpdatePreviews/#{content_update_preview_id}"

  meter(rate_limit).get(path)
end

#list_delivery_window_options(inbound_plan_id, shipment_id, page_size: 10, pagination_token: nil, rate_limit: 2.0) ⇒ Hash

Note:

This operation can make a static sandbox call.

Retrieves all delivery window options for a shipment. Delivery window options must first be generated by the ‘generateDeliveryWindowOptions` operation before becoming available.

Parameters:

  • inbound_plan_id (String)

    Identifier of an inbound plan.

  • shipment_id (String)

    The shipment to get delivery window options for.

  • page_size (Integer) (defaults to: 10)

    The number of delivery window options to return in the response matching the given query.

  • pagination_token (String) (defaults to: nil)

    A token to fetch a certain page when there are multiple pages worth of results. The value of this token is fetched from the ‘pagination` returned in the API response. In the absence of the token value from the query parameter the API returns the first page of the result.

  • rate_limit (Float) (defaults to: 2.0)

    Requests per second

Returns:

  • (Hash)

    The API response



445
446
447
448
449
450
451
452
453
454
# File 'lib/peddler/api/fulfillment_inbound_2024_03_20.rb', line 445

def list_delivery_window_options(inbound_plan_id, shipment_id, page_size: 10, pagination_token: nil,
  rate_limit: 2.0)
  path = "/inbound/fba/2024-03-20/inboundPlans/#{inbound_plan_id}/shipments/#{shipment_id}/deliveryWindowOptions"
  params = {
    "pageSize" => page_size,
    "paginationToken" => pagination_token,
  }.compact

  meter(rate_limit).get(path, params:)
end

#list_inbound_plan_boxes(inbound_plan_id, page_size: 10, pagination_token: nil, rate_limit: 2.0) ⇒ Hash

Note:

This operation can make a static sandbox call.

Provides a paginated list of box packages in an inbound plan.

Parameters:

  • inbound_plan_id (String)

    Identifier of an inbound plan.

  • page_size (Integer) (defaults to: 10)

    The number of boxes to return in the response matching the given query.

  • pagination_token (String) (defaults to: nil)

    A token to fetch a certain page when there are multiple pages worth of results. The value of this token is fetched from the ‘pagination` returned in the API response. In the absence of the token value from the query parameter the API returns the first page of the result.

  • rate_limit (Float) (defaults to: 2.0)

    Requests per second

Returns:

  • (Hash)

    The API response



80
81
82
83
84
85
86
87
88
# File 'lib/peddler/api/fulfillment_inbound_2024_03_20.rb', line 80

def list_inbound_plan_boxes(inbound_plan_id, page_size: 10, pagination_token: nil, rate_limit: 2.0)
  path = "/inbound/fba/2024-03-20/inboundPlans/#{inbound_plan_id}/boxes"
  params = {
    "pageSize" => page_size,
    "paginationToken" => pagination_token,
  }.compact

  meter(rate_limit).get(path, params:)
end

#list_inbound_plan_items(inbound_plan_id, page_size: 10, pagination_token: nil, rate_limit: 2.0) ⇒ Hash

Note:

This operation can make a static sandbox call.

Provides a paginated list of item packages in an inbound plan.

Parameters:

  • inbound_plan_id (String)

    Identifier of an inbound plan.

  • page_size (Integer) (defaults to: 10)

    The number of items to return in the response matching the given query.

  • pagination_token (String) (defaults to: nil)

    A token to fetch a certain page when there are multiple pages worth of results. The value of this token is fetched from the ‘pagination` returned in the API response. In the absence of the token value from the query parameter the API returns the first page of the result.

  • rate_limit (Float) (defaults to: 2.0)

    Requests per second

Returns:

  • (Hash)

    The API response



114
115
116
117
118
119
120
121
122
# File 'lib/peddler/api/fulfillment_inbound_2024_03_20.rb', line 114

def list_inbound_plan_items(inbound_plan_id, page_size: 10, pagination_token: nil, rate_limit: 2.0)
  path = "/inbound/fba/2024-03-20/inboundPlans/#{inbound_plan_id}/items"
  params = {
    "pageSize" => page_size,
    "paginationToken" => pagination_token,
  }.compact

  meter(rate_limit).get(path, params:)
end

#list_inbound_plan_pallets(inbound_plan_id, page_size: 10, pagination_token: nil, rate_limit: 2.0) ⇒ Hash

Note:

This operation can make a static sandbox call.

Provides a paginated list of pallet packages in an inbound plan. An inbound plan will have pallets when the related details are provided after generating Less-Than-Truckload (LTL) carrier shipments.

Parameters:

  • inbound_plan_id (String)

    Identifier of an inbound plan.

  • page_size (Integer) (defaults to: 10)

    The number of pallets to return in the response matching the given query.

  • pagination_token (String) (defaults to: nil)

    A token to fetch a certain page when there are multiple pages worth of results. The value of this token is fetched from the ‘pagination` returned in the API response. In the absence of the token value from the query parameter the API returns the first page of the result.

  • rate_limit (Float) (defaults to: 2.0)

    Requests per second

Returns:

  • (Hash)

    The API response



255
256
257
258
259
260
261
262
263
# File 'lib/peddler/api/fulfillment_inbound_2024_03_20.rb', line 255

def list_inbound_plan_pallets(inbound_plan_id, page_size: 10, pagination_token: nil, rate_limit: 2.0)
  path = "/inbound/fba/2024-03-20/inboundPlans/#{inbound_plan_id}/pallets"
  params = {
    "pageSize" => page_size,
    "paginationToken" => pagination_token,
  }.compact

  meter(rate_limit).get(path, params:)
end

#list_inbound_plans(page_size: 10, pagination_token: nil, status: nil, sort_by: nil, sort_order: nil, rate_limit: 2.0) ⇒ Hash

Note:

This operation can make a static sandbox call.

Provides a list of inbound plans with minimal information.

Parameters:

  • page_size (Integer) (defaults to: 10)

    The number of inbound plans to return in the response matching the given query.

  • pagination_token (String) (defaults to: nil)

    A token to fetch a certain page when there are multiple pages worth of results. The value of this token is fetched from the ‘pagination` returned in the API response. In the absence of the token value from the query parameter the API returns the first page of the result.

  • status (String) (defaults to: nil)

    The status of an inbound plan.

  • sort_by (String) (defaults to: nil)

    Sort by field.

  • sort_order (String) (defaults to: nil)

    The sort order.

  • rate_limit (Float) (defaults to: 2.0)

    Requests per second

Returns:

  • (Hash)

    The API response



31
32
33
34
35
36
37
38
39
40
41
42
43
# File 'lib/peddler/api/fulfillment_inbound_2024_03_20.rb', line 31

def list_inbound_plans(page_size: 10, pagination_token: nil, status: nil, sort_by: nil, sort_order: nil,
  rate_limit: 2.0)
  path = "/inbound/fba/2024-03-20/inboundPlans"
  params = {
    "pageSize" => page_size,
    "paginationToken" => pagination_token,
    "status" => status,
    "sortBy" => sort_by,
    "sortOrder" => sort_order,
  }.compact

  meter(rate_limit).get(path, params:)
end

#list_item_compliance_details(mskus, marketplace_id, rate_limit: 2.0) ⇒ Hash

Note:

This operation can make a static sandbox call.

List the inbound compliance details for MSKUs in a given marketplace.

Parameters:

  • mskus (Array<String>)

    List of merchant SKUs - a merchant-supplied identifier for a specific SKU.

  • marketplace_id (String)

    The Marketplace ID. Refer to [Marketplace IDs](developer-docs.amazon.com/sp-api/docs/marketplace-ids) for a list of possible values.

  • rate_limit (Float) (defaults to: 2.0)

    Requests per second

Returns:

  • (Hash)

    The API response



706
707
708
709
710
711
712
713
714
# File 'lib/peddler/api/fulfillment_inbound_2024_03_20.rb', line 706

def list_item_compliance_details(mskus, marketplace_id, rate_limit: 2.0)
  path = "/inbound/fba/2024-03-20/items/compliance"
  params = {
    "mskus" => mskus,
    "marketplaceId" => marketplace_id,
  }.compact

  meter(rate_limit).get(path, params:)
end

#list_packing_group_boxes(inbound_plan_id, packing_group_id, page_size: 10, pagination_token: nil, rate_limit: 2.0) ⇒ Hash

Note:

This operation can make a static sandbox call.

Retrieves a page of boxes from a given packing group. These boxes were previously provided through the ‘setPackingInformation` operation. This API is used for workflows where boxes are packed before Amazon determines shipment splits.

Parameters:

  • inbound_plan_id (String)

    Identifier of an inbound plan.

  • packing_group_id (String)

    Identifier of a packing group.

  • page_size (Integer) (defaults to: 10)

    The number of packing group boxes to return in the response matching the given query.

  • pagination_token (String) (defaults to: nil)

    A token to fetch a certain page when there are multiple pages worth of results. The value of this token is fetched from the ‘pagination` returned in the API response. In the absence of the token value from the query parameter the API returns the first page of the result.

  • rate_limit (Float) (defaults to: 2.0)

    Requests per second

Returns:

  • (Hash)

    The API response



150
151
152
153
154
155
156
157
158
159
# File 'lib/peddler/api/fulfillment_inbound_2024_03_20.rb', line 150

def list_packing_group_boxes(inbound_plan_id, packing_group_id, page_size: 10, pagination_token: nil,
  rate_limit: 2.0)
  path = "/inbound/fba/2024-03-20/inboundPlans/#{inbound_plan_id}/packingGroups/#{packing_group_id}/boxes"
  params = {
    "pageSize" => page_size,
    "paginationToken" => pagination_token,
  }.compact

  meter(rate_limit).get(path, params:)
end

#list_packing_group_items(inbound_plan_id, packing_group_id, page_size: 10, pagination_token: nil, rate_limit: 2.0) ⇒ Hash

Note:

This operation can make a static sandbox call.

Retrieves a page of items in a given packing group. Packing options must first be generated by the corresponding operation before packing group items can be listed.

Parameters:

  • inbound_plan_id (String)

    Identifier of an inbound plan.

  • packing_group_id (String)

    Identifier of a packing group.

  • page_size (Integer) (defaults to: 10)

    The number of packing group items to return in the response matching the given query.

  • pagination_token (String) (defaults to: nil)

    A token to fetch a certain page when there are multiple pages worth of results. The value of this token is fetched from the ‘pagination` returned in the API response. In the absence of the token value from the query parameter the API returns the first page of the result.

  • rate_limit (Float) (defaults to: 2.0)

    Requests per second

Returns:

  • (Hash)

    The API response



173
174
175
176
177
178
179
180
181
182
# File 'lib/peddler/api/fulfillment_inbound_2024_03_20.rb', line 173

def list_packing_group_items(inbound_plan_id, packing_group_id, page_size: 10, pagination_token: nil,
  rate_limit: 2.0)
  path = "/inbound/fba/2024-03-20/inboundPlans/#{inbound_plan_id}/packingGroups/#{packing_group_id}/items"
  params = {
    "pageSize" => page_size,
    "paginationToken" => pagination_token,
  }.compact

  meter(rate_limit).get(path, params:)
end

#list_packing_options(inbound_plan_id, page_size: 10, pagination_token: nil, rate_limit: 2.0) ⇒ Hash

Note:

This operation can make a static sandbox call.

Retrieves a list of all packing options for an inbound plan. Packing options must first be generated by the corresponding operation before becoming available.

Parameters:

  • inbound_plan_id (String)

    Identifier of an inbound plan.

  • page_size (Integer) (defaults to: 10)

    The number of packing options to return in the response matching the given query.

  • pagination_token (String) (defaults to: nil)

    A token to fetch a certain page when there are multiple pages worth of results. The value of this token is fetched from the ‘pagination` returned in the API response. In the absence of the token value from the query parameter the API returns the first page of the result.

  • rate_limit (Float) (defaults to: 2.0)

    Requests per second

Returns:

  • (Hash)

    The API response



209
210
211
212
213
214
215
216
217
# File 'lib/peddler/api/fulfillment_inbound_2024_03_20.rb', line 209

def list_packing_options(inbound_plan_id, page_size: 10, pagination_token: nil, rate_limit: 2.0)
  path = "/inbound/fba/2024-03-20/inboundPlans/#{inbound_plan_id}/packingOptions"
  params = {
    "pageSize" => page_size,
    "paginationToken" => pagination_token,
  }.compact

  meter(rate_limit).get(path, params:)
end

#list_placement_options(inbound_plan_id, page_size: 10, pagination_token: nil, rate_limit: 2.0) ⇒ Hash

Note:

This operation can make a static sandbox call.

Provides a list of all placement options for an inbound plan. Placement options must first be generated by the corresponding operation before becoming available.

Parameters:

  • inbound_plan_id (String)

    Identifier of an inbound plan.

  • page_size (Integer) (defaults to: 10)

    The number of placement options to return in the response matching the given query.

  • pagination_token (String) (defaults to: nil)

    A token to fetch a certain page when there are multiple pages worth of results. The value of this token is fetched from the ‘pagination` returned in the API response. In the absence of the token value from the query parameter the API returns the first page of the result.

  • rate_limit (Float) (defaults to: 2.0)

    Requests per second

Returns:

  • (Hash)

    The API response



276
277
278
279
280
281
282
283
284
# File 'lib/peddler/api/fulfillment_inbound_2024_03_20.rb', line 276

def list_placement_options(inbound_plan_id, page_size: 10, pagination_token: nil, rate_limit: 2.0)
  path = "/inbound/fba/2024-03-20/inboundPlans/#{inbound_plan_id}/placementOptions"
  params = {
    "pageSize" => page_size,
    "paginationToken" => pagination_token,
  }.compact

  meter(rate_limit).get(path, params:)
end

#list_shipment_boxes(inbound_plan_id, shipment_id, page_size: 10, pagination_token: nil, rate_limit: 2.0) ⇒ Hash

Note:

This operation can make a static sandbox call.

Provides a paginated list of box packages in a shipment.

Parameters:

  • inbound_plan_id (String)

    Identifier of an inbound plan.

  • shipment_id (String)

    Identifier of a shipment. A shipment contains the boxes and units being inbounded.

  • page_size (Integer) (defaults to: 10)

    The number of boxes to return in the response matching the given query.

  • pagination_token (String) (defaults to: nil)

    A token to fetch a certain page when there are multiple pages worth of results. The value of this token is fetched from the ‘pagination` returned in the API response. In the absence of the token value from the query parameter the API returns the first page of the result.

  • rate_limit (Float) (defaults to: 2.0)

    Requests per second

Returns:

  • (Hash)

    The API response



338
339
340
341
342
343
344
345
346
# File 'lib/peddler/api/fulfillment_inbound_2024_03_20.rb', line 338

def list_shipment_boxes(inbound_plan_id, shipment_id, page_size: 10, pagination_token: nil, rate_limit: 2.0)
  path = "/inbound/fba/2024-03-20/inboundPlans/#{inbound_plan_id}/shipments/#{shipment_id}/boxes"
  params = {
    "pageSize" => page_size,
    "paginationToken" => pagination_token,
  }.compact

  meter(rate_limit).get(path, params:)
end

#list_shipment_content_update_previews(inbound_plan_id, shipment_id, page_size: 10, pagination_token: nil, rate_limit: 2.0) ⇒ Hash

Note:

This operation can make a static sandbox call.

Retrieve a paginated list of shipment content update previews for a given shipment. The shipment content update preview is a summary of the requested shipment content changes along with the transportation cost implications of the change that can only be confirmed prior to the expiry date specified.

Parameters:

  • inbound_plan_id (String)

    Identifier of an inbound plan.

  • shipment_id (String)

    Identifier of a shipment. A shipment contains the boxes and units being inbounded.

  • page_size (Integer) (defaults to: 10)

    The number of content update previews to return.

  • pagination_token (String) (defaults to: nil)

    A token to fetch a certain page when there are multiple pages worth of results. The value of this token is fetched from the ‘pagination` returned in the API response. In the absence of the token value from the query parameter the API returns the first page of the result.

  • rate_limit (Float) (defaults to: 2.0)

    Requests per second

Returns:

  • (Hash)

    The API response



361
362
363
364
365
366
367
368
369
370
# File 'lib/peddler/api/fulfillment_inbound_2024_03_20.rb', line 361

def list_shipment_content_update_previews(inbound_plan_id, shipment_id, page_size: 10, pagination_token: nil,
  rate_limit: 2.0)
  path = "/inbound/fba/2024-03-20/inboundPlans/#{inbound_plan_id}/shipments/#{shipment_id}/contentUpdatePreviews"
  params = {
    "pageSize" => page_size,
    "paginationToken" => pagination_token,
  }.compact

  meter(rate_limit).get(path, params:)
end

#list_shipment_items(inbound_plan_id, shipment_id, page_size: 10, pagination_token: nil, rate_limit: 2.0) ⇒ Hash

Note:

This operation can make a static sandbox call.

Provides a paginated list of item packages in a shipment.

Parameters:

  • inbound_plan_id (String)

    Identifier of an inbound plan.

  • shipment_id (String)

    Identifier of a shipment. A shipment contains the boxes and units being inbounded.

  • page_size (Integer) (defaults to: 10)

    The number of items to return in the response matching the given query.

  • pagination_token (String) (defaults to: nil)

    A token to fetch a certain page when there are multiple pages worth of results. The value of this token is fetched from the ‘pagination` returned in the API response. In the absence of the token value from the query parameter the API returns the first page of the result.

  • rate_limit (Float) (defaults to: 2.0)

    Requests per second

Returns:

  • (Hash)

    The API response



499
500
501
502
503
504
505
506
507
# File 'lib/peddler/api/fulfillment_inbound_2024_03_20.rb', line 499

def list_shipment_items(inbound_plan_id, shipment_id, page_size: 10, pagination_token: nil, rate_limit: 2.0)
  path = "/inbound/fba/2024-03-20/inboundPlans/#{inbound_plan_id}/shipments/#{shipment_id}/items"
  params = {
    "pageSize" => page_size,
    "paginationToken" => pagination_token,
  }.compact

  meter(rate_limit).get(path, params:)
end

#list_shipment_pallets(inbound_plan_id, shipment_id, page_size: 10, pagination_token: nil, rate_limit: 2.0) ⇒ Hash

Note:

This operation can make a static sandbox call.

Provides a paginated list of pallet packages in a shipment. A palletized shipment will have pallets when the related details are provided after generating Less-Than-Truckload (LTL) carrier shipments.

Parameters:

  • inbound_plan_id (String)

    Identifier of an inbound plan.

  • shipment_id (String)

    Identifier of a shipment. A shipment contains the boxes and units being inbounded.

  • page_size (Integer) (defaults to: 10)

    The number of pallets to return in the response matching the given query.

  • pagination_token (String) (defaults to: nil)

    A token to fetch a certain page when there are multiple pages worth of results. The value of this token is fetched from the ‘pagination` returned in the API response. In the absence of the token value from the query parameter the API returns the first page of the result.

  • rate_limit (Float) (defaults to: 2.0)

    Requests per second

Returns:

  • (Hash)

    The API response



535
536
537
538
539
540
541
542
543
# File 'lib/peddler/api/fulfillment_inbound_2024_03_20.rb', line 535

def list_shipment_pallets(inbound_plan_id, shipment_id, page_size: 10, pagination_token: nil, rate_limit: 2.0)
  path = "/inbound/fba/2024-03-20/inboundPlans/#{inbound_plan_id}/shipments/#{shipment_id}/pallets"
  params = {
    "pageSize" => page_size,
    "paginationToken" => pagination_token,
  }.compact

  meter(rate_limit).get(path, params:)
end

#list_transportation_options(inbound_plan_id, page_size: 10, pagination_token: nil, placement_option_id: nil, shipment_id: nil, rate_limit: 2.0) ⇒ Hash

Note:

This operation can make a static sandbox call.

Retrieves all transportation options for a shipment. Transportation options must first be generated by the ‘generateTransportationOptions` operation before becoming available.

Parameters:

  • inbound_plan_id (String)

    Identifier of an inbound plan.

  • page_size (Integer) (defaults to: 10)

    The number of transportation options to return in the response matching the given query.

  • pagination_token (String) (defaults to: nil)

    A token to fetch a certain page when there are multiple pages worth of results. The value of this token is fetched from the ‘pagination` returned in the API response. In the absence of the token value from the query parameter the API returns the first page of the result.

  • placement_option_id (String) (defaults to: nil)

    The placement option to get transportation options for. Either ‘placementOptionId` or `shipmentId` must be specified.

  • shipment_id (String) (defaults to: nil)

    The shipment to get transportation options for. Either ‘placementOptionId` or `shipmentId` must be specified.

  • rate_limit (Float) (defaults to: 2.0)

    Requests per second

Returns:

  • (Hash)

    The API response



658
659
660
661
662
663
664
665
666
667
668
669
# File 'lib/peddler/api/fulfillment_inbound_2024_03_20.rb', line 658

def list_transportation_options(inbound_plan_id, page_size: 10, pagination_token: nil, placement_option_id: nil,
  shipment_id: nil, rate_limit: 2.0)
  path = "/inbound/fba/2024-03-20/inboundPlans/#{inbound_plan_id}/transportationOptions"
  params = {
    "pageSize" => page_size,
    "paginationToken" => pagination_token,
    "placementOptionId" => placement_option_id,
    "shipmentId" => shipment_id,
  }.compact

  meter(rate_limit).get(path, params:)
end

#schedule_self_ship_appointment(inbound_plan_id, shipment_id, slot_id, body, rate_limit: 2.0) ⇒ Hash

Note:

This operation can make a static sandbox call.

Confirms or reschedules a self-ship appointment slot against a shipment.

Parameters:

  • inbound_plan_id (String)

    Identifier of an inbound plan.

  • shipment_id (String)

    Identifier of a shipment. A shipment contains the boxes and units being inbounded.

  • slot_id (String)

    An identifier to a self-ship appointment slot.

  • body (Hash)

    The body of the request to ‘scheduleSelfShipAppointment`.

  • rate_limit (Float) (defaults to: 2.0)

    Requests per second

Returns:

  • (Hash)

    The API response



605
606
607
608
609
# File 'lib/peddler/api/fulfillment_inbound_2024_03_20.rb', line 605

def schedule_self_ship_appointment(inbound_plan_id, shipment_id, slot_id, body, rate_limit: 2.0)
  path = "/inbound/fba/2024-03-20/inboundPlans/#{inbound_plan_id}/shipments/#{shipment_id}/selfShipAppointmentSlots/#{slot_id}/schedule"

  meter(rate_limit).post(path, body:)
end

#set_packing_information(inbound_plan_id, body, rate_limit: 2.0) ⇒ Hash

Note:

This operation can make a static sandbox call.

Sets packing information for an inbound plan. This should be called after an inbound plan is created to populate the box level information required for planning and transportation estimates.

Parameters:

  • inbound_plan_id (String)

    Identifier of an inbound plan.

  • body (Hash)

    The body of the request to ‘setPackingInformation`.

  • rate_limit (Float) (defaults to: 2.0)

    Requests per second

Returns:

  • (Hash)

    The API response



192
193
194
195
196
# File 'lib/peddler/api/fulfillment_inbound_2024_03_20.rb', line 192

def set_packing_information(inbound_plan_id, body, rate_limit: 2.0)
  path = "/inbound/fba/2024-03-20/inboundPlans/#{inbound_plan_id}/packingInformation"

  meter(rate_limit).post(path, body:)
end

#update_inbound_plan_name(inbound_plan_id, body, rate_limit: 2.0) ⇒ Hash

Note:

This operation can make a static sandbox call.

Updates the name of an existing inbound plan.

Parameters:

  • inbound_plan_id (String)

    Identifier of an inbound plan.

  • body (Hash)

    The body of the request to ‘updateInboundPlanName`.

  • rate_limit (Float) (defaults to: 2.0)

    Requests per second

Returns:

  • (Hash)

    The API response



131
132
133
134
135
# File 'lib/peddler/api/fulfillment_inbound_2024_03_20.rb', line 131

def update_inbound_plan_name(inbound_plan_id, body, rate_limit: 2.0)
  path = "/inbound/fba/2024-03-20/inboundPlans/#{inbound_plan_id}/name"

  meter(rate_limit).put(path, body:)
end

#update_item_compliance_details(marketplace_id, body, rate_limit: 2.0) ⇒ Hash

Note:

This operation can make a static sandbox call.

Update compliance details for list of MSKUs. The details provided here are only used for the IN marketplace compliance validation.

Parameters:

  • marketplace_id (String)

    The Marketplace ID. Refer to [Marketplace IDs](developer-docs.amazon.com/sp-api/docs/marketplace-ids) for a list of possible values.

  • body (Hash)

    The body of the request to ‘updateItemComplianceDetails`.

  • rate_limit (Float) (defaults to: 2.0)

    Requests per second

Returns:

  • (Hash)

    The API response



725
726
727
728
729
730
731
732
# File 'lib/peddler/api/fulfillment_inbound_2024_03_20.rb', line 725

def update_item_compliance_details(marketplace_id, body, rate_limit: 2.0)
  path = "/inbound/fba/2024-03-20/items/compliance"
  params = {
    "marketplaceId" => marketplace_id,
  }.compact

  meter(rate_limit).put(path, body:, params:)
end

#update_shipment_name(inbound_plan_id, shipment_id, body, rate_limit: 2.0) ⇒ Hash

Note:

This operation can make a static sandbox call.

Updates the name of an existing shipment.

Parameters:

  • inbound_plan_id (String)

    Identifier of an inbound plan.

  • shipment_id (String)

    Identifier of a shipment. A shipment contains the boxes and units being inbounded.

  • body (Hash)

    The body of the request to ‘updateShipmentName`.

  • rate_limit (Float) (defaults to: 2.0)

    Requests per second

Returns:

  • (Hash)

    The API response



517
518
519
520
521
# File 'lib/peddler/api/fulfillment_inbound_2024_03_20.rb', line 517

def update_shipment_name(inbound_plan_id, shipment_id, body, rate_limit: 2.0)
  path = "/inbound/fba/2024-03-20/inboundPlans/#{inbound_plan_id}/shipments/#{shipment_id}/name"

  meter(rate_limit).put(path, body:)
end

#update_shipment_source_address(inbound_plan_id, shipment_id, body, rate_limit: 2.0) ⇒ Hash

Note:

This operation can make a static sandbox call.

Updates the source address of an existing shipment. The shipment source address can only be updated prior to the confirmation of the shipment carriers. As a result of the updated source address, existing transportation options will be invalidated and will need to be regenerated to capture the potential difference in transportation options and quotes due to the new source address.

Parameters:

  • inbound_plan_id (String)

    Identifier of an inbound plan.

  • shipment_id (String)

    Identifier of a shipment. A shipment contains the boxes and units being inbounded.

  • body (Hash)

    The body of the request to ‘updateShipmentSourceAddress`.

  • rate_limit (Float) (defaults to: 2.0)

    Requests per second

Returns:

  • (Hash)

    The API response



622
623
624
625
626
# File 'lib/peddler/api/fulfillment_inbound_2024_03_20.rb', line 622

def update_shipment_source_address(inbound_plan_id, shipment_id, body, rate_limit: 2.0)
  path = "/inbound/fba/2024-03-20/inboundPlans/#{inbound_plan_id}/shipments/#{shipment_id}/sourceAddress"

  meter(rate_limit).put(path, body:)
end

#update_shipment_tracking_details(inbound_plan_id, shipment_id, body, rate_limit: 2.0) ⇒ Hash

Note:

This operation can make a static sandbox call.

Updates a shipment’s tracking details.

Parameters:

  • inbound_plan_id (String)

    Identifier of an inbound plan.

  • shipment_id (String)

    Identifier of a shipment. A shipment contains the boxes and units being inbounded.

  • body (Hash)

    The body of the request to ‘updateShipmentTrackingDetails`.

  • rate_limit (Float) (defaults to: 2.0)

    Requests per second

Returns:

  • (Hash)

    The API response



636
637
638
639
640
# File 'lib/peddler/api/fulfillment_inbound_2024_03_20.rb', line 636

def update_shipment_tracking_details(inbound_plan_id, shipment_id, body, rate_limit: 2.0)
  path = "/inbound/fba/2024-03-20/inboundPlans/#{inbound_plan_id}/shipments/#{shipment_id}/trackingDetails"

  meter(rate_limit).put(path, body:)
end