Consultar restricciones por empleado

Este endpoint devuelve todas las restricciones aplicadas a un empleado.

GET /api/v2/businesses/{businessId}/services/{serviceId}/people/{employeeId}/constraints

Si los datos incluidos en la petición son correctos —businessId, serviceId y employeeId—, la respuesta contendrá la lista de restricciones que aplican al empleado, ya sean relativas a su contrato o a la regulación definida a nivel de nodo.

Ejemplo de respuesta

[
   {
        "id": "constraint.weekly_rested_assignable_limit",
        "parameters": {
            "min": 3,
            "notProportional": "false",
            "max": 3
        },
        "blocking": false,
        "from": "2026-04-28",
        "canceled": false,
        "constraintGroup": "Contract"
    },
    {
        "id": "constraint.max_consecutive_worked_days",
        "parameters": {
            "max": 6,
            "min": 1
        },
        "blocking": false,
        "from": "2021-03-11",
        "canceled": false,
        "constraintGroup": "Regulation"
    }
]
Detalles
  • id: identificador único de la restricción en el sistema.

  • parameters: objeto que agrupa los valores configurables específicos de cada restricción. El conjunto de claves, sus tipos de datos y las reglas de validación están definidos de forma independiente para cada tipo de restricción.

  • blocking: indica si la restricción es bloqueante (true) o no (false).

  • from: fecha a partir de la cual la restricción está activa, en formato yyyy-MM-dd.

  • canceled: indica si la restricción ha sido cancelada (true) o sigue activa (false).

  • constraintGroup: procedencia de la restricción. Los posibles valores son:

    • Regulation: la restricción proviene de una regulación definida a nivel de nodo.

    • Contract: la restricción proviene de un contrato del empleado.

    • RecruitmentPlanContract: la restricción proviene de un contrato simulado dentro del plan de contratación.

Como se puede apreciar en el ejemplo, la respuesta dependerá de las restricciones que tenga el empleado y de cómo se hayan definido sus parámetros.

Aspectos que tener en cuenta

Si el identificador de servicio especificado en la URL no existe en el negocio, la petición devolverá un error 404 Not Found indicando not exists.

Si el identificador de empleado especificado en la URL no existe, la petición devolverá un error.

La respuesta devuelve las restricciones en un formato compatible con el array constraints de un contrato, lo que permite utilizarlas directamente al crear o actualizar contratos con restricciones.

Enlaces de interés

¿Qué es una restricción?

¿Qué es un contrato? ¿Y un tipo de contrato?