---
title: "Коннектор Google Ads"
description: "Полное руководство по интеграции Google Ads для синхронизации данных кампаний, списков аудиторий и отслеживания конверсий с Brevo через Tajo."
url: https://tajo.io/ru/docs/connectors/marketing/google-ads/
markdown: https://tajo.io/ru/docs/connectors/marketing/google-ads.md
lang: ru-RU
robots: noindex
---

Подайте заявку на ранний доступ

Укажите имя и рабочий адрес электронной почты. Мы отправим ссылку для подтверждения запроса на доступ к Tajo.

# Коннектор Google Ads

Статус коннектора: Запланирован Ещё не создан. Сегодня Tajo не запускает этот коннектор.

| Поле источника | Поле назначения | Пример значения |
| --- | --- | --- |
| `record.id` | `source_id` | `record_1042` |
| `record.updated_at` | `updated_at` | `2026-10-18T08:00:00Z` |
| `record.value` | `value` | `sample_value` |

Подключите Google Ads к Brevo через Tajo для синхронизации рекламных аудиторий, импорта данных о конверсиях и создания единых профилей клиентов, связывающих платное привлечение с lifecycle-маркетингом.

## Обзор

| Свойство | Значение |
| --- | --- |
| **Платформа** | Google Ads |
| **Категория** | Marketing |
| **Сложность настройки** | Расширенная |
| **Официальная интеграция** | Нет |
| **Синхронизируемые данные** | Кампании, аудитории, конверсии, клиенты |
| **Доступных скиллов** | 7 |

## Возможности

- **Синхронизация Customer Match**, загрузка списков контактов Brevo в Google Ads как аудитории Customer Match
- **Отслеживание конверсий**, импорт офлайн-конверсий из событий Brevo в Google Ads
- **Синхронизация аудиторий**, двунаправленная синхронизация списков Brevo и аудиторий Google Ads
- **Отчётность по кампаниям**, получение метрик эффективности рекламы в дашборды Tajo
- **Трекинг GCLID**, захват Google Click ID для атрибуции офлайн-конверсий
- **Данные для умного бидинга**, передача данных о ценности конверсий в Google для оптимизации ставок
- **Синхронизация лид-форм**, импорт заявок из лид-форм Google Ads в контакты Brevo

## Предварительные требования

Прежде чем начать, убедитесь, что у вас есть:

1. Аккаунт Google Ads с включённым доступом к API
2. Проект Google Cloud с включённым Google Ads API
3. Учётные данные OAuth 2.0 (Client ID и Client Secret)
4. Developer Token для Google Ads (подача заявки через [Google Ads API Center](https://ads.google.com/aw/apicenter))
5. Аккаунт Brevo с доступом к API
6. Аккаунт Tajo с API-учётными данными

## Аутентификация

### OAuth 2.0

Google Ads API использует OAuth 2.0 для аутентификации. Необходимо получить refresh token через поток согласия OAuth.

```bash
# Необходимые OAuth scope
https://www.googleapis.com/auth/adwords
```

### Developer Token

Developer Token обязателен для всех запросов к Google Ads API и должен быть одобрен Google.

```bash
# Настройка заголовков аутентификации
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"
```

## Конфигурация

### Базовая настройка

```yaml
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"  # Аккаунт управляющего (опционально)

    # Параметры синхронизации данных
    sync:
      customer_match: true
      conversions: true
      campaigns: true
      lead_forms: true

    # Отслеживание конверсий
    conversions:
      action_id: "123456789"
      default_currency: "USD"
```

### Конфигурация Customer Match

Загрузка контактов Brevo как аудиторий Google Ads:

```yaml
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"

  # Поля для совпадения
  match_fields:
    - email
    - phone
    - first_name
    - last_name
    - country_code
    - zip_code

  # Расписание синхронизации
  schedule: "daily"
  sync_mode: "mirror"  # mirror, append или remove
```

### Импорт офлайн-конверсий

```yaml
conversion_import:
  enabled: true
  conversion_action: "purchase"
  gclid_attribute: "GCLID"  # Атрибут Brevo, хранящий 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

| Метод | Эндпоинт | Описание |
| --- | --- | --- |
| `POST` | `/v18/customers/{id}/googleAds:search` | Поиск кампаний и ресурсов (GAQL) |
| `POST` | `/v18/customers/{id}/googleAds:searchStream` | Потоковая передача результатов поиска |
| `POST` | `/v18/customers/{id}/offlineUserDataJobs:create` | Создание задания загрузки Customer Match |
| `POST` | `/v18/customers/{id}/conversionUploads:uploadClickConversions` | Загрузка офлайн-конверсий |
| `POST` | `/v18/customers/{id}/conversionUploads:uploadCallConversions` | Загрузка конверсий по звонкам |
| `GET` | `/v18/customers/{id}/campaignBudgets` | Получение бюджетов кампаний |
| `POST` | `/v18/customers/{id}/customerLists:mutate` | Управление списками клиентов |

## Примеры кода

### Инициализация коннектора Google Ads

```javascript
import { TajoClient } from '@tajo/sdk';

const tajo = new TajoClient({
  apiKey: process.env.TAJO_API_KEY,
  brevoApiKey: process.env.BREVO_API_KEY
});

// Подключение аккаунта Google Ads
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

```javascript
// Синхронизация списка Brevo с Customer Match в Google Ads
await tajo.connectors.syncAudience('google-ads', {
  brevoListId: 5,
  audienceName: 'High Value Customers',
  matchType: 'CONTACT_INFO',
  syncMode: 'mirror'
});
```

### Импорт офлайн-конверсий

```javascript
// Загрузка офлайн-конверсий из событий заказов Brevo
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'
    }
  ]
});
```

### Запрос эффективности кампаний (GAQL)

```javascript
// Запрос метрик кампаний с помощью 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 });
```

## Ограничения скорости

| Ресурс | Лимит | Детали |
| --- | --- | --- |
| **API-запросы** | 15 000/день | На developer token |
| **Mutate-операции** | 10 000/день | На аккаунт клиента |
| **GAQL-запросы** | 1 500/день | На аккаунт клиента |
| **Загрузки Customer Match** | 10 заданий/день | На список клиентов |
| **Загрузки конверсий** | 2 000 в запросе | На пакет загрузки |
| **Размер страницы** | 10 000 строк | Максимум в ответе на поиск |

Одобрение Developer Token

Google Ads API требует одобренного Developer Token. Подайте заявку через Google Ads API Center в вашем аккаунте управляющего. Тестовые аккаунты имеют сниженные лимиты скорости.

## Устранение неполадок

| Проблема | Причина | Решение |
| --- | --- | --- |
| `DEVELOPER_TOKEN_NOT_APPROVED` | Токен ожидает проверки | Дождитесь одобрения Google или используйте тестовый аккаунт |
| `CUSTOMER_NOT_FOUND` | Неверный ID клиента | Уберите дефисы из ID клиента или проверьте аккаунт управляющего |
| Низкий процент совпадений Customer Match | Недостаточно данных | Включите несколько идентификаторов (email, телефон, имя, индекс) |
| Конверсии не появляются | Окно атрибуции | Конверсии могут обрабатываться до 24 часов |
| `OAUTH_TOKEN_EXPIRED` | Refresh token недействителен | Повторно аутентифицируйтесь и получите новый refresh token |
| `PERMISSION_DENIED` | Недостаточно прав | Проверьте уровень API-доступа и привязку аккаунта |

## Лучшие практики

1. **Используйте аккаунт управляющего**, управляйте несколькими аккаунтами Ads через единый аккаунт управляющего (MCC)
2. **Хешируйте данные Customer Match**, всегда хешируйте PII с SHA-256 перед загрузкой в Customer Match
3. **Отслеживайте GCLID**, сохраняйте Google Click ID в атрибутах Brevo для трекинга офлайн-конверсий
4. **Пакетная загрузка конверсий**, группируйте конверсии в ежедневные пакеты, а не загружайте в реальном времени
5. **Используйте GAQL для отчётности**, применяйте Google Ads Query Language для гибкой отчётности по кампаниям
6. **Следите за процентом совпадений**, отслеживайте процент совпадений аудитории Customer Match и улучшайте качество данных
7. **Настройте Enhanced Conversions**, используйте расширенные конверсии для более точного измерения

## Безопасность

- **OAuth 2.0**, безопасная аутентификация на основе токенов с refresh tokens
- **SHA-256-хеширование**, данные Customer Match хешируются перед загрузкой
- **Минимизация данных**, в Google передаются только необходимые поля
- **Соответствие Google Cloud**, сертификация SOC 2, ISO 27001 и GDPR
- **Ограниченный доступ**, права API ограничены конкретными аккаунтами клиентов
- **Логирование аудита**, все API-запросы логируются в истории изменений Google Ads

## Связанные ресурсы

- [Коннектор Meta Ads](https://tajo.io/ru/docs/connectors/marketing/meta-ads)
- [Коннектор Klaviyo](https://tajo.io/ru/docs/connectors/marketing/klaviyo)
- [Коннектор Brevo](https://tajo.io/ru/docs/connectors/marketing/brevo)
- [Скилл синхронизации клиентов](https://tajo.io/ru/docs/skills/data-sync/customer-sync)
