AxleHire (Jitsu) Tracking API & MCP
Query live AxleHire / Jitsu (axlehire) package status and scan history in a single synchronous GET request or MCP tool call. AxleHire rebranded to Jitsu (gojitsu.com), and lastscanned supports both its 12/16-character mixed alphanumeric tracking tokens and 19-character SCD… barcodes in Pass 2 (mayMatch), returning a normalized TrackingResult JSON payload—without requiring a Jitsu enterprise shipper contract.
Overview & Quick Facts
| Property | Value |
|---|---|
Carrier slug (?carrier=) | axlehire |
| Brand & service aliases | AxleHire, Jitsu, GoJitsu, Jitsu Same-Day / Next-Day |
| Category | US metro same-day & next-day last-mile parcel carrier (Detection precedence #13 of 31) |
| Single-package REST endpoint | GET https://api.lastscanned.com/v1/track/{trackingNumber} |
| Batch REST endpoint | GET https://api.lastscanned.com/v1/track?numbers=4AUMF4FWVRB5,SCD... (up to 35 numbers per carrier in a 100-number call) |
MCP server (https://mcp.lastscanned.com) | track_package, track_packages, list_carriers (claude mcp add --transport http lastscanned https://mcp.lastscanned.com) |
| Authentication & pricing | Authorization: Bearer lsk_live_... · 1 free keyless lookup/day per IP · Free tier (5 unique numbers/day, $0) · Pro ($4.99/mo for 1,000 unique numbers, unlimited re-polls, $0.015/extra) · HTTP 402 Stripe MPP ($0.50 for 25-number lsk_pack_ key or $0.02/number in USDC on Tempo) |
Why developers use lastscanned for AxleHire / Jitsu
- No Jitsu enterprise API keys or webhook setup: Official Jitsu API access is provisioned only to direct enterprise shippers.
lastscannedlets any application, post-purchase portal, or WISMO AI agent query Jitsu tracking tokens synchronously viaGET /v1/track/:number. - Smart normalization of Jitsu's internal route signals: Jitsu's raw
shipment_eventsstream emitsGEOCODEDmid-transit when a delivery route is re-planned (which naively resets a package's status back tolabel_created), usesPICKUP_SUCCEEDEDwhen a driver loads the parcel onto a delivery vehicle (actuallyout_for_delivery), and emitsRETURN_SUCCEEDEDwhen an undelivered parcel returns to the local Jitsu depot for redelivery (stillin_transit, not returned to sender).lastscannedhandles all three edge cases accurately.
Tracking Number Formats & Auto-Detection (matches vs mayMatch)
Because Jitsu's 12- and 16-character tracking tokens have no fixed prefix (e.g. 4AUMF4FWVRB5, BQH4FN5QAQYV3SDQ), AxleHire / Jitsu deliberately returns false in Pass 1 (matches) and runs exclusively in Pass 2 (mayMatch) so every prefixed carrier (VH…, CR…, AP…, LP…, BTP…) claims its numbers first:
| Pass | Rule / Regex | Check Digit | Examples |
|---|---|---|---|
Pass 1 (matches) | None (false) — deferred to Pass 2 to prevent prefix collisions | — | — |
Pass 2 (mayMatch) — SCD barcode | /^SCD[0-9A-Z]{16}$/i (SCD + 16 alphanumeric characters = 19 chars) | — | SCD0000F00410922107 |
Pass 2 (mayMatch) — 12/16-char token | /^([0-9A-Z]{12}|[0-9A-Z]{16})$/i with at least one letter, one digit, and not all-letters-then-all-digits (!/^[A-Z]+\d+$/i) | — | 4AUMF4FWVRB5, BQH4FN5QAQYV3SDQ |
Why !/^[A-Z]+\d+$/i is enforced & when to pass ?carrier=axlehire
- Zero collision with
VH,CR,LP,AP: Standard prefixed barcodes likeCR010740141269(Cirro, 14 chars) orAP00830954074290(Cainiao, 16 chars) are all-letters followed by all-digits and are matched in Pass 1. Jitsu's 12/16-character tokens interleave letters and digits (4AUMF4FWVRB5). - When
?carrier=axlehireis required: Only if a Jitsu token happens to consist strictly of leading letters followed by trailing digits (rare), or if you are querying a non-standard shipper reference number.
Synchronous GET Request & Normalized JSON Response
curl
curl -s "https://api.lastscanned.com/v1/track/4AUMF4FWVRB5" \
-H "Authorization: Bearer $LASTSCANNED_API_KEY"JavaScript / TypeScript (fetch)
const res = await fetch("https://api.lastscanned.com/v1/track/4AUMF4FWVRB5", {
headers: { Authorization: `Bearer ${process.env.LASTSCANNED_API_KEY}` },
});
const pkg = await res.json();
console.log(pkg.status, pkg.estimatedDeliveryAt, pkg.deliveredAt);MCP track_package tool call
{
"tool": "track_package",
"arguments": {
"tracking_number": "4AUMF4FWVRB5"
}
}Normalized TrackingResult JSON response
{
"carrier": "axlehire",
"trackingNumber": "4AUMF4FWVRB5",
"status": "delivered",
"statusDescription": "Delivered",
"service": null,
"deliveredAt": "2026-10-24T21:08:33Z",
"deliveredAtLocal": "2026-10-24T14:08:33",
"signedBy": "RECEPTION",
"destination": {
"city": "SAN FRANCISCO",
"state": "CA",
"country": "US"
},
"estimatedDelivery": "2026-10-24T20:00:00",
"estimatedDeliveryAt": "2026-10-25T03:00:00Z",
"message": "Left inside front lobby by mailboxes",
"events": [
{
"timestamp": "2026-10-24T21:08:33Z",
"localTime": "2026-10-24T14:08:33",
"status": "delivered",
"description": "Delivered",
"location": "San Francisco, CA",
"code": "DROPOFF_SUCCEEDED"
},
{
"timestamp": "2026-10-24T16:45:10Z",
"localTime": "2026-10-24T09:45:10",
"status": "out_for_delivery",
"description": "Out for delivery",
"location": "San Leandro, CA",
"code": "PICKUP_SUCCEEDED"
},
{
"timestamp": "2026-10-24T10:12:04Z",
"localTime": "2026-10-24T03:12:04",
"status": "in_transit",
"description": "Received at sortation center",
"location": "San Leandro, CA",
"code": "RECEIVED_OK"
},
{
"timestamp": "2026-10-23T22:00:00Z",
"localTime": "2026-10-23T15:00:00",
"status": "label_created",
"description": "Shipment info received",
"location": "San Francisco, CA",
"code": "GEOCODED"
}
]
}Raw status & signal codes:
events[].codepreserves Jitsu's signal identifier (CREATED,GEOCODED,RECEIVED_OK,BOOKED,PICKUP_EN_ROUTE,PICKUP_SUCCEEDED,DROPOFF_EN_ROUTE,DROPOFF_SUCCEEDED,DROPOFF_FAILED,RETURN_SUCCEEDED,MISDELIVERED), whilemessagesurfaces driver delivery notes (dropoff_note) or exception remarks.
Carrier-Specific Status & Integration Notes
- Exact UTC + local timestamps & ETAs: Jitsu provides UTC timestamps alongside the recipient's IANA
timezone(e.g.America/Los_Angeles) and adropoff_latest_tsdelivery window deadline, populatingtimestamp,localTime,estimatedDelivery(local), andestimatedDeliveryAt(UTC). - Mid-transit
GEOCODEDguard: If a shipment already has physical scan milestones (in_transitorout_for_delivery) and Jitsu emits a route re-planGEOCODEDevent at the top of the list,lastscannedkeeps the top-levelstatusat the true physical state instead of reverting tolabel_created.
Related Resources
- Live browser lookup tool: Track an AxleHire / Jitsu package live on lastscanned.com/lookup/axlehire
- Carrier hub: All 31 supported carriers
- Regex & check digits: Tracking number formats & auto-detection
- AI support workflows: WISMO AI agents & synchronous tracking
Better Trucks Tracking API & MCP
Track Better Trucks (BTS_ and BTP tracking numbers) regional next-day and two-day parcels via synchronous REST GET or MCP. Normalized JSON status, scan history, and tracking number format rules—no carrier credentials required.
Cirro E-Commerce Tracking API & MCP
Track Cirro E-Commerce (CR 14-character and CIFR 17-character tracking numbers) cross-border and US last-mile packages via synchronous REST GET or MCP. Normalized JSON status, scan history, and tracking number format rules—no carrier credentials required.