Saltar a contenido

POST /api/v2/incident/:id/thread

Añade un mensaje al hilo de una incidencia de fichaje. Solo el empleado dueño de la incidencia puede añadir mensajes.

Autenticación

Authorization: Bearer <token>

Path Parameters

Parámetro Tipo Obligatorio Descripción
id number ID de la incidencia

Body (JSON)

Campo Tipo Obligatorio Descripción
response string Contenido del mensaje

Ejemplo de petición

curl -X POST "$HOST/api/v2/incident/123/thread" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "response": "Mi justificación para esta incidencia"
  }'

Respuesta exitosa (201)

{
  "status": "success",
  "data": {
    "thread": {
      "id": 45,
      "incidentId": 123,
      "employeeId": 40,
      "response": "Mi justificación para esta incidencia",
      "senderType": "user",
      "createdAt": "2025-01-15T10:00:00.000Z",
      "employee": {
        "id": 40,
        "name": "Juan",
        "lastName": "Pérez"
      }
    }
  }
}

Campos del thread

Campo Tipo Descripción
id number ID único del mensaje
incidentId number ID de la incidencia
employeeId number ID del empleado que envió el mensaje
response string Contenido del mensaje
senderType string Siempre "user" en este endpoint
createdAt string Fecha de creación (ISO 8601)
employee object Datos del empleado

Errores

Código Mensaje Descripción
400 employeeId missing from token Token inválido
400 Invalid incident id ID no válido
400 response is required Mensaje vacío o no proporcionado
400 Cannot add thread to a closed incident La incidencia ya está cerrada
403 Incident does not belong to this employee La incidencia no pertenece al empleado
404 Incident not found Incidencia no existe
401 Unauthorized Token no proporcionado o expirado

Eventos de Socket

Al crear un mensaje, se emiten los siguientes eventos: - incident_{incidentId}: con el objeto thread creado - listen_notify_update_all: notificación general de nuevo mensaje