The Operating System for Trucking 24/7  +1 (469) 253-7575or we call you →
Loadboot Dispatch

LoadBoot Developer API

Post freight to LoadBoot straight from your TMS or load-posting network. REST, JSON, API-key auth, batch posting and idempotent retries.

Who this is for

Two audiences use this API. Freight brokers already posting on LoadBoot who want their TMS to do it automatically instead of someone re-keying loads. And load-posting networks and TMS vendors — if you syndicate broker postings to multiple boards, this is how you add LoadBoot as a destination.

Posting is free. There is no per-post fee and no subscription. What we ask is the thing that makes the board worth posting to: the API key must belong to a licensed, document-verified LoadBoot broker account, so every load on the board came from a real brokerage.

Getting a key

  1. Create a broker account at Create a broker account and complete verification — authority, bond and documents.
  2. Open the Partner Portal and generate an API key.
  3. Give the key the write scope to post loads, read to pull them.

Keys look like lb_… and are shown once. If you are a network or TMS vendor and want a sandbox key before wiring anything up, email [email protected] and say what you are integrating — we will set one up.

Post a load

POST https://rwscphuhpjoudvljvmdk.supabase.co/functions/v1/dev-api?resource=loads  ·  scope write

curl -X POST "https://rwscphuhpjoudvljvmdk.supabase.co/functions/v1/dev-api?resource=loads" \
  -H "Authorization: Bearer lb_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "origin": "Dallas, TX",
    "destination": "Atlanta, GA",
    "pickup_date": "2026-09-02",
    "hazmat": false,
    "equipment": "Dry Van",
    "rate": 2450,
    "miles": 780,
    "weight": 42000,
    "commodity": "Palletized goods",
    "reference": "YOUR-LOAD-12345",
    "idempotency_key": "YOUR-LOAD-12345"
  }'

Fields

FieldType Notes
originstringrequiredCity, ST — e.g. Dallas, TX
destinationstringrequiredCity, ST
pickup_datedaterequiredYYYY-MM-DD. A date in the past is rejected.
hazmatbooleanrequiredWe will not infer this. Declare it explicitly.
equipmentstringrecommendedDry Van, Reefer, Flatbed, Step Deck, Hotshot, Power Only, Box Truck
ratenumberrecommendedAll-in rate in USD. Loads without a rate get far less carrier attention.
milesnumberrecommendedLoaded miles. We estimate if omitted.
weightnumberrecommendedPounds.
commoditystringrecommendedWhat is on the truck.
referencestringrecommendedYour load number. Echoed back in the response.
idempotency_keystringrecommendedReuse it and a retry will not double-post. Your load number works well.
origin_fullstringoptionalFull pickup address. Kept private until the load is booked.
destination_fullstringoptionalFull delivery address. Kept private until booked.
delivery_datedateoptionalYYYY-MM-DD
pickup_windowstringoptionale.g. 08:00-15:00. Without this or appointment_required the load posts as FCFS.
delivery_windowstringoptionalSame format.
appointment_requiredbooleanoptionalSet true if the shipper schedules an appointment.
tracking_requiredbooleanoptionalDefaults to LoadBoot standard tracking.
hazmat_infostringoptionalUN number, class, placards. Required reading if hazmat is true.
accessorialsobjectoptionalYour own detention / layover / TONU / lumper terms. See below.
stopsarrayoptionalAdditional stops beyond origin and destination.
pickup_lat / pickup_lngnumberoptionalSkip our geocoding if you already have coordinates.
delivery_lat / delivery_lngnumberoptionalSame.

Unknown fields are ignored rather than rejected, so extra columns from your TMS will not fail the post.

Accessorial terms: we fill the gaps

A carrier will not book a load without knowing what happens when they sit at a dock for four hours. LoadBoot requires detention, layover, TONU and lumper terms on every posting — and we know your TMS almost certainly does not carry those fields.

So if you omit them, we apply LoadBoot's published standard terms automatically: detention $60/hr after 2 free hours, layover $250/day, TONU $250, lumper reimbursed with receipt. The carrier still sees written terms; they are ours rather than yours.

If your brokerage has its own terms, send them and they win — we only fill what is missing:

"accessorials": {
  "detention_per_hr": "75",
  "detention_free_hours": "2",
  "layover_per_day": "300",
  "tonu": "350",
  "lumper_policy": "Reimbursed with receipt"
}

Posting in batches

Send up to 50 loads per request as {"loads": [ … ]} or a bare JSON array. Each load is validated on its own, so one bad row does not sink the batch.

You get 200 when every load posted, 207 when some did and some did not, and 400 when none did. Read the per-item results array either way — each entry carries your reference back so you can match failures to your own records.

{
  "posted": 2,
  "failed": 1,
  "results": [
    { "index": 0, "ok": true,  "reference": "A-1001", "result": { "ok": true } },
    { "index": 1, "ok": true,  "reference": "A-1002", "result": { "ok": true } },
    { "index": 2, "ok": false, "reference": "A-1003",
      "error": "Pickup date has already PASSED — update your pickup schedule before posting." }
  ]
}

Retries are safe

Send an idempotency_key on each load, or an Idempotency-Key header for the whole request. Repeat the same key and we return the original load instead of creating a duplicate. If your network times out mid-post, just send it again.

Responses

Validation errors come back as plain sentences, not codes — the message tells you what to fix. The most common ones on a first integration are a missing hazmat declaration, a pickup date in the past, and a key whose broker account has not finished document verification.

Reading loads

GET https://rwscphuhpjoudvljvmdk.supabase.co/functions/v1/dev-api?resource=loads&limit=25 · scope read — returns public load opportunities. GET ?resource=me confirms which account a key belongs to and what scopes it has, which is the quickest way to check your setup.

Load boards, TMS vendors and posting networks

If you syndicate broker postings, we would like LoadBoot on your destination list. We are a newer board and our carrier network is small today — we are not going to pretend otherwise. What we offer your users is one more free destination with no workflow change, and a board with no ghost loads: every posting comes from a verified brokerage, and covered freight comes down immediately.

The integration above is live now, and we will add CSV or email intake if that fits your pipeline better.

Get a QuoteGet Started