Aller au contenu principal

Liste des utilisateurs

Récupère la liste paginée des utilisateurs avec filtres optionnels.

Endpoint

GET /api/users

Paramètres de requête

ParamètreTypeRequisDescription
pageintNonNuméro de page (défaut: 1)
limitintNonNombre par page (défaut: 20, max: 100)
searchstringNonRecherche par nom, prénom ou email
rolestringNonFiltrer par code de rôle
isActivebooleanNonFiltrer par statut actif
regionUUIDNonFiltrer par région affectée

Exemple de requête

curl -X GET "https://api.pch-sig.org/api/users?page=1&limit=20&role=ROLE_TM_SPECIALIST&isActive=true" \
-H "Authorization: Bearer <token>"

Réponse

{
"success": true,
"data": [
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"email": "john.doe@example.com",
"nom": "Doe",
"prenom": "John",
"nomComplet": "John Doe",
"telephone": "+245955123456",
"role": {
"id": "550e8400-e29b-41d4-a716-446655440001",
"nom": "Spécialiste TM",
"code": "ROLE_TM_SPECIALIST"
},
"isActive": true,
"lastLoginAt": "2025-03-15T10:30:00+00:00"
}
],
"pagination": {
"page": 1,
"limit": 20,
"total": 45,
"pages": 3
}
}

Créer un utilisateur

Crée un nouveau compte utilisateur.

Endpoint

POST /api/users

Corps de la requête

{
"email": "nouveau.user@example.com",
"nom": "User",
"prenom": "Nouveau",
"telephone": "+245955654321",
"password": "MotDePasse123!",
"role_id": "550e8400-e29b-41d4-a716-446655440001",
"regions": ["550e8400-e29b-41d4-a716-446655440002"]
}

Paramètres

ParamètreTypeRequisDescription
emailstringOuiAdresse email unique
nomstringOuiNom de famille
prenomstringOuiPrénom
telephonestringNonNuméro de téléphone
passwordstringOuiMot de passe (min 8 caractères)
role_idUUIDOuiID du rôle à attribuer
regionsarrayNonIDs des régions affectées

Réponse

{
"success": true,
"message": "Utilisateur créé avec succès",
"data": {
"id": "550e8400-e29b-41d4-a716-446655440010",
"email": "nouveau.user@example.com"
}
}

Codes de réponse

CodeDescription
201Utilisateur créé
400Données invalides
409Email déjà utilisé