Carrier’s official API
Line Drive Trucking API: integration guide
Line Drive Trucking (LDT) runs its operations on the CLI (Carrier Logistics Inc.) FACTS system and exposes the standard FACTS XML web API to its customers. The calls cover transit times, rate quotes, bill of lading and pickup entry, tracking by PRO or BOL number with document image links, shipment email alerts, and the accessorial code list. It is aimed at shippers, 3PLs and TMS vendors who want to quote and book LDT freight from their own systems.
This guide covers Line Drive Trucking’s own API. Credentials come from Line Drive Trucking, not from FreightAPIs, and we are not affiliated with them.
Want one API key for carrier terminals, NMFC and ports instead? FreightAPIs API docs →
At a glance
| Carrier | Line Drive Trucking |
|---|---|
| Type | LTL carrier |
| Interface | HTTP GET/POST with XML responses |
| Authentication | Static username and password (FACTS web login) in the query string or XML body |
| Capabilities | Transit time, Rate quote, Bill of lading & pickup request, Shipment tracking, Documents & images (BOL / POD), Shipment alerts, Accessorial code list |
Getting access
- The API is not documented on a public developer portal. CLI help documents and an LDT integration reference are provided to customers on request.
- Authenticated calls use a FACTS web login (the same user ID and password the customer would use on the carrier web tracking site). Ask Line Drive Trucking for a web login and API access through your sales or customer-service contact.
- The base URL is client-specific: CLI hosts each carrier under its own path, and LDT gives you the URL to use. Do not guess it from other CLI carriers.
- Production and test logins are separate. A live login does not authenticate against the test environment; test credentials must be requested separately.
- The documentation does not mention API pricing, rate limits or a formal approval process.
Authentication
Static username and password (FACTS web login) in the query string or XML body.
- There is no token endpoint and nothing to refresh. Each authenticated request carries the credentials.
- Query-string form: `xmlv=yes&xmluser=YOUR_USER&xmlpass=YOUR_PASSWORD`. Keep `xmlv=yes` on query-string XML calls; without it the BOL call returned the HTML login page instead of XML.
- The BOL call also accepts `UserName` / `Password` as query parameters, or `<UserName>` and `<Password>` elements inside the posted `<bol>` XML.
- Transit times (`xtransittime.xml`) and the accessorial list (`keywordlist.xml`) are usually callable without credentials. Rate quotes, BOL entry and shipment alerts require them.
- Because credentials travel in URLs, always use HTTPS and keep them out of logs and source code.
Endpoints
Transit time
Returns published business-day transit and the due date for an origin/destination postal-code pair, plus the origin and destination terminal codes.
| GET | xtransittime.xml | Look up transit days for a ZIP-to-ZIP lane. |
Rate quote
Rates one or more freight lines and returns each charge line (freight, lane minimum, fuel surcharge, accessorials) and a quote total. Add `quotenumber=yes` to receive a persistent quote number.
| GET | ratequote.xml | Calculate an LTL rate quote for a shipment. |
Bill of lading & pickup request
Creates a bill of lading and, unless `nopickup` is set to Yes, a pickup request. A successful response returns the PRO number plus links to the BOL PDF and shipping labels.
| POST | tbolentry4.xml | Submit a BOL (and pickup) as XML in the `xmlreq` form field; POST is the recommended form. |
| GET | tbolentry4.xml | Same call with fields in the query string; supported but not recommended. |
Shipment tracking
Returns shipment details, status, lifecycle, movement history and document image links for a PRO number or a BOL number. Authenticated calls return more detail.
| GET | protracexml.htm | Authenticated tracking by PRO (`pronum`) or BOL (`bolno`) number. |
| GET | protracexml.xml | Tracking by PRO number using `pronum`. |
| GET | protracexml | Tracking by BOL number, optionally filtered by `shipdate` (YYYYMMDD). |
Documents & images (BOL / POD)
There is no separate document call. Document images are listed in the `<images>` block of the tracking response, one `<image>` per document, typed by `imagetypecode` (B = bill of lading, P = proof of delivery).
| GET | protracexml.htm | Read `images/image` from the tracking response to get document URLs. |
Shipment alerts
Subscribes email addresses to milestone emails for one or more PRO numbers. Alert types are SHIP, APPT, OFD and POD.
| GET | xmlproalert.xml | Create email alert subscriptions for a list of PROs. |
Accessorial code list
Returns the accessorial codes configured for LDT, such as LGDEL (liftgate delivery), LGPU, APPOINT, RESIDEL and RESIPU. Use it as the allow-list for quote and BOL accessorials.
| GET | keywordlist.xml | List valid accessorial keywords and descriptions. |
Example request
Replace the base URL with the client-specific FACTS URL that Line Drive Trucking gives you. The response root is <ratequote> on success and <error> on failure.
Integration notes
- Unknown accessorial codes are silently ignored. RESIDEL adds a residential delivery charge, but the older sample code RESDEL returns no error and no charge. Validate every code against keywordlist.xml first, and match charges on `chargecode` rather than `chargedesc` (which can be blank).
- The live and test accessorial lists differ (test returned fewer codes). Do not copy the test catalog into production logic.
- Each call has its own XML root and error style: rate quote and tracking fail with an `<error>` root, while transit, BOL and alerts return `<response>` with `<success>No</success>` and one or more `<errormessage>` elements. Parse the root first.
- Responses declare ISO-8859-1 encoding and are served as text/xml. Do not assume UTF-8 or application/xml.
- Date formats vary by call: transit `pudate` MM/DD/YY, quote `shipdate` MM/DD/YYYY, BOL-only tracking `shipdate` YYYYMMDD, BOL `putime` and `closetime` HHMM. The format for BOL `pudate` is not defined, so confirm it with the carrier.
- Line items are numbered differently: rate quote uses bracket arrays (`wweight[1]`), the BOL uses suffixes (`weight1` … `weight8`). On the BOL, if you send one dimension for a line you must send all three.
- Tracking by PRO: LDT's reference found that the parameter `pronum` works on the live system, while `pronumber` (shown in the generic CLI document) returned "Invalid pronumber". Test both against your account. A wrong `shipdate` on a BOL lookup turns a valid BOL into "Invalid BOL number", so omit it unless you know the date.
- A successful BOL creates a real shipment and, unless `nopickup=Yes`, a pickup that dispatch may act on. Never send complete BOLs from a test harness against production, and add your own dedupe key so a retry does not create a duplicate shipment.
- In quote lines, the charge may be in `<chrg>`, in `<charge>` (older samples) or missing. Line numbers are not contiguous. Treat `<quotetotal>` as the authoritative amount. A lane can return transit times yet fail to rate, so do not use transit success as a serviceability check.
FAQ
Does Line Drive Trucking have an API?
Yes. LDT uses the CLI FACTS platform, which provides XML web calls for rate quotes, transit times, BOL and pickup entry, tracking, document images and shipment alerts. The documentation and base URL are provided to customers on request.
How do I get Line Drive Trucking API credentials?
Ask your Line Drive Trucking contact for a FACTS web login with API access. The same user ID and password are passed as `xmluser` and `xmlpass`. Test credentials are separate and must be requested on their own.
Can I track Line Drive Trucking shipments by BOL number?
Yes. The tracking call accepts `bolno` as well as a PRO number. Adding `shipdate` filters the lookup, so leave it out unless you know the exact ship date.
How do I get a POD from the Line Drive Trucking API?
Call tracking and check `prodelivered`. When the shipment is delivered, the `<images>` block lists documents; the entry with `imagetypecode` P is the proof of delivery, and its `directurl` downloads the file.
Does the Line Drive Trucking API use OAuth or API keys?
Neither. Calls are authenticated with a static web login username and password sent in the query string or, for BOL entry, in the posted XML. There is no token to refresh.
On FreightAPIs
Official resources
Written from Line Drive Trucking’s published API documentation and last checked 2026-10-09. FreightAPIs is not affiliated with Line Drive Trucking; endpoints and access rules can change, so confirm details in the carrier’s own documentation before going live.
Other carrier API guides
ABF Freight · Estes Express Lines · Saia LTL Freight · TForce Freight · Old Dominion Freight Line · XPO (LTL) · AAA Cooper Transportation · AIT Worldwide Logistics