Лимиты на использование

Поскольку API Google Drive является общедоступным сервисом, мы применяем квоты и ограничения, чтобы обеспечить его справедливое использование всеми пользователями и защитить общую производительность системы Google Workspace.

Ограничения определяются в единицах квоты — абстрактной единице измерения, представляющей собой использование ресурсов Google Drive.

Квоты API для управления

Вводятся три типа квот:

  • В минуту на проект: это количество квотных единиц, которые ваш проект Google Cloud может использовать за одну минуту.

  • Поминутно на пользователя на проект: это количество квотных единиц, которые может использовать любой конкретный пользователь в вашем облачном проекте. Это ограничение призвано помочь вам обеспечить справедливое распределение использования между вашими пользователями.

  • За день на проект : Этот параметр определяет максимальное количество байтов, которое ваш проект Google Cloud может передать в течение 24 часов до начала начисления платы.

В следующей таблице подробно указаны эти ограничения:

Тип ограничения использования Лимит
Поминутно на проект 1 000 000 квотных единиц
Поминутная оплата за пользователя за проект 325 000 квотных единиц
За день на проект 1 ТБ

Если вы превысите квоту, вы получите ответ с кодом состояния HTTP 403: User rate limit exceeded . Дополнительные проверки лимита запросов в бэкэнде Google Drive также могут привести к ответу 429: Rate limit exceeded . В этом случае следует использовать алгоритм экспоненциальной задержки и повторить попытку позже.

Порог ежедневного выставления счетов

Этот лимит на один проект в день определяет максимальное количество квотных единиц, которые ваш проект Google Cloud может использовать в течение 24 часов до начала начисления платы.

Использование сервиса ниже этого порога не влечет за собой дополнительных расходов, и с вашего аккаунта Google Cloud не взимается плата. Полная информация о выставлении счетов будет предоставлена ​​позже в 2026 году, при этом изменения вступят в силу не менее чем за 90 дней.

Вы не можете запросить увеличение этого суточного лимита.

В следующей таблице подробно указаны ограничения:

Тип порогового значения Лимит
За день на проект 400 000 000 квотных единиц

Для получения дополнительной информации см. стандартизированную модель Google Workspace для инструментов и API агентов .

Использование квот для каждого метода

Количество единиц квоты, потребляемых за один запрос, зависит от вызываемого метода. В следующей таблице показано использование единиц квоты для каждого метода:

Действие квотных единиц
Чтение элементов, например, файлов с помощью files.get 5
Список элементов, например, files.list 100
Загрузка файлов, например files.download 200
Редактировать элементы, например, files.update 50
Другие действия, такие как files.generateIds 5

Дополнительные ограничения

При работе с Drive API действуют следующие ограничения:

  • Пользователи Google Workspace могут загружать не более 750 ГБ данных в день между «Моим диском» и всеми общими дисками; это ограничение также распространяется на копии.

  • Пользователи, достигшие лимита в 750 ГБ или загрузившие файл размером более 750 ГБ, не смогут загружать или копировать дополнительные файлы в течение 24 часов.

  • Максимальный размер файла, который пользователи могут загрузить, составляет 5 ТБ; загрузка завершается только для первого файла, превышающего этот лимит. Максимальный размер файла, который пользователи могут скопировать, составляет 750 ГБ.

  • Уведомления, доставленные на адрес, указанный при открытии канала уведомлений, не учитываются в лимите вашей квоты. Однако вызовы методов changes.watch , channels.stop и files.watch учитываются в лимите вашей квоты.

  • При условии соблюдения поминутных лимитов, количество запросов, которые вы можете отправить в день, не ограничено.

  • В зависимости от типа вашей учетной записи Google Workspace, существуют дополнительные ограничения на объем хранилища в Google Диске .

Устранение ошибок, связанных с временными квотами.

Для всех ошибок, связанных со временем (максимум N запросов за X минут), мы рекомендуем, чтобы ваш код перехватывал исключение и использовал усеченную экспоненциальную задержку , чтобы ваши устройства не создавали чрезмерную нагрузку.

Экспоненциальная задержка — это стандартная стратегия обработки ошибок в сетевых приложениях. Алгоритм экспоненциальной задержки повторяет запросы, используя экспоненциально увеличивающиеся промежутки времени ожидания между запросами, вплоть до максимального времени задержки. Если запросы по-прежнему не удаются, важно, чтобы задержки между запросами увеличивались со временем, пока запрос не будет успешно выполнен.

Пример алгоритма

Алгоритм экспоненциальной задержки повторяет запросы в экспоненциальном порядке, увеличивая время ожидания между повторными попытками до максимального значения задержки. Например:

  1. Отправьте запрос к API Google Drive.
  2. Если запрос не удался, подождите 1 + random_number_milliseconds и повторите запрос.
  3. Если запрос не удался, подождите 2 + random_number_milliseconds и повторите запрос.
  4. Если запрос не удался, подождите 4 + random_number_milliseconds и повторите запрос.
  5. И так далее, вплоть до maximum_backoff времени задержки.
  6. Продолжайте ждать и повторять попытки до определенного максимального количества раз, но не увеличивайте интервал ожидания между повторными попытками.

где:

  • Время ожидания составляет min(((2^n)+random_number_milliseconds), maximum_backoff) , при этом n увеличивается на 1 для каждой итерации (запроса).
  • random_number_milliseconds — это случайное число миллисекунд, меньшее или равное 1000. Это помогает избежать ситуаций, когда множество клиентов синхронизированы из-за какой-либо ситуации и все они одновременно повторяют запрос, отправляя его синхронизированными волнами. Значение random_number_milliseconds пересчитывается после каждого повторного запроса.
  • maximum_backoff обычно составляет 32 или 64 секунды. Подходящее значение зависит от конкретного случая использования.

Клиент может продолжать попытки после достижения значения maximum_backoff time. После этого значения увеличение backoff time не требуется. Например, если клиент использует значение maximum_backoff time равное 64 секундам, то после достижения этого значения он может повторять попытки каждые 64 секунды. В какой-то момент клиентам следует запретить бесконечные повторные попытки.

Время ожидания между повторными попытками и количество повторных попыток зависят от сценария использования и условий сети.

Цены

Все стандартные функции API Google Drive доступны без дополнительной платы. Превышение лимитов запросов, установленных в рамках квоты, по плану приведет к начислению платы за использование вашего платежного аккаунта Google Cloud в конце 2026 года. Для получения дополнительной информации см. стандартизированную модель Google Workspace для инструментов и API агентов .

Запросить увеличение квоты

В зависимости от объема используемых ресурсов вашего проекта, вам может потребоваться запросить корректировку квоты. Вызовы API, выполняемые сервисным аккаунтом, считаются использованием одного аккаунта. Подача заявки на корректировку квоты не гарантирует ее одобрения. Запросы на корректировку квоты, которые значительно увеличат ее значение, могут обрабатываться дольше.

Не все проекты имеют одинаковые квоты. По мере того, как вы будете все больше использовать Google Cloud, значения ваших квот могут потребовать увеличения. Если вы ожидаете значительного увеличения использования в будущем, вы можете заблаговременно запросить корректировку квот на странице «Квоты и системные ограничения» в консоли Google Cloud.

Для получения более подробной информации ознакомьтесь со следующими ресурсами: