---
title: "Conector Meta Ads"
description: "Guia completo de integração do Meta Ads para sincronizar audiências, conversões e dados de campanha de anúncios do Facebook e Instagram com o Brevo através do Tajo."
url: https://tajo.io/pt/docs/connectors/marketing/meta-ads/
markdown: https://tajo.io/pt/docs/connectors/marketing/meta-ads.md
lang: pt-BR
robots: noindex
---

Solicite acesso antecipado

Indique o seu nome e endereço de e-mail profissional. Enviaremos um link para confirmar o seu pedido de acesso ao Tajo.

# Conector Meta Ads

Status do conector: Planejado Ainda não construído. O Tajo não executa este conector hoje.

| Campo de origem | Campo de destino | Valor de exemplo |
| --- | --- | --- |
| `record.id` | `source_id` | `record_1042` |
| `record.updated_at` | `updated_at` | `2026-10-18T08:00:00Z` |
| `record.value` | `value` | `sample_value` |

Conecte o Meta Ads (Facebook & Instagram) ao Brevo através do Tajo para sincronizar Custom Audiences, importar eventos de conversão via Conversions API, e conectar publicidade paga em redes sociais com automação de marketing de ciclo de vida.

## Visão geral

| Propriedade | Valor |
| --- | --- |
| **Plataforma** | Meta Ads (Facebook, Instagram, Messenger, WhatsApp) |
| **Categoria** | Marketing |
| **Complexidade de configuração** | Avançada |
| **Integração oficial** | Não |
| **Dados sincronizados** | Audiências, Conversões, Campanhas, Leads |
| **Skills disponíveis** | 8 |
| **Versão da API** | v25.0 (Graph API) |

## Recursos

- **Sincronização de Custom Audience** - Faça upload de listas de contato do Brevo como Custom Audiences do Meta
- **Conversions API (CAPI)** - Envie eventos de conversão server-side para atribuição precisa
- **Sincronização de formulários de lead** - Importe submissões de Facebook Lead Ads diretamente para contatos do Brevo
- **Insights de campanha** - Traga métricas de desempenho de anúncios para os dashboards do Tajo
- **Audiências Lookalike** - Crie Lookalike Audiences a partir de segmentos do Brevo sincronizados
- **Sincronização de catálogo** - Sincronize catálogos de produtos para anúncios dinâmicos
- **Multiplataforma** - Uma única integração cobre anúncios do Facebook, Instagram, Messenger e WhatsApp

## Pré-requisitos

Antes de começar, certifique-se de ter:

1. Uma conta Meta Business Manager
2. Um Facebook App com acesso à Marketing API
3. Um System User com as permissões apropriadas
4. Um Access Token com permissões `ads_management` e `ads_read`
5. Uma conta Brevo com acesso à API
6. Uma conta Tajo com credenciais de API

## Autenticação

### Access Token de System User

O Meta recomenda usar tokens de System User para integrações servidor-a-servidor. Esses tokens não expiram.

```bash
# Required permissions for System User
ads_management
ads_read
business_management
leads_retrieval
pages_read_engagement
catalog_management
```

### Autenticação de nível de App

```bash
curl -G "https://graph.facebook.com/v25.0/act_AD_ACCOUNT_ID/campaigns" \
  -d "access_token=SYSTEM_USER_ACCESS_TOKEN" \
  -d "fields=name,status,objective"
```

## Configuração

### Configuração básica

```yaml
connectors:
  meta_ads:
    enabled: true
    app_id: "your-facebook-app-id"
    app_secret: "your-facebook-app-secret"
    access_token: "your-system-user-access-token"
    ad_account_id: "act_123456789"
    business_id: "987654321"
    pixel_id: "111222333444"

    # Data sync options
    sync:
      custom_audiences: true
      conversions_api: true
      lead_forms: true
      campaign_insights: true

    # API version
    api_version: "v25.0"
```

### Configuração de Custom Audience

Sincronize listas do Brevo para Custom Audiences do Meta:

```yaml
custom_audiences:
  enabled: true
  lists:
    - brevo_list_id: 5
      audience_name: "All Customers"
      subtype: "CUSTOM"
    - brevo_list_id: 6
      audience_name: "High LTV Customers"
      subtype: "CUSTOM"
    - brevo_list_id: 7
      audience_name: "Recent Purchasers"
      subtype: "CUSTOM"

  # Matching fields
  match_keys:
    - EMAIL
    - PHONE
    - FN     # First name
    - LN     # Last name
    - CT     # City
    - ST     # State
    - ZIP
    - COUNTRY

  schedule: "daily"
  sync_mode: "mirror"
```

### Configuração da Conversions API

```yaml
conversions_api:
  enabled: true
  pixel_id: "111222333444"
  test_event_code: ""  # Set for testing, clear for production

  events:
    - brevo_event: "order_completed"
      meta_event: "Purchase"
      value_field: "revenue"
      currency_field: "currency"
    - brevo_event: "cart_updated"
      meta_event: "AddToCart"
    - brevo_event: "customer_created"
      meta_event: "Lead"
    - brevo_event: "page_viewed"
      meta_event: "ViewContent"
```

## Endpoints da API

| Método | Endpoint | Descrição |
| --- | --- | --- |
| `POST` | `/v25.0/act_{id}/customaudiences` | Criar uma Custom Audience |
| `POST` | `/v25.0/{audience_id}/users` | Adicionar usuários à Custom Audience |
| `DELETE` | `/v25.0/{audience_id}/users` | Remover usuários da Custom Audience |
| `POST` | `/v25.0/{pixel_id}/events` | Enviar eventos da Conversions API |
| `GET` | `/v25.0/act_{id}/campaigns` | Listar campanhas |
| `GET` | `/v25.0/act_{id}/insights` | Obter insights de campanha |
| `GET` | `/v25.0/{form_id}/leads` | Recuperar submissões de formulário de lead |
| `POST` | `/v25.0/act_{id}/adcreatives` | Criar creatives de anúncio |
| `GET` | `/v25.0/{catalog_id}/products` | Listar produtos do catálogo |

## Exemplos de código

### Inicializar o conector Meta Ads

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

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

// Connect Meta Ads account
await tajo.connectors.connect('meta-ads', {
  appId: process.env.META_APP_ID,
  appSecret: process.env.META_APP_SECRET,
  accessToken: process.env.META_ACCESS_TOKEN,
  adAccountId: 'act_123456789',
  pixelId: '111222333444'
});
```

### Enviar eventos da Conversions API

```javascript
// Send a purchase event via Conversions API
const response = await fetch(
  `https://graph.facebook.com/v25.0/${PIXEL_ID}/events`,
  {
    method: 'POST',
    headers: { 'Content-Type': 'application/json' },
    body: JSON.stringify({
      data: [{
        event_name: 'Purchase',
        event_time: Math.floor(Date.now() / 1000),
        action_source: 'website',
        user_data: {
          em: [hashSHA256('jane@example.com')],
          ph: [hashSHA256('+15551234567')],
          fn: [hashSHA256('jane')],
          ln: [hashSHA256('kim')],
          client_ip_address: '192.168.1.1',
          client_user_agent: 'Mozilla/5.0...',
          fbc: 'fb.1.1234567890.AbCdEfG',  // Click ID
          fbp: 'fb.1.1234567890.987654321'  // Browser ID
        },
        custom_data: {
          value: 89.99,
          currency: 'USD',
          content_ids: ['SKU-001'],
          content_type: 'product'
        }
      }],
      access_token: process.env.META_ACCESS_TOKEN
    })
  }
);
```

### Sincronizar Custom Audience a partir de lista do Brevo

```javascript
// Upload a Brevo contact list as a Meta Custom Audience
await tajo.connectors.syncAudience('meta-ads', {
  brevoListId: 5,
  audienceName: 'High Value Customers',
  matchKeys: ['EMAIL', 'PHONE', 'FN', 'LN'],
  syncMode: 'mirror'
});
```

### Extrair insights de campanha

```javascript
// Get campaign performance metrics
const insights = await tajo.connectors.query('meta-ads', {
  resource: 'campaigns',
  fields: ['campaign_name', 'impressions', 'clicks', 'spend',
           'actions', 'cost_per_action_type'],
  dateRange: { since: '2024-01-01', until: '2024-01-31' },
  level: 'campaign'
});
```

## Limites de taxa

| Recurso | Limite | Detalhes |
| --- | --- | --- |
| **Marketing API** | Baseado em tier | Baseado no nível de acesso do app e gastos |
| **Uploads de Custom Audience** | 700 requisições/hora | Por conta de anúncio |
| **Conversions API** | 2.000 eventos/seg | Por pixel |
| **Insights API** | 200 chamadas/hora | Por conta de anúncio |
| **Recuperação de leads** | 200 chamadas/hora | Por página |
| **Requisições em lote** | 50 requisições/lote | Por chamada em lote |

Verificação de negócios obrigatória

Acesso completo à Marketing API requer verificação de negócio no Meta Business Manager. Apps não verificados são limitados ao modo de desenvolvimento com limites de taxa restritos.

## Solução de problemas

| Problema | Causa | Solução |
| --- | --- | --- |
| `OAuthException` | Token expirado ou inválido | Regere o access token do System User |
| Taxa de correspondência baixa em Custom Audience | Qualidade de dados ruim | Hasheie toda PII com SHA-256, inclua múltiplas match keys |
| Conversões não atribuídas | Parâmetros `fbc`/`fbp` ausentes | Passe o Facebook Click ID e Browser ID dos cookies |
| `RATE_LIMIT_REACHED` | Muitas chamadas de API | Implemente backoff exponencial, verifique o tier de acesso da API |
| Formulários de lead não sincronizando | Permissão `leads_retrieval` ausente | Adicione a permissão ao System User |
| Eventos em modo de teste | `test_event_code` ainda definido | Remova o test event code para produção |

## Melhores práticas

1. **Use tokens de System User** - System Users fornecem tokens estáveis e não expiráveis para integrações server
2. **Hasheie toda PII** - Aplique SHA-256 em todas as informações pessoais identificáveis antes de enviar ao Meta
3. **Envie CAPI e Pixel juntos** - Use Conversions API e Meta Pixel para rastreamento redundante com desduplicação
4. **Inclua event IDs** - Defina `event_id` em eventos CAPI e Pixel para habilitar desduplicação
5. **Passe `fbc` e `fbp`** - Inclua o Facebook Click ID e Browser ID para atribuição máxima de conversão
6. **Verifique seu negócio** - Complete a Business Verification para acesso total à API e limites de taxa maiores
7. **Use `test_event_code`** - Teste eventos da Conversions API no Events Manager antes do go-live

## Segurança

- **Tokens de System User** - Tokens de autenticação impessoais, com escopo de negócio
- **Hashing SHA-256** - Toda PII é hasheada antes da transmissão aos servidores do Meta
- **App Secret Proof** - Camada adicional opcional de segurança de autenticação
- **Escopo de negócio** - Permissões com escopo para contas de anúncio e páginas específicas
- **Conformidade com o Meta** - Sujeito aos Meta Platform Terms e políticas de publicidade
- **Data Processing Terms** - Os Data Processing Terms do Meta se aplicam a dados da UE

## Recursos relacionados

- [Conector Google Ads](https://tajo.io/pt/docs/connectors/marketing/google-ads)
- [Conector Klaviyo](https://tajo.io/pt/docs/connectors/marketing/klaviyo)
- [Conector Brevo](https://tajo.io/pt/docs/connectors/marketing/brevo)
- [Skill de sincronização de clientes](https://tajo.io/pt/docs/skills/data-sync/customer-sync)
