# Get tracking information Retrieve package tracking information Endpoint: GET /v1/tracking Version: 1.1.202604070904 Security: api_key ## Query parameters: - `carrier_code` (string) A shipping carrier, such as fedex, dhl_express, stamps_com, etc. Example: "stamps_com" - `tracking_number` (string) The tracking number associated with a shipment Example: "9405511899223197428490" - `carrier_id` (string) Carrier ID Example: "se-28529731" ## Response 200 fields (application/json): - `tracking_number` (string, required) A tracking number for a package. The format depends on the carrier. Example: "1Z932R800392060079" - `tracking_url` (string, required) Carrier Tracking Url, if available Example: "https://www.fedex.com/fedextrack/?action=track&trackingnumber=1234" - `status_code` (string, required) The tracking status codes |Value |Description |:--------- |:----------------------------------------------------- |UN | Unknown |AC | Accepted |IT | In Transit |DE | Delivered |EX | Exception |AT | Delivery Attempt |NY | Not Yet In System |SP | Delivered To Collection Location Enum: "UN", "AC", "IT", "DE", "EX", "AT", "NY", "SP" - `status_detail_code` (string) The tracking status detail codes |Value |Description |:--------- |:----------------------------------------------------- | CARRIER_STATUS_NOT_MAPPED | Status not mapped. Please check the carrier's website for updates. | SHIPMENT_CREATED | Your tracking number is ready. Your parcel is waiting to be registered in the carrier system and scheduled for pickup. | AWAITING_PICKUP_DROP_OFF | Your parcel is waiting to be handed over to the carrier. | DROPPED_OFF | Your parcel has been dropped off and is ready for carrier processing. | ELEC_ADVICE_RECD_BY_CARRIER | Your shipment is now in the carrier's system. | PICKED_UP | Your parcel has been picked up by the carrier. | CUSTOMS_CLEARED | Your parcel has cleared customs and is continuing its journey. | CUSTOMS_PROCESSING | Your parcel is currently being processed by customs. | DELIVERY_ARRANGED_WITH_RECIPIENT | Your parcel's delivery has been arranged with the carrier. | HUB_SCAN_OUT | Your parcel has left the carrier's hub. | HUB_SCAN_IN | Your parcel has arrived at the carrier's hub for processing. | IN_TRANSIT | Your shipment is on its way between the carrier hubs. | INFORMATION | The carrier has shared additional information about your parcel. | PARCEL_OVER_LABELLED | Your parcel's label has been updated by the carrier, which may affect tracking visibility. | PARCEL_UPDATE_NOTIFICATION | The carrier has sent you an update on your parcel status via SMS or email. | RECEIVED_BY_CARRIER | Your parcel has been received by the carrier and is beginning its journey. | RECEIVED_LOCAL_DELIVERY_DEPOT | Your parcel has arrived at the local delivery depot and is almost ready for delivery. | SUB_CONTRACTOR_EVENT | The carrier has shared additional information about your parcel's handling by a delivery partner. | SUB_CONTRACTOR_RECEIVED | Your parcel has been received by the carrier's local delivery partner. | PARCEL_REDIRECTED | Your parcel has been redirected to a new delivery address per your request. | DELIVERY_SCHEDULED | Your parcel's delivery has been scheduled and will soon be out for delivery. | HUB_PROCESSING | Your parcel is being processed at a carrier hub. | DELIVERY_RESCHEDULED | Your parcel's delivery has been rescheduled due to operational issues. | ATTEMPTED_DELIVERY | The carrier attempted to deliver your parcel but was unable to complete delivery. | ATTEMPTED_DELIVERY_FINAL | The carrier made a final attempt to deliver your parcel but was unable to complete delivery. Please check the carrier's instructions for next steps. | COD_AMOUNT_PAID | Cash on delivery payment received. | CUSTOMER_CARDED | Delivery attempt failed. Please follow delivery instructions left by the carrier. | OUT_FOR_DELIVERY | Your parcel is on its way and will be delivered today. | AWAITING_COLLECTION_FROM_PICKUP_POINT | Your parcel is ready for collection at the selected pickup point. | COLLECT_AT_LOCAL_PO | Your parcel is ready for collection at your local post office. | CUSTOMER_TO_COLLECT_FROM_CARRIER | Your parcel is available for collection from the carrier's local delivery unit. | DELIVERED_TO_RECEPTION | Your parcel has been delivered to your building's reception or designated mail area. | DELIVERED | Your parcel has been successfully delivered. | DELIVERED_DAMAGED | Your parcel was delivered but arrived with visible damage. | DELIVERED_IN_PART | Part of your shipment has been delivered. Check for updates on the rest. | DELIVERED_SPECIFIED_SAFE_PLACE | Your parcel has been delivered to your specified safe place. | DELIVERED_TO_ALTERNATIVE_DELIVERY_LOCATION | Your parcel was delivered to an alternative location due to the delivery company being unable to deliver it to the specified address. Check carrier instructions for pickup details. | DELIVERED_TO_NEIGHBOUR | Your parcel was delivered to your neighbor. | DELIVERED_TO_PO_BOX | Your parcel has been delivered to your specified PO Box. | PARCEL_COLLECTED_FROM_PICKUP_POINT | Your package has been picked up from the pick up point. | POST_TRANSIT_STATUS | The carrier has added more information about your delivery. | PROOF_OF_DELIVERY | The carrier has confirmed delivery with proof, such as a signature or photo. | PICKUP_FAILED | Parcel pickup failed. The delivery company will try again soon. | NOT_YET_RECEIVED_BY_CARRIER | The carrier has not yet received your parcel, which may cause a delay. | PARCEL_DAMAGED | Your parcel was damaged in transit but will still be delivered. | ADDRESS_QUERY | There is an issue with the delivery address, which may delay your parcel. | CARRIER_DELAYS | Your parcel is delayed due to issues within the carrier network. | DELAYED_NOT_CARRIER | Your parcel is delayed due to circumstances beyond the carrier's control. | HELD_BY_CARRIER | Your parcel is being held due to an operational issue. Contact with the carrier for more information. | HELD_BY_CARRIER_FOR_CLEARANCE_PRE_PROCESSING | Your parcel is being held by the carrier for customs documentation checks. This may occur when the carrier must confirm documentation before the parcel can continue its journey. | HELD_BY_CUSTOMS | Your parcel is being held at customs, which may delay delivery. | INCORRECT_DECLARATION | Your parcel has been incorrectly declared but is still moving forward for delivery. | MISROUTED | Your parcel was sent to the wrong place due to a routing error but is being redirected. | PARCEL_REPACKED | Your parcel was repackaged by the carrier due to damage and will still be delivered. | RECD_BY_CARRIER_NO_ELEC_ADVICE | Your parcel has been received by the carrier but may experience delays due to missing pre-advice. | COD_AMOUNT_NOT_PAID | Delivery failed due to unpaid cash on delivery. Please follow carrier instructions. | CUSTOMER_IDENTIFICATION_FAILED | Delivery couldn't be completed as identification requirements were not met. | NO_ACCESS_TO_RECIPIENTS_ADDRESS | The carrier couldn't access the delivery location due to restricted entry. | CANCELLED | Your parcel has been cancelled. | CUSTOMER_MOVED | Delivery failed as the recipient is no longer at the specified address. Your parcel is being returned. | HAZARDOUS_PROHIBITED | Your parcel contains restricted items and will not be delivered. | NOT_COLLECTED_FROM_PICKUP_POINT | Your parcel was not collected from the pickup point within the designated time and will be returned. | NOT_DELIVERED | All delivery attempts failed. Your parcel is being returned to the sender. | NOT_DELIVERED_ADDRESSEE_DECEASED | The parcel could not be delivered as the addressee is reported deceased. | PARCEL_DISPOSED | Your parcel has been disposed of due to its contents or condition and will not be delivered. | PARCEL_LOST | The carrier has reported that your parcel is lost and will not be delivered. | PARCEL_OUTSIDE_OF_SERVICE_CAPABILITY | The parcel cannot be delivered as it exceeds the carrier's service limits. | REFUSED_BY_CUSTOMER | You have refused the parcel, and it will be returned to the sender. | RETURN_TO_SENDER | Your parcel is being returned to the sender due to delivery issues. | UNSPECIFIED_EXCEPTION | The carrier has reported an issue with your parcel, but details are unavailable. | TRACKING_EXPIRED | Tracking for this parcel has expired. If you are still expecting this delivery, please contact the carrier for assistance. | DUTY_NOT_PAID | The import taxes or duties for this package havent been paid and it may be subject to disposal by customs authorities if payment is not made. | PARCEL_REDIRECTED_BY_CARRIER | The carrier has redirected your parcel due to an operational issue. The package is likely being rerouted to a nearby pickup point. You may contact the carrier for more details about the new delivery location. | DELIVERED_TO_PICKUP_POINT | Your package has been delivered to the pickup point. You will be notified when its ready for collection. | UNDELIVERABLE_RETURNED_TO_SENDER | The shipment has been returned to the sender. Please contact the sender for further information. Enum: "CARRIER_STATUS_NOT_MAPPED", "SHIPMENT_CREATED", "AWAITING_PICKUP_DROP_OFF", "DROPPED_OFF", "ELEC_ADVICE_RECD_BY_CARRIER", "PICKED_UP", "CUSTOMS_CLEARED", "CUSTOMS_PROCESSING", "DELIVERY_ARRANGED_WITH_RECIPIENT", "HUB_SCAN_OUT", "HUB_SCAN_IN", "IN_TRANSIT", "INFORMATION", "PARCEL_OVER_LABELLED", "PARCEL_UPDATE_NOTIFICATION", "RECEIVED_BY_CARRIER", "RECEIVED_LOCAL_DELIVERY_DEPOT", "SUB_CONTRACTOR_EVENT", "SUB_CONTRACTOR_RECEIVED", "PARCEL_REDIRECTED", "DELIVERY_SCHEDULED", "HUB_PROCESSING", "DELIVERY_RESCHEDULED", "ATTEMPTED_DELIVERY", "ATTEMPTED_DELIVERY_FINAL", "COD_AMOUNT_PAID", "CUSTOMER_CARDED", "OUT_FOR_DELIVERY", "AWAITING_COLLECTION_FROM_PICKUP_POINT", "COLLECT_AT_LOCAL_PO", "CUSTOMER_TO_COLLECT_FROM_CARRIER", "DELIVERED_TO_RECEPTION", "DELIVERED", "DELIVERED_DAMAGED", "DELIVERED_IN_PART", "DELIVERED_SPECIFIED_SAFE_PLACE", "DELIVERED_TO_ALTERNATIVE_DELIVERY_LOCATION", "DELIVERED_TO_NEIGHBOUR", "DELIVERED_TO_PO_BOX", "PARCEL_COLLECTED_FROM_PICKUP_POINT", "POST_TRANSIT_STATUS", "PROOF_OF_DELIVERY", "PICKUP_FAILED", "NOT_YET_RECEIVED_BY_CARRIER", "PARCEL_DAMAGED", "ADDRESS_QUERY", "CARRIER_DELAYS", "DELAYED_NOT_CARRIER", "HELD_BY_CARRIER", "HELD_BY_CARRIER_FOR_CLEARANCE_PRE_PROCESSING", "HELD_BY_CUSTOMS", "INCORRECT_DECLARATION", "MISROUTED", "PARCEL_REPACKED", "RECD_BY_CARRIER_NO_ELEC_ADVICE", "COD_AMOUNT_NOT_PAID", "CUSTOMER_IDENTIFICATION_FAILED", "NO_ACCESS_TO_RECIPIENTS_ADDRESS", "CANCELLED", "CUSTOMER_MOVED", "HAZARDOUS_PROHIBITED", "NOT_COLLECTED_FROM_PICKUP_POINT", "NOT_DELIVERED", "NOT_DELIVERED_ADDRESSEE_DECEASED", "PARCEL_DISPOSED", "PARCEL_LOST", "PARCEL_OUTSIDE_OF_SERVICE_CAPABILITY", "REFUSED_BY_CUSTOMER", "RETURN_TO_SENDER", "UNSPECIFIED_EXCEPTION", "TRACKING_EXPIRED", "DUTY_NOT_PAID", "PARCEL_REDIRECTED_BY_CARRIER", "DELIVERED_TO_PICKUP_POINT", "UNDELIVERABLE_RETURNED_TO_SENDER" - `carrier_code` (string, required) A shipping carrier, such as fedex, dhl_express, stamps_com, etc. Example: "dhl_express" - `carrier_id` (integer, required) The unique ID of the carrier account that was used to create this label - `status_description` (string) Status description Example: "Delivered" - `status_detail_description` (string) Status detail description Example: "Your parcel has been successfully delivered." - `carrier_status_code` (string, required) Carrier status code Example: "1" - `carrier_detail_code` (string, required) Carrier detail code Example: "OT" - `carrier_status_description` (string) carrier status description Example: "Your item was delivered in or at the mailbox at 9:10 am on March" - `ship_date` (string) An [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) string that represents a date and time. Example: "2018-09-23T15:00:00.000Z" - `estimated_delivery_date` (string) An [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) string that represents a date and time. Example: "2018-09-23T15:00:00.000Z" - `actual_delivery_date` (string) An [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) string that represents a date and time. Example: "2018-09-23T15:00:00.000Z" - `exception_description` (string) Exception description - `events` (array, required) The events that have occured during the lifetime of this tracking number. - `events.occurred_at` (string, required) Timestamp for carrier event Example: "2018-09-23T15:00:00.000Z" - `events.carrier_occurred_at` (string) Carrier timestamp for the event, it is assumed to be the local time of where the event occurred. Example: "2018-09-23T15:00:00.000Z" - `events.description` (string) Event description Example: "Delivered, In/At Mailbox" - `events.city_locality` (string, required) City locality Example: "AUSTIN" - `events.state_province` (string, required) State province Example: "TX" - `events.postal_code` (string, required) Postal code Example: "78756" - `events.country_code` (string) A two-letter [ISO 3166-1 country code](https://en.wikipedia.org/wiki/ISO_3166-1) Example: "CA" - `events.company_name` (string) Company Name Example: "Stamps.com" - `events.signer` (string) Signer information - `events.event_code` (string) Event Code - `events.status_description` (string, required) Event Status Description Example: "In Transit" - `events.status_detail_description` (string) Event Status Detail Description Example: "Your shipment is on its way between the carrier hubs." - `events.latitude` (number) Latitude coordinate of tracking event. - `events.longitude` (number) Longitude coordinate of tracking event. - `events.proof_of_delivery_url` (string) A URL to an image captured at the time of delivery, serving as evidence that the shipment was successfully delivered to the recipient. It can be used to capture things like recipient's signature, location of delivery, condition of the package upon delivery, etc. Example: "https://tracking-service-prod.s3.amazonaws.com/proof-of-delivery/dummy_module/0000000001/bc6dd17969bd97f24262ca73ac6ff36062aafecba25ef16d4178264bf7c0e72c.png" ## Response 400 fields (application/json): - `request_id` (string, required) A UUID that uniquely identifies the request id. This can be given to the support team to help debug non-trivial issues that may occur Example: "aa3d8e8e-462b-4476-9618-72db7f7b7009" - `errors` (array, required) The errors associated with the failed API call - `errors.error_source` (string, required) The source of the error, as indicated by the name this informs us if the API call failed because of the carrier, the order source, or the ShipEngine API itself. Enum: "carrier", "order_source", "shipengine" - `errors.error_type` (string, required) The type of error Enum: "account_status", "business_rules", "validation", "security", "system", "integrations" - `errors.error_code` (string, required) The error code specified for the failed API Call Enum: "auto_fund_not_supported", "batch_cannot_be_modified", "carrier_conflict", "carrier_disconnected", "carrier_not_connected", "carrier_not_supported", "confirmation_not_supported", "default_warehouse_cannot_be_deleted", "field_conflict", "field_value_required", "forbidden", "identifier_conflict", "identifiers_must_match", "insufficient_funds", "invalid_address", "invalid_billing_plan", "invalid_field_value", "invalid_identifier", "invalid_status", "invalid_string_length", "label_images_not_supported", "meter_failure", "order_source_not_active", "rate_limit_exceeded", "refresh_not_supported", "request_body_required", "return_label_not_supported", "settings_not_supported", "subscription_inactive", "terms_not_accepted", "tracking_not_supported", "trial_expired", "unauthorized", "unknown", "unspecified", "verification_failure", "warehouse_conflict", "webhook_event_type_conflict", "customs_items_required", "incompatible_paired_labels", "invalid_charge_event", "invalid_object", "no_rates_returned", "file_not_found", "shipping_rule_not_found", "service_not_determined", "no_rates_returned", "funding_source_registration_in_progress", "insurance_failure", "funding_source_missing_configuration", "funding_source_error" - `errors.message` (string, required) An error message associated with the failed API call Example: "Body of request cannot be null." - `errors.carrier_id` (string) A string that uniquely identifies the carrier that generated the error. Example: "se-28529731" - `errors.carrier_code` (string) The name of the shipping carrier that generated the error, such as fedex, dhl_express, stamps_com, etc. Example: "dhl_express" - `errors.field_name` (string) The name of the field that caused the error Example: "shipment.ship_to.phone_number" ## Response 404 fields (application/json): - `request_id` (string, required) A UUID that uniquely identifies the request id. This can be given to the support team to help debug non-trivial issues that may occur Example: "aa3d8e8e-462b-4476-9618-72db7f7b7009" - `errors` (array, required) The errors associated with the failed API call - `errors.error_source` (string, required) The source of the error, as indicated by the name this informs us if the API call failed because of the carrier, the order source, or the ShipEngine API itself. Enum: "carrier", "order_source", "shipengine" - `errors.error_type` (string, required) The type of error Enum: "account_status", "business_rules", "validation", "security", "system", "integrations" - `errors.error_code` (string, required) The error code specified for the failed API Call Enum: "auto_fund_not_supported", "batch_cannot_be_modified", "carrier_conflict", "carrier_disconnected", "carrier_not_connected", "carrier_not_supported", "confirmation_not_supported", "default_warehouse_cannot_be_deleted", "field_conflict", "field_value_required", "forbidden", "identifier_conflict", "identifiers_must_match", "insufficient_funds", "invalid_address", "invalid_billing_plan", "invalid_field_value", "invalid_identifier", "invalid_status", "invalid_string_length", "label_images_not_supported", "meter_failure", "order_source_not_active", "rate_limit_exceeded", "refresh_not_supported", "request_body_required", "return_label_not_supported", "settings_not_supported", "subscription_inactive", "terms_not_accepted", "tracking_not_supported", "trial_expired", "unauthorized", "unknown", "unspecified", "verification_failure", "warehouse_conflict", "webhook_event_type_conflict", "customs_items_required", "incompatible_paired_labels", "invalid_charge_event", "invalid_object", "no_rates_returned", "file_not_found", "shipping_rule_not_found", "service_not_determined", "no_rates_returned", "funding_source_registration_in_progress", "insurance_failure", "funding_source_missing_configuration", "funding_source_error" - `errors.message` (string, required) An error message associated with the failed API call Example: "Body of request cannot be null." - `errors.carrier_id` (string) A string that uniquely identifies the carrier that generated the error. Example: "se-28529731" - `errors.carrier_code` (string) The name of the shipping carrier that generated the error, such as fedex, dhl_express, stamps_com, etc. Example: "dhl_express" - `errors.field_name` (string) The name of the field that caused the error Example: "shipment.ship_to.phone_number" ## Response 500 fields (application/json): - `request_id` (string, required) A UUID that uniquely identifies the request id. This can be given to the support team to help debug non-trivial issues that may occur Example: "aa3d8e8e-462b-4476-9618-72db7f7b7009" - `errors` (array, required) The errors associated with the failed API call - `errors.error_source` (string, required) The source of the error, as indicated by the name this informs us if the API call failed because of the carrier, the order source, or the ShipEngine API itself. Enum: "carrier", "order_source", "shipengine" - `errors.error_type` (string, required) The type of error Enum: "account_status", "business_rules", "validation", "security", "system", "integrations" - `errors.error_code` (string, required) The error code specified for the failed API Call Enum: "auto_fund_not_supported", "batch_cannot_be_modified", "carrier_conflict", "carrier_disconnected", "carrier_not_connected", "carrier_not_supported", "confirmation_not_supported", "default_warehouse_cannot_be_deleted", "field_conflict", "field_value_required", "forbidden", "identifier_conflict", "identifiers_must_match", "insufficient_funds", "invalid_address", "invalid_billing_plan", "invalid_field_value", "invalid_identifier", "invalid_status", "invalid_string_length", "label_images_not_supported", "meter_failure", "order_source_not_active", "rate_limit_exceeded", "refresh_not_supported", "request_body_required", "return_label_not_supported", "settings_not_supported", "subscription_inactive", "terms_not_accepted", "tracking_not_supported", "trial_expired", "unauthorized", "unknown", "unspecified", "verification_failure", "warehouse_conflict", "webhook_event_type_conflict", "customs_items_required", "incompatible_paired_labels", "invalid_charge_event", "invalid_object", "no_rates_returned", "file_not_found", "shipping_rule_not_found", "service_not_determined", "no_rates_returned", "funding_source_registration_in_progress", "insurance_failure", "funding_source_missing_configuration", "funding_source_error" - `errors.message` (string, required) An error message associated with the failed API call Example: "Body of request cannot be null." - `errors.carrier_id` (string) A string that uniquely identifies the carrier that generated the error. Example: "se-28529731" - `errors.carrier_code` (string) The name of the shipping carrier that generated the error, such as fedex, dhl_express, stamps_com, etc. Example: "dhl_express" - `errors.field_name` (string) The name of the field that caused the error Example: "shipment.ship_to.phone_number"