---
title: "Create a package tracker"
method: GET
path: "/v1/trackers/{carrier_name}/{tracking_number}"
tags: ["Trackers"]
deprecated: true
---

# Create a package tracker

`GET /v1/trackers/{carrier_name}/{tracking_number}`

## Request

- Base URL: `https://karrio.io` (the document declares no server; this is the origin it was published from)
- URL: `https://karrio.io/v1/trackers/{carrier_name}/{tracking_number}`
- Auth: one of:
  - HTTP basic
  - API key in header `Authorization`
  - OAuth 2
    - Authorization code: `/oauth/authorize/`
    - Token URL: `/oauth/token/`
  - API key in header `Authorization`
- TypeScript: <https://skmtc.dev/karrio/apis/karrio-api/docs/v1/trackers/:carrier_name/:tracking_number/get.ts> (a function with typed inputs; its response is checked against the schema)

> **Deprecated.**

This API creates or retrieves (if existent) a tracking status object containing the
details and events of a shipping in progress.

## Path parameters

- `carrier_name` string, required
- `tracking_number` string, required

## Query parameters

- `carrier_name` 'allied_express' | 'allied_express_local' | 'amazon_shipping' | 'aramex' | 'asendia_us' | 'australiapost' | 'boxknight' | 'bpost' | 'canadapost' | 'canpar' | 'chronopost' | 'colissimo' | 'dhl_express' | 'dhl_parcel_de' | 'dhl_poland' | 'dhl_universal' | 'dicom' | 'dpd' | 'dpdhl' | 'fedex' | 'fedex_ws' | 'generic' | 'geodis' | 'hay_post' | 'laposte' | 'locate2u' | 'nationex' | 'purolator' | 'roadie' | 'royalmail' | 'seko' | 'sendle' | 'tge' | 'tnt' | 'ups' | 'usps' | 'usps_international' | 'usps_wt' | 'usps_wt_international' | 'zoom2u', required
- `hub` string

## Response `200`

- TrackingStatus
  - `id` string: A unique identifier
  - `carrier_name` string, required: The tracking carrier
  - `carrier_id` string, required: The tracking carrier configured identifier
  - `tracking_number` string, required: The shipment tracking number
  - `info` TrackingInfo
    - `carrier_tracking_link` string, nullable: The carrier tracking link
    - `customer_name` string, nullable: The customer name
    - `expected_delivery` string, nullable: The expected delivery date
    - `note` string, nullable: A tracking note
    - `order_date` string, nullable: The package order date
    - `order_id` string, nullable: The package order id or number
    - `package_weight` string, nullable: The package weight
    - `package_weight_unit` string, nullable: The package weight unit
    - `shipment_package_count` string, nullable: The package count
    - `shipment_pickup_date` string, nullable: The shipment pickup date
    - `shipment_delivery_date` string, nullable: The shipment delivery date
    - `shipment_service` string, nullable: The shipment service
    - `shipment_origin_country` string, nullable: The shipment origin country
    - `shipment_origin_postal_code` string, nullable: The shipment origin postal code
    - `shipment_destination_country` string, nullable: The shipment destination country
    - `shipment_destination_postal_code` string, nullable: The shipment destination postal code
    - `shipping_date` string, nullable: The shipping date
    - `signed_by` string, nullable: The person who signed for the package
    - `source` string, nullable: The tracker source
  - `events` TrackingEvent[], nullable: The tracking details events
    - `date` string: The tracking event's date. Format: `YYYY-MM-DD`
    - `description` string: The tracking event's description
    - `location` string: The tracking event's location
    - `code` string, nullable: The tracking event's code
    - `time` string, nullable: The tracking event's time. Format: `HH:MM AM/PM`
    - `latitude` number, double, nullable: The tracking event's latitude.
    - `longitude` number, double, nullable: The tracking event's longitude.
  - `delivered` boolean: Specified whether the related shipment was delivered
  - `test_mode` boolean, required: Specified whether the object was created with a carrier in test mode
  - `status` 'pending' | 'unknown' | 'on_hold' | 'delivered' | 'in_transit' | 'delivery_delayed' | 'out_for_delivery' | 'ready_for_pickup' | 'delivery_failed': The current tracking status
  - `estimated_delivery` string: The delivery estimated date
  - `meta` object, nullable: provider specific metadata
  - `object_type` string: Specifies the object type
  - `metadata` object: User metadata for the tracker
  - `messages` Message[]: The list of note or warning messages
    - `message` string: The error or warning message
    - `code` string: The message code
    - `details` object: any additional details
    - `carrier_name` string: The targeted carrier
    - `carrier_id` string: The targeted carrier name (unique identifier)
  - `delivery_image_url` string, uri, nullable: The shipment invoice URL
  - `signature_image_url` string, uri, nullable: The shipment invoice URL

## Other responses

- `400`
- `424`
- `500`

---

[API](https://skmtc.dev/karrio/apis/karrio-api.md) - [All operations](https://skmtc.dev/karrio/apis/karrio-api/llms.txt) - [OpenAPI document](https://skmtc.dev/karrio/apis/karrio-api/revisions/76ab3b7c3a61?raw)
