openapi: 3.1.0 info: title: Shippo Addresses Tracking API description: Shippo is a multi-carrier shipping API that enables developers to add complete shipping functionality to their applications. The API supports address validation, carrier rate comparison across USPS, UPS, FedEx, DHL, and 80+ other carriers, label generation, package tracking, returns management, and webhook notifications. version: '2018-02-08' contact: name: Shippo url: https://docs.goshippo.com/ email: support@goshippo.com license: name: Shippo API Terms url: https://goshippo.com/terms-of-use/ x-date: '2026-05-02' servers: - url: https://api.goshippo.com description: Shippo API security: - ShippoToken: [] tags: - name: Tracking description: Track shipments across carriers paths: /tracks/{Carrier}/{TrackingNumber}: get: operationId: getTrackingStatus summary: Get Tracking Status description: Returns the real-time tracking status for a shipment using the carrier code and tracking number. Returns normalized tracking data across all supported carriers. tags: - Tracking parameters: - name: Carrier in: path required: true description: Carrier code (e.g. usps, fedex, ups, dhl_express) schema: type: string - name: TrackingNumber in: path required: true description: Tracking number for the shipment schema: type: string responses: '200': description: Tracking status for the shipment content: application/json: schema: $ref: '#/components/schemas/TrackingStatus' /tracks: post: operationId: registerTrackingWebhook summary: Register Tracking Webhook description: Registers a tracking webhook for a shipment to receive real-time tracking updates. tags: - Tracking requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/TrackingWebhookRequest' responses: '201': description: Tracking webhook registered content: application/json: schema: $ref: '#/components/schemas/TrackingStatus' components: schemas: TrackingWebhookRequest: type: object required: - carrier - tracking_number properties: carrier: type: string tracking_number: type: string metadata: type: string TrackingStatus: type: object properties: carrier: type: string tracking_number: type: string address_from: $ref: '#/components/schemas/Address' address_to: $ref: '#/components/schemas/Address' transaction: type: string original_eta: type: string format: date-time eta: type: string format: date-time servicelevel: type: object properties: token: type: string name: type: string tracking_status: type: object properties: status: type: string enum: - UNKNOWN - PRE_TRANSIT - TRANSIT - DELIVERED - RETURNED - FAILURE status_details: type: string status_date: type: string format: date-time location: type: object tracking_history: type: array items: type: object Address: type: object properties: object_id: type: string description: Unique identifier for the address is_complete: type: boolean description: Whether the address is complete and valid name: type: string description: Full name of the recipient company: type: string description: Company name street1: type: string description: First line of the street address street2: type: string description: Second line of the street address city: type: string description: City state: type: string description: State or province zip: type: string description: Postal code country: type: string description: ISO 2-letter country code phone: type: string description: Phone number email: type: string description: Email address is_residential: type: boolean description: Whether the address is residential validation_results: type: object description: Address validation results object_created: type: string format: date-time object_updated: type: string format: date-time securitySchemes: ShippoToken: type: http scheme: bearer description: Shippo API token (prefix with "ShippoToken ")