{
  "openapi": "3.0.1",
  "info": {
    "title": "Parcel Tracking API: TrackingMore 1,200+ Carriers",
    "description": "Track parcels and shipments across 1,200+ carriers with the TrackingMore API: delivery status, substatus, checkpoints, transit time and carrier ETAs, filtered by courier, status and date. Also courier detection, courier and airline lists and air waybill results. Bring your own key.",
    "version": "0.1",
    "x-build-id": "C48QfIy1sOSaK5hxd"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/nabeelbaghoor~parcel-tracking-api/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-nabeelbaghoor-parcel-tracking-api",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/nabeelbaghoor~parcel-tracking-api/runs": {
      "post": {
        "operationId": "runs-sync-nabeelbaghoor-parcel-tracking-api",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/nabeelbaghoor~parcel-tracking-api/run-sync": {
      "post": {
        "operationId": "run-sync-nabeelbaghoor-parcel-tracking-api",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "properties": {
          "mode": {
            "title": "What to get",
            "enum": [
              "getTrackings",
              "trackShipments",
              "detectCourier",
              "listCouriers",
              "getAirWaybills",
              "listAirlines"
            ],
            "type": "string",
            "description": "Get trackings reads the shipments already in your TrackingMore account (free of credits), filtered by tracking number, courier, delivery status and date, with every checkpoint. Track shipments (realtime) is opt-in: it creates trackings and returns their live status, and each new tracking number and courier pair uses one TrackingMore credit. Detect courier finds the carrier of a tracking number. Get all couriers lists the 1,200+ supported carriers. Get air waybill results reads air cargo waybills already in your account. Get all airlines lists the supported airlines.",
            "default": "getTrackings"
          },
          "trackingNumbers": {
            "title": "Tracking numbers",
            "type": "array",
            "description": "Get trackings (optional filter, sent 40 per request, up to 1,000 per run), Track shipments (up to 500 per run) and Detect courier. One tracking number per line.",
            "items": {
              "type": "string"
            }
          },
          "courierCode": {
            "title": "Courier code",
            "type": "string",
            "description": "Get trackings (optional filter) and Track shipments. One TrackingMore courier code such as usps, ups, fedex, dhl or china-post (see Get all couriers). For Track shipments, leave it empty to detect the courier of each number automatically."
          },
          "deliveryStatus": {
            "title": "Delivery status",
            "enum": [
              "any",
              "pending",
              "notfound",
              "transit",
              "pickup",
              "delivered",
              "expired",
              "undelivered",
              "exception",
              "inforeceived"
            ],
            "type": "string",
            "description": "Get trackings only. Keep only shipments whose current status is this one.",
            "default": "any"
          },
          "archivedStatus": {
            "title": "Archived",
            "enum": [
              "tracking",
              "true"
            ],
            "type": "string",
            "description": "Get trackings only. Normal trackings or archived trackings.",
            "default": "tracking"
          },
          "createdAfter": {
            "title": "Created after",
            "type": "string",
            "description": "Get trackings only. Trackings created on or after this date, such as 2026-10-01 or 2026-10-01T08:00:00Z. TrackingMore stores 180 days of trackings."
          },
          "createdBefore": {
            "title": "Created before",
            "type": "string",
            "description": "Get trackings only. Trackings created on or before this date (a plain date counts the whole day)."
          },
          "updatedAfter": {
            "title": "Updated after",
            "type": "string",
            "description": "Get trackings only. Trackings updated on or after this date. Handy for a daily sync of changed shipments."
          },
          "updatedBefore": {
            "title": "Updated before",
            "type": "string",
            "description": "Get trackings only. Trackings updated on or before this date."
          },
          "lang": {
            "title": "Language",
            "type": "string",
            "description": "Get trackings and Track shipments, optional. Two letter ISO 639-1 code such as en, de or es for the language of the results. Empty means the courier's default language."
          },
          "confirmCreate": {
            "title": "Confirm credit use",
            "type": "boolean",
            "description": "Track shipments only, and required for it. Tick to let this run create trackings in your TrackingMore account. Each new tracking number and courier pair uses one TrackingMore credit; numbers already in the account are read back for free.",
            "default": false
          },
          "originCountry": {
            "title": "Origin country",
            "type": "string",
            "description": "Track shipments only, optional. Two letter ISO 3166-1 alpha-2 code of the origin, such as CN."
          },
          "destinationCountry": {
            "title": "Destination country",
            "type": "string",
            "description": "Track shipments only, optional. Two letter ISO 3166-1 alpha-2 code of the destination, such as US. For postal shipments TrackingMore then also tracks the destination leg."
          },
          "trackingPostalCode": {
            "title": "Recipient postal code",
            "type": "string",
            "description": "Track shipments only. The receiver's postal code, required by some couriers (see tracking_required_fields in Get all couriers)."
          },
          "trackingShipDate": {
            "title": "Ship date",
            "type": "string",
            "description": "Track shipments only. Shipping date as 20261025 or 2026-10-25, required by some couriers."
          },
          "awbNumbers": {
            "title": "Air waybill numbers",
            "type": "array",
            "description": "Get air waybill results only. One air waybill number per line: 3 digit airline prefix and 8 digits, such as 235-69030430. Sent 20 per request. The air waybills must already be created in your TrackingMore account.",
            "items": {
              "type": "string"
            }
          },
          "maxResults": {
            "title": "Maximum results",
            "minimum": 1,
            "maximum": 100000,
            "type": "integer",
            "description": "The most rows this run returns and charges for.",
            "default": 100
          },
          "requestsPerMinute": {
            "title": "Requests per minute",
            "minimum": 1,
            "maximum": 600,
            "type": "integer",
            "description": "Pacing for calls to TrackingMore. The documented limit is 10 requests per second (3 for creating trackings, which this actor always respects); throttled calls are retried.",
            "default": 300
          },
          "apiKey": {
            "title": "API key",
            "type": "string",
            "description": "Your own TrackingMore API key, from the TrackingMore admin under Developer, API Key (admin.trackingmore.com/developer/apikey). Stored as a secret and sent only to TrackingMore in the Tracking-Api-Key header; it is never logged. You can instead set the DATA_API_KEY environment secret."
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}