Raphael Serafim· Publicado em 07 de agosto de 2026· 8 min de leitura

API de Instagram e Messenger na mesma API do WhatsApp: uma instância, um padrão

API de Instagram Direct e Messenger oficiais na mesma API do WhatsApp: uma instância, um padrão Meta, o campo provider escolhe o canal. Sem criar app na Meta.

Ver como Markdown

Você não precisa manter três integrações para atender no WhatsApp, no Instagram Direct e no Messenger. Na WAME, os três canais oficiais vivem na mesma instância e falam o mesmo padrão (o envelope da Meta). Para trocar de canal, você muda um único campo: provider. Nada de criar app na Meta, montar três webhooks ou aprender três SDKs.

Se o seu time já usa a API de WhatsApp e agora precisa responder também no Direct e no Messenger, este artigo mostra por que isso pode ser uma extensão do que você já tem — e não um projeto novo do zero.

O problema: 3 canais quase sempre viram 3 integrações

Quando você decide atender oficialmente no Instagram Direct e no Messenger, o caminho tradicional é doloroso:

  • Três apps (ou permissões) diferentes no Meta for Developers, cada um com seu processo de revisão.
  • Três fluxos de autenticação e token, com System User, permissões e renovação manual para cada produto.
  • Três formatos de payload para aprender — o corpo de envio e o webhook do Instagram não são iguais aos do Messenger, que por sua vez diferem do WhatsApp.
  • Três webhooks para configurar, validar (verify token, assinatura HMAC) e manter no ar.

Na prática, cada canal novo é um mini-projeto: mais código, mais pontos de falha, mais superfície para manter. E, quando a Meta muda algo, você atualiza em três lugares. É aí que a maioria dos times desiste do multicanal — ou entrega uma integração frágil.

A solução WAME: 1 instância, 1 padrão

A WAME é Meta Business Partner (parceira oficial desde 2017, com mais de 50 mil instâncias ativas). Isso muda o ponto de partida: a infraestrutura oficial já existe e é mantida pela WAME. Você não precisa:

  • ❌ Criar um app no Meta for Developers.
  • ❌ Virar Tech Provider (Solution Partner) para operar os canais.
  • ❌ Montar webhook por produto, gerar e renovar token na mão.

Em vez disso, você conecta suas contas pelo Embedded Signup oficial da Meta — o mesmo fluxo seguro (OAuth + token criptografado) que já usa para o WhatsApp — e passa a ter WhatsApp, Instagram Direct e Messenger na mesma instância. Um único padrão de envio e de recebimento, no formato Meta, para os três.

Quer entender a credencial por trás disso? Veja WAME é parceira oficial da Meta. Para a visão geral do multicanal, temos a página API oficial de Instagram e Messenger.

A ideia central: você aprende um padrão e ganha três canais. O provider é o que decide para onde a mensagem vai.

Enviar nos 3 canais: mesmo método, só muda o provider

O envio é idêntico nos três canais. O provider é whatsapp por padrão; para Instagram Direct você usa instagram e para Messenger, messenger. Isso vale para os tipos suportados: text, template, button, audio, image, video e document.

Com o SDK Node/TypeScript (npm i @raphaelvserafim/client-api-whatsapp):

import { Wame, TypeMessage } from '@raphaelvserafim/client-api-whatsapp';

const wa = new Wame({ server: "https://us.api-wa.me", key: "YOUR_KEY" });

// WhatsApp (padrão)
await wa.message.send({ type: TypeMessage.TEXT, body: { to: "5511999999999", text: "Oi pelo WhatsApp" } });

// Instagram — mesmo método, só o provider
await wa.message.send({ type: TypeMessage.TEXT, body: { to: "IG_USER_ID", text: "Oi pelo Instagram", provider: "instagram" } });

// Messenger
await wa.message.send({ type: TypeMessage.TEXT, body: { to: "PSID", text: "Oi pelo Messenger", provider: "messenger" } });

A classe é Wame (WhatsApp é um alias depreciado). Se o seu fluxo é majoritariamente Instagram, dá para fixar o canal no client: new Wame({ server, key, provider: "instagram" }). A referência completa do SDK TypeScript está em /docs/sdk/ts.

Com PHP (composer require raphaelvserafim/client-php-api-wa-me):

use Api\Wame\Wame;
use Api\Wame\Provider;

$wa = new Wame(['server' => 'https://us.api-wa.me', 'key' => 'YOUR_KEY']);

$wa->message->sendText('5511999999999', 'Oi pelo WhatsApp');
$wa->message->sendText('IG_USER_ID', 'Oi pelo Instagram', Provider::INSTAGRAM);
$wa->message->sendText('PSID', 'Oi pelo Messenger', Provider::MESSENGER);

E, se você prefere HTTP puro, é o mesmo endpoint com o provider no corpo:

curl -X POST "https://us.api-wa.me/YOUR_KEY/message/text" \
  -H "Content-Type: application/json" \
  -d '{"to":"5511999999999","text":"Olá!","provider":"instagram"}'

A key da instância vai no path e a base é https://us.api-wa.me. Repare no destinatário: no WhatsApp é o telefone; no Instagram é o IG_USER_ID; no Messenger é o PSID. O resto do contrato é o mesmo.

Receber nos 3 canais: mesmo envelope de webhook

O recebimento segue a mesma lógica. Você configura o webhook uma vez, com um PUT na instância, e passa a receber os três canais no formato Meta:

curl -X PUT "https://us.api-wa.me/YOUR_KEY/instance" \
  -H "Content-Type: application/json" \
  -d '{"allowWebhook":true,"webhookFormat":"meta","webhookMessage":"https://seu-servidor/webhook"}'

A partir daí, todas as mensagens chegam no mesmo envelope. O campo de topo provider diz de qual canal veio — então um único handler resolve os três:

{
  "object": "wame",
  "provider": "instagram",
  "instance": "YOUR_INSTANCE_ID",
  "official": true,
  "entry": [{ "id": "...", "changes": [{ "field": "messages", "value": {
    "messaging_product": "whatsapp",
    "metadata": { "display_phone_number": "5511999990000", "phone_number_id": "YOUR_INSTANCE_ID" },
    "contacts": [{ "profile": { "name": "Fulano" }, "wa_id": "5511988887777" }],
    "messages": [{ "from": "5511988887777", "id": "wamid.XXX", "timestamp": "1700000000", "type": "text", "text": { "body": "Olá!" } }]
  }}]}]
}

Para uma mensagem do Messenger, o mesmo JSON chega com "provider": "messenger"; para o WhatsApp, com "provider": "whatsapp". A estrutura interna (entry, changes, messages) é a que você já conhece da Cloud API — por isso, se seu backend já processa webhooks de WhatsApp, ele já entende Instagram e Messenger com pouquíssima adaptação. Os detalhes e os tipos de evento estão em /docs/webhooks.

O provider no topo é a única ramificação que o seu código precisa. Roteie por ele e pronto: um envelope, três canais.

Quando recomendar essa abordagem

Uma instância com um padrão faz sentido especialmente quando:

  • Você já usa a API de WhatsApp da WAME e quer adicionar Instagram Direct e Messenger sem reescrever a integração.
  • Seu atendimento é omnichannel: o cliente inicia no Direct, migra para o WhatsApp, volta pelo Messenger — e você quer tudo no mesmo backend, com histórico coerente.
  • Você constrói para clientes (agência, SaaS, chatbot) e não quer manter três integrações por conta, nem virar Tech Provider.
  • Você quer reduzir manutenção: um formato, um webhook, um SDK — menos código para quebrar quando a Meta atualiza algo.

Quando não compensa? Se o seu produto vive de um canal só e não há intenção de multicanal no curto prazo, você pode começar apenas pelo WhatsApp — e habilitar os outros canais depois, sem trocar de arquitetura, já que o padrão é o mesmo.

Vale lembrar que a WAME oferece oficial (Cloud API) e não oficial (QR Code) na mesma plataforma. Para os canais da Meta com o padrão descrito aqui — Instagram Direct e Messenger oficiais — o caminho é a conexão oficial via Embedded Signup.

Comece agora

Se você chegou até aqui, a mensagem é simples: não construa três integrações. Conecte suas contas de Instagram e Messenger à mesma instância de WhatsApp que você já domina, envie mudando só o provider e receba tudo no mesmo envelope. Com 99,9% de uptime, suporte 24/7 em português e planos a partir de R$28,99/mês, dá para colocar os três canais no ar hoje.

Crie sua instância e conecte os canais no portal da WAME. Depois, use a referência do SDK TypeScript e a documentação de webhooks para plugar no seu backend — e a página API oficial de Instagram e Messenger para os detalhes de cada canal.

Um padrão. Uma instância. Três canais oficiais da Meta.

Pronto para automatizar seu WhatsApp?

Crie sua conta gratuita e comece a enviar mensagens pela API em minutos.

Começar grátis

Perguntas frequentes

Preciso criar um app no Meta for Developers para usar a API de Instagram e Messenger?+

Não. A WAME é Meta Business Partner e mantém o app aprovado, o webhook central e a renovação de token. Você conecta suas contas pelo fluxo oficial Embedded Signup e usa Instagram Direct, Messenger e WhatsApp na mesma instância, sem virar Tech Provider.

Como escolho entre WhatsApp, Instagram e Messenger no envio?+

É o mesmo método de envio nos três canais. Você só muda o campo provider no corpo da requisição: whatsapp (padrão), instagram ou messenger. Não há endpoints diferentes nem SDKs separados para cada canal.

O webhook de recebimento é diferente para cada canal?+

Não. Os três canais chegam no mesmo envelope de webhook no formato Meta. O campo provider indica de qual canal veio a mensagem (instagram, messenger ou whatsapp), então você trata tudo com um único handler.

As APIs de Instagram e Messenger são oficiais?+

Sim. A conexão usa a infraestrutura oficial da Meta via Embedded Signup, com OAuth e token criptografado. Você é dono das contas, vê os canais conectados e pode revogar o acesso quando quiser.

Quanto custa usar os três canais na WAME?+

Os planos começam a partir de R$28,99/mês. Você usa WhatsApp, Instagram Direct e Messenger na mesma instância e no mesmo padrão, com suporte 24/7 em português e 99,9% de uptime.

Continue lendo