1. Usando o Canal Whatsapp
Documentação técnica das API do Messagefy
  • Introdução
  • Começando
  • Guia de Integração
  • Collections Postman
  • OnBoarding
    • OnBoarding para Organizações
  • Me
    • Introdução
    • Sobre
      GET
  • Contas
    • Introdução
    • Criar conta
      POST
    • Listar contas
      GET
    • Buscar por id
      GET
    • Atualizar conta
      PUT
    • Deletar conta
      DELETE
  • API Key
    • Introdução
    • Criar apikey
      POST
    • Listar ApiKeys
      GET
    • Buscar por ID
      GET
    • Atualizar apikey
      PUT
    • Deletar apiKey
      DELETE
  • Administrando Canais
    • Introdução
    • WebHook
      • Criar canal de Webhook
    • Whatsapp
      • Criar canal de Whatsapp
      • Status do Canal Whatsapp
      • Solicitar QRCode
      • Solicitar Pair Code
      • Solicitar Desconectar o número
    • Outbox
      • Listar Mensagens no Outbox do Canal
      • Obter detalhes da Mensagem no Outbox do Canal
      • Reenviar Múltiplas Mensagens no Outbox do Canal
      • Cancelar Mensagem no Outbox do Canal
    • Listar canais
      GET
    • Buscar por id
      GET
    • Atualizar canal
      PUT
    • Deletar canal
      DELETE
    • Transferir canal
      POST
  • Usando o Canal Whatsapp
    • Introdução
    • Contatos e Grupos
      • Solicitar contatos
      • Solicitar informações do contato
      • Solicitar grupos
      • Solicitar presença de contato (online/offline)
      • Solicitar Chats
      • Solicitar informação do grupo
    • Enviando Mensagens
      • Texto, imagem, audio, video, documentos e sticker
      • Enviar contatos
      • Enviar lista de contato
      • Marcar mensagens como lida
    • Excluindo e Editando Mensagens
      • Apagar mensagem para todos
      • Editar mensagem
    • Recuperar Messagens Antigas
      POST
  • Recebendo WebHooks
    • Guia Completo de WebHooks
    • Mensagens Recebidas
      • TEXT
      • CONTACT_MESSAGE
      • CONTACTS_MESSAGE
    • Status do canal
    • QRCode gerado retorno
    • Lista de contatos
    • Lista de grupos
    • Mensagem entregue
    • Mensagem lida
    • Download Disponivel
    • Localização e Localização em tempo real
    • Lista de Histórico
    • Ligação recebida e realizada
    • Lista de contatos do grupo
    • Lista de chats
    • Alteração de Grupo
  • Raiz
  • Esquemas
    • Eventos de WebHook
      • Eventos de Conexão
        • PAIR_CODE_GENERATED_RESPONSE: PairCode de conexão
        • INSTANCE_USER_CONNECT_TIMEOUT: Usuário não realizou Login
        • DISCONNECTED: Celular desconectado
        • CONNECTED: Celular conectado
      • Eventos de Mensagens
        • EchoMessage: Eco de Mensagem enviada
      • Eventos de Status de Mensagens
        • MESSAGE_SENT: Mensagem enviada
        • MESSAGE_DELIVERED: Mensagem entregue
        • MESSAGE_READ: Mensagem lida
    • ContatoWhatsapp
    • ContactResponseInfo
    • AccountResponse
    • Organization
    • ResourcePlanResponse
    • ChannelType
    • ChannelStatus
    • Provider
  1. Usando o Canal Whatsapp

Introdução

Bem-vindo à documentação da seção de Mensagens da API Messagefy. Esta seção é dedicada a desenvolvedores que buscam integrar o envio de conteúdo multicanal em suas aplicações. Todos os tipos de mensagens são enviados através de um endpoint unificado, simplificando o processo de integração.

Endpoint Unificado e Autenticação#

Todas as operações de envio de mensagens são centralizadas no seguinte endpoint:
Endpoint: POST /api/v1/message/sendmessage
Para garantir a segurança, todas as requisições devem ser autenticadas utilizando uma chave de API. A chave deve ser incluída no cabeçalho (header) da requisição, no campo api-key.

Estrutura de Requisição Padrão#

A estrutura do corpo (body) da requisição é consistente para todos os tipos de mensagem, utilizando o formato application/json. Os campos principais são channelId e content.
channelId (string): O identificador único do canal pelo qual a mensagem será enviada.
content (object): Um objeto que contém os detalhes da mensagem, incluindo o destinatário (to) e o tipo de conteúdo (type).
O objeto to especifica o destino da mensagem, como um número de WhatsApp, e é obrigatório em todas as requisições.

Tipos de Conteúdo Suportados#

A API suporta uma variedade de tipos de conteúdo, cada um identificado por um valor específico no campo type dentro do objeto content. A tabela abaixo detalha os tipos suportados e seus respectivos campos adicionais.
Tipo de ConteúdoValor do typeCampos Adicionais e Descrição
Texto SimplesTEXTtext (string): O conteúdo textual da mensagem.
isForwarded (boolean, opcional): Indica mensagem encaminhada.
ImagemIMAGEbase64 (string): Imagem codificada em Base64.
caption (string): Legenda para a imagem.
filename (string): Nome do arquivo (ex: foto.png).
mimetype (string): Tipo MIME (ex: image/png).
isForwarded (boolean, opcional): Indica mensagem encaminhada.
DocumentoDOCUMENTbase64 (string): Arquivo codificado em Base64.
caption (string): Descrição do documento.
filename (string): Nome do arquivo (ex: relatorio.pdf).
mimetype (string): Tipo MIME (ex: application/pdf).
isForwarded (boolean, opcional): Indica mensagem encaminhada.
ÁudioAUDIObase64 (string): Arquivo de áudio codificado em Base64.
filename (string): Nome do arquivo (ex: mensagem.mp3).
mimetype (string): Tipo MIME (ex: audio/mpeg).
isForwarded (boolean, opcional): Indica mensagem encaminhada.
VídeoVIDEObase64 (string): Arquivo de vídeo codificado em Base64.
caption (string): Legenda para o vídeo.
filename (string): Nome do arquivo (ex: tutorial.mp4).
mimetype (string): Tipo MIME (ex: video/mp4).
isForwarded (boolean, opcional): Indica mensagem encaminhada.
Lista de GruposGROUPSNenhum campo adicional. Este endpoint está em fase de testes e sua funcionalidade pode ser alterada.

Resposta da API#

Após uma requisição bem-sucedida (200 OK), a API retornará um objeto JSON contendo um packageId. Este identificador único pode ser utilizado para rastrear o status do envio da mensagem.
{
  "packageId": "pkg-id"
}

Responder/Citar Mensagem#

Qualquer tipo de mensagem (texto, imagem, vídeo, áudio, documento) pode ser enviado como resposta a uma mensagem anterior. Para isso, basta incluir o campo opcional quotedMessage no objeto content.

Estrutura do quotedMessage#

CampoTipoObrigatórioDescrição
messageIdstringSimO ID da mensagem original que está sendo respondida.
participantstringSimO JID completo do remetente da mensagem original.

Formato do participant#

O campo participant deve conter o ID do remetente da mensagem original. Esse ID pode ser um dos seguintes formatos, por exemplo:
LID: 111111111@lid
JID: 551199999999@s.whatsapp.net

Exemplo: Resposta com Texto#

{
  "channelId": "seu-channel-id",
  "content": {
    "type": "TEXT",
    "to": {
      "type": "WHATSAPP",
      "id": "5511999999999@s.whatsapp.net"
    },
    "text": "Esta é uma resposta à mensagem anterior!",
    "quotedMessage": {
      "messageId": "ABCD1234567890",
      "participant": "123456789012345@lid"
    }
  }
}

Comportamento em Grupos#

Em conversas de grupo, o campo participant é especialmente importante pois identifica qual membro do grupo enviou a mensagem original. Sem este campo, clientes móveis podem não exibir corretamente a citação.
⚠️ IMPORTANTE: O campo participant é obrigatório para que a resposta seja exibida corretamente em clientes móveis (iOS/Android). Clientes web podem funcionar sem este campo, mas para garantir compatibilidade total, sempre inclua ambos os campos.

Excluir Mensagem#

Para excluir uma mensagem enviada anteriormente, utilize o endpoint dedicado de exclusão. A exclusão é do tipo "para todos" — a mensagem será removida tanto para o remetente quanto para o destinatário.
Endpoint: DELETE /api/message/deletemessage

Estrutura da Requisição#

CampoTipoObrigatórioDescrição
channelIdstringSimO identificador único do canal.
messageIdstringSimO ID da mensagem no WhatsApp.
chatIdstringSimO ID do chat ou grupo no WhatsApp.

Resposta da API#

Após uma requisição bem-sucedida (200 OK), a API retornará um objeto JSON contendo um packageId e o próprio messageId usado na requisição.
⚠️ IMPORTANTE: A exclusão de mensagens NÃO TEM A JANELA DE TEMPO VALIDADA. Isto é, se uma mensagem for deletada depois de 48 horas (janela estipulada pelo WhatsApp atualmente, pode mudar), a API vai retornar sucesso (200 OK), mas A MENSAGEM NÃO SERÁ ALTERADA/REMOVIDA no aplicativo do destinatário.
{
  "packageId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
  "messageId": "A1B2C3D4E5F67890123456"
}

Editar Mensagem#

Para editar o conteúdo de uma mensagem de texto já enviada, utilize o endpoint de edição.
Endpoint: PUT /api/message/editmessage

Estrutura da Requisição#

CampoTipoObrigatórioDescrição
channelIdstringSimO identificador único do canal.
messageIdstringSimO ID da mensagem no WhatsApp.
chatIdstringSimO ID do chat ou grupo no WhatsApp.
newTextstringSimO novo texto da mensagem.

Resposta da API#

Após uma requisição bem-sucedida (200 OK), a API retornará um objeto JSON contendo um packageId e o próprio messageId usado na requisição.
⚠️ IMPORTANTE: A edição de mensagens NÃO TEM A JANELA DE TEMPO VALIDADA. Isto é, se uma mensagem for editada depois de 15 minutos (janela estipulada pelo WhatsApp atualmente, pode mudar), a API vai retornar sucesso (200 OK), mas A MENSAGEM NÃO SERÁ ALTERADA no aplicativo do destinatário.
{
  "packageId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
  "messageId": "A1B2C3D4E5F67890123456"
}

Navegue pelos endpoints nesta seção para ver exemplos de código detalhados, incluindo cURL, JavaScript, Java e Swift, que facilitarão a sua integração.
Modificado em 2026-01-24 19:28:43
Página anterior
Transferir canal
Próxima página
Solicitar contatos
Built with