---
title: "Receive webhooks - Tracking results"
method: POST
path: "/your-endpoint"
---

# Receive webhooks - Tracking results

`POST /your-endpoint` (webhook)

> This endpoint is **NOT** part of the Ship24 API but rather **has to be implemented on your side** in order to receive webhook messages.
Ship24 will be pushing tracking results to your endpoint using a `trackings` array containing `tracking` objects. The `tracking` object is detailed below as well as in [Schemas > Tracking](/schemas/tracking). [Learn how to set up and use webhooks](https://docs.ship24.com/webhooks/overview).

## Headers

- `Authorization` string

## Payload

- object
  - `trackings` object[]
    - `metadata` Metadata
      - `generatedAt` string, date-time — Date at which the webhook data was generated.
      - `messageId` string — Unique identifier of the tracking object across webhooks.
    - `tracker` Tracker
      - `trackerId` string, required — The id of the tracker that is providing this tracking.
      - `trackingNumber` string, required — The tracking number which the tracker is following.
      - `shipmentReference` string, nullable, required — Your reference for this shipment, provided at the tracker's creation. Unlike clientTrackerId, this value is not validated for uniqueness.
      - `courierCode` union — Code of the courier(s) handling the shipment.
        - string[]
        - string
      - `clientTrackerId` string, nullable, required — Your unique identifier for this shipment, provided at the tracker's creation. Ship24 validates its uniqueness across all your active trackers.
      - `isSubscribed` boolean, required — Indicates whether the tracker is active. A value of `false` means the tracker is archived and will not be used for tracking.
      - `isTracked` boolean, required — Indicates whether we are actively tracking the parcel. A value of `true` means new data is being searched for, while `false` indicates tracking has stopped due to delivery, inactivity, or unsubscription. Existing tracking results will remain accessible; however, new data will not be fetched, and notifications will no longer be sent.
      - `createdAt` string, date-time, required — The date and time at which the tracker was created.
    - `shipment` Shipment
      - `shipmentId` string, nullable — Unique identifier of the parcel in Ship24 system.
      - `statusCode` string, nullable — [statusCode](https://docs.ship24.com/status/#statuscode-and-statuscategory) of the shipment.
      - `statusCategory` string, nullable — [statusCategory](https://docs.ship24.com/status/#statuscode-and-statuscategory) of the shipment.
      - `statusMilestone` string — [statusMilestone](https:docs.ship24.com/status/#statusmilestone) of the shipment.
      - `originCountryCode` string, nullable — Detected country code of origin.
      - `destinationCountryCode` string, nullable — Detected country code of destination.
      - `delivery` object
        - `estimatedDeliveryDate` string, date-time, nullable — Estimated delivery date of the shipment, if provided by the courier. Format: [Date and Time in UTC](http://docs.ship24.com/data-format#logistics-date-and-time)
        - `service` string, nullable — Name of logistics service or product for the shipment.
        - `signedBy` string, nullable — Name of the person who signed for the shipment.
      - `trackingNumbers` object[] — List of tracking numbers linked to the shipment.
        - `tn` string — Tracking number.
      - `recipient` object, nullable — Information on the recipient.
        - `name` string, nullable
        - `address` string, nullable
        - `postCode` string, nullable
        - `city` string, nullable
        - `subdivision` string, nullable
    - `events` Event[]
      - `eventId` string — Unique identifier of the event in Ship24 system.
      - `trackingNumber` string — The original tracking number used to create the Tracker.
      - `eventTrackingNumber` string — The tracking number associated with the event, on which the event has been found.
      - `status` string, nullable — Event raw text.
      - `occurrenceDatetime` string, logistic-date-time — [Date and time](http://docs.ship24.com/data-format#logistics-date-and-time) at which the event occurred.
      - `order` integer, nullable — Indicate the order of the events in case the occurrenceDatetime is the same between multiple events (lower is older).
      - `location` string, nullable — Location raw text of the event.
      - `sourceCode` string, nullable — Internal code of the source used to get this event. Please note that those codes may evolve at any point in time.
      - `courierCode` string, nullable — Code of the courier linked to this event, refers to our Couriers list. Please note that those codes may evolve at any point in time.
      - `statusCode` string, nullable — [statusCode](https://docs.ship24.com/status/#statuscode-and-statuscategory) of the event.
      - `statusCategory` string, nullable — [statusCategory](https://docs.ship24.com/status/#statuscode-and-statuscategory) of the event.
      - `statusMilestone` string — [statusMilestone](https://docs.ship24.com/status/#statusmilestone) of the shipment at the time of the event.
      - `datetime` string
      - `utcOffset` string
      - `hasNoTime` boolean
    - `statistics` Statistics
      - `timestamps` object — Date and time of the occurrence of each milestone of the shipment. [Date and time Format](https://docs.ship24.com/data-format#logistics-date-and-time) [List of Milestones](https://docs.ship24.com/status/#statusmilestone)
        - `infoReceivedDatetime` string, logistic-date-time, nullable — Occurrence [date and time](https://docs.ship24.com/data-format#logistics-date-and-time) of the first `info_received` [milestone](https://docs.ship24.com/status/#statusmilestone).
        - `inTransitDatetime` string, logistic-date-time, nullable — Occurrence [date and time](https://docs.ship24.com/data-format#logistics-date-and-time) of the first `in_transit` [milestone](https://docs.ship24.com/status/#statusmilestone).
        - `outForDeliveryDatetime` string, logistic-date-time, nullable — Occurrence [date and time](https://docs.ship24.com/data-format#logistics-date-and-time) of the first `out_for_delivery` [milestone](https://docs.ship24.com/status/#statusmilestone).
        - `failedAttemptDatetime` string, logistic-date-time, nullable — Occurrence [date and time](https://docs.ship24.com/data-format#logistics-date-and-time) of the first `failed_attempt` [milestone](https://docs.ship24.com/status/#statusmilestone).
        - `availableForPickupDatetime` string, logistic-date-time, nullable — Occurrence [date and time](https://docs.ship24.com/data-format#logistics-date-and-time) of the first `available_for_pickup` [milestone](https://docs.ship24.com/status/#statusmilestone).
        - `exceptionDatetime` string, logistic-date-time, nullable — Occurrence [date and time](https://docs.ship24.com/data-format#logistics-date-and-time) of the first `exception` [milestone](https://docs.ship24.com/status/#statusmilestone).
        - `deliveredDatetime` string, logistic-date-time, nullable — Occurrence [date and time](https://docs.ship24.com/data-format#logistics-date-and-time) of the first `delivered` [milestone](https://docs.ship24.com/status/#statusmilestone).

## Acknowledgement `200`

Indicates that your server successfully processed Ship24's request.

---

[API](https://skmtc.net/botbrains-io/apis/ship24-tracking-api.md) · [All operations](https://skmtc.net/botbrains-io/apis/ship24-tracking-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/botbrains-io/ship24-tracking-api/revisions/9d68f8b1d086/schema)
