Labels
Use the label API to return shipping labels for your parcels. The label printing stage is the last stage before sending the booking to a carrier.
The label API also confirms which carrier your order is booked with, and provides the consignment or article details required by the carrier. Labels are carrier-specific, and must be generated with the correct information that each individual carrier needs to be able to transport the order to the right place.
You can use the label API to print:
- A6 PDF shipping labels
 - A4 picking slips
 - ZPL labels
 - A4 dangerous goods documents
 - A4 Commercial invoice documents
 
When your order has had a label printed, it’s ready for dispatch.
When you are ready to label order, use a GET request with the order number to retrieve the label. If the request is successful, you receive a response from the label endpoint with a link to the label, which you can then send to your local printer.
The labels are stored in Amazon Web Services (AWS) and are available for retrieval for up to 156 hours. The returned label URL is in this format:
shippit-web-production.s3.ap-southeast-2.amazonaws.com
For labels created before June 2025, the URL format is:
shippit-web-production.s3-ap-southeast-2.amazonaws.com
If you need to add these URLs to a firewall allowlist, see the IP address and firewalls section.
IMPORTANT: You can only retrieve labelling information for an order after it’s processed and allocated to a courier, which can take some time after the order has been placed. If the label isn’t ready, you receive a
422Unprocessable response.
Label latency
When you create an order, producing the label is the final step in the process. The steps in the process to create an order are:
- Send a request to the order API to retrieve carrier options, which queries a range of external carrier APIs.
 - Allocate the order to a carrier based on allocation settings, and receive a 200 response from the external carrier API.
 - Send a request to the label API to create the label as a PDF file, and store the file in cloud storage.
 - Retrieve the label from cloud storage, and send it to a printer.
 
Each of these steps takes time to process, with some steps taking longer than others. For example, the order request and allocation steps can take some time because they need to interact with external carrier APIs.
How you perceive label latency is dependent on where in this sequence you start measuring. If you create orders well before you request the label, then most or all of the processing is complete by the time you are ready for the label. If you create an order then immediately request a label, you might find that you need to poll multiple times to have the label returned from the carrier. Additional latency can also exist in the physical environment when the label is sent to the printer.
At optimal configuration, Shippit merchants retrieve labels with a latency of under 5 seconds, 95% of the time.
There are a range of factors to take into account when measuring label creation latency. Some of these things are desirable and within your control to adjust, and others aren’t. Shippit is constantly working on ways to improve the speed of these APIs, and how they work with external carrier APIs, so you might find that your label latency improves over time.
| Setting | Effect | Description | 
|---|---|---|
| Carrier allocation at order creation | Faster | If you specify the carrier first, only one quote is fetched, saving time querying multiple APIs | 
| Internal quoting/rate cards | Potentially faster | Use internal rate cards to avoid slow external API calls. This is only available for carriers that support internal rate cards | 
| Batching orders | Faster | Place orders in batches rather than generating labels on the fly to improve throughput | 
| Optimise polling rate | Faster | Tune the polling rate and back-off times for retries to balance getting the label when it is ready without overloading the systems producing the label | 
| Using only fast/performant carriers | Faster | Disable slow or rarely used carriers so that you don’t need to wait for their response | 
| Text-based ZPL labels | Faster in some cases | For carriers that support native ZPL text labels, this can be faster than generating PDFs or image-based ZPL labels | 
| Image-based ZPL labels | Slower | Image-based ZPL labels take longer to generate. If you generate both, the label isn’t printed until both are ready. | 
| Remove picking slip from label | Faster | Label processing time is faster if you don’t print the picking slip on the same page as the label | 
| International freight | Slower | Requires external calls to carriers, which can add processing time | 
| High system load or peak times | Slower | The time of day, day of week, and overall system load effects performance |