Guia · APIs de redes sociais para desenvolvedores

Chave de API do Instagram: o que você precisa de verdade

Por Antoine Blanco··7 min de leitura

Não existe chave de API do Instagram. A Meta emite um app ID e um app secret, e cada chamada é autorizada por um token de acesso ligado a uma conta profissional, obtido por OAuth e válido por 60 dias. O termo de busca é que está errado, não o seu entendimento. Tudo abaixo foi lido na documentação para desenvolvedores da Meta em 13 de novembro de 2026.

Por que não existe aquilo que você está procurando

A confusão faz sentido, porque outras plataformas funcionam assim mesmo. Uma chave de API do YouTube é uma string que você cola numa URL para ler dados públicos. Pinterest, Google Maps e quase todas as APIs de leitura te dão algo parecido.

O Instagram nunca faz isso. Não existe endpoint que devolva dados públicos do Instagram em troca de uma string no nível do projeto. Todo endpoint do Instagram age em nome de uma conta específica que deu permissão ao seu app, o que significa um token de usuário, não uma chave.

Modelo de chave de API Instagram
O que te identifica uma string no nível do projeto um app ID mais um token de acesso de usuário
Quem consente ninguém o dono da conta, por uma tela de OAuth
Lê dados públicos sim esse endpoint não existe
Expira não 60 dias, renovável
Tipo de conta exigido nenhum Conta profissional do Instagram, comercial ou de criador

Então o resto desta página é sobre os três objetos que substituem a chave: um app, uma conta profissional e um token.

O que você precisa antes de qualquer coisa funcionar

Uma conta profissional. Comercial ou de criador. Um perfil pessoal do Instagram está totalmente fora do alcance da API, em qualquer configuração. Mudar é grátis e leva um minuto no app do Instagram, e é o motivo número um para uma integração correta não devolver nada.

Um app da Meta. Criado no Meta App Dashboard, com o produto Instagram adicionado. É aí que vivem de fato as duas credenciais que as pessoas chamam de chave: o Instagram App ID, que vai nas requisições como client_id, e o Instagram App Secret. Os dois ficam em App Dashboard, Instagram, API setup with Instagram login, e depois Business login settings.

Os scopes certos. Quatro valores, e os nomes antigos business_* estão obsoletos:

Como conseguir um token de acesso da API do Instagram

Quatro chamadas. A documentação do Business Login for Instagram é a fonte de cada uma.

1. Mande o usuário para a janela de autorização.

https://www.instagram.com/oauth/authorize
  ?client_id=INSTAGRAM_APP_ID
  &redirect_uri=https://yourapp.com/auth
  &response_type=code
  &scope=instagram_business_basic,instagram_business_content_publish
  &state=anti_csrf_value

O redirect_uri tem que bater exatamente com um registrado no dashboard. Se o usuário aceitar, ele volta com um code.

2. Troque o código por um token de curta duração. O código vale uma hora e serve uma vez só. Ele chega com um #_ no fim que você remove antes de enviar.

curl -X POST https://api.instagram.com/oauth/access_token \
  -F client_id=INSTAGRAM_APP_ID \
  -F client_secret=INSTAGRAM_APP_SECRET \
  -F grant_type=authorization_code \
  -F redirect_uri=https://yourapp.com/auth \
  -F code=AQBx...

Você recebe de volta um access_token, o identificador user_id próprio do Instagram e as permissions concedidas. Esse token dura uma hora, o suficiente para fazer o passo 3 e mais nada.

3. Troque por um token de longa duração. Só do lado do servidor, porque a chamada leva seu app secret.

curl -G https://graph.instagram.com/access_token \
  -d grant_type=ig_exchange_token \
  -d client_secret=INSTAGRAM_APP_SECRET \
  -d access_token=SHORT_LIVED_TOKEN

A resposta traz expires_in: 5183944, ou seja 60 dias.

4. Renove antes do dia 60.

curl -G https://graph.instagram.com/refresh_access_token \
  -d grant_type=ig_refresh_token \
  -d access_token=LONG_LIVED_TOKEN

Três condições, todas documentadas e todas fáceis de falhar: o token precisa ter pelo menos 24 horas, não pode ter expirado ainda, e o usuário precisa ter concedido instagram_business_basic. Se a janela passar, não há recuperação. Um token de longa duração expirado não pode mais ser renovado, e o usuário precisa passar de novo pela tela de autorização.

Instagram Login ou Facebook Login: escolha a configuração primeiro

A Meta oferece dois jeitos de conectar, e eles não são intercambiáveis. Escolher o errado significa refazer o trabalho de OAuth.

Instagram API with Instagram Login API do Instagram com Facebook Login
Exige uma Página do Facebook não sim, ligada à conta
O usuário entra com Credenciais do Instagram Credenciais do Facebook, com permissões de admin da Página
Publicação de conteúdo sim sim
Moderação de comentários sim sim
Insights sim sim
Menções sim sim
As mensagens sim, de forma nativa pela Messenger Platform
Busca por hashtag não sim
Marcação de produtos não sim
Anúncios de parceria não sim

Para uma ferramenta de criador, o Instagram Login é o caminho mais leve: sem Página, sem checagem de permissão de admin, e com mensageria sem a Messenger Platform por cima. Use o Facebook Login quando precisar de busca por hashtag, marcação de produto ou anúncios de parceria, que não existem do outro lado. A duração dos tokens é idêntica nos dois casos: códigos de uma hora, tokens de curta duração de uma hora, tokens de longa duração de 60 dias.

O que nenhuma das duas te dá é o antigo caminho de leitura. A Basic Display API acabou, e o substituto para esse uso está coberto em a alternativa à Instagram Basic Display API. O detalhe endpoint por endpoint do que sobrou está em a Instagram Graph API em 2026.

A parte que quebra três meses depois

Conseguir um token é uma tarde. Manter os tokens vivos é o trabalho de verdade, e é onde as integrações pequenas apodrecem.

O relógio dos 60 dias corre por conta. Com uma conta dá para renovar na mão e lembrar. Com doze, você precisa de um job agendado que renove cada token bem antes de expirar, guarde o novo e te avise quando uma renovação falhar, porque a falha é silenciosa: o token velho segue funcionando até o dia em que não funciona mais.

Mais três jeitos de o mesmo sistema morder, nenhum deles culpa do seu código:

O mesmo padrão se repete em cada rede com um relógio diferente e uma falha silenciosa diferente, e é disso que tokens de acesso de redes sociais trata.

Quando parar de construir isso por conta própria

Se o Instagram é a única rede que você toca, faça você mesmo. Um app, um fluxo OAuth, um job de renovação é uma quantidade conhecida, e você mantém o controle total dos scopes.

A conta muda com a segunda rede. Cada uma acrescenta o próprio app, a própria revisão, a própria duração de token e o próprio motivo para desconectar de madrugada. É o que o PlugKit faz no lugar: Instagram, Facebook, LinkedIn, TikTok, YouTube, X, WhatsApp e Telegram atrás de uma API REST e um servidor MCP hospedado em https://api.plugkit.co/mcp, com o OAuth, a renovação e a reconexão resolvidos. São US$ 49 por mês para 5 contas conectadas, cancele quando quiser, ou US$ 97 para 30. Sete dias grátis, cartão no cadastro e nada cobrado antes do dia 7.

Isso não elimina a revisão de app da Meta, e nada elimina quando você publica sob o seu próprio app. O que some é o trabalho de credenciais por plataforma e os jobs de renovação. A comparação entre fornecedores está em o guia de APIs de redes sociais, e se quem publica é um agente e não um script, o servidor MCP do Instagram é o caminho mais curto.

Perguntas frequentes

O Instagram tem chave de API?

Não. A Meta emite um Instagram App ID e um Instagram App Secret para o seu app, e cada requisição é autorizada por um token de acesso de usuário obtido via OAuth. Não existe chave no nível do projeto que leia dados públicos do Instagram, porque esse endpoint não existe.

Como consigo um token de acesso da API do Instagram?

Mande o dono da conta para https://www.instagram.com/oauth/authorize, troque o código recebido em https://api.instagram.com/oauth/access_token por um token de uma hora, e depois troque esse em https://graph.instagram.com/access_token com grant_type=ig_exchange_token por um token de 60 dias. A conta precisa ser profissional.

Quanto tempo dura um token de acesso do Instagram?

Códigos de autorização e tokens de curta duração duram uma hora. Os de longa duração duram 60 dias e podem ser renovados assim que tiverem pelo menos 24 horas. Um token de longa duração expirado não pode ser renovado, então o usuário precisa autorizar de novo.

Posso usar a API do Instagram com uma conta pessoal?

Não. A API só alcança contas profissionais, comerciais ou de criador. Passar uma conta para profissional é grátis e leva um minuto no app do Instagram, e precisa ser feito antes do fluxo OAuth, não depois.

Preciso de uma Página do Facebook para a API do Instagram?

Só com a configuração do Facebook Login. A API do Instagram com Instagram Login funciona sem Página e cobre publicação, comentários, insights, menções e mensageria. Você precisa do caminho ligado a uma Página para busca por hashtag, marcação de produto e anúncios de parceria.

AB
Antoine BlancoFundador da PlugKit. Gerencia as próprias contas de Instagram, YouTube e X pela API e pelo servidor MCP descritos aqui.

Um plug para cada plataforma que seu agente usa

$49 por mês para 5 contas conectadas, cancele quando quiser. Todos os recursos em todos os planos.

Pegue sua chave de API →
Português ▾