Vincular usuario a un empleado

Este endpoint permite vincular a un usuario existente con un empleado del mismo negocio.

PUT /api/v2/businesses/{businessId}/employees/{employeeId}/user

Además del identificador externo del negocio (businessId), en la URL habrá que especificar el identificador externo del empleado con el que se quiere vincular al usuario: employeeId. En el cuerpo de la petición, se incluye solamente el username del usuario previamente registrado en el sistema:

Cuerpo de la petición

Análisis del JSON
{
  "username": "string"
}
Detalles
  • username*: nombre de usuario. Debe ser único y estar ya registrado en el sistema. Normalmente, se utiliza el correo electrónico.

Ejemplo de la petición

A continuación, se muestra un ejemplo de la petición:

PUT /api/v2/businesses/BUSINESSID/employees/1006350/user
{
    "username": "test.user@orquest.com"
}

Si la petición se realiza correctamente (200 OK), la respuesta contendrá la información vinculada al usuario: username, email, nodes y roles.

Consideraciones

Si existía una vinculación previa con otro usuario o empleado, la relación se actualiza conforme a los datos definidos en la petición: el usuario anterior del empleado queda desvinculado de él, y si el usuario indicado ya estaba vinculado a otro empleado, también queda desvinculado de ese otro empleado. Son dos desvinculaciones silenciosas, sin ningún aviso en la respuesta.

Vincular no es una operación aislada sobre el vínculo usuario-empleado: como parte del proceso, los nodes del usuario se recalculan y se filtran a los del negocio de esta petición (mismo comportamiento que actualizar usuario). Si el usuario tenía nodos de otros negocios, puede perder visibilidad sobre ellos como efecto colateral de esta operación.

Códigos de error

Además de los errores comunes, este endpoint puede devolver los siguientes códigos:

Código Mensaje Descripción

404 Not Found

-

El employeeId de la URL no coincide con ningún empleado del negocio.

-

El username del cuerpo no coincide con ningún usuario del negocio.

-

El campo username falta o llega null en el cuerpo (la validación de este campo no se aplica realmente — ver nota más abajo).

400 Bad Request

User not found. []

El username existe, pero registrado en otro negocio distinto del de la petición.

Este endpoint tiene un manejo de errores propio que no sigue el formato general de la API: los tres 404 de arriba, y el 401 Forbidden/401 Service or node forbidden del catálogo común, se devuelven todos como respuestas sin cuerpo. Solo 401 Business forbidden (negocio inexistente) conserva el formato estándar con mensaje.

Enlaces de interés

¿Qué es un usuario?

¿Qué es un empleado?