Ограничения и квоты API

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

Тип запроса, ограничение и код ошибки
Операции с уровнем доступа Explorer 2880 операций API в день с производственными учетными записями.
15 000 операций API в день с тестовыми учетными записями
RESOURCE_EXHAUSTED
Операции с базовым уровнем доступа. Ежедневно выполняется 15 000 операций с API как для тестовых, так и для производственных учетных записей. RESOURCE_EXHAUSTED
Запросы на изменение 10 000 операций на один запрос TOO_MANY_MUTATE_OPERATIONS
Запросы в службу планирования 1 QPS RESOURCE_EXHAUSTED
Запросы на услугу конвертации и загрузки 2000 конверсий на запрос TOO_MANY_CONVERSIONS_IN_REQUEST
Запросы на обслуживание по выставлению счетов и управлению бюджетом 1 операция на каждый запрос на изменение TOO_MANY_MUTATE_OPERATIONS

Ежедневные лимиты операций API

Ежедневные лимиты использования API основаны на количестве операций API , выполняемых с использованием одного токена разработчика. Операции API представляют собой общую сумму запросов GET и операций мутации. Лимиты на ежедневные операции API зависят от уровня доступа токена разработчика. В руководстве «Уровни доступа и допустимое использование» указаны конкретные лимиты операций API для каждого уровня доступа.

Запросы, нарушающие эти ограничения, отклоняются с ошибкой: RESOURCE_EXHAUSTED .

ограничения gRPC

Все клиентские библиотеки Google Ads API используют gRPC для генерации запросов и ответов. По умолчанию размер сообщения в gRPC составляет 4 МБ, но наши клиентские библиотеки устанавливают максимальный размер сообщения в 64 МБ для повышения эффективности.

Размер ответов не должен превышать этот лимит. Например, поисковый запрос, содержащий много полей, может сгенерировать ответ размером более 64 МБ. Чтобы избежать этого ограничения, можно уменьшить количество выбранных полей или использовать потоковую обработку . Для операций изменения (mutate) отправляйте меньше операций за запрос.

Запросы, нарушающие это ограничение, не вызовут ошибку GoogleAdsError , но вызовут ошибку gRPC 429 Resource Exhausted . См. список кодов и сообщений об ошибках gRPC .

Запросы на изменение

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

Запросы, нарушающие это ограничение, отклоняются с ошибкой: TOO_MANY_MUTATE_OPERATIONS .

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

Поисковые запросы

Запрос Search или SearchStream засчитывается как одна операция в рамках ежедневной квоты пользователя. Один запрос SearchStream засчитывается как одна операция API независимо от количества пакетов.

Запросы с постраничной разбивкой

Запросы с постраничной навигацией (например, запросы, содержащие действительный токен next_page_token ) не учитываются в ежедневной квоте пользователя на операции. Однако запросы с постраничной навигацией, содержащие просроченный или недействительный токен страницы, вызовут исключение и будут учитываться в ежедневной квоте на операции.

Для получения более подробной информации о постраничной навигации см. раздел «Постраничная навигация по результатам» .

Другие типы запросов

Запрос, не являющийся запросом типа Get , Mutate , Search или SearchStream , засчитывается как одна операция в рамках ежедневной квоты пользователя на операции.

Вот несколько примеров таких запросов:

Запросы, возвращающие исключения API.

Запросы, отклоненные с ошибкой GoogleAdsFailure всё равно учитываются в суточной квоте пользователя на количество операций.

Запросы, которые завершаются неудачей, но не возвращают ошибку GoogleAdsFailure , например, из-за ошибки на уровне сети, не будут учитываться в ежедневной квоте пользователя, поскольку эти запросы никогда не достигнут сервиса. Примером может служить сбой сетевого соединения.

услуга планирования ключевых слов

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

Учитывайте эти ограничения при составлении плана ключевых слов.

Ключевое слово План Объект Максимальное число
KeywordPlan per account 10 000
KeywordPlanAdGroup per KeywordPlan 200
KeywordPlanAdGroupKeyword per KeywordPlan 10 000
KeywordPlanCampaignKeyword (минус-слова) 1000
KeywordPlanCampaign по каждому KeywordPlan 1

Сервис анализа целевой аудитории

Для следующих методов в рамках AudienceInsightsService действуют определенные квоты.

Сервис загрузки конвертированных файлов

Сервис загрузки корректировок конвертации

Правила преобразования значений

  • Ограничение: не более 100 000 правил расчета стоимости конверсии на один аккаунт.

    Запросы, нарушающие это ограничение, отклоняются с ошибкой ResourceCountLimitExceededError.ACCOUNT_LIMIT .

Если для учетной записи уже существует набор правил ConversionValueRuleSet с attachment_type CUSTOMER , необходимо добавить в этот набор все новые правила преобразования значений, чтобы они стали активными. Если такого набора правил преобразования значений не существует, необходимо создать его и добавить в него свои правила преобразования значений, как описано в разделе «Создание наборов правил» .

Услуги по выставлению счетов и планированию бюджета

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

    Запросы, нарушающие это ограничение, отклоняются с ошибкой: MUTATE_NOT_ALLOWED .

  • Для запросов на изменение допускается только 1 операция.

    Запросы, нарушающие это ограничение, отклоняются с ошибкой: TOO_MANY_MUTATE_OPERATIONS .

  • Между изменениями бюджета в одном и том же аккаунте следует выжидать не менее 12 часов. Внесение изменений до истечения 12 часов может привести к необратимым сбоям, которые может устранить только представитель вашего аккаунта Google Ads.

Приглашения к открытию клиентских аккаунтов

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

  • Пользователи не могут получить более одного ожидающего приглашения для одной и той же учетной записи клиента. Если будет отправлен последующий запрос на отправку приглашения пользователю, у которого уже есть ожидающее приглашение, будет возвращена следующая ошибка: ACCESS_INVITATION_ERROR_EMAIL_ADDRESS_ALREADY_HAS_PENDING_INVITATION .

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

Данные пользователя

Управление пользовательскими данными осуществляется с помощью UserDataService и OfflineUserDataJobService . В каждой операции создания или удаления UserData набор user_identifiers должен соответствовать конкретному пользователю.

Для обеспечения этого, если в наборе UserData содержится более 20 user_identifiers , возвращается ошибка OfflineUserDataJobError.TOO_MANY_USER_IDENTIFIERS или UserDataError.TOO_MANY_USER_IDENTIFIERS .

Вам разрешено использовать до 100 000 идентификаторов пользователей независимо от количества операций.

Другие типы ограничений

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

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

При выполнении GAQL- запроса максимальное количество элементов в предложении IN составляет 20 000. Если это значение превышено, возвращается ошибка FILTER_HAS_TOO_MANY_VALUES .