Crear limitaciones de empleado

Este endpoint permite crear limitaciones de empleado para realizar determinadas tareas.

POST /api/v1/business/{businessId}/employees/{employeeId}/locationLimitations

La URL debe contener el identificador de negocio (businessId) y el identificador del empleado (employeeId).

A continuación, se expone una explicación de cada uno de los campos que conforman el cuerpo de la petición.

Los campos obligatorios están marcados con un asterisco (*).

Cuerpo de la petición

Análisis del JSON
{
  "lag": 0,
  "locationLimitations": [
    {
      "id": "string",
      "locationId": "string",
      "product": "string",
      "from": "string",
      "to": "string",
      "zone": "string",
      "location": "string"
    }
  ]
}
Detalles
  • lag*: número de días previos a la fecha actual que se consideran al gestionar la petición.

  • locationLimitations*: listado de limitaciones que se van a definir para el empleado. Cada una de ellas deberá contener los siguientes datos:

    • id: identificador interno de la limitación. No es necesario definirlo, el sistema lo generará automáticamente.

    • locationId: identificador interno de la tarea. No es necesario indicarlo.

    • product*: identificador externo del producto o sección.

    • from*: fecha de inicio del periodo de limitación en formato yyyy-MM-dd.

    • to: fecha de fin del periodo de limitación en formato yyyy-MM-dd. Puede enviarse null si no se conoce la fecha de fin.

    • zone: identificador externo de la zona. Si no se especifica una zona, la limitación se establecerá para la tarea en la zona general.

    • location*: identificador externo de la tarea para la que se establece la limitación.

Ejemplo de la petición

Una vez realizado el análisis de los distintos campos, se muestra un ejemplo de la petición:

POST /api/v1/business/BUSINESSID/employees/EMPLOYEEID/locationLimitations
{
  "lag": 0,
  "locationLimitations": [
    {
      "product": "0001-GENERAL",
      "from": "2025-09-30",
      "to": null,
      "zone": "Z1",
      "location": "01"
    },
    {
      "product": "0001-GENERAL",
      "from": "2025-10-15",
      "to": "2025-10-25",
      "zone": "Z1",
      "location": "02"
    }
  ]
}

Si los datos de la petición son correctos, la petición devolverá un estado 200 OK y se habrán establecido las limitaciones para el empleado en las tareas indicadas.

Aspectos que tener en cuenta

Si el producto indicado en el cuerpo de la petición no existe en el negocio, la petición devolverá un error 404 Not Found, especificando en el mensaje not exits.

Si el identificador externo de la zona no se corresponde con ninguna zona del producto, la petición devolverá un error indicando No zone found.

Si el identificador externo de la tarea no se corresponde con ninguna tarea habilitada para el producto o zona indicada, la petición devolverá un error 404 Not Found, especificando en el mensaje Location not found.

Para visualizar las limitaciones en la interfaz, el empleado debe tener previamente definida la aptitud en esa tarea.

Enlaces de interés

¿Qué es una tarea? ¿Y la aptitud en una tarea?

¿Qué es el lag en una petición?