Crear un servicio

Este endpoint permite crear un nuevo servicio dentro del negocio.

POST /api/v2/businesses/{businessId}/services

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.

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

Cuerpo de la petición

Análisis del JSON
{
  "newServiceOuterId": "string",
  "newServiceName": "string",
  "copyFromServiceOuterId": "string",
  "timeZone": "string",
  "firstDayOfWeek": 1,
  "parentOuterId": "string"
}
Detalles
  • newServiceOuterId: identificador externo del nuevo servicio. Aunque no sea obligatorio, se recomienda establecerlo para que pueda ser utilizado en operaciones posteriores de integración. Debe ser único en el negocio.

  • newServiceName*: nombre del nuevo servicio.

  • copyFromServiceOuterId: identificador externo del servicio que se tomará como referencia en caso de realizar una copia.

  • timeZone*: zona horaria en la que se creará el servicio. Es obligatorio indicar un TZ identifier de esta lista.

  • firstDayOfWeek*: primer día de la semana. Es obligatorio incluir un valor del 1 (lunes) al 7 (domingo).

  • parentOuterId*: identificador externo del nodo al que se vinculará el servicio.

Ejemplo de la petición

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

{
    "newServiceOuterId": "1327",
    "newServiceName": "STORE 1327",
    "timeZone": "Africa/Freetown",
    "firstDayOfWeek": 1,
    "copyFromServiceOuterId": "0001",
    "parentOuterId": "PN"
}

Aspectos que tener en cuenta

Si el identificador externo indicado para el nuevo servicio ya existe dentro del negocio, la petición devolverá un error 409 - Conflict indicando en el mensaje ID already exists.

Si no se envía el nombre del nuevo servicio, la petición devolverá un error 406 - Not Acceptable indicando en el mensaje must not be null.

Si no se envía el campo firstDayOfWeek o el valor no es uno de los permitidos, la petición devolverá un error 400 - Bad Request indicando en el mensaje Invalid firstDayOfWeek. Must be an integer between 1 (monday) and 7 (sunday)".

Si se envía el campo copyFromServiceOuterId, se copian todas las entidades dependientes del servicio que se haya indicado como referencia: productos, localizaciones, zonas, límite de empleados, plantillas de necesidades, distribución de empleados, horarios de servicio, parámetros de servicio, regulaciones, roles de empleado, etc.

Si el identificador externo del nodo (parentOuterId) no coincide con ninguno configurado a nivel de negocio, la petición devolverá error 404 - Not Found indicando en el mensaje Node not found.

Enlaces de interés

¿Qué es un servicio?

¿Qué es un nodo?