Ograniczenia żądań do interfejsu API

W tym dokumencie opisano ograniczenia i ograniczenia związane z wysyłaniem żądań do interfejsów API zarządzania i interfejsów API do raportowania.

Z Google Analytics korzystają miliony witryn. Stosujemy ograniczenia dotyczące żądań do interfejsów API, aby chronić system przed otrzymaniem większej ilości danych, niż jest w stanie obsłużyć, oraz zapewnić sprawiedliwy rozkład zasobów systemowych. Limity mogą ulec zmianie.

W tym filmie omawiamy sprawdzone metody zarządzania limitami żądań do interfejsu Google Analytics API.

Ogólne limity

W przypadku interfejsów Management API, Core Reporting API w wersji 3, MCF Reporting API, Metadata API, User Deletion API i Real Time Reporting API obowiązują te limity:

  • 50 tys. żądań na projekt dziennie, które można zwiększyć;
  • 10 zapytań na sekundę na adres IP.
    • W Konsoli interfejsów API obowiązuje podobny limit nazywany żądaniami na 100 sekund na użytkownika. Domyślnie ustawiona jest wartość 100 żądań na 100 sekund na użytkownika, ale można ją zmienić na 1000. Liczba żądań wysyłanych do interfejsu API jest jednak ograniczona do 10 żądań na sekundę na użytkownika.
    • Jeśli Twoja aplikacja wysyła wszystkie żądania do interfejsu API z jednego adresu IP (tj. w imieniu użytkowników), używaj w każdym żądaniu parametru userIP lub quotaUser, aby uzyskać pełny limit zapytań na sekundę dla każdego użytkownika. Szczegółowe informacje znajdziesz w podsumowaniu standardowych parametrów zapytania.

Reporting APIs

Podane niżej limity mają zastosowanie do wszystkich interfejsów API do raportowania, w tym do interfejsów Core Reporting API v3, Analytics Reporting API v4, Real Time API v3 i Multi-channel Funnel API v3:

  • 10 000 żądań na widok (profil) dziennie (nie można zwiększyć)
  • 10 równoczesnych żądań na widok (profil) (nie można zwiększyć)

Raportowanie błędów żądań do interfejsów API

Jeśli żądanie wysłane do interfejsu API do raportowania nie powiedzie się z powodu błędu serwera, otrzymasz kod odpowiedzi 500 lub 503. Możesz przesłać prośbę ponownie. Jeśli jednak błąd będzie się powtarzał, nie przesyłaj go więcej niż raz. Google Analytics umożliwia:

  • 10 nieudanych żądań z błędami serwera na projekt na widok (profil) na godzinę
  • 50 nieudanych żądań z błędami serwera na projekt na widok (profil) dziennie

Jeśli liczba nieudanych żądań przekracza te limity, zobaczysz ten błąd:

Quota Error: The number of recent reporting API requests failing by server error is too high.
You are temporarily blocked from the reporting API for at least an hour.
Please send fewer server errors in the future to avoid being blocked.

Aby zmniejszyć prawdopodobieństwo wystąpienia błędów serwera żądań, uprość żądanie, ograniczając zakres dat, liczbę wymiarów w żądaniu lub liczbę danych w żądaniu.

Nie przesyłaj stale ponownie nieudanej prośby. Zamiast tego zaimplementuj ponawianie wykładnicze, aby przesłać ponownie.

Limity liczby błędów serwera są egzekwowane zgodnie z cyklicznymi przedziałami czasu dla każdego z godzinowych i dziennych limitów liczby błędów. Po godzinie od projektu i wyświetlenia pierwszego błędu serwera dla pary limit jest resetowany. Jeśli para projekt i widok wyślą 10 błędów serwera w ciągu godziny, para „projekt i widok” zostanie zablokowana w interfejsie API aż do godziny od wystąpienia pierwszego błędu serwera.

Jeśli na przykład para projekt i widok nie wysyła błędu serwera w ciągu ostatnich 24 godzin, ten projekt i widok będą wykorzystywać 0 ze swoich 50 limitów. Załóżmy, że ten projekt i widok wysyłają błąd serwera o 6:12. Jeśli ten projekt i widok wyślą 49 dodatkowych błędów serwera przed 6:12 następnego dnia, projekt i widok będą zablokowane do 6:12 następnego dnia. O 6:12 następnego dnia limit liczby błędów serwera dla tego projektu i widoku zostanie całkowicie zresetowany.

Przekroczenie limitu

Jeśli limit żądań wysyłanych do interfejsu Google Analytics API zostanie przekroczony, interfejs API zwróci kod błędu 403 lub 429 i komunikat, że limit został przekroczony na koncie. Więcej informacji znajdziesz w Warunkach korzystania z usługi.

Wysyłam prośbę o dodatkowy limit

Możesz poprosić tylko o zwiększenie:

Aby wyświetlić lub zmienić limity wykorzystania w projekcie albo poprosić o zwiększenie limitu, wykonaj te czynności:

  1. Jeśli nie masz jeszcze konta rozliczeniowego powiązanego z projektem, utwórz je.
  2. Otwórz stronę Włączone interfejsy API w bibliotece interfejsów API w konsoli API i wybierz interfejs API z listy.
  3. Aby wyświetlić i zmienić ustawienia związane z limitami, wybierz Limity. Aby wyświetlić statystyki użytkowania, wybierz Użycie.

Aby poprosić o zwiększenie maksymalnego limitu, skorzystaj z formularza prośby o zwiększenie limitu w interfejsie Analytics API. Przed przesłaniem prośby zapoznaj się z informacjami i postępuj zgodnie z instrukcjami podanymi w formularzu prośby o zwiększenie limitu. W przypadku interfejsu Reporting API w wersji 4 nazwa interfejsu API w Konsoli Google API to Google Analytics Reporting API. Wszystkie inne interfejsy API w wersji 3 (np. Management API v3, Core Reporting API 3, Real Time Reporting API v3, User Deletion API v3) znajdziesz w sekcji Interfejs Analytics API w Konsoli interfejsów API Google.

Więcej informacji o zarządzaniu limitami i o tym, jak dostroić aplikację pod kątem wykorzystania limitu, znajdziesz w artykule Monitorowanie interfejsów API i ograniczanie wykorzystania.