Skip to main content
POST
/
asistencia
/
manual
Manual Entry
curl --request POST \
  --url https://api.example.com/asistencia/manual \
  --header 'Content-Type: application/json' \
  --data '
{
  "empleadoId": 123,
  "tipoAccion": "<string>",
  "hora": "<string>",
  "observaciones": "<string>",
  "unidadId": 123,
  "pausa": "<string>",
  "unidadAsignadaId": 123,
  "horaInicio": "<string>",
  "horaFin": "<string>",
  "fecha": "<string>"
}
'
{
  "success": true,
  "data": null,
  "message": "<string>"
}

Overview

This endpoint allows administrators to manually register attendance events for employees. It is used for correcting missed punches, backdating entries, or making administrative adjustments to attendance records.

Request Body

empleadoId
integer
required
The unique identifier of the employee for whom the manual entry is being made
tipoAccion
string
required
The type of attendance action being registered manually. Allowed values:
  • iniciarJornada - Start shift
  • finalizarJornada - End shift
  • finalizarJornadaDeposito - End shift with deposit
  • iniciarPausa - Start break
  • finalizarPausa - End break
hora
string
required
The time of the attendance event in HH:mm:ss format (e.g., “08:30:00”)
observaciones
string
required
Notes or comments explaining the reason for the manual entry. This field is mandatory for audit purposes
unidadId
integer
required
The ID of the unit/location where the attendance event occurred
pausa
string
Required when tipoAccion is iniciarPausa or finalizarPausa. Allowed values:
  • COMIDA - Meal break
  • OTRA - Other type of break
unidadAsignadaId
integer
The ID of the employee’s assigned unit (optional)

Response

success
boolean
Indicates whether the operation was successful
data
null
No data is returned for this endpoint
message
string
Confirmation message: “Asistencia registrada”

Example Requests

Manual Shift Start

cURL
curl -X POST https://api.integra.com/asistencia/manual \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "empleadoId": 123,
    "tipoAccion": "iniciarJornada",
    "hora": "08:00:00",
    "observaciones": "Empleado olvidó registrar entrada, verificado con supervisor",
    "unidadId": 5,
    "unidadAsignadaId": 5
  }'

Manual Break Start

cURL
curl -X POST https://api.integra.com/asistencia/manual \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "empleadoId": 123,
    "tipoAccion": "iniciarPausa",
    "hora": "13:00:00",
    "pausa": "COMIDA",
    "observaciones": "Sistema no registró pausa automáticamente",
    "unidadId": 5
  }'

Manual Shift End with Deposit

cURL
curl -X POST https://api.integra.com/asistencia/manual \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "empleadoId": 123,
    "tipoAccion": "finalizarJornadaDeposito",
    "hora": "17:30:00",
    "observaciones": "Ajuste por falla en kiosko al finalizar turno",
    "unidadId": 5
  }'

Response Example

Success Response
{
  "success": true,
  "data": null,
  "message": "Asistencia registrada"
}
Error Response
{
  "success": false,
  "message": "El ID del empleado no puede ser nulo"
}

Use Cases

Missed Punch Correction

When an employee forgets to clock in or out, administrators can use this endpoint to create the missing attendance record with proper documentation.

System Failure Recovery

If the kiosk or attendance system was unavailable, manual entries can be made to ensure accurate attendance records.

Time Adjustments

For approved schedule changes or corrections, this endpoint allows backdating of attendance events with proper audit trail.

Break Corrections

If break times were not properly recorded, they can be manually entered to maintain accurate work hour calculations.

Business Rules

  • All fields except pausa and unidadAsignadaId are mandatory
  • The pausa field is required only when tipoAccion involves break actions
  • The observaciones field is mandatory for audit and compliance purposes
  • Manual entries should follow the same business logic as automatic entries (e.g., cannot end a shift that wasn’t started)
  • Only authorized administrators should have access to this endpoint
  • All manual entries are logged with the administrator’s information for audit trail
  • Time values must be in valid HH:mm:ss format

Create Complete Shift

Create a complete shift record with both start and end times in a single operation. This is useful for backdating entire shifts.

Request Body

empleadoId
integer
required
Employee ID
unidadId
integer
required
Unit/location ID where shift occurred
horaInicio
string
required
Shift start time (HH:mm:ss format)
horaFin
string
required
Shift end time (HH:mm:ss format)
fecha
string
required
Date of the shift (yyyy-MM-dd format)
observaciones
string
required
Reason for manual entry

Response

{
  "data": null,
  "message": "Jornada completa registrada"
}

Create Complete Break

Create a complete break record with both start and end times in a single operation.

Request Body

empleadoId
integer
required
Employee ID
pausa
string
required
Break type: COMIDA or OTRA
horaInicio
string
required
Break start time (HH:mm:ss format)
horaFin
string
required
Break end time (HH:mm:ss format)
fecha
string
required
Date of the break (yyyy-MM-dd format)
observaciones
string
required
Reason for manual entry

Response

{
  "data": null,
  "message": "Pausa completa registrada"
}

Build docs developers (and LLMs) love