💛PUT user/profile
Nom de l'API : /user/profile (PUT)
Description : Cette API permet aux utilisateurs authentifiés de mettre à jour leur profil et les informations liées à leur espace de travail. Elle gère à la fois les données utilisateur et les données de l'espace de travail.
Endpoint : /user/profile
Méthode : PUT
Authentification : Requise
Paramètres d'entrée :
user (type: object) : Informations de l'utilisateur à mettre à jour
workspace_info (type: object) : Informations de l'espace de travail à mettre à jour
workspace_id (type: text) : Identifiant de l'espace de travail
Fonctionnement détaillé :
Get Record From users :
Récupère les informations de l'utilisateur actuel
Utilise l'ID de l'utilisateur authentifié (auth:id)
Retourne le résultat sous le nom "current_user"
Query All Records From workspace :
Récupère les informations de l'espace de travail de l'utilisateur
Filtre :
Join avec workspace_users sur workspace_users.users_id == current_user.id
db:workspace.id == db:workspace.id (probablement pour s'assurer que l'espace existe)
Retourne le résultat sous le nom "current_workspace"
Get Record From messages :
Récupère le message d'erreur potentiel
Filtre : internal_name == "settings_info_error"
Retourne le résultat sous le nom "error_message"
Precondition :
Vérifie que l'espace de travail existe
Condition : var:current_workspace|is_empty == false
Message d'erreur : error_message
Type d'erreur : Standard
Edit Record In users :
Met à jour les informations de l'utilisateur
Trouve l'utilisateur par son ID (current_user.id)
Champs modifiables : email, password (et potentiellement d'autres champs non visibles dans l'image)
Retourne le résultat sous le nom "updated_user"
Edit Record In workspace :
Met à jour les informations de l'espace de travail
Trouve l'espace de travail par son ID (current_workspace.id)
Champs modifiables :
name : input:object workspace_info.name
users : probablement une liste d'utilisateurs associés à l'espace de travail
Retourne le résultat sous le nom "updated_workspace"
Get Record From messages :
Récupère le message de confirmation
Filtre : internal_name == "settings_updated"
Retourne le résultat sous le nom "response"
Réponse : L'API renvoie un objet JSON (var: response) contenant probablement :
Un message de confirmation (response.message)
Les informations mises à jour de l'utilisateur (updated_user)
Les informations mises à jour de l'espace de travail (updated_workspace)
Gestion des erreurs :
Si l'espace de travail n'existe pas : Renvoie le message d'erreur défini dans "error_message"
Sécurité :
L'API nécessite une authentification
Vérifie que l'utilisateur a accès à l'espace de travail avant toute modification
Notes pour les développeurs :
Assurez-vous de valider et de nettoyer toutes les entrées utilisateur avant de les enregistrer dans la base de données
Considérez l'ajout de vérifications supplémentaires pour s'assurer que l'utilisateur a les droits nécessaires pour modifier l'espace de travail
Cette API gère à la fois les mises à jour du profil utilisateur et de l'espace de travail, ce qui pourrait nécessiter une gestion soignée des transactions en cas d'échec partiel de la mise à jour.
Considérations de sécurité :
Assurez-vous que les mots de passe sont correctement hachés avant d'être stockés dans la base de données
Vérifiez que l'utilisateur a les permissions nécessaires pour modifier les informations de l'espace de travail, en particulier si la modification des utilisateurs associés est autorisée
Gestion des erreurs :
En cas d'échec de la mise à jour de l'une des tables (users ou workspace), assurez-vous que les changements sont annulés pour maintenir la cohérence des données
Cette API offre une fonctionnalité complète pour mettre à jour à la fois le profil utilisateur et les informations de l'espace de travail en une seule opération, ce qui nécessite une gestion soignée des transactions et des vérifications de sécurité.
Dernière mise à jour