Retrieving shipment line item reports

Reporting API allows you to retrieve details about line items included in a shipment using the getShipmentLineItemReports operation. This information can enable granular shipment reporting and order matching by reviewing all line items associated with corresponding shipments.

Prerequisites

  • 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.
  • Gain access to the Amazon Business Analytics role. For more information, see Amazon Business API roles.

Step 1. Retrieve Shipment Line Items

Call the getShipmentLineItemReports operation to retrieve shipment line items based on specified search criteria. Optionally, you can filter the results using the region and orderIds query parameters. In the request, include the following parameters:

TypeNameDescriptionSchemaRequired
queryorderStartDateThe start of the order date range to search for shipment line items, in ISO 8601 format. Must not be more than 366 days before orderEndDate.string (date-time)Yes
queryorderEndDateThe end of the order date range to search for shipment line items, in ISO 8601 format. Must not be in the future and must not be more than 366 days after orderStartDate.string (date-time)Yes
QuerypurchaseOrderNumbersList of purchase order numbers to filter by. If the order date for any specified purchase order number is not within the provided date range, an empty result will be returned.
Min count : 1
Max count : 30
< string > array(csv)No
queryregionThe region where the order was placed.stringNo
queryorderIdsList of order IDs to filter by.< string > array(csv)No
GET https://na.business-api.amazon.com/reports/2025-06-09/shipmentLineItemReports?orderStartDate=2024-10-08T00:40:56Z&orderEndDate=2025-10-07T15:47:56Z
import requests

url = "https://na.business-api.amazon.com/reports/2025-06-09/shipmentLineItemReports?orderStartDate=2024-10-08T00:40:56Z&orderEndDate=2025-10-07T15:47:56Z"

headers = {
    "accept": "application/json",
    "x-amz-access-token": "<Access token retrieved in Prerequisites Step 1>",
}

response = requests.get(url, headers=headers)

print(response.text)

The API returns a list of shipment line items matching the search criteria, including receiving information.

TypeNameDescriptionSchemaRequired
arrayshipmentLineItemsReportThe list of shipment line items matching the search criteria.< ShipmentLineItemReport > arrayYes
stringnextPageTokenA token to retrieve the next page of results.stringYes

📘

Each Reporting API request can return a maximum of 100 results.

{
    "shipmentLineItemsReport": [
        {
            "orderMetadata": {
                "orderDate": "2024-11-08T21:29:44Z",
                "orderId": "114-0575598-4117065",
                "region": "US"
            },
            "shipmentMetadata": {
                "shipmentId": "338368514033301",
                "shipmentDate": "2024-11-09T04:20:13Z"
            },
            "purchaseOrderNumber": "PoNumber1",
            "orderLineItemId": "114029717115681",
            "purchaseOrderLineItemNumber": null,
            "productDetails": {
                "productCategory": "Health and Beauty",
                "asin": "B09541P9WH",
                "title": "Amazon Basics Cotton Swabs, 500 Count",
                "unspsc": {
                    "code": "53131600"
                },
                "productCondition": "New",
                "brandCode": "OE019",
                "brandName": "Amazon Basics",
                "manufacturerName": "Amazon.com Services LLC.",
                "serialNumbers": null
            },
            "charges": [
                {
                    "type": "SUBTOTAL",
                    "amount": {
                        "currencyCode": "USD",
                        "amount": 2.65
                    }
                },
                {
                    "type": "SHIPPING_AND_HANDLING",
                    "amount": {
                        "currencyCode": "USD",
                        "amount": 0.0
                    }
                },
                {
                    "type": "TAX",
                    "amount": {
                        "currencyCode": "USD",
                        "amount": 0.27
                    }
                },
                {
                    "type": "NET_TOTAL",
                    "amount": {
                        "currencyCode": "USD",
                        "amount": 2.92
                    }
                }
            ],
            "quantity": 1,
            "carrierName": "Amazon Logistics",
            "packages": [
                {
                    "trackingId": "TBA316956097268",
                    "packageId": "1"
                }
            ],
            "receivingInfo": null
        }
    ],
    "nextPageToken": "123asda",
    "size": 1
}

Step 2. Retrieve next page of data

If the number of matching shipments exceeds the Reporting API page size limit, the response will include a nextPageToken value. To get the next page of shipments, make another getShipmentLineItemReports call with the same parameters and values as the last request. In addition, include the nextPageToken query parameter:

TypeNameDescriptionSchemaRequired
QuerynextPageTokenA page token returned in the response to your previous request when the number of results exceed the page size. Must be used with the same query parameters as the original request. Changing parameters will result in an error. To get the next page of results, include pageToken as a parameter. There are no more pages to return when the response returns no nextPageToken.stringYes

GET https://na.business-api.amazon.com/reports/2025-06-09/shipmentLineItemReports?orderStartDate=2024-10-08T00:40:56Z&orderEndDate=2025-10-07T15:47:56Z&nextPageToken=123asda
import requests

url = "https://na.business-api.amazon.com/reports/2025-06-09/shipmentLineItemReports?orderStartDate=2024-10-08T00:40:56Z&orderEndDate=2025-10-07T15:47:56Z&nextPageToken=123asda"

headers = {
    "accept": "application/json",
    "x-amz-access-token": "<Access token retrieved in Prerequisites Step 1>",
}

response = requests.get(url, headers=headers)

print(response.text)

The response format will be identical to Step 1, containing the next page of data. Continue making requests with the nextPageToken until no token is returned in the response.

{
    "shipmentLineItemsReport": [
        {
            "orderMetadata": {
                "orderDate": "2025-02-20T22:48:23Z",
                "orderId": "113-9349802-9306602",
                "region": "US"
            },
            "shipmentMetadata": {
                "shipmentId": "393196013715301",
                "shipmentDate": "2025-02-21T21:07:14Z"
            },
            "purchaseOrderNumber": null,
            "orderLineItemId": "122032544421121",
            "purchaseOrderLineItemNumber": null,
            "productDetails": {
                "productCategory": "Book",
                "asin": "B0DXGH7RT5",
                "title": "My English & Portuguese Bilingual Book: Colors, Animals, Family, Numbers, Nature, Food & More!",
                "unspsc": {
                    "code": null
                },
                "productCondition": "New",
                "brandCode": null,
                "brandName": null,
                "manufacturerName": "Independently published",
                "serialNumbers": [
                    "Authenticity_2D=0109798310599444211YJTS8OU3ZENHG6Y6W9X"
                ]
            },
            "charges": [
                {
                    "type": "SUBTOTAL",
                    "amount": {
                        "currencyCode": "USD",
                        "amount": 12.99
                    }
                },
                {
                    "type": "SHIPPING_AND_HANDLING",
                    "amount": {
                        "currencyCode": "USD",
                        "amount": 3.0
                    }
                },
                {
                    "type": "PROMOTION",
                    "amount": {
                        "currencyCode": "USD",
                        "amount": -3.0
                    }
                },
                {
                    "type": "TAX",
                    "amount": {
                        "currencyCode": "USD",
                        "amount": 1.34
                    }
                },
                {
                    "type": "NET_TOTAL",
                    "amount": {
                        "currencyCode": "USD",
                        "amount": 14.33
                    }
                }
            ],
            "quantity": 1,
            "carrierName": "Amazon Logistics",
            "packages": [
                {
                    "trackingId": "TBA319540487553",
                    "packageId": "1"
                }
            ],
            "receivingInfo": null
        },
    ],
    "nextPageToken": null,
    "size": 37
}