Delivery Created
The DELIVERY_CREATED callback is triggered when a new delivery is created in FourKites. A delivery represents the movement of goods from an origin to a destination and may be linked to one or more orders and shipments. Use this callback to capture delivery-level visibility events in real time.
Unlike ORDER_CREATED, this callback is focused on the delivery entity and includes origin/destination location details, order line attributes, and rich shipment stop-level data.
Request Parameter
{
"messageType": "DELIVERY_CREATED",
"companyPermalink": "string",
"fourKitesOrderId": "550e8400-e29b-41d4-a716-446655440000",
"createdAt": "2025-01-15T10:30:45.123456789Z",
"uuid": "string",
"subStatusType": "delivery",
"subStatus": "string",
"eventTimestamp": "2025-01-15T10:30:45.123456789Z",
"timezone": "Coordinated Universal Time",
"timezoneShortName": "UTC",
"timezoneOffset": 0,
"isSuccess": true,
"updatedAt": "2025-01-15T10:30:45.123456789Z",
"requestId": "string",
"deliveryDetails": {
"deliveryIdentifier": "string",
"status": "string",
"shipmentNumber": "string",
"type": "INBOUND",
"eventTime": "2025-01-15T10:30:45.123456789Z",
"deliveryDestination": [
{
"gln": "string",
"organisationName": "string",
"name": "string",
"addressLine1": "string",
"addressLine2": "string",
"city": "string",
"state": "string",
"country": "string",
"zip": "string"
}
],
"deliveryOrigin": [
{
"gln": "string",
"organisationName": "string",
"name": "string",
"addressLine1": "string",
"addressLine2": "string",
"city": "string",
"state": "string",
"country": "string",
"zip": "string"
}
],
"deliveryDestinationETA": "2025-01-15T10:30:45.123456789Z",
"deliveryPreviousDestinationETA": "2025-01-15T10:30:45.123456789Z",
"deliveryETAStatus": "ON_TIME",
"deliveryAdditionalInfo": [
{
"avpList": {
"customKey": "customValue"
}
}
],
"orderNumbers": ["ORD001", "ORD002"],
"shipmentNumbers": ["SHIP001"],
"trackingNumbers": [12345, 67890],
"orderAttributes": [
{
"OrderNumber": "ORD001",
"OrderAdditionalInfo": {
"customKey": "customValue"
},
"OrderLines": [
{
"LineItemNumber": "1",
"ProductSKU": "SKU001",
"ProductID": "PROD001",
"Upc": "123456789012",
"Gtin": "1234567890123",
"LineStatus": "shipped",
"LineAdditionalInfo": {
"customKey": "customValue"
}
}
]
}
],
"shipmentAttributes": [
{
"ShipmentId": "123",
"CarrierId": "CARRIER001",
"ShipmentNumber": "SHIP001",
"Mode": "TL",
"Scac": "ABCD",
"CarrierName": "Carrier Name",
"MasterReferenceNumber": "MRN001",
"MasterSequenceNumber": 1,
"ShipmentAdditionalInfo": [
{
"StopName": "Origin Warehouse",
"StopReferenceId": "STOP001",
"StopType": "PICKUP",
"Timezone": "America/Chicago",
"Eta": "2025-01-15T10:30:45.123456789Z",
"LoadETAStatus": "ON_TIME",
"LoadETAStatusUsingWantTime": "ON_TIME",
"AppointmentTime": "2025-01-15T10:30:45.123456789Z",
"WantTime": "2025-01-15T10:30:45.123456789Z",
"ArrivedAt": "2025-01-15T10:30:45.123456789Z",
"DepartedAt": "2025-01-15T10:30:45.123456789Z",
"Status": "completed",
"StopReferenceNumbers": ["REF001", "REF002"],
"TransportationMode": "TL",
"OrderNumbers": ["ORD001"],
"LocationId": "LOC001",
"Name": "Origin Warehouse",
"City": "Chicago",
"State": "IL",
"Country": "US",
"Address": "123 Main St",
"Zip": "60601"
}
]
}
]
}
}Field Descriptions
Top-Level Fields
Field Name | Description | Key Always Present? | Value Always Present? | Data Type | Max Length |
|---|---|---|---|---|---|
messageType | The type of callback message (e.g., DELIVERY_CREATED) | Yes | Yes | String | No Max |
companyPermalink | The unique permalink identifier for the company | Yes | Yes | String | No Max |
fourKitesOrderId | The unique FourKites-generated UUID for the order | Yes | Yes | String (UUID) | No Max |
createdAt | The timestamp when the callback was generated | Yes | Yes | Timestamp | No Max |
uuid | Unique ID for the callback | Yes | Yes | String | No Max |
subStatusType | The category of the sub-status (e.g., delivery) | Yes | No | String | No Max |
subStatus | The sub-status value | Yes | No | String | No Max |
eventTimestamp | The timestamp of the triggering event | Yes | Yes | Timestamp | No Max |
timezone | Full timezone name (e.g., Coordinated Universal Time) | Yes | No | String | No Max |
timezoneShortName | Abbreviated timezone name (e.g., UTC) | Yes | No | String | No Max |
timezoneOffset | UTC offset in hours | Yes | No | Integer | No Max |
isSuccess | Indicates if the event was processed successfully | Yes | Yes | Boolean | — |
updatedAt | Timestamp of the last update to the callback | Yes | Yes | Timestamp | No Max |
requestId | Unique identifier for the API request | Yes | No | String | No Max |
deliveryDetails | Object containing full delivery details | Yes | No | Object | No Max |
deliveryDetails Object
Field Name | Description | Key Always Present? | Value Always Present? | Data Type | Max Length |
|---|---|---|---|---|---|
deliveryIdentifier | Unique identifier for the delivery | Yes | Yes | String | No Max |
status | Current status of the delivery | Yes | Yes | String | No Max |
shipmentNumber | Shipment number associated with the delivery | Yes | No | String | No Max |
type | Direction of the delivery (e.g., INBOUND, OUTBOUND) | Yes | No | String | No Max |
eventTime | Timestamp of the delivery event | Yes | No | Timestamp | No Max |
deliveryDestination | List of destination location details for the delivery | Yes | No | Array[Object] | No Max |
deliveryOrigin | List of origin location details for the delivery | Yes | No | Array[Object] | No Max |
deliveryDestinationETA | Estimated arrival time at the delivery destination | Yes | No | Timestamp | No Max |
deliveryPreviousDestinationETA | Previous ETA at the delivery destination before any revision | Yes | No | Timestamp | No Max |
deliveryETAStatus | ETA status for the delivery (e.g., ON_TIME, LATE) | Yes | No | String | No Max |
deliveryAdditionalInfo | Custom key-value attribute pairs for the delivery | Yes | No | Array[Object] | No Max |
orderNumbers | List of order numbers associated with the delivery | Yes | No | Array[String] | No Max |
shipmentNumbers | List of shipment numbers associated with the delivery | Yes | No | Array[String] | No Max |
trackingNumbers | List of tracking numbers associated with the delivery | Yes | No | Array[Integer] | No Max |
orderAttributes | List of order-level attributes including line item details | Yes | No | Array[Object] | No Max |
shipmentAttributes | List of shipment-level attributes including stop details | Yes | No | Array[Object] | No Max |
Location Object Fields
Applies to: deliveryDestination, deliveryOrigin
Field Name | Description | Key Always Present? | Value Always Present? | Data Type | Max Length |
|---|---|---|---|---|---|
gln | Global Location Number | Yes | No | String | No Max |
organisationName | Name of the organization | Yes | No | String | No Max |
name | Name of the location | Yes | No | String | No Max |
addressLine1 | Primary street address | Yes | No | String | No Max |
addressLine2 | Secondary address line | Yes | No | String | No Max |
city | City | Yes | No | String | No Max |
state | State or province | Yes | No | String | No Max |
country | Country | Yes | No | String | No Max |
zip | Postal or ZIP code | Yes | No | String | No Max |
orderAttributes Array
Field Name | Description | Key Always Present? | Value Always Present? | Data Type | Max Length |
|---|---|---|---|---|---|
OrderNumber | Order number associated with the delivery | Yes | No | String | No Max |
OrderAdditionalInfo | Custom key-value attribute pairs for the order | Yes | No | Object | No Max |
OrderLines | List of order line items associated with the delivery | Yes | No | Array[Object] | No Max |
OrderLines.LineItemNumber | Line item number | Yes | No | String | No Max |
OrderLines.ProductSKU | SKU of the product | Yes | No | String | No Max |
OrderLines.ProductID | Unique product identifier | Yes | No | String | No Max |
OrderLines.Upc | Universal Product Code | Yes | No | String | No Max |
OrderLines.Gtin | Global Trade Item Number | Yes | No | String | No Max |
OrderLines.LineStatus | Current status of the line item | Yes | No | String | No Max |
OrderLines.LineAdditionalInfo | Custom key-value attribute pairs for the line item | Yes | No | Object | No Max |
shipmentAttributes Array
Field Name | Description | Key Always Present? | Value Always Present? | Data Type | Max Length |
|---|---|---|---|---|---|
ShipmentId | Unique identifier for the shipment | Yes | Yes | String | No Max |
CarrierId | Unique identifier for the carrier | Yes | No | String | No Max |
ShipmentNumber | Shipment number | Yes | No | String | No Max |
Mode | Transportation mode (e.g., TL, LTL) | Yes | No | String | No Max |
Scac | Standard Carrier Alpha Code for the carrier | Yes | No | String | No Max |
CarrierName | Name of the carrier | Yes | No | String | No Max |
MasterReferenceNumber | Master reference number for the shipment | Yes | No | String | No Max |
MasterSequenceNumber | Master sequence number for the shipment | Yes | No | Integer | No Max |
ShipmentAdditionalInfo | List of stop-level details for the shipment | Yes | No | Array[Object] | No Max |
shipmentAttributes.ShipmentAdditionalInfo — Per Stop Fields
Field Name | Description | Key Always Present? | Value Always Present? | Data Type | Max Length |
|---|---|---|---|---|---|
StopName | Name of the stop location | Yes | No | String | No Max |
StopReferenceId | Reference identifier for the stop | Yes | No | String | No Max |
StopType | Type of stop (e.g., PICKUP, DELIVERY) | Yes | No | String | No Max |
Timezone | Timezone for the stop (e.g., America/Chicago) | Yes | No | String | No Max |
Eta | Estimated time of arrival at the stop | Yes | No | Timestamp | No Max |
LoadETAStatus | ETA status based on scheduled time (e.g., ON_TIME, LATE) | Yes | No | String | No Max |
LoadETAStatusUsingWantTime | ETA status based on want time (e.g., ON_TIME, LATE) | Yes | No | String | No Max |
AppointmentTime | Scheduled appointment time at the stop | Yes | No | Timestamp | No Max |
WantTime | Requested arrival time at the stop | Yes | No | Timestamp | No Max |
ArrivedAt | Actual arrival timestamp at the stop | Yes | No | Timestamp | No Max |
DepartedAt | Actual departure timestamp from the stop | Yes | No | Timestamp | No Max |
Status | Current status of the stop (e.g., completed) | Yes | No | String | No Max |
StopReferenceNumbers | List of reference numbers for the stop | Yes | No | Array[String] | No Max |
TransportationMode | Transportation mode for the stop (e.g., TL) | Yes | No | String | No Max |
OrderNumbers | List of order numbers associated with the stop | Yes | No | Array[String] | No Max |
LocationId | Unique identifier for the stop location | Yes | No | String | No Max |
Name | Name of the stop location | Yes | No | String | No Max |
City | City of the stop location | Yes | No | String | No Max |
State | State of the stop location | Yes | No | String | No Max |
Country | Country of the stop location | Yes | No | String | No Max |
Address | Street address of the stop location | Yes | No | String | No Max |
Zip | Postal or ZIP code of the stop location | Yes | No | String | No Max |
