Gestion des Comptes Utilisateurs
Vue d'ensemble
Cette section présente l'ensemble des endpoints dédiés à la gestion complète des comptes utilisateurs de notre API. Elle constitue le cœur du système d'authentification et de gestion des profils utilisateurs.
Fonctionnalités couvertes
Notre API de gestion des comptes offre une solution complète pour :
Gestion des comptes
- Création et enregistrement de nouveaux comptes utilisateurs
- Consultation et mise à jour des informations de profil
- Gestion des mots de passe (changement et réinitialisation)
Vérification et sécurité
- Vérification des adresses e-mail et numéros de téléphone
- Activation des comptes via clés de vérification
- Processus de récupération de mot de passe sécurisé
Gestion des fichiers
- Téléversement et téléchargement de fichiers de profil
- Gestion des images de profil et de couverture
Structure de l'API
Tous les endpoints suivent la convention REST et utilisent le préfixe /api/v1/account
. L'authentification est requise pour la plupart des opérations, garantissant ainsi la sécurité des données utilisateur.
Cette documentation détaille chaque endpoint avec ses paramètres, exemples de requêtes et réponses, facilitant ainsi l'intégration pour les développeurs.
| Action | Endpoint |
|---|---|
| GET | /api/v1/account |
| PUT | /api/v1/account |
| POST | /api/v1/account/register |
| POST | /api/v1/account/change-password |
| POST | /api/v1/account/reset-password/init |
| POST | /api/v1/account/reset-password/finish |
| POST | /api/v1/account/verify/email/init |
| GET | /api/v1/account/verify/email/finish |
| POST | /api/v1/account/verify/phone-number/init |
| GET | /api/v1/account/verify/phone-number/finish |
| GET | /api/v1/account/email/verified |
| GET | /api/v1/account/phone-number/verified |
| GET | /api/v1/account/activate |
| POST | /api/v1/account/profile/file |
| GET | /api/v1/account/profile/file/{filename}
|
Récupération des informations du compte
Endpoint: GET /api/v1/account
Récupère les informations du compte de l'utilisateur actuellement authentifié.
Paramètre de chemin
.Authentication Token
Réponse
{
"message": "string",
"body": {
"login": "string",
"email": "string",
"phoneNumber": {
"indicator": "string",
"telephone": "string"
},
"activated": true,
"langKey": "fr",
"currency": "string",
"createdBy": "string",
"createdDate": "2025-05-31T18:47:12.384Z",
"lastModifiedBy": "string",
"identityVerified": true,
"emailVerified": true,
"phoneNumberVerified": true,
"profileImageUploaded": true,
"coverImageUploaded": true,
"accountType": "PERSONAL",
"accountSlug": "string",
"account": {
"bio": "string",
"firstname": "string",
"slug": "string",
"gender": "M",
"lastname": "string",
"storeName": "string",
"companyName": "string",
"companyReference": "string",
"productCount": 0,
"companyDescription": "string",
"rating": 0,
"review": "string",
"socials": "string",
"zipCode": "string",
"country": "string",
"city": "string",
"address": "string",
"coverImage": "string",
"additionalInfos": "string"
},
"image": "string",
"authorities": [
"string"
]
}
}
Mise à jour des détails du compte
Endpoint: PUT /api/v1/account
Met à jour les détails du compte utilisateur.
Exemple de Requête
def function():
return "hola"
{
"login": "utilisateur@exemple.com",
"langKey": "fr",
"account": {
"firstname": "Jean",
"lastname": "Dupont",
"country": "France",
"city": "Paris",
"address": "123 Rue Principale",
"zipCode": "75001",
"companyName": "Exemple SARL",
"companyReference": "EX123",
"companyDescription": "Une entreprise technologique",
"storeName": "Magasin Exemple",
"gender": "M"
}
}
Enregistrement d'un nouveau compte utilisateur
Endpoint: POST /api/v1/account/register
Enregistre un nouveau compte utilisateur.
Corps de la Requête
{
"login": "string",
"currency": "string",
"phoneNumber": {
"id": 0,
"indicator": "string",
"telephone": "string",
"createdDate": "2025-05-31T18:56:44.120Z"
},
"langKey": "fr",
"accountType": "PERSONAL",
"email": "string",
"password": "string",
"notifyBy": "SMS",
"account": {
"bio": "string",
"firstname": "string",
"slug": "string",
"gender": "M",
"lastname": "string",
"storeName": "string",
"companyName": "string",
"companyReference": "string",
"productCount": 0,
"companyDescription": "string",
"rating": 0,
"review": "string",
"socials": "string",
"zipCode": "string",
"country": "string",
"city": "string",
"address": "string",
"coverImage": "string",
"additionalInfos": "string"
}
}
Réponse
{
"message": "string",
"body": {
"login": "string",
"email": "string",
"phoneNumber": {
"indicator": "string",
"telephone": "string"
},
"activated": true,
"langKey": "fr",
"currency": "string",
"createdBy": "string",
"createdDate": "2025-05-31T18:56:44.127Z",
"lastModifiedBy": "string",
"identityVerified": true,
"emailVerified": true,
"phoneNumberVerified": true,
"profileImageUploaded": true,
"coverImageUploaded": true,
"accountType": "PERSONAL",
"accountSlug": "string",
"account": {
"bio": "string",
"firstname": "string",
"slug": "string",
"gender": "M",
"lastname": "string",
"storeName": "string",
"companyName": "string",
"companyReference": "string",
"productCount": 0,
"companyDescription": "string",
"rating": 0,
"review": "string",
"socials": "string",
"zipCode": "string",
"country": "string",
"city": "string",
"address": "string",
"coverImage": "string",
"additionalInfos": "string"
},
"image": "string",
"authorities": [
"string"
]
}
}
Changement de mot de passe
Endpoint: POST /api/v1/account/change-password
Change le mot de passe de l'utilisateur.
Corps de la Requête
{
"currentPassword": "exemplePassword",
"newPassword": "nouveauMotDePasse"
}
Réponse
{
"message": "message success",
"body": {}
}
Commencement du processus de réinitialisation du mot de passe
Endpoint: POST /api/v1/account/reset-password/init
Commence le processus de réinitialisation du mot de passe.
Corps de la Requête
{
"mail": "string",
"phoneNumber": {
"id": 0,
"indicator": "string",
"telephone": "string",
"createdDate": "2025-05-31T19:10:54.882Z"
},
"notifyBy": "SMS"
}
Réponse
{
"message": "success message",
"body": {}
}
Finalisation du processus de réinitialisation du mot de passe
Endpoint: POST /api/v1/account/reset-password/finish
Finalise la réinitialisation du mot de passe à l'aide d'une clé de récupération.
Corps de la Requête
{
"key": "cle de recuperation",
"newPassword": "nouveauMotDePasse",
"notifyBy": "SMS"
}
Réponse
{
"message": "message success",
"body": {}
}
Vérification de l'e-mail et du téléphone
Initialisation de la verification de l'email
Endpoint: POST /api/v1/account/verify/email/init
Initialise la verification de l'email
Corps de la Requête
{
"email": "exemple@ingenovztech.com"
}
Réponse
{
"message": "success message",
"body": {}
}
Finalisation de la verification de l'email
Endpoint: GET /api/v1/account/verify/email/finish
Finalise la verification de l'email
Paramètres de requête :
key
: clé d'activation
Réponse
{
"message": "success message",
"body": {}
}
Initialisation de la vérification du numéro de téléphone
Endpoint: POST /api/v1/account/verify/phone-number/init
Initialise de la verification du numero de telephone
Corps de la Requête
{
"indicator": "+1",
"telephone": "435566787733"
}
Réponse
{
"message": "success message",
"body": {}
}
Finalisation de la verification du numero de telephone
Endpoint: GET /api/v1/account/verify/phone-number/finish
Finalise de la verification du numero de telephone
Paramètres de requête :
key
: clé d'activation
Réponse
{
"message": "success message",
"body": {}
}
Vérification de l'email et du numéro de téléphone
Endpoint: GET /api/v1/account/email/verified
verifie l'email
Réponse
{
"message": "success message",
"body": {}
}
Vérification du numéro de téléphone
Endpoint: GET /api/v1/account/phone-number/verified
verifie du numero de telephone
Réponse
{
"message": "success message",
"body": {}
}
Activation du compte
Endpoint: GET /api/v1/account/activate
Active un compte à l'aide d'une clé de vérification.
Paramètres de requête :
key
: clé d'activationnotifyBy
:SMS
,EMAIL
, ouEMAIL_AND_SMS
Réponse
{
"message": "success message",
"body": {}
}
Téléversement d'un fichier de profil
Endpoint: POST /api/v1/account/profile/file
Téléverse un fichier de profil.
Corps de la Requête
{
"file": "string"
}
Réponse
{
"message": "success message",
"body": {}
}
Téléchargement d'un fichier de profil
Endpoint: GET /api/v1/account/profile/file/{filename}
Télécharge un fichier de profil précédemment téléversé.
key
: Nom du fichier
Réponse
{
"message": "success message",
"body": {}
}