Saltar al contenido 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.

El módulo Chat agrupa todo lo que ocurre después de que un mensaje entra o sale: gestión de contactos, organización con etiquetas, control del estado del chat (archivar, fijar, silenciar, bloquear) y acciones sobre mensajes individuales (editar, eliminar, reenviar, favorito). Es el módulo más amplio de la API: desde una llamada simple como “listar contactos” hasta flujos completos como “crear una etiqueta, asignarla a varios chats, luego listar todo lo que tiene esa etiqueta”.
Cada ruta acepta TokenAccount o TokenInstance y valida la propiedad de la instancia antes de operar.

Endpoints

MethodPathFunción
GET/api/chat/contacts/:instanceListar/buscar contactos
GET/api/chat/contactsByLabel/:instanceChats filtrados por etiqueta
GET/api/chat/getMessage/:instanceBuscar mensaje por ID
GET/api/chat/tag/:instanceListar etiquetas
POST/api/chat/tag/:instanceCrear etiqueta
DELETE/api/chat/tag/:instanceEliminar etiqueta
POST/api/chat/assignTag/:instanceAplicar etiqueta al chat
DELETE/api/chat/assignTag/:instanceQuitar etiqueta del chat
POST/api/chat/archive/:instanceArchivar/desarchivar
POST/api/chat/markRead/:instanceMarcar mensaje como leído
POST/api/chat/markChatRead/:instanceMarcar todo el chat como leído
POST/api/chat/pin/:instanceFijar/desfijar
POST/api/chat/favorite/:instanceMarcar chat o mensaje como favorito
POST/api/chat/mute/:instanceSilenciar
POST/api/chat/block/:instanceBloquear/desbloquear contacto
POST/api/chat/presence/:instanceEnviar presencia (escribiendo/grabando)
POST/api/chat/history/:instanceHistorial del chat
GET/api/chat/base64/:instanceMedia en base64
GET/api/chat/status/:instanceEstado de entrega del mensaje
GET/api/chat/poll/:instanceVotos de la encuesta
POST/api/chat/forward/:instanceReenviar mensaje
POST/api/chat/edit/:instanceEditar mensaje
DELETE/api/chat/delete/:instanceEliminar mensaje
DELETE/api/chat/deleteChat/:instanceEliminar el chat completo

Contactos

Consulta los contactos sincronizados y filtra por etiquetas.

Listar contactos

GET /api/chat/contacts/:instance

Contactos por etiqueta

GET /api/chat/contactsByLabel/:instance

Etiquetas (tags / labels)

Crea etiquetas, aplícalas a chats y úsalas como filtros, exactamente lo que WhatsApp Business permite, pero vía API.

Listar etiquetas

GET /api/chat/tag/:instance

Crear etiqueta

POST /api/chat/tag/:instance

Eliminar etiqueta

DELETE /api/chat/tag/:instance

Asignar etiqueta

POST /api/chat/assignTag/:instance

Desasignar etiqueta

DELETE /api/chat/assignTag/:instance

Estado del chat

Controla cómo se muestra cada conversación al usuario de WhatsApp, archivar, fijar, silenciar, favorito, bloquear.

Archivar chat

POST /api/chat/archive/:instance

Fijar chat

POST /api/chat/pin/:instance

Silenciar chat

POST /api/chat/mute/:instance

Marcar chat o mensaje como favorito

POST /api/chat/favorite/:instance

Bloquear / desbloquear

POST /api/chat/block/:instance

Lectura

Marcar mensaje como leído

POST /api/chat/markRead/:instance

Marcar chat como leído

POST /api/chat/markChatRead/:instance

Presencia

Enviar presencia (escribiendo/grabando)

POST /api/chat/presence/:instance, muestra typing o recording al contacto.

Historial

Solicitar historial

POST /api/chat/history/:instance, mensajes almacenados con filtros opcionales por fecha.

Mensajes

Acciones sobre mensajes específicos, además de utilidades para descargar media, leer encuestas y consultar el estado de entrega.

Buscar mensaje por ID

GET /api/chat/getMessage/:instance

Reenviar mensaje

POST /api/chat/forward/:instance

Editar mensaje

POST /api/chat/edit/:instance

Eliminar mensaje

DELETE /api/chat/delete/:instance

Eliminar el chat completo

DELETE /api/chat/deleteChat/:instance

Media en base64

GET /api/chat/base64/:instance

Estado de entrega

GET /api/chat/status/:instance

Votos de encuesta

GET /api/chat/poll/:instance

Identificadores aceptados

La mayoría de los endpoints aceptan los mismos formatos para identificar un chat o destino. La tabla de abajo los resume:
EndpointAcepta
Mayoría (number)Número (5511...), JID privado (...@s.whatsapp.net o ...@lid), JID de grupo (...@g.us), JID de newsletter
markRead en gruposRequiere sender (JID del autor del mensaje, ...@s.whatsapp.net o ...@lid)
forward (to)Mismo conjunto que number
Sobre @lid (LinkedID): un identificador alternativo que WhatsApp utiliza para usuarios individuales cuando el número telefónico no está expuesto (privacidad en comunidades, grupos grandes, etc.). Es equivalente a ...@s.whatsapp.net para fines de enrutamiento, cualquier endpoint que acepte un JID privado también acepta @lid. Usa el JID exacto que viene de un webhook o de respuestas previas de la API; no intentes convertir @lid en un número.

Ventanas de WhatsApp

AcciónLímite
Editar mensaje~15 minutos después del envío
Eliminar para todos (deleteForEveryone: true)~2 días después del envío
Después de la ventanaSolo eliminación local (delete_for_me)

Patrones de uso

Flujo de etiquetas

# 1. Crear 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 un 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 con la etiqueta
curl "https://ryzeapi.cloud/api/chat/contactsByLabel/$Instance_Name?labelIds=1" \
  -H "token: $Token_Instance"

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

Flujo de moderación

# 1. Marcar como leído
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 por 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. Archivar
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 mensajes

Envía contenido antes de gestionarlo.

Eventos en tiempo real

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