---
title: "API de Instagram e Messenger na mesma API do WhatsApp: uma instância, um padrão"
description: "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."
url: "https://api-wa.me/blog/api-instagram-messenger-mesma-api-whatsapp"
language: "pt-BR"
og:type: "article"
published_time: "2026-08-07"
modified_time: "2026-08-07"
author: "Raphael Serafim"
keywords: "api instagram, api instagram direct, api messenger, api instagram e messenger, whatsapp instagram messenger api, api oficial meta"
reading_time: "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.

**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](/blog/wame-parceira-oficial-meta). Para a visão geral do multicanal, temos a página [API oficial de Instagram e Messenger](/api-oficial-instagram-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`):

```ts
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](/docs/sdk/ts).

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

```php
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:

```bash
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**:

```bash
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:

```json
{
  "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](/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](https://portal.api-wa.me/). Depois, use a [referência do SDK TypeScript](/docs/sdk/ts) e a [documentação de webhooks](/docs/webhooks) para plugar no seu backend — e a página [API oficial de Instagram e Messenger](/api-oficial-instagram-messenger) para os detalhes de cada canal.

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

## 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.
