Skip to main content
Enrich

The DOT Number Lookup API checks a carrier's authority, insurance and safety record

Send a USDOT or MC number and get the carrier's FMCSA record: operating status, authority, the liability insurance on file against each authority, safety rating, fleet, contact details and a risk level. 10 credits, charged only when the number is in the census.

10 credits per lookupOnly charged on a matchSame credits as every other product
1Lookup DOT Number Lookup API showing a fictional active motor carrier with its USDOT and MC numbers, liability insurance on file of $500,000 against the $750,000 FMCSA minimum, and a HIGH risk level with one flag

10

Credits per carrier

about $0.05 on Starter

0

Credits when not found

no record, no charge

4.48M

Entities in the FMCSA census

2.24M of them active

Daily

Census and licensing refresh

read straight from FMCSA

What DOT Number Lookup gives you

Insurance on file is checked against each authority

Liability cover is compared with the FMCSA minimum for every active authority, with cargo cover and broker bond status next to it. A shortfall is flagged HIGH risk and insurance_on_file turns false.

  • Liability required and on file, per authority
  • Cargo insurance required and on file
  • Broker or freight forwarder bond status
  • insurance_on_file as a single true or false

Every MC, MX and FF number is listed with its status

A carrier can hold several dockets, and one of them lapsing is easy to miss. You get each docket with its status, plus whether the USDOT number itself is active.

  • Each docket with active or inactive status
  • USDOT status: active, inactive or pending
  • Interstate or intrastate, for-hire or private
  • Prior authority revocation, when FMCSA records one

A risk level comes with the reasons behind it

LOW, MEDIUM, HIGH or CRITICAL, with each flag named in plain words so a rule can act on it and a person can read it. Two HIGH flags make a carrier CRITICAL.

  • HIGH: inactive USDOT, no active authority, liability below minimum, missing bond
  • MEDIUM: Conditional rating, under 180 days old, registration over 2 years old
  • Every flag has a code, a severity and a message
  • A recommended action: approve, verify, review or block

Fleet size and contact details come with the record

Power units, drivers and annual mileage show whether a carrier can haul what it claims, and the phone, email, officers and address say who to call.

  • Power units, drivers and annual mileage
  • The cargo the carrier says it hauls
  • Phone, email and officers on file
  • Physical and mailing address

Safety ratings are reported as FMCSA holds them

Only 5.3% of carriers carry any safety rating, because FMCSA assigns one after a compliance review. A carrier that was never rated comes back with an empty rating, not a warning.

  • Satisfactory, Conditional or Unsatisfactory
  • The date of the rating
  • Empty when the carrier was never rated
  • The date of the carrier's latest registration update

A number FMCSA does not know costs nothing

You are charged 10 credits only when the number is in the census. A number that was never issued, malformed input and a census outage cost 0, and that holds for bulk CSV jobs and the dashboard as well as the API.

  • Zero credits when the number is not found
  • Bulk CSV with a dot_number column
  • The same credits as every other product
  • One API key for all of it

A USDOT or MC number goes in and the carrier's FMCSA record comes out

01

Send a USDOT or MC number

POST dot_number for a USDOT number, or mc_number for an MC, MX or FF docket. The number is checked for format first, and malformed input costs nothing.

request

$ POST /api/v1/dot-lookup

"dot_number": "1234567"

> or "mc_number": "MC-735790"

02

We read FMCSA's census and filings

The number is looked up in FMCSA's carrier census, then matched to the authority and insurance filings on record for each docket. Both datasets are refreshed daily.

processing

Number checked and normalized

Carrier census record read

Authority and insurance matched

Risk flags assessed

03

Get the record and a risk level

Status, authority, insurance on file against the FMCSA minimum, safety rating, fleet, contact details and named risk flags land in one JSON payload. A carrier found bills 10 credits, and a number not in the census bills nothing.

200 OK

usdotActive

authorityMC-735790 active

liability$500,000 of $750,000

insurance below minimum10 credits, 0 if not found

One endpoint. A USDOT number or an MC docket number in, structured data out.

Same authentication, same credit balance, and the same response envelope as every other 1Lookup product. If you have already integrated one endpoint, this one is a URL change.

POST /v1/dot-lookup
curl -X POST https://app.1lookup.io/api/v1/dot-lookup \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "dot_number": "1234567" }'

# or look it up by MC, MX or FF docket number
#   -d '{ "mc_number": "MC-735790" }'
200 OK
{
  "classification": {
    "found": true,
    "dot_number": "1234567",
    "legal_name": "EXAMPLE FREIGHT LINES INC",
    "dba_name": "EXAMPLE FREIGHT",
    "usdot_status": "Active",
    "is_active": true,
    "has_active_authority": true,
    "insurance_on_file": false,
    "mc_number": "MC-735790",
    "safety_rating": "Satisfactory",
    "power_units": 42,
    "risk_level": "HIGH"
  },
  "insights": {
    "dot_lookup_result": {
      "operating_authority": [
        { "docket_number": "MC-735790", "type": "MC", "status": "Active", "is_active": true }
      ],
      "authority_detail": [
        {
          "docket_number": "MC-735790",
          "authority_type": "Motor Carrier of Property (Except Household Goods)",
          "status": "Active",
          "liability_required_usd": 750000,
          "liability_on_file_usd": 500000,
          "cargo_insurance_required": false,
          "cargo_insurance_on_file": true,
          "bond_required": false,
          "bond_on_file": false
        }
      ],
      "operation": "Interstate",
      "operation_class": "AUTHORIZED FOR HIRE",
      "hazmat": false,
      "cargo": ["General freight", "Refrigerated food"],
      "drivers": 45,
      "annual_mileage": 4100000,
      "safety_rating_date": "2019-06-11",
      "mcs150_date": "2025-09-02",
      "phone": "5555550100",
      "email": "dispatch@example.com",
      "officers": ["JANE EXAMPLE"],
      "risk_flags": [
        {
          "code": "insurance_below_minimum",
          "severity": "HIGH",
          "message": "Liability insurance on file ($500,000) is below the $750,000 FMCSA requires."
        }
      ],
      "data_source": "fmcsa_census"
    }
  },
  "metadata": { "credits_used": 10, "cache_hit": false }
}

A carrier's authority and insurance read side by side

One call returns what a broker checks before tendering a load: whether the carrier may operate, whether its authority is active, and whether the liability cover on file meets the FMCSA minimum, with the raw JSON your code receives beside it.

app.1lookup.io/api/v1Found: 10 credits
  • CarrierEXAMPLE FREIGHT LINES INC
  • USDOT number1234567
  • USDOT statusActive
  • Operating authorityMC-735790, active
  • Liability required$750,000
  • Liability on file$500,000
  • Cargo insuranceOn file
  • Safety ratingSatisfactory, 11 Jun 2019
  • Fleet42 power units, 45 drivers
  • Annual mileage4,100,000
  • Cargo hauledGeneral freight, refrigerated food
  • Risk levelHIGH, 1 flag
200 OK, 10 credits
{
  "classification": {
    "found": true,
    "legal_name": "EXAMPLE FREIGHT LINES INC",
    "usdot_status": "Active",
    "has_active_authority": true,
    "insurance_on_file": false,
    "mc_number": "MC-735790",
    "safety_rating": "Satisfactory",
    "risk_level": "HIGH"
  },
  "insights": {
    "dot_lookup_result": {
      "authority_detail": [
        {
          "docket_number": "MC-735790",
          "liability_required_usd": 750000,
          "liability_on_file_usd": 500000
        }
      ],
      "risk_flags": [
        {
          "code": "insurance_below_minimum",
          "severity": "HIGH"
        }
      ]
    }
  },
  "metadata": { "credits_used": 10 }
}

Every field you get back

No hidden tiers. Every field below is returned on a successful lookup at the price shown above.

Identity

  • dot_number
  • legal_name
  • dba_name
  • entity_type
  • entity_roles[]
  • added_date

Authority

  • usdot_status
  • is_active
  • mc_number
  • operating_authority[]
  • has_active_authority
  • prior_revocation

Insurance

  • insurance_on_file
  • authority_detail[]
  • liability_required_usd
  • liability_on_file_usd
  • cargo_insurance_on_file
  • bond_on_file

Fleet

  • operation
  • operation_class
  • hazmat
  • cargo[]
  • power_units
  • drivers
  • annual_mileage

Contact

  • phone
  • email
  • officers[]
  • address
  • mailing_address

Safety and risk

  • safety_rating
  • safety_rating_date
  • mcs150_date
  • risk_level
  • risk_score
  • risk_flags[]

Who uses DOT Number Lookup

Freight brokers vetting a carrier before tendering a load

Look up the USDOT or MC number on the rate confirmation. If the USDOT number is inactive, the authority is not active or the liability cover is below the minimum, the response says so before the load moves.

Shippers and 3PLs onboarding a new hauler

Check a carrier that approached you directly, then re-check your whole approved-carrier list with one CSV upload to catch the ones whose status has changed since you signed them.

Factoring companies checking who is behind an invoice

Confirm the carrier on a freight bill has an active USDOT number and a legal name that matches the invoice before any money is advanced against it.

Trucking insurers and underwriters

Pull authority, the liability and cargo cover FMCSA has on file, fleet size and safety rating for a submission, and compare them with what the applicant reports.

Compliance teams cleaning a carrier list

Run a spreadsheet of carriers through a bulk job and flag the inactive ones, the ones with no active authority and the ones whose registration has not been updated in over 2 years.

Developers building freight software

Add a carrier check to a TMS, a load board or an onboarding form with one call, and use risk_level and the recommended action to approve, verify, review or block automatically.

Frequently asked questions

What does the DOT Number Lookup API return?

Send a USDOT number or an MC number and it returns the carrier's FMCSA record: legal and trade name, USDOT status, each operating authority (MC, MX or FF) and whether it is active, the liability insurance on file against each authority next to the FMCSA minimum, cargo cover and broker bond status, safety rating, power units, drivers and annual mileage, the cargo it hauls, phone, email, officers and address, plus risk flags and a risk level of LOW, MEDIUM, HIGH or CRITICAL.

Where does the carrier data come from?

From FMCSA's own public datasets on data.transportation.gov: the motor carrier census, and the licensing and insurance filings behind each operating authority. Both are refreshed daily and read directly from the federal source. The census holds about 4.48 million entities, of which about 2.24 million are active (August 2026).

Can I look a carrier up by MC number instead of USDOT number?

Yes. Send mc_number for an MC, MX or FF docket number, such as MC-735790, or dot_number for a USDOT number. A bare number sent as mc_number is read as an MC number. Either way you get the same record back, including every docket the carrier holds.

How does it check a carrier's insurance?

For every active operating authority it compares the liability insurance on file with the amount FMCSA requires, and it reports whether cargo insurance and a broker bond are required and on file. Liability below the minimum is flagged HIGH risk. In October 2026, 3,178 active authorities had liability cover below the FMCSA minimum.

How much does a DOT number lookup cost?

10 credits per carrier, which is about $0.05 on the Starter plan and about $0.035 on Growth. You are charged only when the number is in the FMCSA census. A number FMCSA never issued, malformed input and a census outage all cost 0 credits, in the API, the dashboard and bulk jobs.

Can I check a whole carrier list at once?

Yes. Upload a CSV with a dot_number column and you get back a row per carrier with its status, authority, insurance on file, safety rating, fleet size and risk level. Write MC numbers with their prefix, for example MC-735790. The price stays at 10 credits per carrier found, however long the list is.

Why do most carriers have no safety rating?

FMCSA only assigns a Satisfactory, Conditional or Unsatisfactory rating after a compliance review, and only 5.3% of carriers in the census carry one. A carrier with no rating is the normal case, so the field comes back empty and does not count against it. A Conditional rating raises the risk level to MEDIUM, and an Unsatisfactory rating raises it to HIGH.

Does it flag brand-new carriers?

Yes. A carrier added to the census less than 180 days ago gets a MEDIUM flag that asks for a second look, because a new carrier is not necessarily a risky one. About 1,400 new entities join the census every week, so the flag is a prompt to check insurance and authority, not a verdict.

What is the difference between a USDOT number and an MC number?

A USDOT number identifies the carrier for safety purposes, and nearly every interstate carrier has one. An MC, MX or FF docket number is the operating authority itself: for-hire carriers need an MC number to haul regulated freight across state lines, MX numbers go to carriers based in Mexico, and FF numbers to freight forwarders. The response lists every docket on the record with its status.

To check a single carrier before you write any code, run it through the free DOT number lookup and the free MC number lookup.

Start with DOT Number Lookup today

7-day free trial. No contracts, cancel anytime, and your credits work across every product in the catalog.