For developers

One endpoint answers the actual question. Everything else is reference material around it — for the formal contract, see the OpenAPI reference.

The one call that matters

Provide an HS code and a country of origin:

GET https://daitk-tic.dibind.com/duty?hs=7208.10.00.00&from=US

The base duty and any surtax come back as JSON, dated. Or use the MCP tool resolve_duty at https://daitk-tic.dibind.com/mcp — see the FAQ for how to connect an AI assistant to it.

Example response shape

{
  "hs_input": "7208.10.00.00",
  "from": "US",
  "as_of": "2026-08-08",
  "ambiguous": false,
  "unit": "%",
  "duty_rate": { "low": 0, "mid": 0, "high": 0 },
  "worst_case_all_measures": null,
  "sales_tax": { "included": false },
  "measures_in_effect": [
    { "source": "SOR/2025-148", "in_force_date": "2025-06-27", "applies_to_origin": "US" }
  ],
  "cite": "DAITK (daitk-tic.dibind.com), read 2026-08-08",
  "expires_at": "2026-08-09T00:00:00.000Z",
  "notes": [ "..." ]
}

duty_rate is base duty plus every surtax certain to apply — not the landed cost. conditional_measures (quota safeguards) and sima_measures (anti-dumping) are reported separately because neither can be settled from an HS code and an origin alone; when either is present, each carries a total_if_applies figure and the response carries worst_case_all_measures, so nothing requires adding percentages by hand. expires_at is a 24-hour ceiling on the answer object itself — re-query past it rather than repeating a cached or remembered figure.

Endpoints

EndpointReturns
GET /duty?hs={code}&from={country}estimated total import duty (rate or range)
GET /tariff/{hs_code}base duty rates + tracked trade measures
GET /measuressurtax / remission / SIMA orders, with dates
GET /changes?since=YYYY-MM-DDrecently changed measures
GET /statusversion, row counts, and every government source by name with a link
GET /health/dataone answer to "is there a problem right now"
GET /openapi.jsonthis table, as OpenAPI 3.1
GET /docsthe same spec, rendered
GET /mcpMCP (Streamable HTTP): resolve_duty, lookup_tariff, list_trade_measures, get_measure_detail, recent_changes, service_status

Notes