Customs requirements data as structured JSON
One API call. Origin, destination, goods type. Get back every document required, prohibited item, restriction, and duty rule-verified, sourced, and ready to integrate.
Free sandbox ยท No credit card required ยท JSON:API compliant
# Get customs requirements for a route curl https://api.getdutiful.com/v1/route-requirements \ -H "Authorization: Bearer dtfl_sk_xxxxx" \ -G \ -d filter[origin]=GB \ -d filter[destination]=AU \ -d filter[goods_type]=personal_effects \ -d include=requiredDocuments,prohibitedItems,dutyInformation
What you get back
Everything your integration needs in a single response
One query returns the complete customs picture for any origin โ destination โ goods type combination. All data is human-verified and source-cited.
Required documents
Every form, certificate, and declaration needed. Form references, issuing authorities, and specific notes for each document.
Prohibited items
Items banned from import. Categories, legal references, and the specific authority that prohibits them.
Restricted items
Items requiring permits or licences. The permit type, issuing agency, and conditions for each restriction.
Duty & tax information
De minimis thresholds, duty-free conditions, VAT/GST rates, and ownership requirements for personal effects.
Regulatory bodies
Every government agency involved. Names, roles, websites, and contact details for the relevant authorities.
Source references
Every data point cites its source URL, publication date, and verification date. Your users can verify independently.
Endpoints
Clean, RESTful, JSON:API compliant
Standard REST conventions. Bearer token auth. Consistent filtering, sorting, sparse fieldsets, and relationship includes on every endpoint.
Response format
Predictable, structured, ready to render
Every response follows the JSON:API spec. Consistent structure, typed relationships, and source metadata on every record.
JSON:API spec
Standardised response format with typed resources, relationships, and pagination
Sparse fieldsets
Request only the fields you need-reduce payload size for mobile and bandwidth-sensitive integrations
Relationship includes
Sideload related resources in a single request-no waterfall API calls
Cache headers
X-Cache HIT/MISS headers. Smart response caching built in.
{
"data": {
"type": "route-requirements",
"id": "01HXYZ...",
"attributes": {
"origin": "GB",
"destination": "AU",
"goods_type": "personal_effects",
"summary": "Personal effects from the UK...",
"ownership_duration_months": 12,
"confidence": "verified",
"verified_at": "2026-03-10T00:00:00Z"
},
"relationships": {
"requiredDocuments": {
"data": [
{ "type": "required-documents", "id": "01HAB..." }
]
},
"prohibitedItems": {
"data": [
{ "type": "prohibited-items", "id": "01HCD..." }
]
}
}
},
"included": [
{
"type": "required-documents",
"id": "01HAB...",
"attributes": {
"name": "B534 Unaccompanied Personal Effects",
"form_reference": "B534",
"issuer": "Australian Border Force",
"source_url": "https://abf.gov.au/...",
"verified_at": "2026-03-10T00:00:00Z"
}
}
]
}Pricing
Pay for country coverage, not API calls
Choose a tier that matches your operational footprint. Need more countries? Upgrade to the next tier.
| Sandbox | Starter | Growth | Enterprise | |
|---|---|---|---|---|
| Monthly price | Free | ยฃ349 | ยฃ699 | Custom Includes Assist access |
| Countries | 2 (test data) | 10 (you choose) | 30 (you choose) | All + custom |
| Webhooks | - | - | โ | โ |
| Support | Docs only | Priority + Slack | Named account mgr |
Annual billing: pay for 10 months, get 12. Customs data changes slowly-smart caching with a 7-day TTL means your integration stays current with minimal requests.
Built for integration
Customs intelligence inside your product
Embed compliance checks directly into the workflows your users already trust. A few examples of what you can build:
Pre-checkout compliance
Before a customer completes an international order, check whether the items can ship to that destination and what documents will be needed. Reduce failed shipments and returns.
GET /v1/prohibited-items?filter[destination]=JPClient relocation portals
Build a self-service portal where your relocation clients see exactly what documents and restrictions apply to their move-always current, automatically updated.
GET /v1/route-requirements?filter[origin]=US&filter[destination]=DEQuoting & booking workflows
Surface customs requirements during freight quoting. Your ops team sees compliance data inline-no tab-switching, no manual research. Faster quotes, fewer errors.
include=requiredDocuments,dutyInformationRegulatory change webhooks
Subscribe to changes for specific countries or routes. When regulations update, your system knows immediately-trigger re-checks, update caches, notify affected users.
POST /v1/webhooks-Growth tier and aboveFAQ
Questions about the API
Start building with verified customs data today
Free sandbox with test data. No credit card. Get your API key in under a minute.