Pāriet uz saturu
Customs Check
ReģistrētiesIzveidot kontu

Izstrādātājiem

Muitas pārbaudes API

Tā pati pārbaude kā šajā vietnē, izsaukta no jūsu programmatūras. Jūs nosūtāt lietu JSON formātā un saņemat vērtējumu no 100, bloķējošos punktus, brīdinājumus un ieteicamās darbības — ar stabiliem neatbilstību kodiem un ziņojumiem Eiropas Savienības 24 oficiālajās valodās.

Šis ir servera–servera API. API atslēga ir noslēpums. Izsaukumi no pārlūkprogrammas netiek atbalstīti, un autentificētajos ceļos netiek sūtītas CORS galvenes: atslēga, kas nonāk pārlūkprogrammā, ir noplūdusi atslēga.

Pārskats

API piedāvā pārbaudītāja kontroles dzinēju: četrpadsmit vispārīgus noteikumus, piecus TARIC noteikumus, četrus dokumentu pilnīguma noteikumus un katras deklarēšanas sistēmas pārbaudes. Tā neko nenosūta: tā pārbauda jūsu lietas formātu un saskaņotību, kodu esību nomenklatūrā un, importējot ES, izcelsmei piemērojamos TARIC pasākumus (antidempings, kontrole, preferences, muitas likme), pirms jūs sagatavojat deklarāciju.

Visiem ceļiem priekšā ir to versija. Atklāšanas ceļi un specifikācija ir publiski: integrētājs vai aģents var izlasīt shēmu pirms atslēgas iegūšanas.

CeļšLomaAutentifikācija
POST/v1/checksPārbauda lietu un atgriež pilnu pārskatuNepieciešama atslēga
POST/v1/checks/batchPārbauda līdz 25 lietām vienā izsaukumāNepieciešama atslēga
GET/v1/meAtgriež pašreizējo atslēgu un tās kvotu, to nepatērējotNepieciešama atslēga
GET/v1/declaration-typesUzskaita atpazītos deklarāciju veidusPublisks
GET/v1/declaration-types/{type}Apraksta konkrētam veidam gaidāmos laukusPublisks
GET/v1/openapi.jsonŠī API OpenAPI 3.1 specifikācijaPublisks

Autentifikācija

API autentificējas ar nesēja pilnvaru. Pilnvara tiek parādīta tikai vienu reizi, izveides brīdī: tiek saglabāts tikai tās nospiedums, tāpēc pazaudēta atslēga tiek aizstāta, nekad neatgūta.

Vienlaikus varat turēt trīs aktīvas atslēgas, kas ļauj rotēt atslēgu, nepārtraucot integrāciju: izveidojiet jauno, ieviesiet to un pēc tam atsauciet veco.

  1. 01Izveidojiet atslēgu savā kontā sadaļā “API atslēgas”.
  2. 02Sūtiet to katra pieprasījuma Authorization galvenē.
  3. 03Noplūdes gadījumā atsauciet to: pārtraukums ir tūlītējs, un ar šo atslēgu iesniegto lietu saturs tiek uzreiz dzēsts.
Authorization: Bearer cc_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Pirmā pārbaude

Lieta sastāv no veida, galvenes un preču rindām. Visas vērtības ir virknes: par to interpretāciju parūpējas dzinējs. Lauku nosaukumi tiek atklāti izpildes laikā, veidu pēc veida.

Atbilde pienāk uzreiz; pēc tam nav ko vaicāt.

Pieprasījums
curl https://www.customs-check.com/api/v1/checks \
  -H "Authorization: Bearer $CUSTOM_CHECK_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "type": "import-export",
    "reference": "PO-2026-114",
    "header": {
      "flow": "IM",
      "shipmentCountry": "CN",
      "destinationCountry": "FR",
      "incoterm": "FOB",
      "companyName": "Acme SAS",
      "companyCountry": "FR",
      "eori": "FR12345678900012",
      "transportMode": "sea",
      "currency": "USD",
      "invoiceTotal": "12500"
    },
    "items": [
      {
        "description": "Leather sport shoes",
        "hsCode": "6403990000",
        "quantity": "500",
        "value": "12500",
        "origin": "VN",
        "grossMass": "850",
        "netMass": "800"
      }
    ],
    "documents": { "commercialInvoice": "available", "packingList": "missing" }
  }'

Atbildes lasīšana

Katra neatbilstība nes gan mašīnas identitāti, gan lasāmu teikumu. Veidojiet savu loģiku uz mašīnas identitātes: tā nemainās bez versijas maiņas.

severity · code · path · rule
Stabils līgumsStabili. Var parādīties jauni kodi; esošie netiek pārdēvēti bez versijas maiņas.
field · message · text
Tikai attēlošanaiTulkoti attēlošanai. Tos jebkurā brīdī var pārformulēt — nekad nesalīdziniet tos savā kodā.
engine.version
Mainās, tiklīdz noteikumu izmaiņas maina nemainītas lietas vērtējumu. Arhivējiet to kopā ar saviem pārskatiem.

Lauks “path” atspoguļo jūsu pieprasījuma formu, tāpēc neatbilstību varat piesaistīt tieši atbilstošajam laukam savā saskarnē.

header.<lauks> · items.<n>.<lauks> · documents.<category> · global

Atbilde
{
  "id": "4c749e25-3408-48f9-b3ca-b18a7ad84681",
  "createdAt": "2026-09-16T12:46:13.186Z",
  "type": "import-export",
  "locale": "en",
  "reference": "PO-2026-114",
  "score": 90,
  "level": "good",
  "counts": { "errors": 0, "warnings": 2, "infos": 1 },
  "documents": { "commercialInvoice": "available", "packingList": "missing" },
  "issues": [
    {
      "severity": "warning",
      "code": "docPackingListMissing",
      "path": "documents.packingList",
      "rule": "DOC-002",
      "params": null,
      "field": "Packing list",
      "message": "Packing list not provided",
      "text": "Packing list not provided"
    },
    {
      "severity": "warning",
      "code": "docTransportMissing",
      "path": "documents.transportDocument",
      "rule": "DOC-003",
      "params": null,
      "field": "Transport document (B/L, AWB, CMR)",
      "message": "Transport document not provided",
      "text": "Transport document not provided"
    }
  ],
  "actions": [
    { "severity": "warning", "code": "docPackingListMissing",
      "path": "documents.packingList", "text": "Add: Packing list" }
  ],
  "tips": [
    {
      "severity": "info",
      "code": "taricControlsPossible",
      "path": "items.0.hsCode",
      "rule": "RULE-017",
      "params": { "measures": "Import control - CITES ; Import control on seal products" },
      "field": "Product 1 — HS / commodity code (if known)",
      "message": "Possible import controls depending on the goods (Import control - CITES ; Import control on seal products): check whether they apply.",
      "text": "Product 1 — HS / commodity code (if known): Possible import controls depending on the goods (Import control - CITES ; Import control on seal products): check whether they apply."
    }
  ],
  "engine": { "version": "1.6.0", "rules": 25, "taric": "2026-10-01" }
}

Lauku atklāšana

Deklarāciju veidi un to lauki ir publiski, atslēga nav nepieciešama. Šis ir ceļš, lai izveidotu veidlapu, papildinātu kartējumu no jūsu ERP vai sniegtu aģentam shēmu, kas tam jāaizpilda.

Šeit atgrieztie nosaukumi ir tieši tās atslēgas, kas jāizmanto galvenē un katrā preču rindā. Iespēju saraksti atgriežas atrisināti un tulkoti; pievienojiet parametru, lai tos izlaistu, ja atbilde šķiet pārāk apjomīga.

# The 8 declaration types
curl "https://www.customs-check.com/api/v1/declaration-types?locale=en"

# The fields of one type
curl "https://www.customs-check.com/api/v1/declaration-types/h7?locale=en"

# Same, without the resolved option lists
curl "https://www.customs-check.com/api/v1/declaration-types/h7?options=false"

Pakešapstrāde

Līdz 25 lietām vienā izsaukumā. Atbilde vienmēr ir veiksmīga, tiklīdz pakete ir pieņemta, un katram ierakstam ir savs statuss: viena slikti veidota lieta nekad neizgāž pārējās.

Ja atlikusī kvota nesedz visus derīgos ierakstus, tiek noraidīta visa pakete, nevis apstrādāta daļēji — jums nekad nav jāmin, kur apstrāde apstājās.

curl https://www.customs-check.com/api/v1/checks/batch \
  -H "Authorization: Bearer $CUSTOM_CHECK_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "checks": [ { "type": "h7", "header": {}, "items": [] } ] }'

Aģenti un rīki

Papildus REST maršrutiem to pašu dzinēju un tos pašus datus var sasniegt no mākslīgā intelekta asistenta, izmantojot Model Context Protocol (MCP) serveri, un no API klienta, izmantojot gatavu Postman kolekciju. Abi izmanto iepriekš aprakstīto API atslēgu un dienas kvotu.

MCP serveris

MCP serveris ļauj asistentam meklēt muitas kodus, nolasīt koda ES ievedmuitu, pārbaudīt EORI, PVN vai AEO numuru oficiālajos reģistros un pārbaudīt deklarācijas melnrakstu, neuzrakstot ne rindiņas saistošā koda. Tas atbild uz POST /api/mcp ar JSON atbildēm.

Tas ir bez stāvokļa un runā abas protokola paaudzes: 2026-07-28 redakciju, kurā katrs pieprasījums nes savu versiju, un agrākās redakcijas, kas sākas ar initialize izsaukumu. Savienojums, atklāšana un rīku uzskaitījums nemaksā neko; katrs rīka izsaukums patērē vienu atslēgas dienas kvotas vienību.

Autentifikācija ir tas pats bearer tokens kā REST API. Klients, kas atbalsta tikai OAuth pieteikšanos, piemēram, claude.ai tīmekļa savienotāji, vēl nevar izveidot savienojumu: izmantojiet klientu, kas ļauj iestatīt galveni.

POST https://www.customs-check.com/api/mcp

claude mcp add --transport http customs-check https://www.customs-check.com/api/mcp \
  --header "Authorization: Bearer $CUSTOM_CHECK_KEY"
check_declarationDeklarācijas melnraksta pārbaude: vērtējums no 100, līmenis un katra problēma ar lauku un darbību. Faila saturu neglabā, ja nav pieprasīts.
list_declaration_typesAtbalstītās deklarēšanas sistēmas ar iestādi, reģionu un gaidāmajiem dokumentiem.
describe_declaration_typeTipa galvenes un pozīciju lauki, lai izveidotu check_declaration ievadi.
search_hs_codesKombinētās nomenklatūras kandidātkodi pēc preces apraksta jebkurā no 24 ES valodām.
describe_hs_codeVai 4–10 ciparu kods pastāv spēkā esošajā nomenklatūrā, ar tā oficiālo ceļu un formulējumu.
lookup_import_dutyKoda ES ievedmuita pēc Komisijas TARIC datiem: trešo valstu muita, preferences pēc izcelsmes, kvotas, antidempinga pasākumi un kontrole.
search_chemicalĶīmiska viela pēc CAS numura, CUS numura vai nosaukuma Komisijas ECICS sarakstā: katram ierakstam norādītais Kombinētās nomenklatūras kods, pārbaudei.
get_quota_balanceES tarifa kvotas atlikušais atlikums Komisijas QUOTA datubāzē pēc kārtas numura vai pēc koda un izcelsmes: atlikums, stāvoklis (atvērta, kritiska, bloķēta, izsmelta), periods un nolasīšanas laiks.
validate_eoriEORI numura formāts un tā statuss oficiālajā reģistrā (Eiropas Komisija, HMRC).
validate_vatES PVN numura formāts un tā derīgums VIES, ar reģistrēto nosaukumu, ja tas publicēts.
check_rexReģistrēta eksportētāja REX numura formāts un tā statuss Komisijas REX datubāzē (derīgs, atsaukts vai nezināms), ar datumiem.
screen_sanctionsUzņēmums, persona vai kuģis pret ES, ANO, Apvienotās Karalistes un ASV sankciju sarakstiem, kas tiek atjaunināti katru dienu: katra atbilstība ar vērtējumu, stipra vai daļēja.
search_aeoMeklēšana Komisijas atzīto uzņēmēju datubāzē pēc uzņēmuma nosaukuma.
  • Muitas kodi ir ieteikumi, kas ņemti no nomenklatūras formulējuma. Klasifikāciju var apstiprināt tikai deklarētājs vai muitas saistošā tarifa informācija.
  • Muitas nodokļi ir orientējoši: nosacījumi, izņēmumi pēc valstīm un izsmeltās kvotas netiek novērtēti. Katra atbilde nes ik mēnesi atjaunotā TARIC izvilkuma atsauces datumu.
  • Reģistrs, kas neatbild, tiek ziņots kā nepieejams, nekad kā nederīgs numurs. Muitai nekad nekas netiek sūtīts.

Postman kolekcija

Kolekcija tiek ģenerēta no OpenAPI specifikācijas, tāpēc tā vienmēr tai atbilst: viens pieprasījums katram maršrutam, grupēti pēc tagiem, ar pamatteksta karkasu katram POST. Importējiet to Postman, aizpildiet mainīgo apiKey (glabājas kā noslēpums), un pieprasījumi ir gatavi sūtīšanai.

Lejupielādēt kolekciju

Kvota

Katrai atslēgai ir 500 pārbaudes UTC kalendārajā dienā. Pašreizējais stāvoklis ceļo līdzi katrai autentificētai atbildei, tāpēc tā uzzināšanai nekad nav vajadzīgs papildu izsaukums.

Arī noraidītie izsaukumi tiek skaitīti: klients, kas cilpo uz nederīgiem pieprasījumiem, ierobežo pats sevi. Kvota tiek noteikta katrai atslēgai — rakstiet mums, ja vajag vairāk.

Atbilde
X-RateLimit-Limit: 500
X-RateLimit-Remaining: 437
X-RateLimit-Reset: 1789603200
X-RateLimit-Policy: 500;w=86400

Kļūdas

Kļūdu ziņojumi ir tikai angļu valodā: tie ir protokola ziņojumi, paredzēti izstrādātājiem. Tulkots tiek tikai saturiskais teksts.

Katra atbilde nes pieprasījuma identifikatoru, kas atkārtots pamattekstā. Norādiet to, sazinoties ar mums — tas mūs aizved tieši pie izsaukuma.

{
  "error": {
    "code": "invalid_request",
    "message": "The request body failed validation.",
    "details": [
      { "path": "items.0.quantity", "message": "expected a string" }
    ],
    "requestId": "2bbb0946-6178-4b54-921c-b28f794c44bd"
  }
}
StatusscodeNozīme
400invalid_jsonPamatteksts nav derīgs JSON.
422invalid_requestJSON ir derīgs, bet tā saturs nav. Detaļas norāda kļūdaino lauku.
401missing_credentialsTrūkst Authorization galvenes vai tā ir bojāta.
401invalid_keyNezināma atslēga.
401key_revokedAtsaukta atslēga.
403account_suspendedAtslēgas īpašnieka konts ir apturēts.
415unsupported_media_typeSatura tips nav JSON.
413payload_too_largePieprasījuma pamatteksts ir pārāk liels.
429rate_limit_exceededSasniegta dienas kvota. Skatiet Retry-After galveni.
500internal_errorKļūda mūsu pusē. Mēģiniet vēlreiz un ziņojiet mums ar pieprasījuma identifikatoru.

Dati un glabāšana

Caur API nosūtītās lietas ir jūsu klientu dati: mēs glabājam pēc iespējas mazāk, un jums ir slēdzis, lai neglabātu neko.

  • Sūtiet “store” kā false, un nekāds lietas saturs netiks ierakstīts: paliek tikai vērtējums un neatbilstību kodi.
  • Pretējā gadījumā lietu saturs tiek dzēsts pēc 30 dienām.
  • Atslēgas atsaukšana nekavējoties dzēš ar to iesniegto lietu saturu.
  • Apstrāde notiek Frankfurtē, un datubāze mitinās Eiropas Savienībā.
  • Caur API netiek augšupielādēts neviens fails: jūs tikai norādāt, kuri dokumenti jums ir.

200 items · 256 KB · 25 / batch · reference ≤ 64

Kas šis API nav

Pārbaude palīdz sagatavoties. Tā nav muitas administrācijas apstiprinājums, tā neko neiesniedz un neaizstāj jūsu darījumam piemērojamos normatīvos pienākumus.

Muitas kodus pārbauda pēc formāta, esības nomenklatūrā un, importējot ES, pēc to izcelsmes TARIC pasākumiem, bet nekad pēc preces klasifikācijas: esošs kods joprojām ir pārbaudāms kods. TARIC pasākumi ir indikatīvi (Eiropas Komisijas ikmēneša izraksts): valstu izņēmumi, izsmeltas kvotas un nosacīti muitas nodokļi netiek vērtēti.