Compétences formateurs
Critère Qualiopi 5 — qualification des formateurs et intervenants. Déclaration des diplômes, certifications, expériences pro et formations continues. Vérification par ADMIN, suivi des expirations, renouvellements chaînés. Lié au module course-trainers pour garantir qu’un formateur a les compétences requises pour un cours.
Endpoints
/api/v1/trainer-competenciesLister les compétences de tous les formateurs
Retourne les compétences déclarées dans le tenant. Filtrable par formateur, type, statut. Réservé aux comptes ADMIN — un formateur ne voit que les siennes via /users/:trainerId/competencies.
- TrainerCompetencies
- Qualiopi
Paramètres
| Nom | Type | Requis | Exemple | Description |
|---|---|---|---|---|
| trainerId | query | non | usr_trainer_42 | Filtrer par formateur |
| type | query | non | CERTIFICATION | DIPLOMA | CERTIFICATION | EXPERIENCE_PRO | CONTINUOUS_TRAINING | INTERNAL_TRAINING |
| status | query | non | VERIFIED | PENDING | VERIFIED | EXPIRED | REJECTED |
| page | query | non | 1 | — |
| perPage | query | non | 20 | — |
Réponses
- 200Compétences paginéesRéponse 200 · JSON
- 403Permission insuffisante (rôle ADMIN requis)
Exemples
/api/v1/trainer-competencies/:idDétail d’une compétence
- TrainerCompetencies
- Qualiopi
Paramètres
| Nom | Type | Requis | Exemple | Description |
|---|---|---|---|---|
| id | path | oui | tcp_a1b2c3 | — |
Réponses
- 200Compétence trouvéeRéponse 200 · JSON
- 404Compétence introuvable
Exemples
/api/v1/trainer-competenciesDéclarer une compétence
Création d'une compétence par un formateur (auto-déclaration) ou par un admin. Statut initial PENDING, en attente de vérification par un ADMIN.
- TrainerCompetencies
- Qualiopi
Corps de requête
Content-Type : application/json
Réponses
- 201Compétence crééeRéponse 201 · JSON
- 400Validation échouée (type invalide, dates incohérentes)
Exemples
/api/v1/trainer-competencies/:idMettre à jour une compétence
Modifier le périmètre, le titre ou la date d'expiration. Une compétence VERIFIED repasse en PENDING après modification.
- TrainerCompetencies
- Qualiopi
Paramètres
| Nom | Type | Requis | Exemple | Description |
|---|---|---|---|---|
| id | path | oui | tcp_a1b2c3 | — |
Corps de requête
Content-Type : application/json
Réponses
- 200Compétence mise à jour
- 404Compétence introuvable
Exemples
/api/v1/trainer-competencies/:idSupprimer une compétence
Supprime une compétence. Refus 409 si la compétence couvre un cours actuellement attribué au formateur (intégrité audit Qualiopi).
- TrainerCompetencies
- Qualiopi
Paramètres
| Nom | Type | Requis | Exemple | Description |
|---|---|---|---|---|
| id | path | oui | tcp_a1b2c3 | — |
Réponses
- 204Compétence supprimée
- 409Compétence référencée par un cours actif
Exemples
/api/v1/trainer-competencies/:id/verifyVérifier (valider) une compétence
Un ADMIN valide la compétence après vérification du justificatif. Passe le statut à VERIFIED et renseigne verifiedBy + verifiedAt.
- TrainerCompetencies
- Qualiopi
Paramètres
| Nom | Type | Requis | Exemple | Description |
|---|---|---|---|---|
| id | path | oui | tcp_a1b2c3 | — |
Corps de requête
Content-Type : application/json
Réponses
- 200Compétence vérifiéeRéponse 200 · JSON
- 400Décision invalide (autorisées : VERIFIED | REJECTED)
- 403Permission insuffisante (rôle ADMIN requis)
Exemples
/api/v1/trainer-competencies/:id/attachmentUploader le justificatif (diplôme/certif PDF)
Upload du fichier justificatif (PDF, JPG, PNG, max 10 MB) qui sera stocké sur S3 (iDrive e2). Retourne l'attachmentS3Key à conserver pour l'audit.
- TrainerCompetencies
- Qualiopi
Paramètres
| Nom | Type | Requis | Exemple | Description |
|---|---|---|---|---|
| id | path | oui | tcp_a1b2c3 | — |
Corps de requête
Content-Type : multipart/form-data
Réponses
- 201Fichier uploadéRéponse 201 · JSON
- 400Fichier invalide (taille, type MIME)
- 413Fichier trop volumineux (max 10 MB)
Exemples
/api/v1/users/:trainerId/competenciesCompétences d’un formateur
Retourne toutes les compétences déclarées pour un formateur donné. Un formateur peut accéder à ses propres compétences ; les ADMIN voient celles de tous les formateurs du tenant.
- TrainerCompetencies
- Qualiopi
Paramètres
| Nom | Type | Requis | Exemple | Description |
|---|---|---|---|---|
| trainerId | path | oui | usr_trainer_42 | — |
Réponses
- 200Compétences du formateurRéponse 200 · JSON
- 403Permission insuffisante
- 404Formateur introuvable
Exemples
/api/v1/trainer-competencies/expiringCompétences expirant dans moins de 90 jours
Retourne les compétences qui arrivent à expiration prochainement, pour alerter les formateurs concernés. Le scheduler quotidien envoie automatiquement des emails de rappel.
- TrainerCompetencies
- Qualiopi
Paramètres
| Nom | Type | Requis | Exemple | Description |
|---|---|---|---|---|
| windowDays | query | non | 90 | Fenêtre en jours (défaut 90, max 365) |
Réponses
- 200Liste des compétences expirantesRéponse 200 · JSON
Exemples
/api/v1/trainer-competencies/:id/renewRenouveler une compétence
Crée une nouvelle compétence (chaînée à la précédente via previousCompetencyId) avec mise à jour de la date d'émission et d'expiration. La compétence d'origine reste archivée pour l'historique audit.
- TrainerCompetencies
- Qualiopi
Paramètres
| Nom | Type | Requis | Exemple | Description |
|---|---|---|---|---|
| id | path | oui | tcp_a1b2c3 | — |
Corps de requête
Content-Type : application/json
Réponses
- 201Compétence renouveléeRéponse 201 · JSON
- 400Date d’émission antérieure à la compétence renouvelée
- 404Compétence introuvable