Base URL: https://api.dgdataapi.com · All endpoints are GET · JSON responses · Free during launch, rate-limited 60 requests/min per IP · OpenAPI spec
Every response includes a disclaimer, a source, and (where relevant) a carrier_note reminding you that carriers can be stricter than the federal regulations. Data-backed answers carry citations pointing at the exact CFR paragraphs, so you can verify anything against the eCFR directly. See Terms of Use — this is reference data, not compliance advice.
Service status, row count, and the eCFR issue date the data was parsed from.
curl https://api.dgdataapi.com/v1/health
{"data_issue_date":"2026-08-04","hmt_rows":3687,"status":"ok"}
The full §172.101 Hazardous Materials Table entry (or entries — many UN numbers have several rows for different shipping names and packing groups). Accepts UN3481, NA1993, ID8000, or bare digits like 3481.
curl https://api.dgdataapi.com/v1/materials/UN1263
Returns, per entry: proper shipping name, hazard class, packing group, label codes, special provision codes, packaging section references (exceptions / non-bulk / bulk), passenger & cargo aircraft quantity limits, and vessel stowage.
Case-insensitive substring search on shipping names. limit optional (default 25, max 100). Cross-reference entries ("Accellerene, see p-Nitrosodimethylaniline") include a cross_reference field.
curl "https://api.dgdataapi.com/v1/materials/search?q=perfume"
The correctly sequenced §172.202 basic description for each entry — ID number, proper shipping name, hazard class (subsidiary hazards in parentheses), packing group — plus a technical_name_required flag for "G"-symbol n.o.s. entries.
curl https://api.dgdataapi.com/v1/materials/UN1263/shipping-description "basic_description": "UN1263, Paint (including paint, lacquer, ...), 3, PG II"
Whether column 8A of the table authorizes packaging exceptions for the entry. not_eligible when the column reads "None"; otherwise exceptions_section_applies with the governing §173.xxx section to read. (Full per-section inner/outer-package logic is on the roadmap; this endpoint won't guess beyond what the table states.)
curl https://api.dgdataapi.com/v1/materials/UN1263/limited-quantity
Full text of any §172.102 special provision referenced in column 7 — numeric (multi-modal), A (aircraft), B (bulk), IB/IP (IBCs), N (non-bulk), T/TP (portable tanks), W (water), R (rail).
curl https://api.dgdataapi.com/v1/special-provisions/181
Ground (highway/rail) classification per §173.185. Returns the UN number, exception status, requirements list, shipper-certified conditions, and the citation chain.
| param | values |
|---|---|
chemistry | ion | metal (required) |
unit | cell | battery (required — a single-cell battery counts as a cell per §173.185(a)(1)) |
watt_hours | number (ion) |
lithium_grams | number (metal) |
configuration | alone | with_equipment | in_equipment |
units_per_package, package_gross_kg, batteries_net_kg, packages_in_consignment | optional; enable the mark-exemption and weight-cap checks |
damaged, hybrid, vehicle | true to route to the structured out-of-scope responses (§173.185(f), SP 388, SP 360) |
curl "https://api.dgdataapi.com/v1/lithium-batteries/classify?chemistry=ion&unit=battery&watt_hours=250&configuration=with_equipment" "status": "excepted_ground_extended" // the §173.185(c)(1)(iv) ground tier
Statuses: excepted (base small-battery exception) · excepted_ground_extended (ground-only tier up to 300 Wh / 25 g — carrier check required) · fully_regulated · refused (out-of-scope cases, with the governing citation).
Source: eCFR Title 49, Parts 172–173, parsed from the official XML. Verification: derived logic tested against ~200,000 generated input combinations and cross-checked against every scenario in PHMSA's Lithium Battery Guide for Shippers (Rev. Oct 2024) — full agreement. The dataset is diffed against eCFR amendments quarterly; changes ship with a changelog entry here.
| date | change |
|---|---|
| 2026-08-17 | Docs, terms, and privacy pages published. |
| 2026-08-11 | API v0.1 live: full HMT (3,687 rows incl. all packing-group variants), 419 special provisions, 6 endpoint families. Data issue date 2026-08-04. |
← back to dgdataapi.com · Terms · Privacy · hello@dgdataapi.com