Vincule cuentas de productos

La API de Google Ads admite la vinculación de cuentas de Google Ads a otras cuentas de productos. En esta guía, se explica cómo usar la API para vincular tus cuentas.

Cuando se vincula una cuenta de Google Ads a otra cuenta de producto, existen dos formas diferentes en las que se puede realizar la vinculación.

Flujo de invitación

El flujo de invitación se usa cuando tienes acceso de administrador a la cuenta de Google Ads, pero no a la cuenta del producto. Este flujo funciona en dos situaciones:

  1. Quieres vincular las dos cuentas y crear una invitación para un administrador de la cuenta de productos. El administrador de la cuenta de productos acepta la invitación para completar el proceso de vinculación de la cuenta.
  2. El administrador de la cuenta del producto desea vincular las dos cuentas, pero no tiene acceso a la cuenta de Google Ads. El administrador de la cuenta del producto crea una invitación, y tú la aceptas y completas el proceso de vinculación.

En esta situación, se usan los siguientes métodos:

Situación Acción Observaciones
Situación 1 Cómo crear una invitación Usa el método ProductLinkInvitationService.CreateProductLinkInvitation para crear una invitación. No se debe establecer el status del ProductLinkInvitation. El servidor de la API de Google Ads establecerá este valor en REQUESTED cuando se complete correctamente la llamada a la API.
Cómo inspeccionar el estado de una invitación Usa GoogleAdsService.Search o GoogleAdsService.SearchStream para consultar el recurso product_link_invitation y, luego, inspeccionar su estado.
Situación 2 Recupera una invitación Usa GoogleAdsService.Search o GoogleAdsService.SearchStream para consultar el recurso product_link_invitation. Filtra por status = PENDING_APPROVAL para aceptar o rechazar una invitación pendiente.
Cómo aceptar o rechazar una invitación Usa el método ProductLinkInvitationService.UpdateProductLinkInvitation para actualizar el estado de ProductLinkInvitation a ACCEPTED o REJECTED.
Cómo revocar una invitación Usa el método ProductLinkInvitationService.RemoveProductLinkInvitation para revocar un ProductLinkInvitation existente.

En este flujo de trabajo, se pueden generar los siguientes errores comunes:

Código de error Explicación
ProductLinkInvitationError.PERMISSION_DENIED El cliente no tiene permiso para realizar esta acción.
ProductLinkError.NO_INVITATION_REQUIRED No se pudo crear una invitación, ya que el usuario ya tiene acceso de administrador a la cuenta invitada. El usuario debe usar ProductLinkService para crear directamente un vínculo activo.

Flujo de vinculación directa

El flujo de vinculación directa se usa cuando tienes acceso de administrador tanto a la cuenta de Google Ads como a la cuenta del producto. En este caso, vinculas directamente la cuenta de Google Ads a la cuenta del producto en lugar de enviar una invitación.

En esta situación, se usan los siguientes métodos:

Acción Observaciones
Cómo crear un vínculo activo Usa ProductLinkService.createProductLink para crear un ProductLink.
Cómo inhabilitar un vínculo activo Usa ProductLinkService.removeProductLink para quitar un ProductLink activo.
Recupera vínculos activos Usa GoogleAdsService.Search o GoogleAdsService.SearchStream para consultar el recurso product_link.

En este flujo de trabajo, se pueden generar los siguientes errores comunes:

Código de error Explicación
ProductLinkError.CREATION_NOT_PERMITTED Se intentó vincular la cuenta con el flujo de vínculos directos, pero no se admite debido a la falta de permisos. En su lugar, el usuario debe usar ProductLinkInvitationService para realizar el flujo de invitación.
ProductLinkError.INVITATION_EXISTS No se puede crear un vínculo porque ya existe una invitación pendiente.

Cambios en AccountLinkService

Si utilizas AccountLinkService para vincular una cuenta de Google Ads a otra cuenta de producto, debes migrar tu aplicación existente a uno de los flujos de trabajo mencionados anteriormente. Para los siguientes tipos de vínculos, migra de AccountLinkService a ProductLinkService:

  • GoogleAdsIdentifier
  • MerchantCenterIdentifier
  • AdvertisingPartnerIdentifier

Para ThirdPartyAppAnalyticsLinkIdentifier, sigue usando AccountLinkService.