Retrieving package tracking details

The Package Tracking API allows you to retrieve granular tracking details about a package, including delivery status, carrier information, tracking events, and package milestones. You can use this data to build applications that provide Amazon Business customers with detailed package tracking information.

Prerequisites

Before starting this tutorial, complete these steps:

  1. Complete the API onboarding process to register as a developer, create an app client, and retrieve API access and refresh tokens. For more information, see Onboarding overview.
  2. Gain access to the Amazon Business Order Placement role. For more information, see Amazon Business API roles.
  3. Retrieve the order ID, shipment ID, and package ID associated with the package you want to retrieve. You can get this data from the package tracking push notification payload or the Ordering API orderDetails operation response.

📘

The Package Tracking API retrieves data for packages shipped within the last 90 days. If the package is shipped more than 90 days before the API call, the API does not return a response.

Retrieve package tracking details

To retrieve detailed tracking information for a specific package within an order shipment, call the getPackageTrackingDetails operation and include the following attributes in the request:

TypeNameDescriptionSchemaRequired
pathorderIdThe unique identifier of an order.stringYes
pathshipmentIdThe unique identifier for a shipment whose package tracking details are to be retrieved.stringYes
pathpackageIdThe unique identifier of the package whose tracking details are to be retrieved.stringYes
queryregionThe region where the customer wants to track the package. This value corresponds to the region where the order was placed.enum (Region)Yes
querylocaleThe locale of the request in the form of an IETF language tag.stringNo

📘

The region parameter must contain an Amazon Business marketplace that corresponds to the API endpoint used to make the request. For a list of endpoints and their associated regions, see Amazon Business API endpoints.

GET https://na.business-api.amazon.com/ab-tracking/2025-07-02/orders/114-2589187-9801025/shipments/401971789238301/packages/1?region=US&locale=en-US

A successful response returns package tracking details including current status, delivery promise, carrier information, tracking events, and milestones.

NameDescriptionSchemaRequired
packageTrackingDetailsDetailed tracking information for a package.PackageTrackingDetailsYes
{
  "packageTrackingDetails": {
    "trackingStatus": "DELIVERED",
    "localizedDeliveryPromise": "Delivered April 29",
    "deliveryWindow": {
      "endDate": "2025-04-29T19:15:23Z"
    },
    "carrierDetails": {
      "localizedCarrierName": "Delivery by Amazon",
      "carrierTrackingId": "TBA321021468276"
    },
    "packageTrackingEvents": [
      {
        "localizedDescription": "Package delivered near the front door or porch.",
        "localizedEventDate": "Tuesday, April 29",
        "localizedEventTime": "12:15 PM",
        "location": {
          "city": "Bellevue",
          "country": "US"
        }
      },
      {
        "localizedDescription": "Package is out for delivery.",
        "localizedEventDate": "Tuesday, April 29",
        "localizedEventTime": "10:50 AM",
        "location": {
          "city": "Kent",
          "country": "US"
        }
      },
      {
        "localizedDescription": "Package being processed at carrier facility.",
        "localizedEventDate": "Tuesday, April 29",
        "localizedEventTime": "6:39 AM",
        "location": {
          "city": "Kent",
          "country": "US"
        }
      },
      {
        "localizedDescription": "Package arrived at a carrier facility.",
        "localizedEventDate": "Tuesday, April 29",
        "localizedEventTime": "6:34 AM",
        "location": {
          "city": "Kent",
          "country": "US"
        }
      },
      {
        "localizedDescription": "Package left the shipper facility.",
        "localizedEventDate": "Tuesday, April 29"
      }
    ],
    "packageMilestones": [
      {
        "milestoneType": "DELIVERED",
        "milestoneWindow": {
          "endDate": "2025-04-29T12:15:23.101-07:00"
        }
      },
      {
        "milestoneType": "OUT_FOR_DELIVERY",
        "milestoneWindow": {
          "endDate": "2025-04-29T00:00:00-07:00"
        }
      },
      {
        "milestoneType": "SHIPPED",
        "milestoneWindow": {
          "endDate": "2025-04-29T05:27:59-07:00"
        }
      },
      {
        "milestoneType": "ORDERED",
        "milestoneWindow": {
          "endDate": "2025-04-28T23:06:38-07:00"
        }
      }
    ]
  }
}

Error handling

If your request is not successful, the API returns an errors object that provides information about what went wrong. For more information, see Error responses.

{
    "errors": [
        {
            "code": "InvalidInput",
            "message": "Invalid Request Params - orderId: 123-7461001-3022750, shipmentId: 12340109139302, packageId: 2",
            "details": ""
        }
    ]
}

Supported languages

You can pass the following language codes in the Package Tracking API locale request parameter to return localized responses:

Target languageLanguage code
Arabicar-AE
Bengalibn-IN
Czechcs-CZ
Danishda-DK
Germande-DE
Englishen-AE
Englishen-AU
Englishen-CA
Englishen-GB
Englishen-IN
Englishen-IE
Englishen-SG
Englishen-US
Englishen-ZA
Spanishes-ES
Spanishes-MX
Spanishes-US
Frenchfr-BE
Frenchfr-CA
Frenchfr-FR
Hebrewhe-IL
Hindihi-IN
Italianit-IT
Japaneseja-JP
Kannadakn-IN
Koreanko-KR
Malayalamml-IN
Marathimr-IN
Dutchnl-BE
Dutchnl-NL
Polishpl-PL
Portuguesept-BR
Portuguesept-PT
Swedishsv-SE
Tamilta-IN
Telegute-IN
Turkishtr-TR
Chinese (Simplified)zh-CN
Chinese (Traditional)zh-TW