Tracking
With ShipStation’s v2 REST API, you can retrieve tracking details for a specific label you’ve created in ShipStation using the GET method and the /v2/labels/{label_id}/track
endpoint.
Upcoming Tracking Methods
- ShipStation does not yet support webhook listeners for tracking events, but this capability is coming soon.
- ShipStation has not yet implemented a dedicated tracking endpoint. However, this endpoint is coming in 2025. We will update this documentation with the details for the tracking endpoint when available.
Requirements
- You must have the
label_id
of the label you wish to track.
Sample Request & Response
GET /v2/labels/:label_id/track
GET /v2/labels/se-324658/track HTTP/1.1 Host: api.shipstation.com API-Key: __YOUR_API_KEY_HERE__ Cache-Control: no-cache
Sample Response
{ "tracking_number": "1Z932R800390810600", "status_code": "DE", "status_description": "Delivered", "carrier_status_code": "D", "carrier_status_description": "DELIVERED", "shipped_date": "2024-10-25T11:59:03.289Z", "estimated_delivery_date": "2024-10-27T11:59:03.289Z", "actual_delivery_date": "2024-10-27T11:59:03.289Z", "exception_description": null, "events": [ { "occurred_at": "2024-10-25T12:32:00Z", "carrier_occurred_at": "2024-10-25T05:32:00", "description": "Arrived at UPS Facility", "city_locality": "OCEANSIDE", "state_province": "CA", "postal_code": "92056", "country_code": "", "company_name": "", "signer": "", "event_code": "U1" } ] }
About the Tracking Response
Event Timestamps:
carrier_occurred_at
is the timestamp of the event received from the carrier. It is assumed to be the local time of where the event occurred. This event property is not yet fully supported across all carriers.occurred_at
is our best effort at converting thecarrier_occurred_at
field to UTC, based on the time of the event's occurrence.
Tracking Status Codes
Here's how the status_code
and status_description
fields correspond to each other and how they correspond to the tracking_status
field of a label:
Status Code | Status Description | Tracking Status |
---|---|---|
AC | Accepted | N/A |
IT | In Transit | in_transit |
DE | Delivered | delivered |
EX | Exception | error |
UN | Unknown | unknown |
AT | Delivery Attempt | N/A |
NY | Not Yet in System | in_transit |
SP | Delivered to the Collection Location | delivered_to_service_point |
Your integration should expect any of the above tracking events for any of the carriers you use.