Google Ads-connector

Verbind Google Ads met Brevo via Tajo om advertentie-audiences te synchroniseren, conversiedata te importeren en uniforme klantprofielen op te bouwen die betaalde acquisitie koppelen aan lifecycle-marketing.

Overzicht

EigenschapWaarde
PlatformGoogle Ads
CategorieMarketing
SetupcomplexiteitGeavanceerd
Officiële integratieNee
Gesynchroniseerde dataCampagnes, Audiences, Conversies, Klanten
Beschikbare skills7

Functies

  • Customer Match-sync - Upload Brevo-contactlijsten naar Google Ads als Customer Match-audiences
  • Conversietracking - Importeer offline conversies uit Brevo-events in Google Ads
  • Audience-sync - Bidirectionele sync tussen Brevo-lijsten en Google Ads-audiences
  • Campagnerapportage - Haal campagneprestatiedata op in Tajo-dashboards
  • GCLID-tracking - Leg Google Click ID’s vast voor offline conversieattributie
  • Smart bidding-data - Stuur conversiewaarde-data terug naar Google voor bod-optimalisatie
  • Lead form-sync - Importeer Google Ads-leadforminzendingen in Brevo-contacten

Vereisten

Voordat je begint, zorg dat je beschikt over:

  1. Een Google Ads-account met ingeschakelde API-toegang
  2. Een Google Cloud-project met de Google Ads API ingeschakeld
  3. OAuth 2.0-inloggegevens (Client ID en Client Secret)
  4. Een Google Ads Developer Token (aanvragen via Google Ads API Center)
  5. Een Brevo-account met API-toegang
  6. Een Tajo-account met API-inloggegevens

Authenticatie

OAuth 2.0

De Google Ads API gebruikt OAuth 2.0 voor authenticatie. Je moet een refresh token verkrijgen via de OAuth-consent-flow.

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

Developer Token

Een Developer Token is vereist voor alle Google Ads API-requests en moet door Google worden goedgekeurd.

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"

Configuratie

Basisopzet

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"

Customer Match-configuratie

Upload Brevo-contacten als Google Ads-audiences:

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

Offline conversie-import

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"

API-endpoints

MethodeEndpointBeschrijving
POST/v18/customers/{id}/googleAds:searchCampagnes en resources doorzoeken (GAQL)
POST/v18/customers/{id}/googleAds:searchStreamZoekresultaten streamen
POST/v18/customers/{id}/offlineUserDataJobs:createCustomer Match-upload-job aanmaken
POST/v18/customers/{id}/conversionUploads:uploadClickConversionsOffline conversies uploaden
POST/v18/customers/{id}/conversionUploads:uploadCallConversionsCall-conversies uploaden
GET/v18/customers/{id}/campaignBudgetsCampagnebudgetten ophalen
POST/v18/customers/{id}/customerLists:mutateCustomer lists beheren

Codevoorbeelden

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'
});

Customer Match-audience uploaden

// 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'
});

Offline conversies importeren

// 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'
}
]
});

Campagneprestaties opvragen (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 });

Ratelimits

ResourceLimietDetails
API-requests15.000/dagPer developer token
Mutate-operaties10.000/dagPer customer account
GAQL-queries1.500/dagPer customer account
Customer Match-uploads10 jobs/dagPer customer list
Conversie-uploads2.000/requestPer upload-batch
Page size10.000 rijenMax per search-response

Goedkeuring Developer Token

De Google Ads API vereist een goedgekeurd Developer Token. Vraag deze aan via het Google Ads API Center in je Manager-account. Testaccounts hebben verlaagde ratelimits.

Probleemoplossing

ProbleemOorzaakOplossing
DEVELOPER_TOKEN_NOT_APPROVEDToken in reviewWacht op Google-goedkeuring of gebruik een testaccount
CUSTOMER_NOT_FOUNDVerkeerde customer IDVerwijder streepjes uit de customer ID of controleer manager account
Customer Match lage matchrateOnvoldoende dataNeem meerdere identifiers op (e-mail, telefoon, naam, postcode)
Conversies verschijnen nietAttributievensterConversies kunnen tot 24 uur duren om te verwerken
OAUTH_TOKEN_EXPIREDRefresh token ongeldigAuthenticeer opnieuw en verkrijg een nieuwe refresh token
PERMISSION_DENIEDOnvoldoende toegangControleer API-toegangsniveau en accountkoppeling

Best practices

  1. Gebruik een Manager-account - Beheer meerdere Ads-accounts via één Manager (MCC)-account
  2. Hash Customer Match-data - Hash PII altijd met SHA-256 vóór het uploaden naar Customer Match
  3. Track GCLID’s - Sla Google Click ID’s op in Brevo-attributen voor offline conversietracking
  4. Batch conversie-uploads - Groepeer conversies in dagelijkse batches in plaats van realtime-uploads
  5. Gebruik GAQL voor rapportage - Maak gebruik van Google Ads Query Language voor flexibele campagnerapportage
  6. Monitor matchrates - Volg matchrates van Customer Match-audiences en verbeter de datakwaliteit
  7. Stel Enhanced Conversions in - Gebruik Enhanced Conversions voor nauwkeurigere conversiemeting

Beveiliging

  • OAuth 2.0 - Veilige tokengebaseerde authenticatie met refresh tokens
  • SHA-256-hashing - Customer Match-data wordt gehasht vóór upload
  • Dataminimalisatie - Alleen vereiste velden worden naar Google verzonden
  • Google Cloud-compliance - SOC 2-, ISO 27001- en AVG-compliant
  • Gescopede toegang - API-rechten gescope op specifieke customer accounts
  • Audit-logging - Alle API-requests gelogd in de Google Ads-wijzigingshistorie

Gerelateerde resources

Subscribe to updates

developer-docs

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

auto-detect
AI-assistent

Hallo! Stel me vragen over de documentatie.