REST API v1

Tariff API for Developers

Query real-time tariff rates for the US, EU, and UK with a single API call. Built for e-commerce platforms, trade compliance tools, and logistics software.

3 Jurisdictions

US (USITC HTS), EU (TARIC), and UK (HMRC) tariff data from official sources.

Real-Time Data

Live queries against official government APIs. Always up-to-date rates.

API Key Auth

Secure authentication via API key. Simple to integrate, easy to manage.

RESTful JSON

Clean JSON responses. Works with any language or framework.

Quick Start

Get tariff data in under a minute. Just grab an API key and make your first request.

1

Get your API key

Sign up for a free account and generate an API key from your dashboard.

2

Make your first request

Choose your language and try a tariff lookup:

curl -X GET \
  "https://globaltariffrates.com/api/v1/tariffs?hs_code=6109.10&jurisdiction=US" \
  -H "x-api-key: YOUR_API_KEY"
3

Parse the response

You'll receive a structured JSON response with tariff data for each jurisdiction:

{
  "hs_code": "6109.10.00",
  "jurisdictions": {
    "US": {
      "description": "T-shirts, singlets, tank tops...",
      "duty_rate": "16.5%",
      "duty_rate_numeric": 16.5,
      "rate_type": "ad_valorem",
      "vat_rate": null,
      "supplementary_unit": null,
      "preferential_rates": [
        {
          "country_or_group": "Australia (AUSFTA)",
          "country_code": "AU",
          "rate": "Free",
          "rate_numeric": 0,
          "measure_type": "Tariff preference (FTA)",
          "legal_base": null,
          "start_date": null
        }
      ],
      "import_controls": [],
      "trade_agreements": ["Australia (AUSFTA)"],
      "source": "USITC HTS (2026 Rev. 3)",
      "effective_from": null
    }
  },
  "queried_at": "2026-02-22T12:00:00.000Z"
}

Authentication

All API requests require authentication via an API key. You can pass it in two ways:

Option 1: HTTP Header (recommended)

x-api-key: YOUR_API_KEY

Option 2: Query Parameter

GET /api/v1/tariffs?hs_code=6109.10&api_key=YOUR_API_KEY

Security Note

Never expose your API key in client-side code. Always make API calls from your server or backend.

Endpoints

GET/api/v1/tariffs

Look up tariff rates for an HS code across one or all supported jurisdictions.

Parameters

ParameterTypeRequiredDescription
hs_codestringRequiredThe HS code to look up (e.g. "6109.10", "6109.10.00")
jurisdictionstringOptionalFilter to one jurisdiction: US, EU, or UK. Defaults to all.

Example Request

GET /api/v1/tariffs?hs_code=6109.10&jurisdiction=US

Example Response

{
  "hs_code": "6109.10.00",
  "jurisdictions": {
    "US": {
      "description": "T-shirts, singlets, tank tops...",
      "duty_rate": "16.5%",
      "duty_rate_numeric": 16.5,
      "rate_type": "ad_valorem",
      "vat_rate": null,
      "supplementary_unit": null,
      "preferential_rates": [
        {
          "country_or_group": "Australia (AUSFTA)",
          "country_code": "AU",
          "rate": "Free",
          "rate_numeric": 0,
          "measure_type": "Tariff preference (FTA)",
          "legal_base": null,
          "start_date": null
        }
      ],
      "import_controls": [],
      "trade_agreements": ["Australia (AUSFTA)"],
      "source": "USITC HTS (2026 Rev. 3)",
      "effective_from": null
    }
  },
  "queried_at": "2026-02-22T12:00:00.000Z"
}

GET/api/v1/tariffs/validate

Validate whether an HS code exists in official tariff databases.

Parameters

ParameterTypeRequiredDescription
hs_codestringRequiredThe HS code to validate
jurisdictionstringOptionalFilter to one jurisdiction: US, EU, or UK. Defaults to all.

Example Request

GET /api/v1/tariffs/validate?hs_code=6109.10

Example Response

{
  "hs_code": "6109.10",
  "validations": {
    "US": {
      "valid": true,
      "jurisdiction": "US",
      "matched_code": "6109.10.00.27",
      "description": "T-shirts, singlets, tank tops...",
      "error": null
    },
    "EU": {
      "valid": true,
      "jurisdiction": "EU",
      "matched_code": "6109100010",
      "description": "T-shirts, singlets and other vests...",
      "error": null
    },
    "UK": {
      "valid": true,
      "jurisdiction": "UK",
      "matched_code": "6109100010",
      "description": "T-shirts, singlets and other vests...",
      "error": null
    }
  },
  "queried_at": "2026-02-22T12:00:00.000Z"
}

Response Schema

Each jurisdiction object in the tariff lookup response contains these fields:

FieldTypeDescription
descriptionstringHuman-readable commodity description
duty_ratestring | nullDuty rate as text (e.g. "16.5%", "Free")
duty_rate_numericnumber | nullNumeric duty rate percentage (e.g. 16.5)
rate_typestring"ad_valorem", "specific", "mixed", "free", or "unknown"
vat_ratestring | nullVAT rate (UK/EU only)
supplementary_unitstring | nullRequired supplementary unit of measure
preferential_ratesarrayPreferential rates under trade agreements
import_controlsarrayImport restrictions, licensing, or prohibitions
trade_agreementsstring[]Applicable trade agreements
sourcestringData source identifier
effective_fromstring | nullDate the rate became effective (ISO 8601)

Error Codes

The API uses standard HTTP status codes. Error responses include a JSON body with an error field.

400

Bad Request

Missing or invalid parameters (e.g. no hs_code provided, invalid jurisdiction).

401

Unauthorized

Missing or invalid API key. Check your x-api-key header or api_key query parameter.

429

Too Many Requests

Rate limit exceeded for your plan tier. Upgrade or wait before retrying.

500

Internal Server Error

Unexpected error on our end. Retry with exponential backoff.

Error Response Format

{
  "error": "Missing required parameter: hs_code"
}

Rate Limits & Pricing

Choose the plan that fits your usage. All plans include access to all jurisdictions and endpoints.

Free

Free

100 / day

  • All jurisdictions
  • Community support
  • Rate limited
Pro
Popular

$49/mo

10,000 / day

  • All jurisdictions
  • Priority support
  • Webhook notifications
Enterprise

Custom

Unlimited

  • All jurisdictions
  • Dedicated support
  • SLA guarantee
  • Custom integrations

Ready to integrate?

Sign up for free and start querying tariff data in minutes.

Tariff API for Developers | Global Tariff Rates | Global Tariff Rates