MAZAM WABA Connector
API

Acoes de Mensagem

Marcar como lida, upload e download de midia via Meta Cloud API v25.0


Acoes de Mensagem

Endpoints para acoes sobre mensagens e gerenciamento de midia.

Autenticacao

Todas as requisicoes exigem o header:

Authorization: Bearer <API_KEY>

POST /message/markread

Marca uma mensagem recebida como lida (double blue check). A Meta envia o status read para o remetente.

Request Body:

{
  "instance_id": "uuid-da-instancia",
  "message_id": "wamid.HBgNNTUxMTk..."
}

Curl:

curl -X POST http://localhost:8200/message/markread \
  -H "Authorization: Bearer <API_KEY>" \
  -H "Content-Type: application/json" \
  -d '{
    "instance_id": "uuid-da-instancia",
    "message_id": "wamid.HBgNNTUxMTk..."
  }'

Resposta (200 OK):

{
  "success": true
}
CampoTipoObrigatorioDescricao
instance_idstringSimUUID da instancia
message_idstringSimWhatsApp Message ID (wamid.*) recebido no webhook

Nota: O message_id e o campo id que vem dentro de entry[].changes[].value.messages[] no payload do webhook.


POST /media/upload

Faz upload de um arquivo de midia para a Meta. Retorna um media_id que pode ser usado para enviar a midia em mensagens.

Request: multipart/form-data

CampoTipoObrigatorioDescricao
instance_idstringSimUUID da instancia
filefileSimArquivo de midia
typestringNaoMIME type (detectado automaticamente se omitido)

Tipos suportados:

TipoFormatosTamanho Max
ImagemJPEG, PNG5 MB
AudioAAC, MP3, MP4, AMR, OGG16 MB
VideoMP4, 3GPP16 MB
DocumentoPDF, DOC, DOCX, XLS, XLSX, PPT, PPTX, TXT100 MB
StickerWEBP500 KB (static) / 1 MB (animated)

Curl:

curl -X POST http://localhost:8200/media/upload \
  -H "Authorization: Bearer <API_KEY>" \
  -F "instance_id=uuid-da-instancia" \
  -F "file=@/caminho/para/arquivo.pdf"

Resposta (200 OK):

{
  "media_id": "1234567890"
}

Nota: O media_id retornado e valido por 30 dias na Meta. Use-o nos endpoints de envio de midia (/send/image, /send/document, etc.) passando o campo media_id ao inves de url.


POST /message/download

Baixa uma midia recebida em mensagem do WhatsApp. O media_id vem dentro do payload do webhook quando o usuario envia imagem, audio, video ou documento.

Request Body:

{
  "instance_id": "uuid-da-instancia",
  "media_id": "1234567890"
}

Curl:

curl -X POST http://localhost:8200/message/download \
  -H "Authorization: Bearer <API_KEY>" \
  -H "Content-Type: application/json" \
  -d '{
    "instance_id": "uuid-da-instancia",
    "media_id": "1234567890"
  }'

Resposta (200 OK):

{
  "url": "https://lookaside.fbsbx.com/whatsapp_business/attachments/...",
  "mime_type": "image/jpeg",
  "sha256": "abc123...",
  "file_size": 34567
}
CampoTipoDescricao
urlstringURL temporaria para download (expira em ~5 minutos)
mime_typestringTipo MIME do arquivo
sha256stringHash SHA-256 do arquivo
file_sizenumberTamanho em bytes

Importante: A URL retornada e temporaria. Para armazenamento permanente, faca download da URL e salve em seu proprio storage (S3, etc.).


Este guia foi útil?

Última atualização: 7 de abril de 2026

On this page