Conector Google Ads
Conecte o Google Ads ao Brevo através do Tajo para sincronizar audiências de publicidade, importar dados de conversão e criar perfis de cliente unificados que conectam aquisição paga com marketing de ciclo de vida.
Visão geral
| Propriedade | Valor |
|---|---|
| Plataforma | Google Ads |
| Categoria | Marketing |
| Complexidade de configuração | Avançada |
| Integração oficial | Não |
| Dados sincronizados | Campanhas, Audiências, Conversões, Clientes |
| Skills disponíveis | 7 |
Recursos
- Sincronização Customer Match - Faça upload de listas de contatos do Brevo para o Google Ads como audiências Customer Match
- Rastreamento de conversões - Importe conversões offline de eventos do Brevo para o Google Ads
- Sincronização de audiência - Sincronização bidirecional entre listas do Brevo e audiências do Google Ads
- Relatórios de campanha - Traga dados de desempenho de campanha para os dashboards do Tajo
- Rastreamento de GCLID - Capture Google Click IDs para atribuição de conversão offline
- Dados de smart bidding - Envie dados de valor de conversão de volta ao Google para otimização de lance
- Sincronização de formulários de lead - Importe submissões de formulários de lead do Google Ads para contatos do Brevo
Pré-requisitos
Antes de começar, certifique-se de ter:
- Uma conta Google Ads com acesso à API habilitado
- Um projeto Google Cloud com a Google Ads API habilitada
- Credenciais OAuth 2.0 (Client ID e Client Secret)
- Um Google Ads Developer Token (solicite em Google Ads API Center)
- Uma conta Brevo com acesso à API
- Uma conta Tajo com credenciais de API
Autenticação
OAuth 2.0
A Google Ads API usa OAuth 2.0 para autenticação. Você precisa obter um refresh token através do fluxo de consentimento OAuth.
# Required OAuth scopeshttps://www.googleapis.com/auth/adwordsDeveloper Token
Um Developer Token é necessário para todas as requisições da Google Ads API e deve ser aprovado pelo Google.
# Set up authentication headerscurl -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"Configuração
Configuração 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"Configuração Customer Match
Faça upload de contatos do Brevo como audiências do 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 removeImportação de conversões 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 da API
| Método | Endpoint | Descrição |
|---|---|---|
POST | /v18/customers/{id}/googleAds:search | Pesquisar campanhas e recursos (GAQL) |
POST | /v18/customers/{id}/googleAds:searchStream | Pesquisa em stream de resultados |
POST | /v18/customers/{id}/offlineUserDataJobs:create | Criar job de upload Customer Match |
POST | /v18/customers/{id}/conversionUploads:uploadClickConversions | Fazer upload de conversões offline |
POST | /v18/customers/{id}/conversionUploads:uploadCallConversions | Fazer upload de conversões de chamadas |
GET | /v18/customers/{id}/campaignBudgets | Obter orçamentos de campanha |
POST | /v18/customers/{id}/customerLists:mutate | Gerenciar listas de clientes |
Exemplos de código
Inicializar o conector 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 accountawait 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'});Fazer upload de audiência Customer Match
// Sync a Brevo list to Google Ads Customer Matchawait tajo.connectors.syncAudience('google-ads', { brevoListId: 5, audienceName: 'High Value Customers', matchType: 'CONTACT_INFO', syncMode: 'mirror'});Importar conversões offline
// Upload offline conversions from Brevo order eventsawait 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 desempenho de campanha (GAQL)
// Query campaign metrics using Google Ads Query Languageconst 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 });Limites de taxa
| Recurso | Limite | Detalhes |
|---|---|---|
| Requisições de API | 15.000/dia | Por developer token |
| Operações de mutação | 10.000/dia | Por conta de cliente |
| Consultas GAQL | 1.500/dia | Por conta de cliente |
| Uploads Customer Match | 10 jobs/dia | Por lista de clientes |
| Uploads de conversão | 2.000/requisição | Por lote de upload |
| Tamanho de página | 10.000 linhas | Máx. por resposta de pesquisa |
Aprovação do Developer Token
A Google Ads API requer um Developer Token aprovado. Solicite através do Google Ads API Center em sua conta Manager. Contas de teste têm limites de taxa reduzidos.
Solução de problemas
| Problema | Causa | Solução |
|---|---|---|
DEVELOPER_TOKEN_NOT_APPROVED | Token aguardando revisão | Aguarde aprovação do Google ou use conta de teste |
CUSTOMER_NOT_FOUND | ID de cliente errado | Remova hifens do ID do cliente ou verifique conta manager |
| Taxa de correspondência baixa em Customer Match | Dados insuficientes | Inclua múltiplos identificadores (e-mail, telefone, nome, CEP) |
| Conversões não aparecem | Janela de atribuição | Conversões podem levar até 24 horas para serem processadas |
OAUTH_TOKEN_EXPIRED | Refresh token inválido | Reautentique e obtenha um novo refresh token |
PERMISSION_DENIED | Acesso insuficiente | Verifique o nível de acesso à API e vinculação da conta |
Melhores práticas
- Use uma conta Manager - Gerencie várias contas Ads através de uma única conta Manager (MCC)
- Faça hash dos dados do Customer Match - Sempre aplique SHA-256 em PII antes de fazer upload para Customer Match
- Rastreie GCLIDs - Armazene Google Click IDs em atributos do Brevo para rastreamento de conversão offline
- Agrupe uploads de conversão em lote - Agrupe conversões em lotes diários em vez de uploads em tempo real
- Use GAQL para relatórios - Aproveite a Google Ads Query Language para relatórios flexíveis de campanha
- Monitore as taxas de correspondência - Acompanhe as taxas de correspondência de audiências Customer Match e melhore a qualidade dos dados
- Configure Enhanced Conversions - Use Enhanced Conversions para medição de conversão mais precisa
Segurança
- OAuth 2.0 - Autenticação segura baseada em token com refresh tokens
- Hashing SHA-256 - Dados do Customer Match são hasheados antes do upload
- Minimização de dados - Apenas campos obrigatórios são transmitidos ao Google
- Conformidade Google Cloud - SOC 2, ISO 27001 e GDPR compatíveis
- Acesso com escopo - Permissões de API com escopo para contas de cliente específicas
- Log de auditoria - Todas as requisições de API são registradas no histórico de alterações do Google Ads