Pular para o conteúdo principal

Documentation Index

Fetch the complete documentation index at: https://docs.ryzeapi.cloud/llms.txt

Use this file to discover all available pages before exploring further.

O módulo Chat agrupa tudo o que acontece depois que uma mensagem entra ou sai, gestão de contatos, organização com etiquetas, controle do estado dos chats (arquivar, fixar, silenciar, bloquear) e ações sobre mensagens individuais (editar, apagar, encaminhar, favoritar). É o módulo mais amplo da API: vai de uma chamada simples como “listar contatos” até fluxos completos como “criar uma etiqueta, atribuir a vários chats e depois listar tudo que tem essa etiqueta”.
Todas as rotas aceitam TokenAccount ou TokenInstance e validam ownership da instância antes de operar.

Endpoints

MétodoPathFunção
GET/api/chat/contacts/:instanceListar/buscar contatos
GET/api/chat/contactsByLabel/:instanceChats filtrados por etiqueta
GET/api/chat/getMessage/:instanceBuscar mensagem por ID
GET/api/chat/tag/:instanceListar etiquetas
POST/api/chat/tag/:instanceCriar etiqueta
DELETE/api/chat/tag/:instanceDeletar etiqueta
POST/api/chat/assignTag/:instanceAplicar etiqueta a chat
DELETE/api/chat/assignTag/:instanceRemover etiqueta de chat
POST/api/chat/archive/:instanceArquivar/desarquivar
POST/api/chat/markRead/:instanceMarcar mensagem como lida
POST/api/chat/markChatRead/:instanceMarcar chat inteiro como lido
POST/api/chat/pin/:instanceFixar/desafixar
POST/api/chat/favorite/:instanceFavoritar chat ou mensagem
POST/api/chat/mute/:instanceSilenciar
POST/api/chat/block/:instanceBloquear/desbloquear contato
POST/api/chat/presence/:instanceEnviar presença (typing/recording)
POST/api/chat/history/:instanceHistórico do chat
GET/api/chat/base64/:instanceMídia em base64
GET/api/chat/status/:instanceStatus de entrega de mensagem
GET/api/chat/poll/:instanceVotos de uma enquete
POST/api/chat/forward/:instanceEncaminhar mensagem
POST/api/chat/edit/:instanceEditar mensagem
DELETE/api/chat/delete/:instanceApagar mensagem
DELETE/api/chat/deleteChat/:instanceApagar chat inteiro

Contatos

Consulta de contatos sincronizados e filtragem por etiquetas.

Listar contatos

GET /api/chat/contacts/:instance

Contatos por etiqueta

GET /api/chat/contactsByLabel/:instance

Etiquetas (tags / labels)

Crie etiquetas, aplique aos chats e use-as como filtro, exatamente como o WhatsApp Business permite, mas via API.

Listar etiquetas

GET /api/chat/tag/:instance

Criar etiqueta

POST /api/chat/tag/:instance

Deletar etiqueta

DELETE /api/chat/tag/:instance

Atribuir etiqueta

POST /api/chat/assignTag/:instance

Desatribuir etiqueta

DELETE /api/chat/assignTag/:instance

Estado do chat

Controle como cada conversa aparece para o usuário do WhatsApp, arquivar, fixar, silenciar, favoritar, bloquear.

Arquivar chat

POST /api/chat/archive/:instance

Fixar chat

POST /api/chat/pin/:instance

Silenciar chat

POST /api/chat/mute/:instance

Favoritar chat ou mensagem

POST /api/chat/favorite/:instance

Bloquear / desbloquear

POST /api/chat/block/:instance

Leitura

Marcar mensagem como lida

POST /api/chat/markRead/:instance

Marcar chat como lido

POST /api/chat/markChatRead/:instance

Presença

Enviar presença (digitando/gravando)

POST /api/chat/presence/:instance, mostra typing ou recording para o contato.

Histórico

Solicitar histórico

POST /api/chat/history/:instance, mensagens armazenadas com filtros opcionais por data.

Mensagens

Ações sobre mensagens específicas, além de utilitários para baixar mídia, ler enquetes e checar status de entrega.

Buscar mensagem por ID

GET /api/chat/getMessage/:instance

Encaminhar mensagem

POST /api/chat/forward/:instance

Editar mensagem

POST /api/chat/edit/:instance

Apagar mensagem

DELETE /api/chat/delete/:instance

Apagar chat inteiro

DELETE /api/chat/deleteChat/:instance

Mídia em base64

GET /api/chat/base64/:instance

Status de entrega

GET /api/chat/status/:instance

Votos de enquete

GET /api/chat/poll/:instance

Identificadores aceitos

A maioria dos endpoints aceita os mesmos formatos para identificar chat ou destino. A tabela abaixo resume:
EndpointAceita
Maioria (number)Número (5511...), JID privado (...@s.whatsapp.net ou ...@lid), JID grupo (...@g.us), JID newsletter
markRead em grupoExige sender (JID do autor da mensagem, ...@s.whatsapp.net ou ...@lid)
forward (to)Mesmo conjunto que number
Sobre @lid (LinkedID): identificador alternativo que o WhatsApp usa para usuários individuais quando o número de telefone não está exposto (privacidade em comunidades, grupos grandes, etc.). É equivalente ao ...@s.whatsapp.net para fins de roteamento, qualquer endpoint que aceite JID privado também aceita @lid. Use o JID exato vindo de webhook ou de respostas anteriores da API; não tente converter @lid em número.

Janelas do WhatsApp

AçãoLimite
Editar mensagem~15 minutos após envio
Apagar para todos (deleteForEveryone: true)~2 dias após envio
Após a janelaApenas exclusão local (delete_for_me)

Padrões de uso

Workflow de etiquetas

# 1. Criar etiqueta
curl -X POST "https://ryzeapi.cloud/api/chat/tag/$Instance_Name" \
  -H "token: $Token_Instance" \
  -H "Content-Type: application/json" \
  -d '{"name":"VIP","color":3}'

# 2. Aplicar a um chat
curl -X POST "https://ryzeapi.cloud/api/chat/assignTag/$Instance_Name" \
  -H "token: $Token_Instance" \
  -H "Content-Type: application/json" \
  -d '{"number":"5511999999999","tagId":"1"}'

# 3. Listar chats com a etiqueta
curl "https://ryzeapi.cloud/api/chat/contactsByLabel/$Instance_Name?labelIds=1" \
  -H "token: $Token_Instance"

# 4. Remover etiqueta do chat
curl -X DELETE "https://ryzeapi.cloud/api/chat/assignTag/$Instance_Name?number=5511999999999&tagId=1" \
  -H "token: $Token_Instance"

Workflow de moderação

# 1. Marcar como lido
curl -X POST "https://ryzeapi.cloud/api/chat/markChatRead/$Instance_Name" \
  -H "token: $Token_Instance" \
  -H "Content-Type: application/json" \
  -d '{"number":"5511999999999","read":true}'

# 2. Silenciar 8h
curl -X POST "https://ryzeapi.cloud/api/chat/mute/$Instance_Name" \
  -H "token: $Token_Instance" \
  -H "Content-Type: application/json" \
  -d '{"number":"5511999999999","mute":true,"duration":"8h"}'

# 3. Arquivar
curl -X POST "https://ryzeapi.cloud/api/chat/archive/$Instance_Name" \
  -H "token: $Token_Instance" \
  -H "Content-Type: application/json" \
  -d '{"number":"5511999999999","archive":true}'

# 4. Bloquear (último recurso)
curl -X POST "https://ryzeapi.cloud/api/chat/block/$Instance_Name" \
  -H "token: $Token_Instance" \
  -H "Content-Type: application/json" \
  -d '{"number":"5511999999999","block":true}'

Relacionados

Enviar mensagens

Enviar conteúdo antes de gerenciar.

Eventos em tempo real

Webhooks message.exchange, message.status e label.update.