Skip to main content
PUT
Update User

Actualizar usuario

Actualice una cuenta de usuario existente con nueva información.

Endpoint

Descripción

Este endpoint permite a los administradores actualizar una cuenta de usuario existente. Puede modificar los detalles del usuario, como el nombre, el correo electrónico, la función, el nivel de licencia y otras configuraciones de la cuenta.

Autenticación

Requerido: Clave API con privilegios de administrador

Parámetros de ruta

Cuerpo de solicitud

Solicitud de ejemplo

Respuesta exitosa

Código de estado: 200 OK

Campos de respuesta

Ejemplo de uso

JavaScript

Pitón

rizo

Respuestas de error

400 Solicitud incorrecta

401 No autorizado

403 Prohibido

404 no encontrado

409 Conflicto

Validaciones y reglas de negocio

  • Valor de licencia: Debe estar en licencias permitidas (Essential, Growth, Ultra, Early Access). Los valores no válidos devuelven 400.
  • Capacidad de licencia: Aplicada a través de checkLicenseCapacity; devuelve 400 cuando el nivel seleccionado está lleno.
  • Guardia de degradación de licencia: si el cambio a un nivel inferior reduce la cuota de índice personal, el cambio se bloquea cuando el recuento de índice personal actual excede INDEX_QUOTAS[new_license]; devuelve 400 con orientación explícita.
  • Normalización del correo electrónico: minúsculas y recortadas antes de la validación y el almacenamiento.
  • Normalización del nombre de usuario: minúsculas y recortadas antes de la validación y el almacenamiento.
  • Formato de correo electrónico: validación de expresiones regulares simple; los correos electrónicos no válidos devuelven 400.
  • Formato de nombre de usuario: debe coincidir con ^[a-z0-9.-]{3,30}$; Los nombres de usuario no válidos devuelven 400.
  • Singularidad: email, username y name deben seguir siendo únicos; Los conflictos regresan 409.

Normalización y almacenamiento

  • email y username siempre se guardan en minúsculas y recortados.

Formas de error típicas

400 Licencia no válida

Licencia 400 no disponible

La degradación de la licencia 400 supera la cuota

400 Correo electrónico no válido

400 Nombre de usuario no válido

409 Conflicto (singularidad)

Roles de usuario

Niveles de licencia

Estado de la cuenta

Casos de uso

  • Gestión de roles: actualización de roles de usuario para control de acceso
  • Actualizaciones de licencia: cambio de niveles de licencia de usuario
  • Mantenimiento de cuenta: actualización de información y metadatos del usuario
  • Gestión de estado: Activar o suspender cuentas de usuario
  • Actualizaciones de perfil: modificación de nombres de usuario, correos electrónicos u otros detalles

Límites de tarifas

  • Predeterminado: 100 solicitudes por minuto
  • Diario: 10.000 solicitudes por día
  • Mensual: 300.000 solicitudes por mes

Notas

  • Sólo los administradores pueden actualizar las cuentas de usuario.
  • Las direcciones de correo electrónico deben ser únicas para todos los usuarios.
  • Las actualizaciones de contraseña son opcionales y solo se aplicarán si se proporcionan
  • Las actualizaciones de metadatos se fusionan con los metadatos existentes.
  • La marca de tiempo updatedAt se actualiza automáticamente en operaciones exitosas

Autorizaciones

Authorization
string
header
requerido

API key authentication using Bearer token format. Example: Authorization: Bearer sk-your-api-key-here

Parámetros de ruta

userId
string
requerido

User ID to update

Cuerpo

application/json
name
string

User's full name

Ejemplo:

"John Doe Updated"

username
string

Unique username

Ejemplo:

"johndoe_updated"

email
string<email>

User's email address

Ejemplo:

"john.updated@example.com"

password
string

User's new password (optional)

Ejemplo:

"newsecurepassword123"

role
enum<string>

User's role

Opciones disponibles:
admin,
user,
globalReader
Ejemplo:

"user"

license
enum<string>

User's license tier

Opciones disponibles:
Essential,
Growth,
Ultra,
Early Access
Ejemplo:

"Growth"

status
enum<integer>

User status (0=inactive, 1=active)

Opciones disponibles:
0,
1
Ejemplo:

1

roleId
string

Custom role ID (MongoDB ObjectId)

Ejemplo:

"60a7c8f5e8b4f5001f7a8c24"

setupCompleted
boolean

Whether user setup is completed

Ejemplo:

true

isVerified
boolean

Whether user is verified

Ejemplo:

true

Respuesta

User updated successfully

success
boolean
Ejemplo:

true

message
string
Ejemplo:

"User updated successfully"

user
object