---
title: "Get a single tracking request"
method: GET
path: "/tracking_requests/{id}"
tags: ["Tracking Requests"]
---

# Get a single tracking request

`GET /tracking_requests/{id}`

Get the details and status of an existing tracking request.

## Query parameters

- `include` string

## Response `200`

OK

- object
  - `data` TrackingRequest
    - `id` string, uuid, required
    - `type` 'tracking_request', required
    - `attributes` object
      - `request_number` string, required
      - `ref_numbers` string[], nullable
      - `tags` string[]
      - `status` 'pending' | 'awaiting_manifest' | 'created' | 'failed' | 'tracking_stopped', required
      - `failed_reason` 'booking_cancelled' | 'duplicate' | 'expired' | 'internal_processing_error' | 'invalid_number' | 'not_found' | 'retries_exhausted' | 'shipping_line_unreachable' | 'unrecognized_response' | 'data_unavailable' | 'scac_auto_detect_failed' | 'null', nullable — If the tracking request has failed, or is currently failing, the last reason we were unable to complete the request. `scac_auto_detect_failed` means `auto_detect_vocc_scac` was set but no supported carrier SCAC could be inferred from the request number.
      - `request_type` 'bill_of_lading' | 'booking_number' | 'container', required
      - `scac` string, required
      - `created_at` string, date-time, required
      - `updated_at` string, date-time
      - `is_retrying` boolean
      - `retry_count` integer, nullable — How many times T49 has attempted to get the shipment from the shipping line
    - `relationships` object
      - `tracked_object` object
        - `data` object, nullable
          - `id` string, uuid
          - `type` 'shipment'
      - `customer` object
        - `data` object
          - `id` string, uuid
          - `type` 'party'
  - `included` union[]
    - union
      - Account
        - `id` string, uuid, required
        - `type` 'account', required
        - `attributes` object, required
          - `company_name` string, required
      - Shipment
        - `id` string, uuid, required
        - `relationships` object, required
          - `destination` object
            - `data` object, nullable
              - …
          - `port_of_lading` object
            - `data` object, nullable
              - …
          - `containers` object
            - `data` object[]
              - …
          - `port_of_discharge` object
            - `data` object, nullable
              - …
          - `pod_terminal` object
            - `data` object
              - …
          - `destination_terminal` object
            - `data` object
              - …
          - `line_tracking_stopped_by_user` object
            - `data` object
              - …
        - `attributes` object, required
          - `bill_of_lading_number` string, required
          - `normalized_number` string — The normalized version of the shipment number used for querying the carrier
          - `ref_numbers` string[], nullable
          - `created_at` string, date-time
          - `tags` string[]
          - `port_of_lading_locode` string, nullable — UN/LOCODE
          - `port_of_lading_name` string, nullable
          - `port_of_discharge_locode` string, nullable — UN/LOCODE
          - `port_of_discharge_name` string, nullable
          - `destination_locode` string, nullable — UN/LOCODE
          - `destination_name` string, nullable
          - `shipping_line_scac` string
          - `shipping_line_name` string
          - `shipping_line_short_name` string
          - `customer_name` string, nullable
          - `pod_vessel_name` string, nullable
          - `pod_vessel_imo` string, nullable
          - `pod_voyage_number` string, nullable
          - `pol_etd_at` string, date-time, nullable — Estimated Time of Departure from the Port of Lading, as reported by the shipping line. Carrier dependent; may be null.
          - `pol_atd_at` string, date-time, nullable — Actual Time of Departure from the Port of Lading. Populated after the vessel has departed the origin port.
          - `pod_eta_at` string, date-time, nullable — Estimated Time of Arrival at the Port of Discharge.
          - `pod_original_eta_at` string, date-time, nullable — Initial Estimated Time of Arrival at the Port of Discharge, as first reported by the shipping line.
          - `pod_ata_at` string, date-time, nullable — Actual Time of Arrival at the Port of Discharge.
          - `destination_eta_at` string, date-time, nullable — Estimated Time of Arrival at the shipment's destination, as reported by the shipping line. For inland (rail) moves, see also the container-level `ind_eta_at`, which is reported by the rail carrier. Corresponding timezone is `destination_timezone`.
          - `destination_ata_at` string, date-time, nullable — Actual Time of Arrival at the shipment's destination, as reported by the shipping line. For inland (rail) moves, see also the container-level `ind_ata_at`, which is reported by the rail carrier. Corresponding timezone is `destination_timezone`.
          - `pol_timezone` string, nullable — IANA tz
          - `pod_timezone` string, nullable — IANA tz
          - `destination_timezone` string, nullable — IANA tz
          - `line_tracking_last_attempted_at` string, date-time, nullable — When Terminal49 last tried to update the shipment status from the shipping line
          - `line_tracking_last_succeeded_at` string, date-time, nullable — When Terminal49 last successfully updated the shipment status from the shipping line
          - `line_tracking_stopped_at` string, date-time, nullable — When Terminal49 stopped checking at the shipping line
          - `line_tracking_stopped_reason` 'all_containers_terminated' | 'past_arrival_window' | 'past_full_out_window' | 'no_updates_at_line' | 'cancelled_by_user' | 'booking_cancelled' | 'null', nullable — The reason Terminal49 stopped checking
        - `type` 'shipment', required
        - `links` object, required
          - `self` string, uri, required
      - ShippingLine
        - `id` string, uuid, required
        - `attributes` object, required
          - `scac` string, required
          - `name` string, required
          - `alternative_scacs` string[], required — Additional SCACs which will be accepted in tracking requests
          - `short_name` string, required
          - `bill_of_lading_tracking_support` boolean, required
          - `booking_number_tracking_support` boolean, required
          - `container_number_tracking_support` boolean, required
        - `type` 'shipping_line', required

## Other responses

- `404` — Not Found

---

[API](https://skmtc.net/terminal49/apis/terminal49-api-reference.md) · [All operations](https://skmtc.net/terminal49/apis/terminal49-api-reference/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/terminal49/terminal49-api-reference/versions/05ac7931d5a1/schema)
