Villukóðar og villuumslagið

Ein lögun á hverri leið: type, code, message, param, doc_url, request_id og errors.

Ein lögun á hverri leið: type, code, message, param, doc_url, request_id og errors.

← Til baka í API-skjölin

Fyrsti reikningurinn þinn í 6 skrefum

  1. Sérhvert 4xx og 5xx skilar { "error": { type, code, message, param?, doc_url, request_id, errors? } }.
  2. Greindu eftir type til að ákveða hvort endurtekning eigi við, og kortleggðu code inn í þitt eigið kerfi.
  3. param vísar í reitinn sem olli vandanum, t.d. lines.0.vat_rate; errors[] birtist þegar þeir eru margir.
  4. Skráðu request_id í hverri villu — það gerir okkur kleift að finna nákvæmlega beiðnina í skrám okkar.

Hvað eru forritaskil 4invoices

json
{
  "error": {
    "type": "invalid_request_error",
    "code": "validation_failed",
    "message": "Datele trimise nu sunt valide.",
    "param": "lines.0.vat_rate",
    "doc_url": "https://4invoices.net/ro/api-dezvoltatori#errors",
    "request_id": "req_8a893f2f33d4472da8d6e144",
    "errors": [
      { "param": "lines.0.vat_rate", "message": "VAT rate must be a percent (21), not a fraction", "type": "value_error" }
    ]
  }
}

https://api.4invoices.net/v1 · https://api.4invoices.net/v1/openapi.json

Villur

StaðaTegundKóði
401authentication_errormissing_bearer_token
401authentication_errorunauthorized
403permission_errorforbidden
404not_found_errornot_found
409conflict_erroridempotency_key_reuse
409conflict_erroridempotency_in_progress
422invalid_request_errorvalidation_failed
422invalid_request_errorinvalid_json_number
502upstream_errorupstream_error
503service_unavailable_errorservice_unavailable

Algeng mistök

  • rate_limit_error og tvær upstream-gerðirnar má endurreyna. authentication_error, permission_error og invalid_request_error lagast ekki við endurtekningu.
  • 404 er einnig skilað fyrir auðkenni sem tilheyrir öðrum leigjanda: við staðfestum aldrei að gögn einhvers annars séu til.
  • 409 idempotency_key_reuse þýðir að þú notaðir lykil aftur með öðru efni. Ekki þvinga það: athugaðu hvað var þegar gefið út.
  • doc_url í hverri villu vísar beint í villuhlutann í þessum skjölum.
  • Skilaboðin eru á rúmensku því API-ið þjónar rúmenskum reikningsflæði; ekki þáttaðu message, greindu eftir code.

Spurningar og svör fyrir þróendur

Get ég reitt mig á code-gildin milli útgáfa?

Já, code er stöðugt og er einmitt til þess. message er mannlegur texti og getur breyst í orðalagi.

Hvað á ég að gera við 502 eða 503?

Reyndu aftur með veldisvaxandi bið. Þetta eru upstream- eða tímabundnar aðgengisvillur, ekki vandamál með beiðnina þína.

Af hverju 422 en ekki 400 fyrir ógild gögn?

422 merkir vel formaðan en merkingarlega ógildan JSON — til dæmis vat_rate sem brot. 400 er áskilið fyrir illa formaða beiðni.