Limity i kontyngenty

Dzienne limity na plan, z nagłówkami X-RateLimit-*

Czas czytania: 3 min
Drukuj tę sekcję

FreeMaint API wymusza dzienny limit na firmę, resetowany o północy czasu UTC. Limit zależy od Twojego poziomu; liczniki i pozostałe są widoczne jako nagłówki odpowiedzi.

Czapki codzienne

  • Core, Starter — 0 (klucz API wymaga Business)
  • Business — 5000 wywołań dziennie (GraphQL i endpoint przyjmowania danych energetycznych dzielą ten sam licznik)
  • Enterprise — 100 000 wywołań dziennie
  • On-Premise — bez ograniczeń (limit = null)

Nagłówki odpowiedzi

  • X-RateLimit-Limit — dzienny limit Twojego poziomu
  • X-RateLimit-Remaining — połączenia pozostałe dzisiaj (zmniejszenia za każde połączenie przeliczone na limit)
  • X-RateLimit-Reset — Unixowy znacznik czasu północy UTC (następny reset)

Co się nie liczy

Bezpłatny jest wyłącznie /public-api/whoami: nie zmniejsza licznika, więc możesz sprawdzić klucz i jego plan bez zużywania limitu. Wszystko, co idzie przez /api/v1/graphql, jest liczone, łącznie z zapytaniem whoami — podobnie jak endpoint przyjmowania danych energetycznych.

Co liczy się jako jedno wywołanie

Licznik rośnie za każdą OPERACJĘ, nie za żądanie HTTP. Zebranie 50 mutacji z aliasami w jednym żądaniu i tak zużyje 50 jednostek. Grupowanie oszczędza więc podróże sieciowe, nigdy limit. Aby cykliczna synchronizacja pozostała tania, pobierajcie tylko zmiany przez parts(updatedSince: "...") zamiast czytać cały katalog od nowa.

Kiedy przekroczysz limit

Po osiągnięciu dziennego limitu każde kolejne wywołanie jest odrzucane z komunikatem „Daily API cap reached”. Na powierzchniach REST (/public-api/ping, endpoint przyjmowania danych energetycznych) jest to HTTP 403. W GraphQL status HTTP wynosi 200, a odmowa znajduje się w errors[0].extensions.code = FORBIDDEN, z originalError.statusCode = 403. Licznik zeruje się o 00:00 UTC. Nie ma limitu miękkiego, zapasu na skok ani okna minutowego — oknem jest doba.

Wskazówka

Monitoruj X-RateLimit-Remaining na pulpicie nawigacyjnym integracji, aby móc ostrzec się przed osiągnięciem limitu.

Czy ta strona była pomocna?