---
title: "Get freight tracking by number"
method: GET
path: "/v2/freight/tracking"
tags: ["freight"]
---

# Get freight tracking by number

`GET /v2/freight/tracking`

<aside class="access" aria-label="Endpoint access">
      <table class="access__table">
        <thead>
          <tr>
            <th class="access__table-header">Products</th>
            <th class="access__table-header">Plans</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td class="access__table-cell access__product">
              <img class="access__logo" src="/static/logos/shipstation-api-logo.svg" alt="ShipStation API Logo" loading="lazy" decoding="async"/>
              <div class="access__sub">Formerly ShipEngine</div>
            </td>
            <td class="access__table-cell access__plans">
              <a href="/apis/@shipstation-v2/docs/getting-started/plans/shipstation-api-free.md" class="access__plan">Free</a>
              <a href="/apis/@shipstation-v2/docs/getting-started/plans/shipstation-api-advanced-enterprise.md" class="access__plan">Advanced</a>
              <a href="/apis/@shipstation-v2/docs/getting-started/plans/shipstation-api-advanced-enterprise.md" class="access__plan">Enterprise</a>
            </td>
          </tr>
          <tr>
            <td class="access__table-cell">
              <img class="access__logo" src="/static/logos/shipstation-logo.svg" alt="ShipStation Logo" loading="lazy" decoding="async"/>
            </td>
            <td class="access__table-cell access__plans">
              <a href="/apis/@shipstation-v2/docs/getting-started/plans/shipstation-free-starter.md" class="access__plan access__plan--off">Free</a>
              <a href="/apis/@shipstation-v2/docs/getting-started/plans/shipstation-free-starter.md" class="access__plan access__plan--off">Starter</a>
              <a href="/apis/@shipstation-v2/docs/getting-started/plans/shipstation-standard-premium.md" class="access__plan">Standard</a>
              <a href="/apis/@shipstation-v2/docs/getting-started/plans/shipstation-standard-premium.md" class="access__plan">Premium</a>
            </td>
          </tr>
        </tbody>
      </table>
      <footer class="access__footer">
        <a class="access__help" href="/apis/@shipstation-v2/docs/getting-started/products-and-plans.md">
          Learn about products and plans
          <img src="/static/icons/external-link.svg" alt="External Link Icon" style="width: 16px;" loading="lazy" decoding="async"/>
        </a>
      </footer>
    </aside>

Retrieve tracking for a freight shipment by its PRO or BOL number, whether or not the shipment was booked through ShipStation. Use this when you have the carrier's reference number but no `freight_shipment_id` — for example, for a shipment booked outside the API.

`carrier_scac` is required as well as the number itself, because the freight provider needs the SCAC to resolve a tracking number.

## Query parameters

- `freight_provider_account_id` string, required — A string that uniquely identifies a ShipStation resource, such as a carrier, label, shipment, etc.
- `tracking_number` string, required
- `tracking_type` 'pro_number' | 'bol_number', required
- `carrier_scac` string, required

## Response `200`

The request was a success.

- FreightTrackingResponseBody — Live carrier tracking for a PRO or BOL number.
  - `freight_provider_account_id` string — A string that uniquely identifies a ShipStation resource, such as a carrier, label, shipment, etc.
  - `freight_provider_name` string — The code of the freight provider used to retrieve the tracking.
  - `carrier_scac` string, nullable — The SCAC of the LTL carrier moving the freight, as reported by the carrier. This echoes the provider's response, not the `carrier_scac` you supplied in the request, so it can be `null`.
  - `bol_number` string, nullable — The Bill of Lading number reported by the carrier.
  - `pro_number` string, nullable — The PRO number reported by the carrier.
  - `tracking_status` 'unknown' | 'created' | 'pending_pickup' | 'dispatched' | 'in_route_to_pickup' | 'at_pickup' | 'in_transit' | 'out_for_delivery' | 'at_delivery' | 'delivered' | 'exception' | 'voided' | 'null', nullable — The detailed tracking status reported by the carrier.
  - `tracking_url` string, nullable — A carrier page where the shipment can be tracked, when the carrier provides one.
  - `last_event_at` string, nullable — When the most recent tracking event occurred.
  - `events` FreightTrackingEvent[] — The tracking events reported by the carrier.
    - `occurred_at` string, nullable — When the event occurred, in `YYYY-MM-DDTHH:mm:ssZ` format. Carriers that report only a date return midnight as the time.
    - `status` string, nullable — The tracking status the event corresponds to.
    - `carrier_code` string, nullable — The carrier's own status or event code.
    - `description` string, nullable — The carrier's description of the event.
    - `documents` FreightTrackingEventDocument[] — Any documents the carrier attached to the event, such as a proof of delivery. Always present; an empty array when the carrier attached none.
      - `type` string, nullable — The type of document, as reported by the carrier.
      - `filename` string, nullable — The name of the document file.
      - `format` string, nullable — The file format of the document.

## Other responses

- `400` — `freight_provider_account_id` is missing or is not a valid account ID (`freight_provider_id_required`), `tracking_number`, `tracking_type`, or `carrier_scac` is missing or invalid, or the freight provider connection is not active (`freight_connection_inactive`). The `freight_provider_id_required` message still names the parameter `seller_freight_provider_id`, the name this parameter had previously. Match on `error_code`, not on `message`.
- `404` — The carrier returned no tracking information for the number (`freight_tracking_not_found`).
- `500` — The request was successful.

---

[API](https://skmtc.net/shipstation/apis/shipstation-api-v2.md) · [All operations](https://skmtc.net/shipstation/apis/shipstation-api-v2/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/shipstation/shipstation-api-v2/revisions/d3d8c21cd227/schema)
