Référence API REST
Tous les endpoints sont préfixés par /api. Les endpoints authentifiés nécessitent un token Bearer dans l'en-tête Authorization.
http
Authorization: Bearer <token>Une interface Swagger est disponible sur http://localhost:3000/docs en mode développement.
Authentification
| Endpoint | Méthode | Description |
|---|---|---|
/api/auth/register | POST | Créer un compte |
/api/auth/login | POST | S'authentifier |
/api/auth/refresh | POST | Rafraîchir le token d'accès |
/api/auth/logout | POST | Invalider le refresh token |
/api/auth/registration-status | GET | Vérifier si l'inscription est activée |
Projets
| Endpoint | Méthode | Description |
|---|---|---|
/api/projects | GET | Lister les projets visibles |
/api/projects/public | GET | Lister les projets publics |
/api/projects/mine | GET | Lister vos projets |
/api/projects | POST | Créer un projet |
/api/projects/:id | PATCH | Mettre à jour un projet |
/api/projects/:id | DELETE | Supprimer un projet |
Pipelines
| Endpoint | Méthode | Description |
|---|---|---|
/api/projects/:pid/pipelines | GET | Lister les pipelines |
/api/projects/:pid/pipelines | POST | Créer un pipeline |
/api/projects/:pid/pipelines/:id | GET | Obtenir un pipeline |
/api/projects/:pid/pipelines/:id | PUT | Sauvegarder l'état complet |
/api/projects/:pid/pipelines/:id/execution-plan | GET | Plan d'exécution (dry-run) |
/api/projects/:pid/pipelines/:id | DELETE | Supprimer un pipeline |
Credentials
| Endpoint | Méthode | Description |
|---|---|---|
/api/credentials | GET | Lister (valeurs masquées) |
/api/credentials | POST | Créer |
/api/credentials/:id | PUT | Mettre à jour |
/api/credentials/:id | DELETE | Supprimer |
Clés API
| Endpoint | Méthode | Description |
|---|---|---|
/api/api-keys | GET | Lister |
/api/api-keys | POST | Créer (rawKey visible une seule fois) |
/api/api-keys/:id/revoke | POST | Révoquer |
/api/api-keys/:id | DELETE | Supprimer définitivement |
Codes HTTP
| Code | Signification |
|---|---|
| 200 | OK |
| 201 | Créé |
| 204 | Pas de contenu (suppression réussie) |
| 400 | Erreur de validation |
| 401 | Non authentifié |
| 403 | Accès refusé |
| 404 | Ressource introuvable |
| 500 | Erreur serveur |
