Progresso
0%

Meta Ads API

Configure o App e token para conectar o Claude Code à sua conta Meta Ads + Instagram.

~20 minestimado
5 passos+ 6 checkpoints
Graph APIv21.0

Pré-requisitos

Verifique antes de começar
RequisitoDetalhes
Business ManagerConta com acesso de administradorObrigatório
Conta de anúnciosPelo menos uma ativa (act_xxxxx)Obrigatório
Página do FacebookConectada ao Business ManagerObrigatório
Instagram BusinessVinculada à Página do FacebookRecomendado
OnboardingConcluído — VS Code, Python, workspaceObrigatório

1. Criar App e Adicionar Produtos

Container + funcionalidades da API

Ainda não tem conta no Meta for Developers?

  1. Acesse developers.facebook.com e clique Começar
  2. Faça login com sua conta do Facebook
  3. Aceite os termos, confirme e-mail/telefone e preencha as informações solicitadas
💡
O registro é gratuito. Você só precisa de uma conta pessoal do Facebook.

Criar o App

  1. developers.facebook.comMeus Apps → Criar aplicativo
  2. Detalhes do app — escolha um nome (ex: Meu App Ads Manager), e-mail de contato e clique Avançar
  3. Casos de uso — selecione "Criar e gerenciar anúncios com a API de Marketing" e clique Avançar
  4. Requisitos — revise os requisitos listados e clique Avançar
  5. Visão geral — confira os dados e clique Ir para o painel

Adicionar os 2 casos de uso restantes

No Painel do app, clique em "Adicionar casos de uso" e filtre por Gerenciamento de conteúdo:

  1. Selecione "Gerenciar mensagens e conteúdo no Instagram"
  2. Selecione "Gerenciar tudo na sua Página"
  3. Clique Salvar

Ativar permissões de cada caso de uso

Para cada caso de uso, vá em Casos de uso → Personalizar:

A) Criar e gerenciar anúncios com API de Marketing

  1. Clique "Personalizar"
  2. Vá em Ferramentas (menu lateral)
  3. Em "Selecionar permissões do token", marque: ads_read, ads_management, business_management, pages_read_engagement, pages_show_list
  4. Clique "Obter token" e aceite as autorizações — não precisa copiar, este token serve apenas para ativar as permissões

B) Gerenciar mensagens e conteúdo no Instagram

  1. Volte em Casos de uso (menu lateral) e clique "Personalizar" em "Gerenciar mensagens e conteúdo no Instagram"
  2. No dropdown, selecione "API do Instagram"
  3. Vá em "Configuração da API com Login" (menu lateral)
  4. Na seção "1. Adicionar permissões obrigatórias de mensagens", clique no botão "Add all required permissions"
  5. Na seção "2. Gerar tokens de acesso", clique "Adicionar conta" e conecte sua conta do Instagram Business
  6. Vá em Permissões e recursos (menu lateral) e clique "+ Adicionar" em instagram_business_manage_insights
💡
As seções 3 (Webhooks), 4 (Login da empresa) e 5 (Análise do app) não são necessárias — pode ignorar.

C) Gerenciar tudo na sua Página

  1. Volte em Casos de uso (menu lateral) e clique "Personalizar" em "Gerenciar tudo na sua Página"
  2. Confirme que pages_read_engagement está ativa — as demais permissões de Página não são necessárias para o Bootcamp
🚨
Sem ativar as permissões aqui, elas não aparecem no Graph API Explorer na hora de gerar o token.

2. Gerar Token com Permissões

Graph API Explorer — selecione permissões e gere o token de uma vez
  1. No menu superior, vá em Ferramentas → Explorador da Graph API
  2. No dropdown, selecione seu App
  3. Clique em Add a Permission e marque as permissões abaixo
  4. Após selecionar todas, clique Generate Access Token
  5. Aceite todas as autorizações e copie o token gerado

Permissões Essenciais (sempre ativar)

ads_managementCriar e editar campanhas
ads_readLer métricas de campanhas
business_managementGerenciar ativos do BM
instagram_basicAcessar conteúdo do Instagram
pages_read_engagementLer engajamento da Página
pages_show_listListar Páginas do BM

Importantes (recomendado)

instagram_manage_insightsAnalytics do Instagram
instagram_manage_eventsConversions API (CAPI)
pages_manage_engagementGerenciar engajamento
💡
Na duvida, ative todas as essenciais + importantes. Permissões extras não atrapalham.

3. Prolongar Token no Depurador

O token do Explorer dura ~2h — estenda para 60 dias
  1. No menu superior, vá em Ferramentas → Depurador de Token de Acesso
  2. Cole o token gerado no passo 2 e clique Depurar
  3. Confira que as permissões estão corretas na lista exibida
  4. Clique em Estender Token de Acesso (botão no final da página)
  5. Copie o novo token — este vale por ~60 dias
⚠️
O botão Estender Token de Acesso usa seu App ID e App Secret automaticamente. Se não aparecer, verifique se selecionou o App correto.
💡
Alternativa permanente: crie um System User em Business Suite → Configurações → Usuários do Sistema. Tokens de System User não expiram.

4. Criar credentials/meta.env

Arquivo de credenciais + validação
credentials/meta.env
META_ACCESS_TOKEN=EAAxxxxxxxx
META_AD_ACCOUNT_ID=act_xxxxxxxxx
META_APP_ID=xxxxxxxxx
META_APP_SECRET=xxxxxxxxx
🔒
NUNCA compartilhe este arquivo. Adicione credentials/ ao .gitignore.

Testar conexão

terminal
python -c "
import requests
token = 'SEU_TOKEN'
r = requests.get(f'https://graph.facebook.com/v21.0/me?access_token={token}')
print(r.json().get('name', 'ERRO: ' + str(r.json())))"

Esperado: seu nome ou o nome do System User.

💡
Prefere usar o Claude Code? Execute /conectar-meta no terminal — ele cria o arquivo, valida o token e testa a conexão automaticamente.

5. Publicar App em Modo Live

Sem isso, criativos com posts do Instagram falham

Development vs Live

FuncionalidadeDevelopmentLive
Quem pode usarSó admins e testers do AppQualquer usuário autorizado
Criar anúncios com posts orgânicosBloqueadoLiberado
Rate limit~200 calls/hora/usuárioAté ~4800 calls/hora (Business Use Case)
Acesso a dadosApenas dados de quem tem role no AppTodos os ativos do BM
instagram_actor_idErro frequenteFunciona
WebhooksSó dispara para testersDispara para todos
🚨
A maioria dos erros de "permissão negada" ou "objeto não existe" acontece porque o App ainda está em Development. Não pule este passo.

Pré-requisitos para modo Live

Política de PrivacidadeURL publica. Use privacypolicygenerator.info se não tiver.Obrigatório
Ícone do App1024x1024px — Configurações → BásicoRecomendado

Como ativar

  1. Vá em Configurações do app → Básico e preencha: Nome de exibição, Ícone do aplicativo e URL da Política de Privacidade
  2. No menu lateral, clique em Publicar
  3. Clique no botão para ativar o modo Live
⚠️
Regenere o token após ativar modo Live: volte em Ferramentas → Explorador da Graph API, selecione seu App, marque as mesmas permissões e clique Generate Access Token. Depois estenda novamente em Ferramentas → Depurador de Token de Acesso.

Comece a usar o Claude Code

Configuração concluída! Aqui estão algumas formas de começar:

Skills disponíveis

ComandoO que faz
/conectar-metaValida o token, verifica permissões e salva os IDs no projeto
/diagnostico-contaResumo de performance: gasto, leads, CPL, alertas automáticos
/gerar-relatorio-metaRelatório HTML completo com Meta Ads + Instagram orgânico + Reels

Ideias para explorar

  1. "Qual campanha teve o melhor CPL nos últimos 30 dias?" — o Claude puxa os dados da API e compara campanhas automaticamente
  2. "Analise meus últimos 10 Reels e me diga quais tiveram melhor engajamento" — busca insights de cada Reel e ranqueia por interações
  3. "Crie um script que monitore meu gasto diário e me alerte se passar de R$ 150" — automação personalizada com dados reais
  4. "Compare a performance desta semana vs semana passada" — análise comparativa com variação percentual
  5. "Gere um relatório só das campanhas de conversão com breakdown por idade e gênero" — segmentação avançada via API
💡
Essas são apenas ideias iniciais. O Claude Code tem acesso total à Graph API — peça qualquer análise, automação ou relatório que você imaginar. Quanto mais específico o pedido, melhor o resultado.

Solução de Problemas

ProblemaSolução
OAuthException / token expiradoEstenda no Depurador (passo 3) ou use System User.
Permissões do IG não aparecemAdicione Instagram Graph API ao App primeiro (passo 1).
"App em modo de desenvolvimento"Ative modo Live (passo 5). Gere novo token depois.
"instagram_actor_id must be valid"Use instagram_user_id. Token precisa de instagram_basic.
Token expira em 2hEstenda no Depurador (passo 3). Para token permanente, use System User.
Botao "Estender" não apareceVerifique se selecionou o App correto no Depurador. App ID e Secret devem estar preenchidos.
Encoding estranho no outputAdicione sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8')
Raul Natan
@raulnatan
Tendency Brasil · Performance Marketing · Google Ads & Meta Ads
Seguir

Tendency Brasil · Bootcamp de Performance com IA