Actualizar el estado de los entrenamientos de un curso
Este endpoint permite actualizar la fecha y el estado de los entrenamientos de la asignación de un curso.
PATCH /api/v2/businesses/{businessId}/services/{serviceId}/employees/{employeeId}/course-assignments/{courseAssignmentId}/trainings
A continuación, se expone una explicación detallada de cada uno de los campos que pueden conformar el cuerpo de la petición, siendo algunos de ellos obligatorios para que esta se realice de manera exitosa.
|
Todos los campos son obligatorios. |
Cuerpo de la petición
| Análisis del JSON |
|---|
Detalles
|
Ejemplo de la petición
Una vez realizado el análisis de los distintos campos, se muestra un ejemplo de la petición:
PATCH /api/v2/businesses/BUSINESSID/services/SERVICEID/employees/EMPLOYEEID/course-assignments/COURSEASSIGNMENTID/trainings
{
"updates": [
{
"trainingId": "TRN-CAJ-NOR",
"date": "2026-10-19",
"status": "ATTENDED"
},
{
"trainingId": "TRN-CAJ-TPV",
"date": "2026-10-19",
"status": "ATTENDED"
},
{
"trainingId": "TRN-CAJ-ARQ",
"date": "2026-10-21",
"status": "PENDING"
}
]
}
Si la petición es correcta, la respuesta será un 200 OK con la información del curso actualizada.
Consideraciones
La petición debe incluir todos los entrenamientos de la asignación, aunque solo se quiera modificar alguno de ellos. Los entrenamientos se identifican por su trainingId dentro del curso de la asignación.
Las fechas deben respetar el orden de los entrenamientos del curso. La fecha de inicio de la asignación pasa a ser la de su primer entrenamiento.
Los entrenamientos con fecha futura deben tener el estado PENDING.
No se pueden modificar entrenamientos cuya fecha sea anterior a 3 meses, ni mover un entrenamiento a una fecha anterior a ese límite.
Aprobación
Al actualizar los entrenamientos, la aprobación del curso se revoca siempre: approved pasa a false, aunque no haya cambiado ningún dato. Para volver a aprobar el curso, se debe usar esta petición.
Si se registra un resultado nuevo en algún entrenamiento (un estado distinto de PENDING que no tenía antes), el empleado debe tener aprobados y vigentes los cursos requisito del curso.
Códigos de error
Además de los errores comunes, este endpoint puede devolver los siguientes códigos:
| Código | Mensaje | Descripción |
|---|---|---|
|
Course assignment not found: <courseAssignmentId> |
El |
Course not found for assignment: <courseId> |
El curso de la asignación ya no existe. |
|
Training not found in the assignment course: <trainingId> |
Alguno de los entrenamientos indicados no pertenece al curso de la asignación. |
|
|
Invalid training status: <status> |
El campo |
trainingDates must contain exactly the course trainings |
La petición no incluye todos los entrenamientos de la asignación. |
|
Training dates must respect the training order |
Las fechas indicadas no respetan el orden de los entrenamientos del curso. |
|
Cannot edit training with date <date>: it is more than 3 months in the past |
Alguno de los entrenamientos de la asignación tiene una fecha anterior a hace 3 meses. |
|
Cannot set training date to <date> |
Alguna de las fechas indicadas es anterior a hace 3 meses. |
|
Future training <trainingId> must have status PENDING |
Algún entrenamiento con fecha futura tiene un estado distinto de |
|
error.course_requirements_not_fulfilled |
El empleado no tiene aprobados y vigentes todos los cursos requisito. El mensaje incluye los nombres de los cursos pendientes. |
Enlaces de interés
¿Qué es un curso?
¿Qué es la asignación de un curso?