TrackFlo

Create or update a load

One load per order in your TMS (the BOL-level record). Create the load before its legs and stops.

POST /api/v1/loads/upsert
API key in header X-API-Key

Query parameters

· 1
sync_run_time string · date-time

ISO-8601 UTC time your sync run started (e.g. 2026-09-06T12:00:00Z). Send it on every batch / polling upsert: if the record changed in TrackFlo after this time (a user edit, a fresher webhook) the upsert answers skipped instead of overwriting it. Not needed for event-driven (webhook) posts.

Headers

· 1
Trackflo-Ingest-Source string · enum

pull for scheduled polling, webhook for event-driven pushes. Lets TrackFlo monitor the health of each ingestion path separately; recommended on every request.

values

  • pull
  • webhook

Body

· LoadUpsert
required application/json
native_system_load_id string · max length: 100· nullable

Required. Your TMS's id for the order / load (the BOL-level record).

native_system_customer_reference_number string · max length: 100· nullable

Recommended. The customer's reference number for the order. Shown as a reference number and searchable.

order_type string · max length: 100· nullable

Recommended. Order type as your TMS names it. Shown as a reference number.

load_mode string · max length: 100· nullable

Optional. Transport mode of the order as your TMS names it (e.g. Truckload, LTL, Intermodal).

bol_number string · max length: 250· nullable

Recommended. Bill of lading number. Shown as a reference number and searchable.

po_number string · max length: 1000· nullable

Recommended. Purchase order number. Shown as a reference number and searchable.

native_system_load_permalink string · max length: 100 required

Required. Unique key: -. Identifies the load on every upsert.

native_system_load_status string · max length: 100· nullable

Required. Load status exactly as your TMS names it. TrackFlo maps it to its phases using the status mapping agreed at onboarding.

Responses