OverTime/Add
POST
https://customerapi.geovictoria.com/api/v1/OverTime/Add
Descripción
Registrar horas extra para uno o más usuarios de la empresa asociada al token de autenticación. Recibe un
array de horas extra (una operación por rango de fechas y usuario). La empresa se determina a partir
de las credenciales; no se envía en el request.
Request
Request Body
Array de objetos con los siguientes campos:
| Campos | Tipo de dato | Descripción |
|---|---|---|
| UserIdentifier | String | Identificador del usuario al que se le asignan las horas extra (ej. RUT, DNI). Debe corresponder a un usuario activo de la empresa. Requerido. |
| StartDateOvertime | String | Fecha de inicio de las horas extra, formato yyyyMMdd (ej. 20260701). Requerido. |
| EndDateOvertime | String | Fecha de fin de las horas extra, formato yyyyMMdd. Internamente se completa hasta las 23:59:59 del día. Requerido. |
| DurationBefore | String | Duración de las horas extra antes de la jornada, formato HH:mm. Opcional. |
| DurationAfter | String | Duración de las horas extra después de la jornada, formato HH:mm. Opcional. |
| OvertimeValueBefore | String | Valor (tipo) de la hora extra antes de la jornada. Debe ser un número entero que exista y esté habilitado en la empresa. Requerido. |
| OvertimeValueAfter | String | Valor (tipo) de la hora extra después de la jornada. Debe ser un número entero que exista y esté habilitado en la empresa. Requerido. |
| OvertimeReason | String | Motivo de la hora extra. Debe enviarse el Id tal como lo entrega el endpoint OverTime/GetReasons, y corresponder a un motivo existente y habilitado en la empresa. Opcional, salvo que se envíe OvertimeComment, en cuyo caso es requerido. |
| OvertimeComment | String | Comentario asociado al motivo de la hora extra. Máximo 500 caracteres. Opcional; si se envía, debe acompañarse de OvertimeReason. |
| OvertimeCreatedBy | String | Nombre/identificación de quién crea la hora extra. Opcional. |
| CreatedByIdentifier | String | Identificador del usuario creador de la hora extra. Si corresponde a un usuario activo, se registra su nombre; en caso contrario se registra como creada por la Customer API. Opcional. |
[
{
"UserIdentifier": "12345678-9",
"StartDateOvertime": "20260701",
"EndDateOvertime": "20260701",
"DurationBefore": "01:00",
"DurationAfter": "02:00",
"OvertimeValueBefore": "50",
"OvertimeValueAfter": "50",
"OvertimeReason": "kK9xQ2vHtA==",
"OvertimeComment": "Cierre de mes",
"CreatedByIdentifier": "11111111-1"
}
]
Importante
- El body es un array: permite cargar horas extra de varios usuarios/fechas en una sola
llamada. - UserIdentifier debe corresponder a un usuario activo de la empresa.
- Los campos OvertimeValueBefore y OvertimeValueAfter deben ser enteros y
corresponder a valores de hora extra existentes y habilitados en la empresa; en caso contrario la
solicitud es rechazada. - El OvertimeReason debe obtenerse desde el endpoint OverTime/GetReasons y
enviarse sin modificaciones. Si el motivo no existe o está deshabilitado en la empresa, la solicitud es
rechazada. - No se puede enviar OvertimeComment sin OvertimeReason. El comentario no
puede superar los 500 caracteres. - Las fechas usan el formato yyyyMMdd.
- La empresa no se envía en el body: se determina a partir del token de autenticación.
Response
Response Body
La respuesta es un objeto con el resultado de la operación:
| Campos | Tipo de dato | Descripción |
|---|---|---|
| Success | Boolean | Indica si la operación fue exitosa. |
| Message | String | Mensaje descriptivo del resultado (vacío o informativo en caso de éxito, detalle del error en caso de fallo). |
| Response | Boolean | Resultado de la ejecución: true si las horas extra se procesaron correctamente. |
Códigos
| Código | Descripción |
|---|---|
| 200 | Éxito |
| 400 | Error en el request |
Ejemplo response
{
"Success": true,
"Message": "",
"Response": true
}