Skip to main content
POST
Post an available truck
Post a truck as fields: where it is, when it’s free, the equipment, and where it wants to go. Required: equipment_type, current_city, current_state and available_from.
  • 422 missing_fields lists what’s missing. Ask the dispatcher only for those and post again.
  • 400 invalid_request when a value is wrong: a state that isn’t a US state or Canadian province code (e.g. TX, ON), available_from more than 60 days out, available_to before available_from, or a window that is already over.
  • 422 idempotency_key_reused: this Idempotency-Key already posted a different truck. Nothing was posted.
Cities are trimmed and states upper-cased (" Dallas ", tx → Dallas, TX). The post lapses at available_to, or 72 hours after available_from if there’s no end. Then its status is expired. Use GET /v1/carrier/trucks/{truck_id}/matches to find loads for it.

Authorizations

Authorization
string
header
required

One key per broker rep or per carrier signup. Keep it secret.

Headers

Idempotency-Key
string

Optional. Up to 200 characters, a new UUID per truck post. Posting the same truck again with the same key (from the same API key) returns the existing truck, with the same truck_id, instead of a duplicate. The answer is 201 either way. The same key with a different truck (other equipment, place or start) answers 422 idempotency_key_reused and posts nothing.

Maximum string length: 200

Body

application/json

A truck as fields. To post, equipment_type, current_city, current_state and available_from are required. To update, send only what changed.

equipment_type
string
Example:

"Reefer"

trailer_length_ft
integer
Required range: 1 <= x <= 60
Example:

53

current_city
string
Example:

"Dallas"

current_state
string

US state or Canadian province code (any case; stored upper-case).

Required string length: 2
Example:

"TX"

available_from
string<date-time>

When the truck is free (RFC 3339, e.g. 2026-10-23T08:00:00-05:00). Up to 60 days out.

available_to
string<date-time>

When it stops being free. Not before available_from. Leave it out and the post lapses 72 hours after available_from.

destinations
object[]

Where the truck wants to go. Each needs a 2-letter state; city is optional.

rate_ask
object

What the carrier wants for the truck.

notes
string

Response

The truck is posted.

truck_id
string<uuid>
required
status
enum<string>
required

active: posted. removed: taken down (see removed_reason). expired: past expires_at.

Available options:
active,
removed,
expired
equipment_type
string
required
current_city
string
required
current_state
string
required
available_from
string<date-time>
required
destinations
object[]
required
expires_at
string<date-time>
required

available_to, or 72 hours after available_from when there's no end.

created_at
string<date-time>
required
trailer_length_ft
integer
available_to
string<date-time>
rate_ask
object

What the carrier wants for the truck.

notes
string
removed_reason
enum<string>
Available options:
loaded,
unavailable,
other