Carrier’s official API
Total Transportation & Distribution API: integration guide
Total Transportation & Distribution (TTD) is an LTL carrier that runs its operations on the FACTS freight system from Carrier Logistics Inc. (CLI). Its customer API is the standard FACTS XML set: rate quotes, transit times, bill of lading and pickup entry, tracking by PRO number with BOL and delivery-receipt images, and shipment email alerts. It is aimed at shippers, 3PLs and TMS vendors who already ship with the carrier.
This guide covers Total Transportation & Distribution’s own API. Credentials come from Total Transportation & Distribution, 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 | Total Transportation & Distribution |
|---|---|
| Type | LTL carrier |
| Interface | XML over HTTP (query-string GET or form POST) |
| Authentication | FACTS web login (user ID and password) sent with every request |
| Capabilities | Rate quote, Transit time, Bill of lading & pickup request, Tracking, Documents (BOL & POD images), Shipment email alerts, Accessorial code list |
Getting access
- There is no public developer portal. The carrier gives API documentation to customers on request, so contact your Total Transportation sales or customer service representative.
- You need a customer web login. The API authenticates with the same user ID and password you use on the carrier's FACTS web tracking site.
- The carrier also gives you the account-specific gateway URL to call. Do not copy one from a third-party example.
- The documentation does not mention fees, rate limits, a test environment or an approval process.
Authentication
FACTS web login (user ID and password) sent with every request.
- Send the credentials as xmluser and xmlpass. The BOL function also accepts UserName and Password.
- There is no token, session or expiry. Each call carries the credentials.
- GET puts the credentials in the URL, where logs can capture them. For BOL entry the documentation strongly recommends POST, with the request sent as one XML document in a form field named xmlreq.
- Authentication failures come back as XML with success = No and an errormessage (for example "Invalid Username/Password"), not as an HTTP error.
- The transit time function is documented without any credential parameters.
Endpoints
Rate quote
Send origin and destination ZIPs and one or more freight lines to get an itemized quote with line charges, discount, fuel surcharge, accessorials, a total and transit days.
| GET | ratequote.xml | Returns a priced LTL quote as XML (send xmlv=yes). |
Transit time
Look up transit time between two ZIP or postal codes for a given pickup date. The documentation lists only the inputs; it does not describe the response fields.
| GET | xtransittime.xml | Returns transit time between a shipper and consignee ZIP. |
Bill of lading & pickup request
Create a BOL and book the pickup in one call, or set nopickup to Yes for a BOL only. A successful response returns the PRO and tracking numbers and links to the BOL PDF and shipping labels.
| POST | tbolentry4.xml | Creates a bill of lading and, unless nopickup=Yes, a pickup request. |
Tracking
Look up a shipment by PRO number. The response covers origin and destination terminals, counts and weight, delivery status and date, receiver, a status line and history events.
| GET | protracexml.htm | Returns tracking detail for one PRO number (parameter pronum). |
Documents (BOL & POD images)
Document images come back inside the tracking response, not from a separate call. Each image entry has a type code (B = bill of lading, P = delivery receipt) and a URL to the file.
| GET | protracexml.htm | Same tracking call; read the images block for BOL and POD links. |
Shipment email alerts
Subscribe email addresses to status alerts for a list of PRO numbers. The alerts arrive by email.
| GET | xmlproalert.xml | Registers email alerts for the given PROs and alert types. |
Accessorial code list
Returns the accessorial keywords your account can use on quotes and BOLs. Codes are carrier-specific on FACTS, so fetch this list rather than reusing codes from another carrier.
| GET | keywordlist.xml | Lists valid accessorial codes and descriptions. |
Example request
Shipper fields are omitted here, so they default to the location on your account. Check success in the <response> and save pronumber, bollink and labellink.
Integration notes
- Always check the success element. Errors come back as normal XML with success = No and errormessage entries.
- The quote call indexes lines with brackets (wweight[1], vclass[1]). The BOL call uses plain suffixes (weight1, class1). The BOL call allows up to 8 lines.
- If you send one dimension for a BOL line, send all three. Lengths are in inches, weights in pounds, density in pounds per cubic foot.
- class1 does not appear in the BOL variable table, but every example sends it. Send it anyway.
- Pickup times are 24-hour HHMM and dates are MM/DD/YYYY. URL-encode the slashes on GET requests.
- The BOL text names tbolnav4.xml as the function, but all examples call tbolentry4.xml. Use tbolentry4.xml.
- Accessorial codes differ from carrier to carrier even on the same FACTS platform. Load them from keywordlist.xml.
- Only delivered shipments carry a POD image. Check prodelivered before looking for imagetypecode P, and match images by type code, not position.
FAQ
Does Total Transportation & Distribution have an API?
Yes. It offers XML APIs for rate quotes, transit times, BOL and pickup entry, PRO tracking with document images, and shipment email alerts. Documentation is shared with customers on request.
How do I get Total Transportation API access?
Ask your Total Transportation sales or customer service rep. The API uses your customer web login and an account-specific gateway URL the carrier provides.
Can I track Total Transportation shipments by PRO number via API?
Yes. The tracking call takes a PRO number in the pronum parameter and returns status, delivery details, history events and links to BOL and delivery-receipt images.
Does the Total Transportation API return transit times?
Yes. The rate quote returns busdays, and a separate transit time call takes shipzip, conszip and an optional pickup date.
On FreightAPIs
Official resources
Written from Total Transportation & Distribution’s published API documentation and last checked 2026-10-09. FreightAPIs is not affiliated with Total Transportation & Distribution; 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