Em poucas palavras
- Oficial: login Meta no painel ou link compartilhável; destinatário = IGSID; janela de 24h
- Não oficial: usuário e senha (ou link);
acceptInstagramTerms: true; warm-up em conta nova - Nos dois casos você usa a mesma API; só muda como conecta a conta
Antes de começar
- Uma chave de API (
sk_live_...ousk_test_...para sandbox) - Permissões de instância e envio na chave. Veja Escopos
- Nos exemplos, troque
sk_live_xxxxxpela sua chave
Começando agora? Use
sk_test_... e confira o resultado na Caixa sandbox.- Conexão oficial
- Conexão não oficial
1. Conectar a conta
Três caminhos, escolha o que combina com sua integração:1A, Pelo painel
- Instagram → Nova conexão → Oficial
- Faça login com a Meta (ou cole credenciais manuais no draft)
- Quando o status ficar ativo, anote o id da instância
1B, Pela API com link para o cliente
shareableLink.hostedUrl para o cliente. Na página ele vê Continuar com a Meta. Quando terminar, a instância fica ACTIVE.1C, Pela API com credenciais Meta
Embedded (após Facebook Login no navegador):2. Como obter o IGSID do destinatário
No modo oficial, o campoto usa o IGSID (ID scoped da Page), não @username.- Webhook
instagram.received: campofromna mensagem inbound - API
GET /v1/instagram/messages/inbound/{id}após o cliente enviar DM - Painel: detalhe da mensagem recebida
3. Enviar o primeiro DM
4. Depois do primeiro envio
Configure o webhook Meta em{sua_base}/webhooks/meta/instagram, escute instagram.received e status de envio. Para hide de comentários, use as rotas de comments na referência da API.Todos os tipos de envio
Na referência da API, abra Enviar mensagem no Instagram (POST /v1/instagram/messages) e escolha o exemplo no playground: Texto, Imagem, Vídeo, Áudio, Documento, Agendada, IGSID oficial ou username não oficial.

