curl --request PUT \
--url https://api.example.com/usuarios/actualizar/{user_id} \
--header 'Content-Type: application/json' \
--data '
{
"nombre": "<string>",
"email": "<string>",
"password": "<string>",
"rol": "<string>"
}
'{
"message": "Usuario actualizado correctamente.",
"usuario": {
"nombre": "Juan Carlos Pérez",
"email": "[email protected]",
"rol": "editor"
}
}
Update user profile information including name, email, password, and role
curl --request PUT \
--url https://api.example.com/usuarios/actualizar/{user_id} \
--header 'Content-Type: application/json' \
--data '
{
"nombre": "<string>",
"email": "<string>",
"password": "<string>",
"rol": "<string>"
}
'{
"message": "Usuario actualizado correctamente.",
"usuario": {
"nombre": "Juan Carlos Pérez",
"email": "[email protected]",
"rol": "editor"
}
}
Authorization: Bearer <jwt_token>
admin, editor, or visitanteNote: Only admins can change roles. Non-admin users attempting to set this field will have it ignored.{
"nombre": "Juan Carlos Pérez",
"email": "[email protected]",
"password": "newSecurePassword123",
"rol": "editor"
}
{
"message": "Usuario actualizado correctamente.",
"usuario": {
"nombre": "Juan Carlos Pérez",
"email": "[email protected]",
"rol": "editor"
}
}
curl -X PUT "https://api.tesisrutas.com/usuarios/actualizar/507f1f77bcf86cd799439011" \
-H "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..." \
-H "Content-Type: application/json" \
-d '{
"nombre": "Juan Carlos Pérez",
"email": "[email protected]"
}'
{
"detail": "No tienes permisos para actualizar este usuario."
}
{
"detail": "Usuario no encontrado."
}
{
"detail": "Not authenticated"
}
src/infrastructure/api/routers/usuario_router.py:34-81
This endpoint uses the ActualizarUsuarioUseCase which: