Objaw
API zwraca odpowiedź 429 Too Many Requests z komunikatem:
API rate limit exceeded. Try again in 60 seconds.Przyczyna
Integracja przekroczyła limit zapytań. Najczęstszą przyczyną jest zbyt częste sprawdzanie statusów (wysyłki do KSeF, zadań asynchronicznych) lub pobieranie list bez stronicowania. Pobieranie list faktur z KSeF ma osobny limit: 6 żądań na godzinę.
Rozwiązanie
- Żądanie ponawia się po co najmniej 60 sekundach. Jeśli kod
429się powtarza, przerwy należy wydłużać. - Statusy lepiej odbierać przez webhooki niż przez cykliczne zapytania.
- Listy najlepiej pobierać po 100 elementów (
limit=100), z odpowiedzią ograniczoną do potrzebnych pól (fields=) i z nagłówkiemIf-None-Match.
Zobacz też Limity zapytań.