Conectar uma conta do Instagram
Guia completo para conectar uma conta Instagram Business ao Cadence. Aproximadamente 10–15 minutos — os passos são manuais porque a Meta não tem OAuth direto pra apps terceiros sem revisão (ainda). Faça uma vez, dura 60 dias com auto-refresh.
Visão geral
Você vai precisar de 3 credenciais que o Cadence usa internamente pra publicar em seu nome:
| Campo | O que é | Onde pega |
|---|---|---|
| access_token | Token long-lived (60 dias, auto-refresh) | Graph API Explorer + exchange |
| business_account_id | ID numérico da sua conta IG Business | 1 chamada na Graph API |
| app_secret | Secret do seu app Meta (pra auto-refresh) | Meta Developer Portal |
Pré-requisitos da conta Instagram
1. Conta precisa ser Business ou Creator
No app do Instagram: Settings → Account → Switch to Professional Account → escolhe Business (recomendado pra analytics completo). Se já é, pula.
2. Conta IG precisa estar linkada a uma Página do Facebook
A Graph API só enxerga contas IG através de uma Facebook Page. Se você não tem Page:
- Vai em facebook.com/pages/create
- Cria uma Page tipo Business (qualquer nome — pode ser o nome da marca)
- Linka o Instagram em Page Settings → Linked Accounts → Instagram
instagram_business_account: null no Passo 5 e o fluxo inteiro trava.
1Criar (ou reusar) um Meta App
Abra developers.facebook.com/apps. Se já tem um app pro Stackln/Cadence, use o mesmo. Senão:
- Create App → tipo Business → dá um nome (ex: "Cadence Publisher")
- Dentro do app, Settings → Basic → copia estes dois valores:
| App ID | fica visível, copia direto |
| App Secret | clica "Show" → autentica → copia |
Adicionar os produtos necessários
No menu lateral + Add Product:
- Instagram Graph API — pra publicar
- Facebook Login for Business — pra o OAuth
2Conectar IG à Facebook Page
Se você já fez no pré-requisito, pula este. Senão:
- Abre a Facebook Page que você criou/tem
- Page Settings → Linked Accounts → Instagram → Connect Account
- Autentica com @clubinhodalia (ou a conta que quer conectar)
3Gerar User Access Token (curto)
Abra o Graph API Explorer:
- Canto superior direito: selecione seu app (o do Passo 1)
- Em User or Page, escolha Get User Access Token
- Clique Add a Permission e marque todos os escopos abaixo:
- Clica Generate Access Token
- Autoriza na popup (pode pedir 2FA)
- O campo
Access Tokenpreenche com um token começando emEAAx...
4Trocar por token long-lived (60 dias)
Abra um terminal, cole os seus valores e execute:
APP_ID="seu_app_id_do_passo_1"
APP_SECRET="seu_app_secret_do_passo_1"
SHORT_TOKEN="token_do_passo_3"
curl -G \
"https://graph.facebook.com/v24.0/oauth/access_token" \
-d "grant_type=fb_exchange_token" \
-d "client_id=$APP_ID" \
-d "client_secret=$APP_SECRET" \
-d "fb_exchange_token=$SHORT_TOKEN"
Resposta:
{
"access_token": "EAAxxxx...ESTE É O LONG-LIVED",
"token_type": "bearer",
"expires_in": 5184000
}
Guarda o access_token dessa resposta.
Vai ser a credencial principal.
5Pegar o business_account_id
Com o long-lived token, duas chamadas:
5a — Listar as pages que você gerencia
LONG_TOKEN="token_do_passo_4"
curl -G "https://graph.facebook.com/v24.0/me/accounts" \
-d "access_token=$LONG_TOKEN"
Resposta lista suas Pages. Pegue o id da Page linkada ao
@clubinhodalia:
{
"data": [
{
"name": "Clubinho da Lia",
"id": "12345678901234", // <- este
...
}
]
}
5b — Pegar o IG business account ligado a essa Page
PAGE_ID="id_da_page_do_5a"
curl -G "https://graph.facebook.com/v24.0/$PAGE_ID" \
-d "fields=instagram_business_account" \
-d "access_token=$LONG_TOKEN"
Resposta:
{
"id": "12345678901234",
"instagram_business_account": {
"id": "17841401234567890" // <- ESTE é o business_account_id
}
}
instagram_business_account: null:
a Page não está linkada a uma conta Instagram Business. Volta nos Pré-requisitos.
6Conectar no Cadence
Agora você tem tudo. No Cadence, na aba Instagram, clique em + Adicionar conta e preencha:
| Campo no Cadence | Valor |
|---|---|
| Access token | long-lived do Passo 4 |
| Business Account ID | id do Passo 5b (ex: 17841...) |
| App ID | do Passo 1 |
| App Secret | do Passo 1 (crítico pra auto-refresh) |
| Display name | opcional — ex: "Clubinho da Lia" |
Clica Adicionar. O backend vai validar o token, buscar o profile (username, followers, media_count) e armazenar.
O Cadence mantém o token vivo para sempre: a cada 24h um cron roda
refresh_token com seu app_secret, resetando o prazo pra +60 dias.
Você nunca mais precisa mexer.
Troubleshooting
"Invalid OAuth access token"
Token expirou (short-lived tem 1h). Volta no Passo 3, gera novo, e refaz o Passo 4.
"(#10) Application does not have permission for this action"
Faltou algum dos escopos no Passo 3. Apaga o token, volta pro Graph API Explorer e marca todos os 6 scopes listados.
"instagram_business_account: null"
A Page do Facebook não está linkada a uma conta IG Business. Solução: Page Settings → Linked Accounts → Instagram → Connect Account. Confirma que a conta IG está em modo Business (não Personal).
"The user must be an admin of the application"
Teu user do FB não é admin do app Meta. Vai em App Roles → Roles e se adiciona como Admin. Se o app foi criado por outra pessoa, ela precisa te promover.
Cadence diz "Invalid token or account"
Algum dos 4 valores está errado. Debug:
curl -G "https://graph.facebook.com/v24.0/$BUSINESS_ACCOUNT_ID" \
-d "fields=username,followers_count,media_count" \
-d "access_token=$LONG_TOKEN"
Se isso retorna JSON com username, as credenciais estão OK. Se erro, ajusta.
FAQ
Preciso passar por App Review da Meta?
Não pra usar você mesmo. Em Development mode, o app funciona pra admins/developers/testers registrados (até 25). Você só precisa de Review pra liberar pra outros usuários.
Posso conectar mais de uma conta?
Sim — repete os Passos 3–6 pra cada conta (cada uma tem seu business_account_id). O mesmo app_id e app_secret servem pra todas. O Cadence gerencia várias contas simultâneas.
Quanto tempo dura o token?
60 dias, com auto-refresh diário pelo Cadence → efetivamente ilimitado enquanto o `app_secret` estiver correto no banco.
E se eu trocar de app Meta depois?
Gera novo access_token e app_secret, vai em Instagram → ⋯ → Editar conta, cola os novos valores. Token e secret são swappable sem perder histórico.
O Cadence publica Reels e Stories também?
Feed image e Reel (vídeo) ✓. Stories ainda não está implementado no publisher — só carousel e feed single. Roadmap.