Antylogic
Probar demoAcceso app

399 guías operativas

Secciones de Docs
DocsAccesos
Dispositivo

Crear usuario interno de ubicación

Crea en Marea Gran Via un usuario interno con credenciales propias de la ubicación. El usuario queda activo, con proveedor internal-credentials, credencial en LOCATION_NAMESPACE=marea-gran-via-2202b11a y membresías aceptadas; los roles iniciales se aplican después del alta.

En este artículo

Usa esta guía cuando necesites dar acceso interno a una persona del equipo o a un dispositivo de Marea Gran Via sin enviar una invitación. La credencial se crea dentro del namespace de la ubicación, no como usuario interno genérico de organización.

La creación del usuario, la asignación de roles y la asociación con una ficha de personal son operaciones separadas. Si el flujo empieza desde Personal, el usuario creado vuelve al formulario como createdUserId y la ficha de empleado se guarda después.

Antes de empezar

  • Sesión iniciada en Grupo Marea Demo con Marea Gran Via seleccionada; la app debe tener selectedOrgId y selectedLocationId.
  • Permiso users:manage en la ubicación para ver y enviar el alta.
  • La ubicación existe, pertenece a la organización y tiene un access_namespace asociado: LOCATION_NAMESPACE=marea-gran-via-2202b11a.
  • Nombre completo, User ID/login_id y contraseña de al menos 6 caracteres.
  • Permiso permissions:manage solo si se van a seleccionar roles iniciales; permissions:view solo permite ver la tabla.
  • Avatar opcional subido antes del alta mediante POST /api/app/files.

Instrucciones

  1. 1.

    Abrir Usuarios de Accesos

    En Marea Gran Via, entra en location/access?tab=users y abre la pestaña Usuarios. El botón Crear usuario aparece solo en scope de ubicación y con users:manage.

  2. 2.

    Iniciar el alta

    Pulsa Crear usuario para abrir location/access/users/create. El formulario empieza como employee; desde Accesos puedes cambiar a device.

  3. 3.

    Completar credenciales

    Introduce Nombre, User ID/login_id y una contraseña de 6 caracteres o más. En employee puedes añadir email y teléfono; en device la pantalla oculta y limpia esos campos.

  4. 4.

    Añadir avatar opcional

    Si necesitas avatar, súbelo antes de crear el usuario. El alta enviará el image_file_id devuelto por la subida; si falla, puedes continuar sin avatar cuando deje de estar subiendo.

  5. 5.

    Seleccionar roles iniciales

    Con permissions:manage, marca los roles iniciales visibles. La selección está en el formulario, pero no viaja en el POST de creación: cada rol se asigna después con su endpoint de roles.

  6. 6.

    Crear el usuario

    Pulsa Crear usuario. La app envía full_name, email opcional, phone_e164 opcional, image_file_id opcional, login_id, password y principal_type a POST /api/app/{orgId}/{locationId}/users/internal.

  7. 7.

    Revisar el resultado

    Tras el 201, la app invalida la lista, muestra Usuario creado y abre el detalle del usuario de ubicación. El detalle o listado posterior muestra la información de acceso interno.

  8. 8.

    Usar la variante desde personal

    Desde location/staff/create o location/staff/detail/:staffId, Crear usuario interno abre Crear usuario para empleado, fuerza employee y devuelve createdUserId al formulario de personal; guardar staff sigue siendo una acción aparte.

Validaciones y límites

  • No documentar organization/access/users/create como flujo operativo disponible: la creación interna documentable exige ubicación.
  • La pantalla no envía la mutación si falta selectedOrgId o selectedLocationId.
  • fullName, loginId y password son obligatorios; password menor de 6 caracteres se rechaza.
  • login_id se recorta, se normaliza a minúsculas y debe ser único dentro de LOCATION_NAMESPACE=marea-gran-via-2202b11a.
  • email, si se informa, se recorta, se normaliza a minúsculas, debe contener @ y no duplicar otro usuario normalizado.
  • principal_type vacío se trata como employee; solo se aceptan employee y device.
  • El usuario no edita namespace_code; el backend resuelve el namespace desde access_namespaces.location_id.
  • La contraseña se guarda como hash y no se devuelve en claro.
  • Los roles se asignan después del alta y no hay rollback del usuario si falla una asignación de rol.
  • Crear desde personal no guarda automáticamente staff y los usuarios internos device no son candidatos asociables a personal.

Resultado esperado

Marea Gran Via queda con un usuario interno activo, proveedor internal-credentials, credencial login_id/password en el namespace de la ubicación y membresías accepted en organización y ubicación. Si había roles seleccionados y permisos suficientes, se asignan después; si el flujo venía de Personal, el usuario queda listo para asociarse al guardar la ficha de empleado.

Artículos relacionados