Limity wykorzystania
Zadbaj o dobrą organizację dzięki kolekcji
Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.
Limity i kwoty chronią infrastrukturę Google przed zautomatyzowanymi procesami, które wykorzystują interfejs Reseller API w nieodpowiedni sposób. Nadmierna liczba żądań z interfejsu API może być wynikiem nieszkodliwego błędu w pisowni lub nieefektywnie zaprojektowanego systemu, który wykonuje niepotrzebne wywołania interfejsu API. Niezależnie od przyczyny blokowanie ruchu z określonego źródła po osiągnięciu określonego poziomu jest niezbędne dla ogólnej kondycji systemu Google Workspace. Dzięki temu działania jednego dewelopera nie mogą negatywnie wpłynąć na większą społeczność.
Nieudane żądania do interfejsu API
W mało prawdopodobnym przypadku niepowodzenia żądania interfejsu API aplikacja otrzyma kod stanu HTTP. Kod stanu 403
zawiera informacje o błędach związane z nieprawidłowym wejściem, a kod stanu HTTP 503
zawiera informacje o błędach wskazujące, które limity interfejsu API zostały przekroczone. Te odpowiedzi umożliwiają aplikacji niestandardowej wykrywanie błędów i podejmowanie odpowiednich działań.
Błędy związane z czasem
W przypadku wszystkich błędów związanych z czasem (maksymalnie N elementów przez N sekund na wątek), zwłaszcza błędów kodu stanu 503
, zalecamy, aby kod przechwytywał wyjątek i za pomocą algorytmu wykładniczego wycofywania czekał na niewielkie opóźnienie przed ponowną próbą wykonania nieudanego wywołania. Przykładem użycia interfejsu Reseller API w jednym wątku jest odczekanie 5 sekund i ponowienie nieudanego wywołania. Jeśli żądanie zostanie zrealizowane, powtórz ten wzorzec w przypadku pozostałych wątków. Jeśli druga prośba nie zostanie zrealizowana, aplikacja powinna zmniejszyć częstotliwość próśb, dopóki nie zostanie zrealizowana. Możesz na przykład zwiększyć początkowe 5-sekundowe opóźnienie do 10 sekund i ponownie spróbować wykonać połączenie, które się nie powiodło. Określ też limit ponownych prób.
Na przykład ponów żądanie 5–7 razy z różnymi czasami opóźnienia, zanim aplikacja zwróci użytkownikowi błąd.
Limity
Kategorie limitów interfejsu API |
Limity |
Subskrypcja purchaseOrderId |
Ta właściwość akceptuje maksymalnie 80 znaków w formacie zwykłego tekstu. |
Subskrypcja maxResults |
maxResults ciąg zapytania może zawierać od 1 do 100 wyników.
Domyślnie wyświetlanych jest 20 wyników.
|
Token przeniesienia (customerAuthToken ) |
Token przeniesienia klienta jest ważny przez 30 dni od wygenerowania.
|
Maksymalna liczba użytkowników klienta |
W zależności od umowy maksymalna liczba użytkowników może wynosić 50 tys. lub maksymalną liczbę określoną w umowie z odsprzedawcą.
|
Nieautoryzowane żądania |
Google nie zezwala na nieautoryzowane żądania do interfejsu Reseller API.
Żądanie jest uznawane za nieautoryzowane, jeśli nie podano tokena autoryzacji. Więcej informacji znajdziesz w artykule Uwierzytelnianie i autoryzacja.
|
Inne rodzaje limitów
Inne rodzaje limitów |
Ograniczenia i wytyczne |
Format danych |
Dane są w formacie JavaScript Object Notation JSON.
JSON to popularny format internetowy, który umożliwia reprezentowanie dowolnych struktur danych. JSON to format tekstowy, który jest całkowicie niezależny od języka, ale wykorzystuje konwencje znane programistom języków z rodziny C, w tym C, C++, C#, Java, JavaScript, Perl i Python.
|
Format godziny |
Wszystkie daty i godziny są podawane w konwerterze czasu uniksowego w milisekundach. Ten format dotyczy wartości czasu utworzenia subskrypcji, czasu rozpoczęcia i zakończenia zobowiązania w ramach abonamentu oraz czasu zakończenia 30-dniowego bezpłatnego okresu próbnego.
|
O ile nie stwierdzono inaczej, treść tej strony jest objęta licencją Creative Commons – uznanie autorstwa 4.0, a fragmenty kodu są dostępne na licencji Apache 2.0. Szczegółowe informacje na ten temat zawierają zasady dotyczące witryny Google Developers. Java jest zastrzeżonym znakiem towarowym firmy Oracle i jej podmiotów stowarzyszonych.
Ostatnia aktualizacja: 2025-08-29 UTC.
[null,null,["Ostatnia aktualizacja: 2025-08-29 UTC."],[],[],null,["# Usage limits and quotas\n\n\u003cbr /\u003e\n\nLimits and quotas protect the Google infrastructure from an automated process\nthat uses the Reseller API in an inappropriate way. Excessive requests from\nan API might result from a harmless typo, or might result from an inefficiently\ndesigned system that makes needless API calls. Regardless of the cause,\nblocking traffic from a specific source when it reaches a certain level is\nnecessary for the overall health of the Google Workspace system. It ensures that\none developer's actions can not negatively impact the larger community.\n\nAPI request failures\n--------------------\n\nIn the unlikely event that your API request fails, your application receives an\nHTTP status code response. A status code of `403` has error\ninformation about incorrect input and an HTTP status code of `503`\nhas error information indicating which API quotas have been exceeded. These\nresponses let your custom application detect these errors and take appropriate\naction.\n\nTime-based errors\n-----------------\n\nFor all errors that are time based (maximum of N things for N seconds per\nthread), especially the `503` status code errors, we recommend that\nyour code catch the exception and by using\nan\n[exponential backoff](https://en.wikipedia.org/wiki/Exponential_backoff)\nalgorithm, wait for a small delay before retrying the failed call. A\nReseller API example for one thread\nis to wait 5 seconds and retry the failed call. If the request is successful,\nrepeat this pattern for the other threads. If the second request isn't\nsuccessful, your application should scale back on the frequency of the request\nuntil a call is successful. For example, increase the initial 5 second delay\nto 10 seconds and retry your failed call again. Also, decide on a retry limit.\nFor example retry a request 5 to 7 times with different delay times before\nyour application returns an error to the user.\n\nLimits\n------\n\n| API limit categories | Limits |\n|----------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| Subscription `purchaseOrderId` | This property accepts up to 80 plain text characters. |\n| Subscription `maxResults` | The `maxResults` query string can be 1 - 100 results. The default is 20 results. |\n| Transfer Token (`customerAuthToken`) | A customer's transfer token is valid for 30 days after it's generated. |\n| Maximum number of users for a customer | Depending on your contract, the maximum number of users can either be 50,000 or the maximum defined in your reseller contract. |\n| Unauthorized requests | Google doesn't allow unauthorized requests to the Reseller API. A request is considered unauthorized if no authorization token is provided. For more information, see [Learn about authentication \\& authorization](/workspace/guides/auth-overview). |\n\nOther types of limits\n---------------------\n\n| Other types of limits | Limitations and guidelines |\n|-----------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| Data format | The data format is in the JavaScript Object Notation [JSON](https://wikipedia.org/wiki/JSON). \u003cbr /\u003e \u003cbr /\u003e JSON is a common internet format that provides a method of representing arbitrary data structures. JSON is a text format that is completely language-independent but uses conventions that are familiar to programmers of the C-family of languages, including C, C++, C#, Java, JavaScript, Perl, and Python. |\n| Time format | All date times are in the [Epoch converter](https://www.epochconverter.com/) in milliseconds. This format applies to the values for the subscription creation time, a plan's commitment start and end times, and a 30 day free trial's end time. |"]]