FMCSA Data API

A faster, cleaner API
for safer.fmcsa.dot.gov.

Query USDOT company snapshots, safety records, inspection history, and SMS data via a single REST endpoint. Simple auth, JSON responses, unlimited requests.

15-day free trial  ·  No credit card required  ·  160M+ queries served

GET /v2/usdot/snapshot/:usdot
$ curl --request GET \
  --url https://api.saferwebapi.com/v2/usdot/snapshot/3791729 \
  --header 'x-api-key: YourApiKey'

{
  "usdot_number": "3791729",
  "legal_name":  "ACME FREIGHT LLC",
  "carrier_operation": "Interstate",
  "safety_rating":  "Satisfactory",
  "power_units":  24,
  "drivers":       31,
  "out_of_service": false
}
160M+ Queries served
v3 Latest API version
Requests / month
11 Languages supported
$30 Per month flat

Everything you need to ship faster.

All FMCSA data in clean, structured JSON. No screen-scraping, no timeouts, no unreliable government uptime.

Company Snapshots

Full USDOT company snapshots — legal name, address, carrier operation, safety rating, OOS status — returned in milliseconds.

GET /v2/usdot/snapshot
Carrier Name Search

Look up active carriers by legal name. Returns a list of matching USDOT numbers and company details — useful for building search UIs.

GET /v2/usdot/name
SMS Safety Data

Safety Measurement System scores — BASIC percentiles, alert status, and raw measure data — as structured JSON or downloadable reports.

GET /v2/sms
Smart Caching

High-frequency carriers are pre-cached nightly based on real usage patterns, so common lookups return instantly without hitting FMCSA upstream.

auto-optimized
Multiple API Keys

Create, rotate, and revoke keys per project or environment. Per-key usage analytics and request logs included in the dashboard.

unlimited keys
PDF & Web UI

A full browser-based interface alongside the API. Export snapshots to PDF, save favorite carriers, and share data without writing code.

included free

Simple REST. Any language.

Standard GET requests, simple x-api-key header auth, and consistent JSON response shapes. Works in any HTTP client.

GET /v2/usdot/snapshot Company snapshot by USDOT#
GET /v2/usdot/name Lookup by carrier name
GET /v2/sms SMS safety scores
Full API reference →
Python · requests
# Install: pip install requests
import requests

API_KEY = "YOUR_API_KEY"
USDOT   = "3791729"

response = requests.get(
    f"https://api.saferwebapi.com/v2/usdot/snapshot/{USDOT}",
    headers={"x-api-key": API_KEY}
)

data = response.json()
print(data["legal_name"])    # → "ACME FREIGHT LLC"
print(data["safety_rating"])  # → "Satisfactory"
print(data["out_of_service"]) # → False

Straightforward pricing.

One tier, one price. No per-request fees, no bandwidth limits, no surprise invoices at end of month.

Free Trial
$0
Full access for 15 days — no card required.
  • All API endpoints (v2 + v3)
  • Unlimited queries during trial
  • Web interface & PDF export
  • Up to 3 API keys
  • Usage analytics dashboard
Start free trial