---
title: "POST track"
method: POST
path: "track"
---

# POST track

`POST track` (webhook)

## Payload

- WebhookPayloadTrack — Content of the webhook posted to the external URL
  - `event` 'transaction_created' | 'transaction_updated' | 'track_updated' | 'batch_created' | 'batch_purchased' | 'all' — Type of event that triggered the webhook.
  - `test` boolean — Determines whether the webhook is a test webhook or not.
  - `data` Track
    - `address_from` TrackingStatusFromLocation
      - `city` string
      - `country` string
      - `state` string
      - `zip` string
    - `address_to` TrackingStatusToLocation
      - `city` string
      - `country` string
      - `state` string
      - `zip` string
    - `carrier` string, required — Name of the carrier of the shipment to track. See [Carriers](/shippoapi/public-api/carriers).
    - `eta` string, date-time — The estimated time of arrival according to the carrier, this might be updated by carriers during the life of the shipment.
    - `messages` string[], required
    - `metadata` string — A string of up to 100 characters that can be filled with any additional information you want to attach to the object.
    - `original_eta` string, date-time — The estimated time of arrival according to the carrier at the time the shipment first entered the system.
    - `servicelevel` ServiceLevelWithParent — Contains details regarding the service level for the given rate.
      - `name` string — Name of the Rate's servicelevel, e.g. `International Priority` or `Standard Post`. A servicelevel commonly defines the transit time of a Shipment (e.g., Express vs. Standard), along with other properties. These names vary depending on the provider.
      - `terms` string — Further clarification of the service. For FedEx, a value of `ONERATE` indicates this rate is a FedEx One Rate variant of the same service level — it shares the same `token` as the standard-rate object but is a separate rate with its own `amount`. Standard (non-One Rate) rates have an empty string here.
      - `token` string — Token of the Rate's servicelevel, e.g. `usps_priority` or `fedex_ground`. See [servicelevels](/shippoapi/public-api/service-levels).
      - `extended_token` string — Unique, extended version of the Service Level "token". Guaranteed to be unique across all Service Levels, and may help offer insight into the specific Service Level it describes.
      - `parent_servicelevel` object — Used for some Service Levels to link to the more "generic" version of this Service Level - for example, if this Service Level is a variation specific to shipments to Europe("ups_saver_eu"), the "parent" is the fully generic version ("ups_saver"). Helpful when displaying Service Levels to users. Has the same structure of the servicelevel - "name", "token", "terms", and "extended_token", or it is otherwise null.
        - `name` string — Name of the Rate's servicelevel, e.g. `International Priority` or `Standard Post`. A servicelevel commonly defines the transit time of a Shipment (e.g., Express vs. Standard), along with other properties. These names vary depending on the provider.
        - `terms` string — Further clarification of the service. For FedEx, a value of `ONERATE` indicates this rate is a FedEx One Rate variant of the same service level — it shares the same `token` as the standard-rate object but is a separate rate with its own `amount`. Standard (non-One Rate) rates have an empty string here.
        - `token` string — Token of the Rate's servicelevel, e.g. `usps_priority` or `fedex_ground`. See [servicelevels](/shippoapi/public-api/service-levels).
        - `extended_token` string — Unique, extended version of the Service Level "token". Guaranteed to be unique across all Service Levels, and may help offer insight into the specific Service Level it describes.
    - `tracking_history` TrackingStatus[], required — A list of tracking events, following the same structure as `tracking_status`. It contains a full history of all tracking statuses, starting with the earlier tracking event first.
      - `location` TrackingStatusLocation
        - `city` string
        - `country` string
        - `state` string
        - `zip` string
      - `object_created` string, date-time, required
      - `object_id` string, required
      - `object_updated` string, date-time, required
      - `status` 'UNKNOWN' | 'PRE_TRANSIT' | 'TRANSIT' | 'DELIVERED' | 'RETURNED' | 'FAILURE', required — Indicates the high level status of the shipment.
      - `substatus` TrackingStatusSubstatus — A finer-grained classification of the tracking event.
        - `code` string, required — A code that represents the substatus of the shipment. See the [Event Definitions](https://docs.goshippo.com/docs/tracking/tracking/#event-definitions) for more information.
        - `text` string, required — A human-readable description of the substatus. See the [Event Definitions](https://docs.goshippo.com/docs/tracking/tracking/#event-definitions) for more information.
        - `action_required` boolean, required — Indicates whether the substatus requires action from the shipper or recipient to complete delivery.
      - `status_date` string, date-time — Date and time when the carrier scanned this tracking event. This is displayed in UTC.
      - `status_details` string, required — The human-readable description of the status.
    - `tracking_number` string, required — Tracking number to track.
    - `tracking_status` TrackingStatus — The latest tracking information of this shipment.
      - `location` TrackingStatusLocation
        - `city` string
        - `country` string
        - `state` string
        - `zip` string
      - `object_created` string, date-time, required
      - `object_id` string, required
      - `object_updated` string, date-time, required
      - `status` 'UNKNOWN' | 'PRE_TRANSIT' | 'TRANSIT' | 'DELIVERED' | 'RETURNED' | 'FAILURE', required — Indicates the high level status of the shipment.
      - `substatus` TrackingStatusSubstatus — A finer-grained classification of the tracking event.
        - `code` string, required — A code that represents the substatus of the shipment. See the [Event Definitions](https://docs.goshippo.com/docs/tracking/tracking/#event-definitions) for more information.
        - `text` string, required — A human-readable description of the substatus. See the [Event Definitions](https://docs.goshippo.com/docs/tracking/tracking/#event-definitions) for more information.
        - `action_required` boolean, required — Indicates whether the substatus requires action from the shipper or recipient to complete delivery.
      - `status_date` string, date-time — Date and time when the carrier scanned this tracking event. This is displayed in UTC.
      - `status_details` string, required — The human-readable description of the status.
    - `transaction` string — The `object_id` of the transaction associated with this tracking object. This field is visible only to the object owner of the transaction.

## Acknowledgement `200`

The data was successfully received

---

[API](https://skmtc.net/goshippo/apis/shippo-external-api.md) · [All operations](https://skmtc.net/goshippo/apis/shippo-external-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/goshippo/shippo-external-api/revisions/13280a44853c/schema)
