Pieprasījumu ierobežojumi un atkārtošana

120 lasījumi, 30 rakstīšanas un 10 e-rēķinu sistēmas darbības minūtē uz piekļuves datiem, ar X-RateLimit-* galvenēm.

120 lasījumi, 30 rakstīšanas un 10 e-rēķinu sistēmas darbības minūtē uz piekļuves datiem, ar X-RateLimit-* galvenēm.

← Atpakaļ uz API dokumentāciju

Pirmais rēķins 6 soļos

  1. Ierobežojumi ir uz piekļuves datiem minūtē: 120 lasījumi, 30 rakstīšanas, 10 e-rēķinu sistēmas darbības.
  2. E-rēķinu sistēmas grupa aptver efactura/submit, submissions/{id}/refresh un efactura/inbox/sync.
  3. Katrā atbildē ir X-RateLimit-Limit, X-RateLimit-Remaining un X-RateLimit-Reset, arī 429.
  4. 429 sniedz Retry-After sekundēs; pirms atkārtošanas nogaidiet tik ilgi.

Kas ir 4invoices API

http
HTTP/2 429
X-RateLimit-Limit: 30
X-RateLimit-Remaining: 0
X-RateLimit-Reset: 1785312000
Retry-After: 17
Content-Type: application/json

{"error":{"type":"rate_limit_error","code":"rate_limit_exceeded",
 "message":"...","doc_url":"https://4invoices.net/ro/api-dezvoltatori#errors",
 "request_id":"req_..."}}
javascript
// Ievērojiet Retry-After; neatkārtojiet nevienu 4xx, izņemot 429.
async function call(url, init, attempt = 0) {
  const res = await fetch(url, init);
  if (res.status === 429 || res.status >= 500) {
    if (attempt >= 5) return res;
    const retryAfter = Number(res.headers.get("Retry-After")) || 2 ** attempt;
    await new Promise((r) => setTimeout(r, retryAfter * 1000));
    return call(url, init, attempt + 1);
  }
  return res;
}

// Rakstīšanas atkārtojumā JĀIZMANTO TO PAŠU Idempotency-Key, citādi izrakstīsiet
// otru fiskālo dokumentu.

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

Pieprasījumu ierobežojumi

GrupaPieprasījumi / minūtēKo tas nozīmē
read120GET *, POST /invoices/preview-totals, POST /invoices/{id}/efactura/validate
write30POST /invoices, POST /invoices/{id}/storno, POST|DELETE /invoices/{id}/payments, POST /clients
submit10POST /invoices/{id}/efactura/submit, POST /efactura/submissions/{id}/refresh, POST /efactura/inbox/sync

Kļūdas

StatussTipsKods
429rate_limit_errorrate_limit_exceeded

Biežākās kļūdas

  • 10 minūtē grupa nav patvaļīga: Rumānijas ANAF atļauj aptuveni vienu ziņojumu saraksta pieprasījumu minūtē uz nodokļu maksātāja kodu (CIF).
  • Atkārtojot rakstīšanu, izmantojiet TO PAŠU Idempotency-Key, citādi izrakstīsiet otru dokumentu.
  • Žetona galapunktam ir atsevišķs IP ierobežojums. Saglabājiet žetonu kešatmiņā visu tā stundu ilgo derīguma laiku.
  • GET /v1/me rāda pašreizējās piekļuves datu grupas — noderīgi integrācijas veselības pārbaudē.
  • Vajadzīgi lielāki limiti? Rakstiet mums caur lapu Kontakti, norādot paredzamo dienas apjomu.

Izstrādātāju jautājumi un atbildes

Vai ierobežojums ir uz kontu vai uz piekļuves datiem?

Uz piekļuves datiem. Trafika sadalīšana starp sistēmām paredzētiem piekļuves datiem nozīmē, ka masveida imports nevarēs izsalcināt jūsu veikala dzīvo plūsmu.

Kādu backoff ieteicat?

Ievērojiet Retry-After, ja tas ir klāt; citādi eksponenciāli, sākot ar 1–2 sekundēm, ne vairāk kā 5 mēģinājumi. Nekādu stingru ciklu.

Vai 429 arī satur X-RateLimit galvenes?

Jā. Mēs tās sniedzam pašā 429 atbildē — tieši tur klientam tās vajadzīgas, lai aprēķinātu pauzi.