Skip to main content
TLDP gives you two paths to create a shipment: the order flow, which lets you create an order first and fulfil it later, and direct shipment creation, which is ideal when you already have all the details ready. Both paths begin with fetching a rate quote — the quote ID anchors every shipment to a confirmed price.
1

Get a rate quote

Calculate rates for your origin, destination, and parcel weight. The first result in the quotes array is the best available rate.
2

Create an order

Create an order with your internal reference, delivery method, recipient details, and item information.
3

Fulfil the order

Attach your chosen rate quote to the order to create a shipment and generate a tracking number.
4

Track the shipment

Use the tracking_number returned from fulfilment to monitor your shipment’s progress, or subscribe to webhook events for push notifications.

Parcel fields

Include any of the following fields in the parcel object to describe your shipment accurately. Dimensional fields are used to calculate volumetric weight where applicable.
Send an Idempotency-Key header on all write requests — such as createShipment or createOrder — to safely retry on network failures without creating duplicate shipments. Use a unique value per logical operation (for example, a UUID generated client-side).

Cancel a shipment

If you need to cancel a shipment before it is picked up, call cancelShipment with the shipment ID.
Instead of polling the API for status updates, subscribe to webhook events such as shipment.picked_up, shipment.in_transit, and shipment.delivered. Your server receives a push notification the moment each status change occurs.