Quoting
For carriers. Read the open board, price what fits, and take a price back if the van goes elsewhere.
These calls act for somebody at your firm with a membership: the person who made the key if they have a seat, otherwise the owner. Without anybody with a seat they answer 402, the same as the board does.
Read the board
GET https://app.haulageboard.com/api/v1/board?from=LE&vc=LUTON&date=tomorrow
Authorization: Bearer hb_live_...The filters are the website's: from, to, vc, type, date, after, before, within with near, notl, noadr, maxwt and terms. You get what a member at your firm would see, with the same early access, up to 100 loads.
200 OK
{
"loads": [{
"id": "clx...",
"ref": "HB-1042",
"from": { "outcode": "LE4" },
"to": { "outcode": "B12" },
"miles": 42,
"collect": { "date": "2026-10-09", "window": "AM", "byTime": null },
"deliver": null,
"vehicleClass": "LUTON",
"type": "PALLETS",
"pallets": 4,
"tailLift": true,
"termsDays": 30,
"pricing": { "mode": "quotes", "guideLowPence": 16000, "guideHighPence": 21000 },
"quotes": 2,
"poster": { "score": 340, "level": "SILVER" }
}]
}The firm that posted a load is never named here. It arrives on booking, by webhook, the same as on the website.
Send or update a quote
POST https://app.haulageboard.com/api/v1/loads/{id}/quotes
Authorization: Bearer hb_live_...
Content-Type: application/json
{ "amountPence": 18000, "etaMins": 120, "message": "Empty in Leicester at 10" }Quoting again on the same load replaces your price. A price stands for three days, or until the day it is collected if that comes first.
Take a quote back
DELETE https://app.haulageboard.com/api/v1/loads/{id}/quotes
Authorization: Bearer hb_live_...Test keys read, they do not quote
A test key can read the board so you can build against real shapes. It cannot price a real carrier's job, and a quote sent with one is refused with 403.