Amazon Warehousing and Distribution API Use Case Guide

How to work with Amazon Warehousing and Distribution (AWD) orders using the Amazon Warehousing and Distribution API.

API Version: 2024-05-09

What is the Amazon Warehousing and Distribution API?

You can use the Amazon Warehousing and Distribution (AWD) API to create and update inbound orders to ship inventory to AWD distribution centers, track inventory inside AWD distribution centers, and track shipments on the way to AWD distribution centers. For information about AWD API operations, data types, and schemas, refer to the Amazon Warehousing and Distribution API Reference.

📘

Note

This API is available in the US marketplace.

Key features

  • Create inbound orders: Verify AWD inbound eligibility and create inbound orders with a region preference.
  • Update inbound orders: Update one or more individual attributes for an inbound order, such as the packagesToInbound, originAddress, and preferences attributes.
  • Cancel inbound orders: Cancel an inbound order.
  • List all inbound shipments: Retrieve all inbound shipments across orders with optional filters.
  • Retrieve details about inbound shipments: Retrieve inbound shipments with optional filters and access shipment details with SKU-specific attributes.
  • Retrieve inbound shipment labels: Retrieve box labels for confirmed inbound shipments.
  • Update transport details: Update transport information for an AWD inbound shipment.
  • Track AWD inventory: Return real-time information, such as expiration dates, about the inventory within an AWD distribution center and units that are reserved by a replenishment order. Return quantity information for units that are in transit to AWD or from AWD to a Fulfillment by Amazon (FBA) facility.
  • Read interoperability: Access inbound orders that you create with Amazon's Send to Amazon Warehousing and Distribution UI.

To learn more about the terms that are used on this page, refer to Terminology.

AWD inbound shipment workflow

The following diagram shows the steps to ship inventory to an AWD distribution center. This is an illustrative example and does not include all of the optional operations.

The AWD inbound shipment workflow.

Tutorial: Create an inbound order for shipment to AWD

Prerequisites

To complete this tutorial, you need:

Step 1a. (Optional) - Determine if the packages that you specify are eligible for an AWD inbound order

Call the checkInboundEligibility operation.

Step 1. Create an AWD inbound order

Call the createInbound operation and pass in the following parameters (Amazon creates a single shipment per order):

The packagesToInbound must contain a list of packages that you want to inbound. ProductQuantity must include the MSKU, quantity, and party that prepares or labels the item. The SKU limit for an inbound order is 150 unique SKUs.

📘

Note

Each item that you ship must conform to Amazon's product packaging requirements. For more information, refer to Packaging and Prep Requirements in Seller Central Help. For more information about Amazon's product packaging requirements for your marketplace, refer to Seller Central URLs.

📘

Note

Amazon does not support multiple expiration dates per SKU on a single inbound order. To send a SKU with multiple expiration dates to the AWD distribution center, you must create multiple inbound orders.

Step 2. Review the inbound order

To review the inbound order details and destination address, call the getInbound operation.

📘

Note

The inbound ShipmentId generates only upon confirmation of the inbound order.

Step 2b. Update the inbound order

The updateInbound operation updates the draft AWD inbound order for the packages that you want to inbound. You can only update AWD inbound orders in DRAFT status and that don't have seller confirmation.

📘

Note

When you update an inbound order, the system re-evaluates the order details. This re-evaluation process might result in the assignment of a different destination address for the inbound shipment.

Call the updateInbound operation.

Tip

After you update the inbound order, use the getInbound operation to review the inbound order details and confirm the destination address.

Step 3. Confirm the inbound order

With the confirmInbound operation, you can confirm an AWD inbound order in DRAFT status. This confirmation is a requirement for all transportation types and indicates that the order details are ready for further processing. After an order reaches CONFIRMED status, it advances in the inbound workflow and the next steps in the inbound shipping process begin.

Step 4. Generate the box labels

Call the getInboundShipmentLabels operation to request unique box labels for your inbound shipments. After you make the call, poll the system regularly to check for a GENERATED labelStatus. When the box labels are ready, affix each box label with its corresponding package in the shipment. The labels indicate the package contents and help the AWD distribution center process your shipment quickly and accurately.

📘

Note

The labels that you generate are valid for 600 seconds and are in a compressed .zip file format.

Step 5. Update the tracking information

You must update the tracking information after you send shipments to AWD distribution centers with non-partnered carriers. The updateInboundShipmentTransportDetails operation requires that you input the shipmentId and transportation information.

For small parcel shipments, you can provide only one booking ID. Amazon uses the booking ID to track and manage incoming inventory.

Call the updateInboundShipmentTransportDetails operation.

Tutorial: Retrieve a list of inbound shipments for a specific time

Learn how to get a list of AWD inbound orders for a specific date-time.

Prerequisites

To complete this tutorial, you need:

Get a list of all inbound orders

Call the listInboundShipments operation.

Tutorial: Retrieve and filter a list of inbound shipments

Learn how to use shipmentStatus to filter the list of AWD inbound orders.

Prerequisites

To complete this tutorial, you need:

Get a list of all inbound orders

Call the listInboundShipments operation.

Tutorial: Track an inbound shipment with expected and received SKU details

Learn how to retrieve a particular AWD inbound shipment which contains items that are planned to be inbounded to a distribution center. For each SKU, you can also retrieve expiration dates and prep details.

Prerequisites

To complete this tutorial, you need:

Get inbound shipment details based on a shipmentId

Call the getInboundShipment operation.

Tutorial: Get all available inventory summaries with detail

Learn how to use the AWD Inventory API to return all the inventory summaries with detail.

Prerequisites

To complete this tutorial, you need:

Get AWD inventory summaries

Call the listInventory operation.

Tutorial: Get inventory summaries for the seller specified SKUs

Learn how to use the AWD Inventory API to return the inventory summaries for a particular SKU.

Prerequisites

To complete this tutorial, you need:

Get AWD inventory summaries

Call the listInventory operation.

Error codes and resolutions

Error codeResolution guidanceResolution example
EXPECTED_NON_NULL_LABEL_OWNERAdd labelOwner as AMAZON/SELFprepDetails: {"prepCategory": "PERFORATED", "prepOwner": "AMAZON", "labelOwner": "SELF"}
EXPECTED_NON_NULL_PREP_OWNERAdd prepOwner as AMAZON/SELFprepDetails: {"prepCategory": "PERFORATED", "prepOwner": "AMAZON", "labelOwner": "SELF"}
EXPECTED_SAME_PREP_LABEL_OWNERSAdd prepOwner and labelOwner with the same valuesprepDetails: {"prepCategory": "PERFORATED", "prepOwner": "AMAZON", "labelOwner": "AMAZON"}
EXPECTED_SELF_PREP_OWNERAdd prepOwner as SELFprepDetails: {"prepCategory": "PERFORATED", "prepOwner": "SELF", "labelOwner": "AMAZON"}
EXPECTED_AMAZON_PREP_OWNERAdd prepOwner as AMAZONprepDetails: {"prepCategory": "PERFORATED", "prepOwner": "AMAZON", "labelOwner": "SELF"}
EXPECTED_SELF_LABEL_OWNERAdd labelOwner as SELFprepDetails: {"prepCategory": "PERFORATED", "prepOwner": "AMAZON", "labelOwner": "SELF"}
EXPECTED_AMAZON_LABEL_OWNERAdd labelOwner as AMAZONprepDetails: {"prepCategory": "PERFORATED", "prepOwner": "SELF", "labelOwner": "AMAZON"}
EXPECTED_NULL_LABEL_OWNERExclude labelOwnerprepDetails: {"prepCategory": "PERFORATED", "prepOwner": "AMAZON"}
EXPECTED_NULL_PREP_OWNERExclude prepOwnerprepDetails: {"prepCategory": "PERFORATED", "labelOwner": "AMAZON"}

OSZAR »