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ètre | Type | Requis | Description |
|---|---|---|---|
page | int | Non | Numéro de page (défaut: 1) |
limit | int | Non | Nombre par page (défaut: 20, max: 100) |
search | string | Non | Recherche par nom, prénom ou email |
role | string | Non | Filtrer par code de rôle |
isActive | boolean | Non | Filtrer par statut actif |
region | UUID | Non | Filtrer 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ètre | Type | Requis | Description |
|---|---|---|---|
email | string | Oui | Adresse email unique |
nom | string | Oui | Nom de famille |
prenom | string | Oui | Prénom |
telephone | string | Non | Numéro de téléphone |
password | string | Oui | Mot de passe (min 8 caractères) |
role_id | UUID | Oui | ID du rôle à attribuer |
regions | array | Non | IDs 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
| Code | Description |
|---|---|
| 201 | Utilisateur créé |
| 400 | Données invalides |
| 409 | Email déjà utilisé |