Introduction
The LINQ API gives you programmatic access to the most comprehensive carrier intelligence database ever built — 2.8 million carrier profiles, 26M+ data points across 16 FMCSA datasets, enriched with tech stack intelligence and real-time risk signals.
The API follows REST conventions. All requests and responses use JSON. Authentication uses API key headers. TLS is required on all endpoints.
Authentication
LINQ uses API key authentication. Include your key in the X-Manifest-Key header on every request. Never expose your API key in client-side code — always call the API from your backend.
Base URL & Versioning
All API requests are made to the following base URL:
The current version is v1. Version is included in the URL path. When breaking changes are introduced, a new version will be released and the old version will be deprecated with 90 days notice.
Rate Limits
Rate limits are applied per API key, per minute and per month based on your plan. When you exceed a rate limit, the API returns a 429 Too Many Requests response.
Check the X-RateLimit-Remaining and X-RateLimit-Reset response headers to monitor your usage.
Errors
LINQ uses standard HTTP status codes. All errors return a JSON body with a code and message field.
GET Carrier Profile
Returns a complete operational profile for a carrier by DOT number. Includes authority status, safety rating, fleet size, contact info, and key compliance flags.
Path Parameters
GET Safety (SMS)
Returns FMCSA Safety Measurement System (SMS) scores across all 7 BASIC categories, percentile rankings, and the carrier's official safety rating.
Path Parameters
Percentile scores range from 0-100. Higher percentiles indicate worse relative performance. FMCSA alert thresholds vary by BASIC category (typically 65-80th percentile).
GET Inspections
Returns paginated roadside inspection records. Includes BASIC category breakdowns, driver/vehicle OOS flags, and inspection outcomes.
Path Parameters
Query Parameters
GET Violations
Returns all violation records enriched with section descriptions, BASIC group classifications, and severity indicators.
Path Parameters
GET Crashes
Returns crash records enriched with weather conditions, road type, hazmat involvement, fatalities, and vehicle classification details.
Path Parameters
GET Insurance
Returns active policies, full filing history (including cancellation date + method), docket-keyed history, rejected filings with reasons, plus derived rollups: per-category active coverage (BIPD/Cargo/Bond/Endorsement), lifetime insurer timeline, BIPD coverage gaps, and upcoming-cancellation alerts within 90 days. The headline fields for lead-gen are `summary.earliest_cancellation_date` and `cancellations_upcoming` — both surface carriers whose coverage is set to lapse soon.
Path Parameters
FMCSA encodes coverage amounts in thousands; this endpoint converts them to dollars. `summary.earliest_cancellation_date` is the soonest scheduled cancellation across active policies (null if none). `cancellations_upcoming` lists active policies cancelling within 90 days — sort by `in_days` ascending for time-critical lead lists.
GET Fleet
Returns current fleet composition including power units, drivers, and equipment breakdowns.
Path Parameters
GET Cargo
Returns all 30 FMCSA cargo capability flags with human-readable labels. Shows exactly what types of freight a carrier is authorized and equipped to haul.
Path Parameters
GET Documents
Returns registration documents, docket numbers with status codes, MCS-150 filing details, insurance filing requirements, and D&B number.
Path Parameters
GET Carrier Percentiles
Compares a carrier's fleet size and driver count against state-level benchmarks. Returns the carrier's stats alongside P25/P50/P75/P90 percentiles for their domicile state.
Path Parameters
GET Full Report
Returns a complete carrier intelligence report as a structured JSON object — or as a PDF download by passing `?format=pdf`. Aggregates all endpoints into one response.
Path Parameters
Query Parameters
The full report endpoint aggregates all carrier data into a single response. PDF format generates a formatted report suitable for client presentations.
GET Revocations
Returns FMCSA revocation orders for the carrier. Cross-referenced by DOT number and all associated docket numbers (handles Mexico-based carriers and multi-docket operators).
Path Parameters
GET Inspection Detail
Drill-down for a single inspection. Joins vehicle units (VIN, license, make), every cited violation (with FMCSR part/section and OOS flags), and any resulting citations.
Path Parameters
Use the inspection_id from /v1/carriers/:dot/inspections to drill in. The `units` array reflects every vehicle inspected; `violations` cite the actual FMCSR section; `citations` are state-issued tickets resulting from the inspection.
POST Search Carriers
Powerful carrier search with filtering across 30+ fields. Build targeted lists by state, fleet size, safety score, authority status, cargo type, name, and — critical for lead-gen — pending insurance cancellation windows.
Request Body
Insurance filters resolve a candidate DOT set from `insurance_active` first (cap 50,000 DOTs per query), then join to the census filter set — narrow the date window when targeting nationally. Pair `insurance_cancels_before/after` with `status: "active"` to focus lead lists on carriers still operating.
GET Market Percentiles
Returns national benchmark data for safety scores, fleet sizes, OOS rates, and crash indicators. Use to contextualize a carrier's performance against its peer group.
Query Parameters
GET Bulk Carriers
Slim, cursor-paginated firehose for mirroring the carrier universe into your own store. Returns up to 5,000 carriers per page with a pre-joined insurance_summary (earliest pending cancellation, total active coverage, active policy count). One call per page on rate-limit — pair with `updated_since` for cheap nightly incrementals.
Query Parameters
`next_cursor` is null on the final page. Per-page count = 1 against your rate limit regardless of row count. `operating_status` mirrors `/search`'s `status` field (mapped from FMCSA `status_code`: A→ACTIVE, I→INACTIVE).
POST Create Watchlist
Create a watchlist to monitor up to 10,000 carriers for real-time changes — authority revocations, insurance lapses, safety rating changes, OOS rate spikes, and more.
Request Body
Webhooks
When a monitored carrier triggers an alert, LINQ POSTs a signed JSON payload to your webhook URL. Verify the signature using the X-Manifest-Signature header.
All webhook payloads include the event type, carrier DOT number, a human-readable description, and a timestamp. Your endpoint should return a 200 status code within 10 seconds.
carrier.authority.revokedcarrier.authority.reinstatedcarrier.insurance.lapsedcarrier.insurance.reinstatedcarrier.safety_rating.changedcarrier.oos_rate.spikedcarrier.fleet.expandedSMS + SAFER Overview
These endpoints are explicitly snapshot-based — powered by the 4 official FMCSA SMS Output files (1.7M scored carriers) and the 4 SMS Input files. Every response includes snapshot_date and data_source so you always know exactly which FMCSA release the data reflects.
Data source priority: 1. sms_output table (official FMCSA SMS Output, latest snapshot), 2. Legacy FMCSA Query API data, 3. Calculated live from sms_inspections + sms_violations.
FMCSA uses a time-weighting system for all SMS math. Inspections in the most recent 12 months receive a weight of 3, inspections 12-24 months old receive a weight of 2, and inspections older than 24 months receive a weight of 1.
carriersauth_historyinsur_activeoos_ordersrevocationssms_inspectionssms_crashessms_outputGET BASIC Scores
Returns the 7 BASIC scores with measures, alert flags, and percentile rankings where available. Automatically selects the best data source for each carrier.
Path Parameters
Query Parameters
GET SMS Inspections
Returns only the inspections that fall within FMCSA's 24-month SMS scoring window. Each record includes a `computed_time_weight` (3/2/1) so your system can replicate the SMS math exactly.
Path Parameters
GET SMS Violations
Returns violations within the 24-month SMS window with FMCSA time-weights applied. The `computed_total_weight` field equals `time_weight x severity_weight` — the exact numerator value FMCSA uses in the BASIC measure formula.
Path Parameters
GET SMS Crashes
Crash records scoped to the 24-month SMS window with time weights applied. Includes fatal, injury, tow-away, and hazmat breakdown.
Path Parameters
GET SMS Universe
FMCSA only scores carriers that meet minimum inspection thresholds. This endpoint tells you instantly whether a carrier is in the SMS scoring universe and eligible for percentile rankings.
Path Parameters
GET SAFER Snapshot
Mirrors exactly what FMCSA's SAFER.fmcsa.dot.gov shows for a carrier — registration, operations, safety rating, authority history, active insurance, OOS orders, inspection summary, crash summary, and BASIC scores. All in one call.
Path Parameters
GET Chameleon Scan
Runs a chameleon carrier fraud detection scan. Analyzes address matches, phone overlaps, authority timeline gaps, OOS rates, and other signals to produce a risk score from 0-100.
Path Parameters
Risk levels: LOW (0-25), MODERATE (26-50), HIGH (51-75), CRITICAL (76-100). Signal weights: EIN Match (40), Equipment Match (30), Phone Match (25), Timeline Gap (25), Address Match (20), Officer Match (20), High OOS (15).