Creates an order to ship a parcel to the given delivery address.

You can send parcels domestically inside Australia, Canada, and the United States. International parcels can be shipped from Australia and the United States to countries around the globe, or from Canada to the United States. With our API you can tell us the parcel size, origin, and destination, and we'll do the work to find the best route and price for your order.

Since this is a POST request, the params need to be sent in the body of your request as a JSON object. Fill out some fields below and see how the data is sent in the request example box.

If you need more information on GET vs POST requests, the Mozilla MDN has a nice summary.

We decide which currency to charge based on where the parcel is being sent from, so AUD for Australian, CAD for Canadian, and USD for U.S. parcels. This is the currency you'll be charged in.

You'll need a card for the currency you're creating orders in, so an AUD credit card, CAD credit card, or a USD credit card. If you don't have the correct currency enabled for your card then you'll receive an error in the response.

Here are a few things to keep in mind while using this endpoint:

  • A valid postcode and suburb name must be given. The suburb name is validated against the postcode, and they must match.
  • Make sure you send the Content-Type: application/json header, since you're sending the JSON body.
  • Look at the Parcel Weights and Dimensions page for advice on parcel sizes.
  • Look at the First Mile page to see how parcels enter our mail network.
  • All strings (names, addresses, …) must include only Latin characters. That's A-Z along with certain accented characters like á, é, í, ó, and ú. Characters may show without accents on the physical label, but this will not affect deliverability.
  • If the product_code parameter is not given, the product object may not be included in the response.

And when sending international orders:

  • Canadian international orders can only be sent to the United States.
  • Australian and Canadian international orders can only be picked up.
  • When sending from Australia, identification matching the sender name on the label must be provided for the first three pickups of international parcels. This means the first three times international parcels get picked up, and not the first three international parcels sent.
  • The sender name can't be a URL (or URL-like, e.g. because of shipping restrictions.
  • HS codes (in parcel_contents) are required when sending internationally. Senders can lookup 6-digit codes here.

You can prevent duplicate orders by including an idempotency key when sending requests to this endpoint.

While testing idempotency keys, pressing 'Try It!' every time will show you a new response for each request. If the response doesn't change, that means you were sent the same response and your idempotency key is working.

Book an order
Open Recipe
Retrieve label URL
Open Recipe
Confirm API credentials
Open Recipe
Click Try It! to start a request and see the response here!