The Book Tender API provides a standard way to tender Full Truckload (FTL) shipments to carriers. It enables shippers, carriers, and third parties to offer, accept, update, and cancel truckload tenders in a consistent, digitized format, replacing manual processes such as phone calls, faxes, and emails and reducing the time it takes to secure carrier capacity.
Shippers can tender a load to a carrier using a single standardized request, and can update or cancel that tender as needed, reducing the manual effort of phone calls, faxes, and emails traditionally used to secure carrier capacity.
Carriers can receive tender offers in a standard format, simplifying connectivity with a large number of shippers and third parties while reducing onboarding costs and the manual effort required to accept, update, or cancel tenders.
Third parties such as brokers and 3PLs can embed the Book Tender API into their platforms to tender loads to carriers programmatically on behalf of shippers, enabling automated capacity sourcing and faster tender turnaround.
The Product Requirements Document (PRD) for this API can be found here.
Array of objects (TenderParty) Parties involved in the tender (customer, billing, or third party). | |
required | Array of objects (TenderLocation) >= 2 items Ordered pickup, midpoint, and/or drop stops for the shipment. |
object (ShipmentDetails) Service options and constraints requested for this tender. | |
Array of objects (ReferenceNumber) |
{- "parties": [
- {
- "type": "CUSTOMER",
- "code": "string",
- "name": "string",
- "contacts": [
- {
- "id": 1,
- "name": "string",
- "phone": "string",
- "email": "string"
}
]
}
], - "locations": [
- {
- "sequenceNumber": 0,
- "stopType": "ORIGIN",
- "address": {
- "address1": "123 Industrial Way",
- "address2": "Dock 4",
- "postalCode": "75001",
- "state": "TX",
- "country": "USA",
- "city": "Dallas"
}, - "appointmentOpenTime": "2026-02-10T08:00:00Z",
- "appointmentCloseTime": "2026-02-10T12:00:00Z",
- "contacts": [
- {
- "id": 1,
- "name": "John Smith",
- "phone": "+1-214-555-0100",
- "email": "john.smith@acme.com"
}
], - "commodities": [
- {
- "id": 100,
- "operation": "PICKUP",
- "description": "Steel Pallets",
- "quantity": 10,
- "weight": 1800,
- "weightUnit": "Pounds",
- "height": 5,
- "length": 4,
- "width": 4,
- "dimensionsUnit": "Feet",
- "stackable": false,
- "hazardous": false
}
], - "references": [
- {
- "name": "Pickup",
- "value": "55468"
}, - {
- "name": "LocationCode",
- "value": "DAL-PICK"
}
]
}, - {
- "sequenceNumber": 1,
- "stopType": "DESTINATION",
- "address": {
- "address1": "890 Distribution Blvd",
- "address2": "",
- "postalCode": "60601",
- "state": "IL",
- "country": "USA",
- "city": "Chicago"
}, - "appointmentOpenTime": "2026-02-12T09:00:00Z",
- "appointmentCloseTime": "2026-02-12T17:00:00Z",
- "contacts": [
- {
- "id": 2,
- "name": "Jane Doe",
- "phone": "+1-312-555-0188",
- "email": "jane.doe@acme.com"
}
], - "commodities": [
- {
- "id": 100,
- "operation": "DROP",
- "description": "Steel Pallets",
- "quantity": 10,
- "weight": 1800,
- "weightUnit": "Pounds",
- "height": 5,
- "length": 4,
- "width": 4,
- "dimensionsUnit": "Feet",
- "stackable": false,
- "hazardous": false
}
], - "references": [
- {
- "name": "Dropoff",
- "value": "44587"
}, - {
- "name": "LocationCode",
- "value": "CHI-DROP"
}
]
}
], - "shipmentDetails": {
- "mode": "LTL",
- "specialInstructions": "string",
- "ratingContextAdditionalServices": [
- {
- "key": "string",
- "context": "string",
- "value": "string"
}
], - "isTeam": true,
- "isTankerEndorsed": true,
- "equipmentAccessories": [
- "TARPS"
]
}, - "references": [
- {
- "name": "string",
- "value": "string"
}
]
}{- "status": "CREATED",
- "tenderIdentifier": "TenderNumber-123",
- "details": "Tender created successfully."
}| tenderIdentifier required | string |
Array of objects (TenderParty) | |
Array of objects (TenderLocation) | |
object (ShipmentDetails) Service options and constraints requested for this tender. | |
Array of objects (ReferenceNumber) |
{- "tenderIdentifier": "string",
- "parties": [
- {
- "type": "CUSTOMER",
- "code": "string",
- "name": "string",
- "contacts": [
- {
- "id": 1,
- "name": "string",
- "phone": "string",
- "email": "string"
}
]
}
], - "locations": [
- {
- "sequenceNumber": 0,
- "stopType": "ORIGIN",
- "address": {
- "address1": "string",
- "address2": "string",
- "postalCode": "string",
- "state": "string",
- "country": "string",
- "city": "string"
}, - "appointmentOpenTime": "2019-08-24T14:15:22Z",
- "appointmentCloseTime": "2019-08-24T14:15:22Z",
- "contacts": [
- {
- "id": 1,
- "name": "string",
- "phone": "string",
- "email": "string"
}
], - "commodities": [
- {
- "id": 1,
- "classification": "50",
- "operation": "PICKUP",
- "description": "string",
- "quantity": 1,
- "weight": 0,
- "weightUnit": "Pounds",
- "height": 0,
- "length": 0,
- "width": 0,
- "dimensionsUnit": "Feet",
- "stackable": false,
- "hazardous": false
}
], - "references": [
- {
- "name": "string",
- "value": "string"
}
]
}
], - "shipmentDetails": {
- "mode": "LTL",
- "specialInstructions": "string",
- "ratingContextAdditionalServices": [
- {
- "key": "string",
- "context": "string",
- "value": "string"
}
], - "isTeam": true,
- "isTankerEndorsed": true,
- "equipmentAccessories": [
- "TARPS"
]
}, - "references": [
- {
- "name": "string",
- "value": "string"
}
]
}{- "status": "CREATED",
- "tenderIdentifier": "TenderNumber-123",
- "details": "Tender created successfully."
}| tenderIdentifier required | string |
| reason | string |
Array of objects (ReferenceNumber) |
{- "tenderIdentifier": "string",
- "reason": "string",
- "references": [
- {
- "name": "string",
- "value": "string"
}
]
}{- "status": "CREATED",
- "tenderIdentifier": "TenderNumber-123",
- "details": "Tender created successfully."
}