Avisos
Los avisos permiten comunicar información importante a los empleados de forma directa. Puedes crear avisos masivos o individuales.
Obtener todos los avisos
Obtiene la lista completa de avisos de la organización.
Método: GET /notifications
Respuesta exitosa (200)
[
{
"id": 3,
"createdAt": "2026-07-03T13:12:55.314Z",
"updatedAt": "2026-07-03T13:12:55.314Z",
"deletedAt": null,
"message": "Hola",
"notifyFrom": "2025-09-30T11:00:00Z",
"notifyWhen": "enter",
"notifyTo": null,
"repeat": false,
"employeeNotifications": [
{
"sent": false,
"sentAt": null,
"sentWhen": "",
"employee": {
"id": 158,
"createdAt": "2026-04-14T19:07:49.037Z",
"updatedAt": "2026-06-18T18:38:58.466Z",
"deletedAt": null,
"name": "Juan Perez",
"mobileID": "3595c6b9-f3ef-430d-a465-bc8b72d1b449",
"mobileEnabled": true,
"faceRecognition": null,
"internalID": null,
"dni": 212121,
"email": null,
"phoneNumber": null,
"category": {
"id": 78,
"createdAt": "2026-04-14T19:07:48.957Z",
"updatedAt": "2026-04-14T19:07:48.957Z",
"deletedAt": null,
"name": "SECRETARIA",
"areaID": 42,
"area": {
"id": 42,
"createdAt": "2026-04-14T19:07:48.946Z",
"updatedAt": "2026-04-14T19:07:48.946Z",
"deletedAt": null,
"name": "ADMINISTRACION",
"colorCode": "#D4E3C7"
}
},
"archived": false
}
}
],
"createdBy": "Ana Gómez",
"sent": false,
"organization": {
"id": 0,
"name": "",
"photoColor": ""
}
}
]createdBy es el nombre del usuario que creó o modificó el aviso por última vez. Si la última operación se hizo a través de la API, viene vacío.
Códigos de respuesta
| Código | Descripción |
|---|---|
| 200 | Exitoso |
| 401 | No autorizado |
| 500 | Error interno del servidor |
Obtener un aviso específico
Obtiene los detalles completos de un aviso. A diferencia del listado, la categoría de cada empleado no incluye el área.
Método: GET /notifications/:id
Parámetros
| Parámetro | Tipo | Descripción |
|---|---|---|
id | string | ID del aviso |
Respuesta exitosa (200)
{
"id": 3,
"createdAt": "2026-07-03T13:12:55.314Z",
"updatedAt": "2026-07-03T13:12:55.314Z",
"deletedAt": null,
"message": "Hola",
"notifyFrom": "2025-09-30T11:00:00Z",
"notifyWhen": "enter",
"notifyTo": null,
"repeat": false,
"employeeNotifications": [
{
"sent": false,
"sentAt": null,
"sentWhen": "",
"employee": {
"id": 158,
"createdAt": "2026-04-14T19:07:49.037Z",
"updatedAt": "2026-06-18T18:38:58.466Z",
"deletedAt": null,
"name": "Juan Perez",
"mobileID": "3595c6b9-f3ef-430d-a465-bc8b72d1b449",
"mobileEnabled": true,
"faceRecognition": null,
"internalID": null,
"dni": 212121,
"email": null,
"phoneNumber": null,
"category": {
"id": 78,
"createdAt": "2026-04-14T19:07:48.957Z",
"updatedAt": "2026-04-14T19:07:48.957Z",
"deletedAt": null,
"name": "SECRETARIA",
"areaID": 42
},
"archived": false
}
}
],
"createdBy": "Ana Gómez",
"sent": false,
"organization": {
"id": 0,
"name": "",
"photoColor": ""
}
}Retorna un objeto de aviso detallado.
Códigos de respuesta
| Código | Descripción |
|---|---|
| 200 | Exitoso |
| 404 | Aviso no encontrado |
| 500 | Error interno del servidor |
Crear avisos
Crea un aviso para empleados específicos de la organización o para todos. El campo notifyWhen indica cuándo se muestra el aviso y puede tener estos 3 valores: enter (al fichar entrada), exit (al fichar salida) o both (en cualquiera de los 2 casos anteriores).
message,notifyFromynotifyWhenson obligatorios.- Si
createToAllEmployeesestrue, el aviso se crea para todos los empleados de la organización. Si esfalse, hay que enviar enemployeeIDla lista de IDs de los empleados. Los IDs que no pertenecen a la organización se ignoran. repeatsolo se aplica si se envíanotifyTo.
Método: POST /notifications
Body requerido
{
"createToAllEmployees": false,
"employeeID": [158, 161],
"message": "Hola",
"notifyFrom": "2025-09-30T11:00:00Z",
"notifyTo": null,
"notifyWhen": "enter",
"repeat": false
}Respuesta exitosa (201)
No retorna contenido, solo confirma la creación.
Códigos de respuesta
| Código | Descripción |
|---|---|
| 201 | Aviso creado exitosamente |
| 400 | Solicitud inválida, falta employeeID o ningún empleado coincide con los IDs enviados |
| 500 | Error interno del servidor |
Actualizar un aviso
Actualiza un aviso que todavía no está activo (su notifyFrom es posterior al momento de la solicitud). Se deben enviar message, notifyFrom, notifyTo, notifyWhen y repeat, que reemplazan los valores actuales. En employees se indican los empleados a agregar (add) o quitar (delete) del aviso. El aviso tiene que quedar con al menos un empleado.
Método: PUT /notifications/:id
Parámetros
| Parámetro | Tipo | Descripción |
|---|---|---|
id | string | ID del aviso |
Body
{
"message": "Recordá firmar el recibo",
"notifyFrom": "2026-11-02T08:00:00-03:00",
"notifyTo": "2026-11-06T20:00:00-03:00",
"notifyWhen": "both",
"repeat": true,
"employees": [
{ "action": "add", "employeeID": 170 },
{ "action": "delete", "employeeID": 158 }
]
}Respuesta exitosa (204)
No retorna contenido.
Códigos de respuesta
| Código | Descripción |
|---|---|
| 204 | Actualizado exitosamente |
| 400 | Solicitud inválida, el aviso ya está activo, el empleado ya está (o no está) en el aviso, o el aviso quedaría sin empleados |
| 404 | Aviso o empleado no encontrado |
| 500 | Error interno del servidor |
Eliminar un aviso
Elimina un aviso de forma permanente.
Método: DELETE /notifications/:id
Respuesta exitosa (200)
{
"message": "deleted successfuly",
"deleted": true
}Códigos de respuesta
| Código | Descripción |
|---|---|
| 200 | Eliminado exitosamente |
| 404 | Aviso no encontrado |
| 500 | Error interno del servidor |

