Saltar a contenido

Chats y mensajes

Métodos API para obtener metadatos de conversaciones de ChatHub, administrar estados y revisar cadenas de mensajes históricas.

URL: https://chatapi.smsbat.com


1. Obtener todos los chats

Obtenga una lista de chats con filtrado dinámico y paginación.

Solicitar - Método: OBTENER - URL: /api/chat/chats - Autorización: Token al portador (obligatorio)

Parámetros de consulta

Parámetro Tipo Descripción
página entero Número de página. Predeterminado: 1
por_página entero Artículos por página. Predeterminado: 20
buscar cadena Búsqueda de texto (por ejemplo, nombre, teléfono)
fuente entero Enumeración de fuente de chat (por ejemplo, 1 para Viber Bot, 2 para Telegram)
fecha fechahora Recupera chats entre dos fechas (requiere dos claves de parámetros idénticas en la URL). Ej: ?fecha=2026-01-28&fecha=2026-01-29
tg_user_id entero ID de usuario de Telegram
teléfono cadena Número de teléfono
estado entero 0 = Nuevo, 1 = Abierto, 2 = Esperando, 3 = En pausa, 4 = Cerrado
organizaciónId entero Delimitar por organización
IdOperador entero Limitar por operador asignado

Respuesta (200 OK)

{
  "total": 124,
  "items": [
    {
       "id": 123,
       "theme": "Support Ticket #491",
       "operator": {
           "id": 21,
           "name": "Jane",
           "photo": "url_to_photo.png"
       },
       "chatStatus": 1,
       "countUnread": 3
    }
  ]
}


2. Cambiar el estado del chat

Actualiza el estado asignado de una sesión de chat específica.

Solicitar - Método: PONER - URL: /api/chat/status - Autorización: Token al portador - Encabezados: Tipo de contenido: aplicación/json

Cuerpo:

{
  "id": 123,
  "status": 1
}

Valores de enumeración de estado: - 0: Nuevo (Recién generado) - 1: Abierto (Manejado activamente por el operador) - 2: Esperando (Esperando respuesta del usuario) - 3: OnPause (estado en pausa) - 4: Cerrado (Archivado)


3. Eliminar un chat

Elimina permanentemente un chat a través de su ID única.

Solicitar - Método: ELIMINAR - URL: /api/chat/chats/{id} - Autorización: Token al portador

Respuesta (200 OK) Devuelve un HTTP 200 para confirmar la eliminación exitosa. El cuerpo suele estar vacío o estrictamente "OK"`.


4. Recuperar mensajes de chat

Vuelca todos los mensajes enviados y recibidos históricamente dentro de un chat en particular.

Solicitar - Método: OBTENER - URL: /api/chat/chats/{chatId}/messages - Autorización: Token al portador

Respuesta (200 OK)

[
  {
        "id": 1,
        "chatId": 123,
        "message": "Hello, how can I help?",
        "phone": "380936670003",
        "author": 0,
        "status": 3,
        "date": "2025-04-01T09:46:24.687Z",
        "operator": {
          "id": 21,
          "name": "Jane"
        },
        "messageType": 0
  }
]
Autores: - 0: Operador - 1: Cliente - 2: robot del sistema - 3: Cuenta comercial de Viber

Tipos de mensajes: - 0: Texto - 1: Foto - 2: Archivo


5. Actualizar el estado de los mensajes

Marca un mensaje (o varios mensajes) dentro de un chat activo con nuevos estados de entrega.

Solicitar - Método: PONER - URL: /api/chat/mensajes/estado - Autorización: Token al portador - Encabezados: Tipo de contenido: aplicación/json

Cuerpo:

{
  "status": 3,
  "messageIds": [1, 2, 3]
}
(El estado 3 marca los ID de los mensajes enviados como "Leídos")