Customs Check
Pārbaudīt bez maksas

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 atklāj validatora pārbaudes dzinēju: trīspadsmit šķērsgriezuma noteikumus, četrus dokumentu pilnīguma noteikumus un katrai deklarēšanas sistēmai raksturīgos validatorus. Tas neko nenosūta un neveic vaicājumus nevienā tarifu datubāzē — tas pārbauda jūsu lietas iekšējo saskaņotību un formātu, 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. 1Izveidojiet atslēgu savā kontā sadaļā “API atslēgas”.
  2. 2Sūtiet to katra pieprasījuma Authorization galvenē.
  3. 3Noplū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": 0 },
  "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": [],
  "engine": { "version": "1.0.0", "rules": 13 }
}

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": [] } ] }'

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 kodi tiek pārbaudīti pēc formāta un saskaņotības ar darījumu, nekad pret tarifu datubāzi: pareizi veidots kods paliek kods, kas jāpārbauda.