Developers
Menu: Reading a response

Reading a response

GET /v1/dt-score returns a dt_score object. This page describes each field. The API reference has the same in schema form.

A full response#

This is sandbox carrier 1000005, which is knocked out:

{
  "object": "dt_score",
  "livemode": false,
  "carrier": {
    "dot_number": "1000005",
    "mc_number": "MC1000005",
    "legal_name": "Sandbox Ghost Transport LLC",
    "dba_name": null
  },
  "score": 18,
  "grade": "F",
  "decision": "rejected",
  "verdict": "Disqualified — do not book",
  "needs_manual_review": false,
  "knockout": {
    "triggered": true,
    "reasons": [
      { "code": "AUTHORITY_INACTIVE", "message": "Common and Contract Authority are both inactive." },
      { "code": "NO_BIPD", "message": "No active BIPD insurance filing." }
    ]
  },
  "reasons": [
    {
      "check": "Operating authority inactive",
      "area": "Authority & Compliance",
      "severity": "critical",
      "detail": "Common and Contract Authority are both inactive.",
      "facts": [
        { "label": "Common authority", "value": "None" },
        { "label": "Contract authority", "value": "None" }
      ]
    },
    {
      "check": "No BIPD on file",
      "area": "Insurance & Financial",
      "severity": "critical",
      "detail": "No active BIPD insurance filing.",
      "facts": [{ "label": "BIPD on file", "value": "Not available" }]
    }
  ],
  "checks": { "total": 53, "triggered": 2, "passed": 45, "not_checked": 6 },
  "flags": [],
  "data_confidence": 0.75,
  "model_version": "dt-trust-v3.5-sandbox",
  "calculated_at": "2026-10-15T10:00:00Z"
}

Fields#

Field Type Description
object string Always dt_score
livemode boolean true on live, false on the sandbox
carrier.dot_number string The carrier's USDOT number
carrier.mc_number string or null The carrier's MC docket number, when it has one
carrier.legal_name string or null Legal name on the FMCSA registration
carrier.dba_name string or null "Doing business as" name, when registered
score integer The DT Score, 0–100. Higher is safer
grade string A, B, C, D or F. See Grades
decision string approved, review, high_risk or rejected. See Decisions
verdict string or null One line for people, such as "Medium risk — review before booking"
needs_manual_review boolean A person should look before booking
knockout.triggered boolean A knockout fired; the decision is rejected
knockout.reasons[] array code and message for each knockout
reasons[] array Every check that found a problem, most serious first
reasons[].check string The check's name
reasons[].area string One of the seven areas in What is checked
reasons[].severity string critical, review, medium or low
reasons[].detail string What was found, in a sentence
reasons[].facts[] array The figures behind the finding, as label and display value
checks object How many checks ran in total, triggered, passed and not_checked
flags[] array of strings Markers worth surfacing, such as dual_authority or new_authority
data_confidence number or null 0 to 1: the share of core inputs that were available
model_version string The scoring model that produced the score
calculated_at string When the score was calculated (ISO 8601, UTC)

Treat the response as extensible#

New fields may be added to the response at any time without a new API version. Write your code so unknown fields are ignored, and unknown values in severity, flags and knockout.reasons[].code are handled gracefully, for example by showing their message. See Versioning.

Response headers#

Header Description
X-Request-Id Unique id for the request. Quote it when you contact support
DT-Environment live or sandbox
DT-Api-Version The API release that served the request
X-RateLimit-Limit, -Remaining, -Reset See Rate limits
X-Quota-Limit, X-Quota-Remaining Live only. See Rate limits

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.