Skip to main content
This guide shows you how to manually book shipments, retrieve shipping labels, track shipment status, schedule pickups, perform batch operations, and estimate shipment costs.

Prerequisites

Before you start, make sure you have:
All API examples in this guide use ${BASE_URL} as a placeholder. Replace it with the correct base URL configured for the correct environment. For more information see Environments page.

Estimate shipment costs

Estimate the price of shipment labels before booking using the POST /shipments/estimate endpoint. Use the requestUUID field to match the estimate results to your requests.
Use this request to estimate shipment costs:

Book a shipment

Book a shipment label using the POST /shipments/book endpoint. You must provide the seller ID, shipping service group ID, gross weight, and delivery address. The shipFrom address is optional. The following example shows how to book a shipment:
Use this request to book a shipment label:

Request fields

The following table describes the key fields you can include when booking a shipment. The shipTo and shipFrom objects use the ShipmentDeliveryAddress schema. For complete field definitions, see the API Reference:

Retrieve shipment details

Retrieve shipment details using the booked shipment ID. Use the GET /shipments/{bookedShipmentId} endpoint to get details by shipment ID:
Use this request to retrieve the full details of a booked shipment by its ID:

Retrieve shipping labels

You can retrieve shipping labels in two ways:
  1. From the booking response: The labelUrls array in the BookResponse contains URLs where you can download the shipping labels.
  2. From shipment details: Retrieve shipment details using the GET /shipments/{bookedShipmentId} endpoint. The response includes a documents array with document information. Use the shipmentDocumentId from each document to retrieve the download URL using the GET /shipments/documentLink endpoint.
To get a download link for a specific document, use the GET /shipments/documentLink endpoint:
Use this request to get a download link for a shipment document:

Track shipment status

Search for booked shipments using the GET /shipments endpoint. This endpoint supports query, sorting, and pagination parameters. Use the query parameter to filter results, sort to order them, and pageSize to limit the number of results.
Use this request to search for shipments using query parameters:
For detailed tracking information, retrieve the full shipment details using the GET /shipments/{bookedShipmentId} endpoint. The response includes a trackingDetails array with tracking information.

Schedule a pickup

Book a pickup for booked shipments using the POST /shipments/pickups endpoint. You must provide the seller ID, shipping service group ID, parcel count, and pickup date. The pickupFrom address is optional.
Use this request to book a pickup:

Search for booked pickups

Search for booked pickups using the GET /shipments/pickups endpoint. Use the query parameter to filter results by pickup date, seller, or other criteria.
Use this request to search for booked pickups:

Batch operations

Book a batch of shipment labels using the POST /shipments/bookBatchAsync endpoint. This endpoint processes multiple shipment bookings asynchronously and sends the results via email. The lineNumber field represents the line number in the original batch file. Once the batch operation completes, the system sends a ZIP file with labels and export documents to the specified email address.
Use this request to book a batch of shipments:

Cancel a shipment

Cancel a booked shipment using the DELETE /shipments/{bookedShipmentId} endpoint:
Use this request to cancel a booked shipment:

Where to go next

Now that you can manage shipments, continue with these guides:

Track an Order

Monitor order status and retrieve tracking information when shipping occurs.

Manage Returns

Generate return labels and track returned items when customers need to send products back.