Ограничения и квоты использования
Оптимизируйте свои подборки
Сохраняйте и классифицируйте контент в соответствии со своими настройками.
Лимиты и квоты защищают инфраструктуру Google от автоматизированных процессов, использующих API реселлера ненадлежащим образом. Избыточное количество запросов к API может быть результатом безобидной опечатки или неэффективно спроектированной системы, которая выполняет ненужные вызовы API. Независимо от причины, блокировка трафика из определённого источника при достижении определённого уровня необходима для общей работоспособности системы Google Workspace. Это гарантирует, что действия одного разработчика не смогут негативно повлиять на всё сообщество.
Ошибки запросов API
В маловероятном случае сбоя вашего API-запроса ваше приложение получит ответ с кодом статуса HTTP. Код статуса 403
содержит информацию об ошибке, связанной с некорректными входными данными, а код статуса HTTP 503
содержит информацию об ошибке, указывающую на превышение квот API. Эти ответы позволяют вашему приложению обнаруживать эти ошибки и предпринимать соответствующие действия.
Ошибки, связанные со временем
Для всех ошибок, основанных на времени (максимум N событий в течение N секунд на поток), особенно ошибок с кодом состояния 503
, мы рекомендуем, чтобы ваш код перехватывал исключение и, используя алгоритм экспоненциальной задержки , ждал небольшую задержку перед повторной попыткой неудавшегося вызова. Пример API реселлера для одного потока: ожидание 5 секунд и повторная попытка неудавшегося вызова. Если запрос успешен, повторите этот шаблон для других потоков. Если второй запрос не успешен, ваше приложение должно уменьшить частоту запросов до тех пор, пока вызов не будет успешным. Например, увеличьте начальную задержку с 5 секунд до 10 секунд и повторите неудавшийся вызов снова. Также определите ограничение на количество повторных попыток. Например, повторите запрос от 5 до 7 раз с разным временем задержки, прежде чем ваше приложение вернет ошибку пользователю.
Пределы
Категории ограничений API | Пределы |
---|
Подписка purchaseOrderId | Это свойство принимает до 80 символов обычного текста. |
Подписка maxResults | Строка запроса maxResults может содержать от 1 до 100 результатов. Значение по умолчанию — 20 результатов. |
Токен передачи ( customerAuthToken ) | Токен перевода клиента действителен в течение 30 дней после его создания. |
Максимальное количество пользователей для клиента | В зависимости от вашего контракта максимальное количество пользователей может составлять либо 50 000, либо максимальное количество, указанное в вашем контракте с реселлером. |
Несанкционированные запросы | Google не допускает неавторизованные запросы к API реселлера. Запрос считается неавторизованным, если токен авторизации не предоставлен. Подробнее см. в разделе «Узнать об аутентификации и авторизации» . |
Другие типы ограничений
Другие типы ограничений | Ограничения и рекомендации |
---|
Формат данных | Формат данных соответствует нотации объектов JavaScript JSON .
JSON — распространённый интернет-формат, предоставляющий способ представления произвольных структур данных. JSON — это текстовый формат, который полностью независим от языка, но использует соглашения, знакомые программистам языков семейства C, включая C, C++, C#, Java, JavaScript, Perl и Python. |
Формат времени | Все даты и время в конвертере эпох указаны в миллисекундах. Этот формат применяется к значениям времени создания подписки, времени начала и окончания действия обязательств по плану, а также времени окончания 30-дневного бесплатного пробного периода. |
Если не указано иное, контент на этой странице предоставляется по лицензии Creative Commons "С указанием авторства 4.0", а примеры кода – по лицензии Apache 2.0. Подробнее об этом написано в правилах сайта. Java – это зарегистрированный товарный знак корпорации Oracle и ее аффилированных лиц.
Последнее обновление: 2025-08-29 UTC.
[null,null,["Последнее обновление: 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. |"]]