Conector de Google Ads

Conecta Google Ads con Brevo a través de Tajo para sincronizar audiencias publicitarias, importar datos de conversión y crear perfiles de cliente unificados que conecten la adquisición de pago con el marketing de ciclo de vida.

Resumen

PropiedadValor
PlataformaGoogle Ads
CategoríaMarketing
Complejidad de configuraciónAvanzada
Integración oficialNo
Datos sincronizadosCampañas, Audiencias, Conversiones, Clientes
Skills disponibles7

Funcionalidades

  • Sincronización de Customer Match - Sube listas de contactos de Brevo a Google Ads como audiencias Customer Match
  • Seguimiento de conversiones - Importa conversiones offline desde eventos de Brevo a Google Ads
  • Sincronización de audiencias - Sincronización bidireccional entre listas de Brevo y audiencias de Google Ads
  • Reporting de campañas - Integra los datos de rendimiento de campañas en los dashboards de Tajo
  • Seguimiento de GCLID - Captura los Google Click IDs para atribuir conversiones offline
  • Datos de Smart Bidding - Envía datos de valor de conversión a Google para optimizar las pujas
  • Sincronización de formularios de lead - Importa los envíos de formularios de Google Ads Lead Ads a contactos de Brevo

Requisitos previos

Antes de empezar, asegúrate de tener:

  1. Una cuenta de Google Ads con acceso a la API activado
  2. Un proyecto de Google Cloud con la API de Google Ads activada
  3. Credenciales OAuth 2.0 (Client ID y Client Secret)
  4. Un Developer Token de Google Ads (solicítalo en Google Ads API Center)
  5. Una cuenta de Brevo con acceso a la API
  6. Una cuenta de Tajo con credenciales de API

Autenticación

OAuth 2.0

La API de Google Ads utiliza OAuth 2.0 para la autenticación. Necesitas obtener un refresh token mediante el flujo de consentimiento OAuth.

Terminal window
# Required OAuth scopes
https://www.googleapis.com/auth/adwords

Developer Token

Se requiere un Developer Token para todas las peticiones a la API de Google Ads y debe ser aprobado por Google.

Terminal window
# Set up authentication headers
curl -X POST https://googleads.googleapis.com/v18/customers/1234567890/googleAds:search \
-H "Authorization: Bearer ACCESS_TOKEN" \
-H "developer-token: DEVELOPER_TOKEN" \
-H "login-customer-id: MANAGER_ACCOUNT_ID"

Configuración

Configuración básica

connectors:
google_ads:
enabled: true
developer_token: "your-developer-token"
oauth:
client_id: "your-client-id"
client_secret: "your-client-secret"
refresh_token: "your-refresh-token"
customer_id: "123-456-7890"
login_customer_id: "111-222-3333" # Manager account (optional)
# Data sync options
sync:
customer_match: true
conversions: true
campaigns: true
lead_forms: true
# Conversion tracking
conversions:
action_id: "123456789"
default_currency: "USD"

Configuración de Customer Match

Sube contactos de Brevo como audiencias de Google Ads:

customer_match:
enabled: true
lists:
- brevo_list_id: 5
audience_name: "All Customers"
match_type: "CONTACT_INFO"
- brevo_list_id: 7
audience_name: "High Value Customers"
match_type: "CONTACT_INFO"
# Data fields to match
match_fields:
- email
- phone
- first_name
- last_name
- country_code
- zip_code
# Sync schedule
schedule: "daily"
sync_mode: "mirror" # mirror, append, or remove

Importación de conversiones offline

conversion_import:
enabled: true
conversion_action: "purchase"
gclid_attribute: "GCLID" # Brevo attribute storing GCLID
conversion_events:
- brevo_event: "order_completed"
conversion_name: "Purchase"
value_field: "revenue"
- brevo_event: "subscription_created"
conversion_name: "Subscription"
value_field: "plan_value"

Endpoints de la API

MétodoEndpointDescripción
POST/v18/customers/{id}/googleAds:searchBuscar campañas y recursos (GAQL)
POST/v18/customers/{id}/googleAds:searchStreamTransmitir resultados de búsqueda
POST/v18/customers/{id}/offlineUserDataJobs:createCrear un job de subida a Customer Match
POST/v18/customers/{id}/conversionUploads:uploadClickConversionsSubir conversiones offline
POST/v18/customers/{id}/conversionUploads:uploadCallConversionsSubir conversiones de llamada
GET/v18/customers/{id}/campaignBudgetsObtener los presupuestos de campaña
POST/v18/customers/{id}/customerLists:mutateGestionar listas de clientes

Ejemplos de código

Inicializar el conector de Google Ads

import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({
apiKey: process.env.TAJO_API_KEY,
brevoApiKey: process.env.BREVO_API_KEY
});
// Connect Google Ads account
await tajo.connectors.connect('google-ads', {
developerToken: process.env.GOOGLE_ADS_DEV_TOKEN,
clientId: process.env.GOOGLE_OAUTH_CLIENT_ID,
clientSecret: process.env.GOOGLE_OAUTH_CLIENT_SECRET,
refreshToken: process.env.GOOGLE_OAUTH_REFRESH_TOKEN,
customerId: '123-456-7890'
});

Subir una audiencia Customer Match

// Sync a Brevo list to Google Ads Customer Match
await tajo.connectors.syncAudience('google-ads', {
brevoListId: 5,
audienceName: 'High Value Customers',
matchType: 'CONTACT_INFO',
syncMode: 'mirror'
});

Importar conversiones offline

// Upload offline conversions from Brevo order events
await tajo.connectors.uploadConversions('google-ads', {
conversionAction: 'customers/123456/conversionActions/789',
conversions: [
{
gclid: 'CjwKCAiA...',
conversionDateTime: '2024-01-15 10:30:00-05:00',
conversionValue: 89.99,
currencyCode: 'USD'
}
]
});

Consultar el rendimiento de campañas (GAQL)

// Query campaign metrics using Google Ads Query Language
const query = `
SELECT
campaign.name,
campaign.status,
metrics.impressions,
metrics.clicks,
metrics.cost_micros,
metrics.conversions
FROM campaign
WHERE segments.date DURING LAST_30_DAYS
ORDER BY metrics.impressions DESC
LIMIT 20
`;
const results = await tajo.connectors.query('google-ads', { gaql: query });

Límites de velocidad

RecursoLímiteDetalles
Peticiones a la API15.000/díaPor developer token
Operaciones mutate10.000/díaPor cuenta de cliente
Consultas GAQL1.500/díaPor cuenta de cliente
Subidas Customer Match10 jobs/díaPor lista de clientes
Subidas de conversiones2.000/peticiónPor lote de subida
Tamaño de página10.000 filasMáx. por respuesta de búsqueda

Aprobación del Developer Token

La API de Google Ads requiere un Developer Token aprobado. Solicítalo a través del Google Ads API Center en tu cuenta Manager. Las cuentas de prueba tienen límites de velocidad reducidos.

Resolución de problemas

ProblemaCausaSolución
DEVELOPER_TOKEN_NOT_APPROVEDToken pendiente de revisiónEspera a la aprobación de Google o usa una cuenta de prueba
CUSTOMER_NOT_FOUNDID de cliente incorrectoElimina los guiones del customer ID o comprueba la cuenta manager
Bajo match rate en Customer MatchDatos insuficientesIncluye varios identificadores (email, teléfono, nombre, ZIP)
Las conversiones no aparecenVentana de atribuciónLas conversiones pueden tardar hasta 24 horas en procesarse
OAUTH_TOKEN_EXPIREDRefresh token no válidoVuelve a autenticarte y obtén un nuevo refresh token
PERMISSION_DENIEDAcceso insuficienteVerifica el nivel de acceso a la API y la vinculación de la cuenta

Buenas prácticas

  1. Usa una cuenta Manager - Gestiona varias cuentas de Ads desde una única cuenta Manager (MCC)
  2. Hashea los datos de Customer Match - Haz siempre hash SHA-256 de los datos personales antes de subirlos a Customer Match
  3. Registra los GCLIDs - Guarda los Google Click IDs en atributos de Brevo para el seguimiento de conversiones offline
  4. Agrupa las subidas de conversiones - Agrupa las conversiones en lotes diarios en vez de subirlas en tiempo real
  5. Usa GAQL para reporting - Aprovecha Google Ads Query Language para un reporting flexible de campañas
  6. Monitoriza los match rates - Sigue los match rates de las audiencias Customer Match y mejora la calidad de los datos
  7. Configura Enhanced Conversions - Usa Enhanced Conversions para una medición más precisa de conversiones

Seguridad

  • OAuth 2.0 - Autenticación segura basada en tokens con refresh tokens
  • Hash SHA-256 - Los datos de Customer Match se hashean antes de subirlos
  • Minimización de datos - Solo se transmiten a Google los campos estrictamente necesarios
  • Cumplimiento de Google Cloud - Cumple con SOC 2, ISO 27001 y RGPD
  • Acceso restringido - Los permisos de la API se limitan a cuentas de cliente concretas
  • Registro de auditoría - Todas las peticiones a la API quedan registradas en el historial de cambios de Google Ads

Recursos relacionados

Subscribe to updates

developer-docs

Drop your email or phone number — we'll send you what matters next.

auto-detect
Asistente AI

¡Hola! Pregúntame lo que quieras sobre la documentación.