Developers
Menu: Overview

Score a carrier before you tender the load.

Send a USDOT or MC number. Get back a 0–100 DT Score, a booking decision and the reasons for it, built from FMCSA authority, insurance, safety, crash and inspection data.

Make your first request Browse the API reference

A sample DT Score lookup on the sandbox. Choose a test carrier to see its result.

Sandbox Ghost Transport LLC

USDOT 1000005

MC1000005

GET /v1/dt-score?dot_number=1000005
18 Grade F
rejected

Disqualified — do not book

  • Common and Contract Authority are both inactive.
  • No active BIPD insurance filing.

What the API does#

The DT Score API answers one question a broker, shipper or freight platform asks before every tender: is this carrier safe to book?

You send a USDOT or MC number. The API looks the carrier up in FMCSA's authority, insurance, safety, crash, inspection and registration data, runs it through DollarTraq's scoring model, and returns:

  • a DT Score from 0 to 100, and a letter grade,
  • a decision: approved review high risk or rejected,
  • the reasons: every check that found a problem, in plain words, with the facts behind it.

It is the same score DollarTraq brokers see on every carrier profile in the app.

Two environments#

Sandbox Live
Base URL https://sandbox-api.dollartraq.com https://api.dollartraq.com
Keys dt_test_… dt_live_…
Carriers Six fixed test carriers Every carrier in the FMCSA data
Counts against your quota Never Each successful score

Build and test against the sandbox; its carriers cover every decision and error your code needs to handle. Switch to live by changing the base URL and the key, nothing else. See Sandbox and test carriers.

One request#

curl https://sandbox-api.dollartraq.com/v1/dt-score?dot_number=1000003 \
  -H "Authorization: Bearer $DT_SCORE_KEY"
const response = await fetch(
  "https://sandbox-api.dollartraq.com/v1/dt-score?dot_number=1000003",
  { headers: { Authorization: `Bearer ${process.env.DT_SCORE_KEY}` } }
);
const score = await response.json();
console.log(score.score, score.decision); // 66 "review"
import os, requests

response = requests.get(
    "https://sandbox-api.dollartraq.com/v1/dt-score",
    params={"dot_number": "1000003"},
    headers={"Authorization": f"Bearer {os.environ['DT_SCORE_KEY']}"},
    timeout=30,
)
score = response.json()
print(score["score"], score["decision"])  # 66 review
$context = stream_context_create(['http' => [
    'header' => 'Authorization: Bearer ' . getenv('DT_SCORE_KEY'),
    'ignore_errors' => true,
]]);

$score = json_decode(file_get_contents(
    'https://sandbox-api.dollartraq.com/v1/dt-score?dot_number=1000003', false, $context
), true);

echo $score['score'], ' ', $score['decision']; // 66 review

Where to go next#

  • Quickstart: from a key to a decision in your code in about ten minutes.
  • How the score works: what the number, grade and decision mean, and what moves them.
  • API reference: every endpoint, field and error, with a request runner.

Questions about an integration? Email support@dollartraq.com and quote the request_id from the response.

© 2026 DollarTraq. Scores are calculated from public FMCSA data and are a decision aid, not a guarantee of a carrier's performance.