Overview Flow Guide
This guide will walk you through a streamlined process for using Easyship shipping API to seamlessly integrate and manage your shipments from start to finish.
By following this guide, you'll quickly dive into essential functionality and learn how to collect shipment details, retrieve shipping rates, select a courier, create shipments, generate labels, and keep track of your shipments through real-time updates. Whatever needs you have, Easyship will simplify your shipping experience.
Before you begin
As a prerequisite on your side, you will need sender and recipient addresses, dimensions of a package, weight of all items to be delivered and delivery terms to create a shipment.
Step-by-step description
- Create a shipment. Use Create a Shipment to create a new shipment. The rates will be included in the
ratessection.- Here's a How to Create a Shipment guide to help you.
- To save time and optimise your costs, you can create batches of shipments.
- By adding parameters
buy_labelandbuy_label_synchronous(not supported in batch creation), you can decide the label generation behavior in the same request. However, this might extend the processing time depending on the couriers' response.
- Retrieve rates. Retrieve a list of available shipping options and their corresponding costs from the
shipment.ratessection. The rates are calculated based on shipment destination, package, total dimensions, and weight.- The
courier_service_idto include in thegenerate labelrequests will be included inshipment.rates.[]courier_service.
- The
- Update shipments. Use Update a Shipment to update the details of a shipment.
- Updating courier selection under
shipment.courier_service_idis not mandatory. You will be able to provide the selectedcourier_service_idwhen generating labels.
- Updating courier selection under
- Generate label. Once the shipment is created, use Create a Batch of Labels(asynchronously) or Create Label(synchronously) to confirm the shipment and generate a shipping label with other shipping documents. Generating the label will trigger delivery. From this step, shipment information will be transferred to the courier.
- By setting up Webhooks (shipment.label.created and shipment.label.failed events): Easyship will automatically send information updates to your service whenever the shipment status changes.
- Obtain tracking updates. You can track the shipment status in two ways:
- Via the Trackings API: send requests from your service to obtain real-time information about shipment location and status.
- By setting up Webhooks (shipment.tracking.checkpointscreated and shipment.tracking.statuschanged events): Easyship will automatically send information updates to your service whenever the shipment status changes.
Updated 19 days ago
