API Google Ads поддерживает связывание аккаунтов Google Ads с аккаунтами других продуктов. В этом руководстве объясняется, как использовать API для связывания аккаунтов.
Способы связывания аккаунтов
При связывании аккаунта Google Ads с другим аккаунтом продукта существует два разных способа связывания.
Поток приглашений
Приглашение используется, если у вас есть доступ администратора к аккаунту Google Ads, но нет доступа к аккаунту продукта. Этот процесс работает в двух сценариях:
- Вы хотите связать две учётные записи и создать приглашение для администратора учётной записи продукта. Администратор учётной записи продукта принимает приглашение, чтобы завершить процесс связывания учётных записей.
- Администратор аккаунта продукта хочет связать два аккаунта, но у него нет доступа к аккаунту Google Рекламы. Администратор аккаунта продукта создаёт приглашение, которое вы принимаете и завершаете процесс связывания.
В этом сценарии используются следующие методы:
| Сценарий | Действие | Замечания | 
|---|---|---|
| Сценарий 1 | Создать приглашение | Используйте метод ProductLinkInvitationService.CreateProductLinkInvitationдля создания приглашения.statusProductLinkInvitationне должен быть установлен; сервер API Google Ads установит его вREQUESTEDпосле успешного завершения вызова API. | 
| Проверить статус приглашения | Используйте GoogleAdsService.SearchилиGoogleAdsService.SearchStreamдля запроса ресурсаproduct_link_invitationи проверки его статуса. | |
| Сценарий 2 | Получить приглашение | Используйте GoogleAdsService.SearchилиGoogleAdsService.SearchStreamдля запроса ресурсаproduct_link_invitation. Фильтр поstatus= PENDING_APPROVALпозволяет принять или отклонить ожидающее приглашение. | 
| Принять или отклонить приглашение | Используйте метод ProductLinkInvitationService.UpdateProductLinkInvitationдля обновления статусаProductLinkInvitationнаACCEPTEDилиREJECTED. | |
| Отозвать приглашение | Используйте метод ProductLinkInvitationService.RemoveProductLinkInvitationдля отзыва существующегоProductLinkInvitation. | 
В этом рабочем процессе могут быть допущены следующие распространенные ошибки:
| Код ошибки | Объяснение | 
|---|---|
| ProductLinkInvitationError.PERMISSION_DENIED | У клиента нет разрешения на выполнение этого действия. | 
| ProductLinkError.NO_INVITATION_REQUIRED | Не удалось создать приглашение, так как у пользователя уже есть права администратора к приглашённой учётной записи. Пользователю следует использовать ProductLinkService для создания активной ссылки. | 
Прямой поток ссылок
Прямое связывание используется, когда у вас есть доступ администратора как к аккаунту Google Ads, так и к аккаунту продукта. В этом случае вы напрямую связываете аккаунт Google Ads с аккаунтом продукта, а не отправляете приглашение.
В этом сценарии используются следующие методы:
| Действие | Замечания | 
|---|---|
| Создать активную ссылку | Используйте ProductLinkService.createProductLinkдля созданияProductLink. | 
| Отключить активную ссылку | Используйте ProductLinkService.removeProductLinkдля удаления активнойProductLink. | 
| Получить активные ссылки | Используйте GoogleAdsService.SearchилиGoogleAdsService.SearchStreamдля запроса ресурсаproduct_link. | 
В этом рабочем процессе могут возникнуть следующие распространенные ошибки:
| Код ошибки | Объяснение | 
|---|---|
| ProductLinkError.CREATION_NOT_PERMITTED | Была предпринята попытка привязать аккаунт с помощью прямого подключения, но эта функция не поддерживается из-за отсутствия разрешений. Пользователю следует использовать ProductLinkInvitationServiceдля отправки приглашения. | 
| ProductLinkError.INVITATION_EXISTS | Ссылка не может быть создана, так как уже существует ожидающее приглашение. | 
 Изменения в AccountLinkService
 Если вы используете AccountLinkService для привязки аккаунта Google Ads к аккаунту другого продукта, вам необходимо перенести существующее приложение в один из перечисленных выше рабочих процессов. Для следующих типов привязки выполните миграцию с AccountLinkService и используйте ProductLinkService :
-  GoogleAdsIdentifier
-  MerchantCenterIdentifier
-  AdvertisingPartnerIdentifier
 Для ThirdPartyAppAnalyticsLinkIdentifier продолжайте использовать AccountLinkService .