Deliveries
Create and Update Deliveries
A delivery represents one or more parcels being transported to a recipient. Deliveries are typically generated automatically when senders create shipments in the system. However, as a shipping provider, you can also create deliveries manually, which will automatically generate corresponding shipment records for senders.
As a shipping provider, you are able to update the status and location properties of the delivery, which will update the sender and recipient via webhooks and notifications.
Create Delivery
Creating a delivery is pretty straight forward. Like for a shipment, you'll provide information about the sender, recipient, parcels, and the location_id that will initially be assigned the shipment.
Required Fields
location_id
: The initial location identifier for the deliveryrate_id
: Rate identifier for the delivery (can be set through organization defaults)- Either sender or recipient must include at least one of:
address
,contact_id
, oremail
Request Body Structure
Sender and Recipient Information
Both sender and recipient information can be specified in multiple ways:
- Using an existing contact ID
- Using an email address to reference an existing contact
- Providing complete contact details including:
name
: Full nameemail
: Valid email addressphone
: Contact phone number (optional)business
: Business name (optional)address
: Address information
Addresses information an be specified in three different formats:
- Single String Format (with optional second line):
- Structured Object Format:
- Address ID Reference:
- Location ID Reference:
Parcel Information
Parcels can be specified using custom dimensions.
Additional Request Body
type
string
Type of delivery. Will always beinbound
manifest_id
string
The ID of the manifest associated with this delivery.template_id
string
Custom template for shipping labels.fulfillment_id | fulfillment
string
The ID of the fulfillment associated with this delivery.scan_id | scan
string
The ID of the scan associated with this delivery.tracking_number
string
Custom tracking number (minimum 10 characters).options
object
The delivery creation supports numerous configuration options.Show Details
Update Delivery
This endpoint enables you to update various aspects of an existing delivery including tracking information, associated metadata, coordinates and status of the delivery which will typically send notifications to the sender and recipient, depending on what notifications they have enabled.
Request Parameters
Path Parameters
Request Body
The request body can include any combination of the following fields:
Request Examples
Basic Information Update
Reference Numbers update
Tracking Information update
Additional Information update
Tracking Update Example
Update Restrictions
- Status Update Restrictions
- Must provide valid status transitions
- Location and layout must be compatible