Carriers
XPO LTL Tracking API & MCP
Query live XPO LTL (xpoltl) PRO status, terminal scan history, consignee city and signer in a single synchronous GET request or MCP tool call.
Overview & Quick Facts
| Property | Value |
|---|---|
Carrier slug (?carrier=) | xpoltl |
| Brand aliases | XPO, XPO LTL, XPO Logistics, Con-way Freight |
| Category | US LTL freight (PRO numbers) |
| Single-package REST endpoint | GET https://api.lastscanned.com/v1/track/{trackingNumber} |
| Batch REST endpoint | GET https://api.lastscanned.com/v1/track?numbers=123456789,... |
MCP server (https://mcp.lastscanned.com) | track_package, track_packages, list_carriers |
| Authentication & pricing | Authorization: Bearer lsk_live_... · 1 free keyless lookup/day per IP |
Tracking Number Formats & Auto-Detection
| Pass | Rule / Regex | Check Digit | Examples |
|---|---|---|---|
Pass 1 (matches) | none | none | none |
Pass 2 (mayMatch) | /^\d{9}$/ (only when no other carrier claims it) | none | 123456789 |
A 9-digit PRO is a common shape, so XPO is only tried when no other carrier claims the number. Pass ?carrier=xpoltl to be sure.
Synchronous GET Request & Normalized JSON Response
curl -s "https://api.lastscanned.com/v1/track/817817302?carrier=xpoltl" \
-H "Authorization: Bearer $LASTSCANNED_API_KEY"{
"carrier": "xpoltl",
"trackingNumber": "817817302",
"status": "delivered",
"statusDescription": "Final delivered from XPN",
"service": null,
"deliveredAt": null,
"deliveredAtLocal": "2026-10-13T17:17:00",
"signedBy": "J Smith",
"destination": {
"city": "Port Huron",
"state": "MI",
"country": "US"
},
"events": [
{
"timestamp": null,
"localTime": "2026-10-13T17:17:00",
"status": "delivered",
"description": "Final delivered from XPN",
"location": "Warren, MI",
"code": null
},
{
"timestamp": null,
"localTime": "2026-10-13T11:25:00",
"status": "out_for_delivery",
"description": "Out for delivery from XPN - P&D route: PHN 11LG",
"location": "Warren, MI",
"code": null
},
{
"timestamp": null,
"localTime": "2026-10-08T15:04:00",
"status": "in_transit",
"description": "Loaded on trailer",
"location": "Salt Lake City, UT",
"code": null
}
]
}Notes
- Time zone: XPO prints each scan in the local time of its service center without naming a zone, so events carry
localTimeonly (timestampisnull). - Sources: scans come from XPO's shipment history page; the consignee city and signer from its tracking page.
- Availability: a PRO XPO cannot show (not yet picked up, or unknown) returns
not_found.
Related Resources
- Regex & check digits: Tracking number formats & auto-detection
XLCourier Tracking API & MCP
Track XLCourier (UK) parcels and scan history via synchronous REST GET or MCP. Normalized JSON, no carrier credentials required.
YCS Logistics Tracking API & MCP
Track YCS Logistics (Taiwan) parcels and scan history via synchronous REST GET or MCP. Normalized JSON, no carrier credentials required.