Распространенные ошибки

В этом руководстве перечислены распространенные ошибки API и приведены стратегии их предотвращения и обработки.

Полный список всех типов ошибок приведен в справочнике по ошибкам Google Ads API. Если вам нужна дополнительная помощь, задайте вопрос на форуме Google Ads API.

google.rpc.ErrorInfo

ACCESS_TOKEN_SCOPE_INSUFFICIENT
СводкаУ токена доступа OAuth 2.0 нет необходимых областей действия.
Основные причины Запрос отклонен, поскольку предоставленный токен доступа не включает область действия OAuth 2.0 Google Ads API.
Как обрабатывать Убедитесь, что у токена доступа есть необходимые области действия. Чаще всего эта ошибка возникает, когда вы повторно используете существующий токен доступа, созданный с другим набором областей OAuth. Пример того, как создать новый токен доступа с нужными областями действия, приведен в разделе Параметры авторизации OAuth.
Советы по предотвращению Убедитесь, что у токена доступа есть необходимые области действия. Повторно аутентифицируйте пользователя с необходимыми областями действия, чтобы получить доступ с нужными областями действия. Если ваше приложение использует несколько областей OAuth, вам может понадобиться реализовать детализированные разрешения OAuth.

google.auth.exceptions.RefreshError

invalid_grant
СводкаСрок действия токена истек или он был отозван.
Основные причины Проекту Google Cloud Platform с окном запроса доступа OAuth, настроенным для внешнего типа пользователя и статусом публикации Testing, выдается токен обновления со сроком действия 7 дней.
Как поступить Статус публикации вашего проекта Google – Testing, поэтому срок действия токена обновления истекает каждые семь дней и возникает ошибка invalid_grant. Перейдите в Google API Console и откройте окно запроса доступа OAuth. Затем измените статус публикации на In production, чтобы токен обновления не истек через семь дней.
Советы по предотвращению Подробнее о непроверенных приложениях…

AuthenticationError

CLIENT_CUSTOMER_ID_INVALID
СводкаИдентификатор клиента не является числом.
Основные причины Используется неправильный идентификатор клиента.
Как поступить –
Советы по предотвращению Например, вместо 123-456-7890 нужно указать 1234567890. Подробности – в статье Начало работы.
CLIENT_CUSTOMER_ID_IS_REQUIRED
СводкаИдентификатор клиента не указан в заголовке HTTP.
Основные причины Идентификатор клиента не указан в заголовке HTTP.
Как поступить –
Советы по предотвращению Идентификатор клиента необходим для всех вызовов, поэтому убедитесь, что вы указали его в заголовке HTTP. Рекомендуем использовать наши клиентские библиотеки, которые выполняют эту задачу автоматически.
CUSTOMER_NOT_FOUND
СводкаНе найден аккаунт, соответствующий идентификатору клиента, указанному в заголовке.
Основные причины Попытка войти в аккаунт, который был создан недавно и ещё не зарегистрирован в системе.
Как поступить Сначала подождите пять минут, а затем повторяйте попытку каждые 30 сек.
Советы по предотвращению Подождите несколько минут после создания аккаунта, прежде чем отправлять для него запросы.
СводкаТокен доступа в заголовке запроса недействителен или просрочен.
Основные причины Токен доступа стал недействителен.
Как поступить Запросите новый токен. Если вы используете одну из наших клиентских библиотек, ознакомьтесь с документацией по обновлению токена.
Советы по предотвращению Храните и используйте токены доступа до истечения срока их действия.
NOT_ADS_USER
СводкаАккаунт Google, использованный для создания токена доступа, не связан ни с одним аккаунтом Google Рекламы.
Основные причины Введенные логин и пароль относятся к аккаунту Google, с которым не связан аккаунт Google Реклама.
Как обрабатывать При использовании OAuth убедитесь, что вы вошли в действительный аккаунт Google Рекламы (обычно аккаунт менеджера). Вы также можете предоставить аккаунту Google доступ к существующему аккаунту Google Рекламы. Для этого войдите в управляющий аккаунт, выберите нужный клиентский или управляющий аккаунт, перейдите к разделу Tools and Settings > Access and security и добавьте адрес электронной почты аккаунта Google.
Советы по предотвращению –
OAUTH_TOKEN_INVALID
СводкаТокен доступа OAuth в заголовке недействителен.
Основные причины Вы указали в заголовке HTTP недопустимый токен доступа.
Как обрабатывать –
Советы по предотвращению Убедитесь, что вы передаете правильный токен доступа, связанный с вашим аккаунтом. Иногда его путают с токенами обновления и кодами авторизации. Если вам нужны учетные данные, с помощью которых можно получить доступ ко всем клиентским аккаунтам, подчиненным управляющему, получите токен обновления для управляющего аккаунта. Подробная информация приведена в руководстве по аутентификации пользователей.

AuthorizationError

CLOUD_PROJECT_NOT_APPROVED_FOR_PRODUCTION
СводкаОблачный проект Google Cloud имеет только тестовый доступ и не может использоваться для доступа к рабочим аккаунтам.
Основные причины Для отправки запроса в рабочий аккаунт Google Рекламы использовался облачный проект Google Cloud с тестовым уровнем доступа. В API версии 24 и более ранних это условие возвращает AuthorizationError.ACTION_NOT_PERMITTED.
Как поступить Если вы проводите тестирование, убедитесь, что запрос направлен в тестовый аккаунт. Если вы хотите получить доступ к рабочему аккаунту Google Рекламы, проверьте уровень доступа облачного проекта Google Cloud на обзорной странице Google Ads API и повысьте уровень доступа проекта до Explorer, базового или стандартного доступа.
Советы по предотвращению –
CUSTOMER_NOT_ENABLED
СводкаНевозможно получить доступ к аккаунту клиента, так как он неактивен.
Основные причины Это происходит, если регистрация аккаунта клиента не была завершена или он был деактивирован.
Как обрабатывать Войдите в интерфейс Google Рекламы и убедитесь, что вы завершили регистрацию аккаунта. Если аккаунт деактивирован, узнайте, как повторно активировать отмененный аккаунт Google Рекламы.
Советы по предотвращению Вы можете заранее проверить, деактивирован ли аккаунт клиента, посмотрев, есть ли у него статус CANCELLED.
USER_PERMISSION_DENIED
СводкаУ авторизованного клиента нет доступа к управляемому клиенту.
Основные причины Выполняется аутентификация пользователя, у которого есть доступ к управляющему аккаунту, но в запросе не указан заголовок login-customer-id.
Как обрабатывать –
Советы по предотвращению Укажите login-customer-id в качестве идентификатора управляющего аккаунта без дефисов (-). Клиентские библиотеки поддерживают эту функцию.