What does one API call return?
A 10-digit HTS code for goods entering the United States, the general (MFN) and special rates, and one list per duty layer, such as Section 301 and Section 232 metals, where each entry is a Chapter 99 heading with its rate. An empty list means that layer does not apply. Split-code products return a components array instead.
How do we plug tariff and classification data into our own systems?
Call the Classification + Tariff Calculation API from your ERP, quoting tool or entry-prep workflow. Send a product description and its origin, and get back a 10-digit HTS code, the base rates and each Chapter 99 duty layer as JSON, one product at a time or 120 per batch call by default. A licensed customs broker still reviews a code before it goes on an entry.
Is it a landed cost API?
It covers the duty part of landed cost. The API returns the duty rates and Chapter 99 lines; your system applies them to the customs value and adds freight, insurance and fees. It is built for pre-import decisions and entry prep. If you need guaranteed duties and taxes shown to shoppers at checkout, checkout tools such as Zonos and Avalara are built for that job.
How does it handle split-code products like watches?
Some goods, such as Chapter 91 watches, are dutiable part by part rather than as one unit. For those the API returns the 8-digit parent code and a components array: each part gets its own 10-digit HTS code and its own tariff data, worked out on our side in the same call.
What are the batch limits?
120 products per batch call by default, and we can size it to your throughput, each with a description of up to 10,000 characters. Each item carries your own item_id and comes back with its own status, ok or failed, in the order you sent it, so one product that cannot be classified does not fail the batch. The single and batch endpoints draw from the same item quota under your key.
How much traffic can it handle?
As much as your key is set up for. Every key has its own rate limit and item quota, and we size a production key after learning your calling pattern, IP allowlist and peak QPS. If you go over, the API answers 429 Too Many Requests with a Retry-After header that tells your client how many seconds to wait.
How do I get an API key?
The API is for enterprise customers, so it starts with a call: use the Ask for an API key button at the top of this page. We learn your calling pattern, IP allowlist and peak QPS, set your key's rate limit and item quota to match, and send the key through an offline channel such as email.
Do I need to be a licensed customs broker to use the API?
No. The API returns research output: an HTS code and the duty layers for your systems to use in quoting and entry prep. Per CBP ruling HQ H290535, classifying specific goods beyond six digits for importation is customs business under 19 U.S.C. § 1641, so a licensed customs broker reviews a code before it goes on an entry. GingerControl is not a broker.
Can the API classify export controls (ECCN)?
No. The API covers U.S. import classification and duties. Export control classification runs in the Export Control Classifier web app, which has no API today.
Where is the full technical documentation?
In the API reference at gingercontrol.com/products/openapi. It documents both endpoints, every request and response field, the error codes, headers and rate-limit rules, with curl examples you can paste.