EN

Référence API

Accédez à l'API Paylood, sa documentation Swagger et ses principaux endpoints.

L’API Paylood est une API REST construite avec NestJS. Elle est préfixée par /api/v1.

Base URL

https://<votre-instance>/api/v1

Documentation interactive (Swagger)

La documentation OpenAPI est disponible sur :

https://<votre-instance>/api/docs

Attention

Swagger n’est activé que dans les environnements non-production par défaut, pour des raisons de sécurité. En production, il peut être désactivé.

Authentification

L’API utilise des jetons JWT Bearer :

Authorization: Bearer <votre-jeton>

Obtenez le jeton via l’endpoint de connexion :

curl -X POST https://app.paylood.com/api/v1/auth/login \
  -H "Content-Type: application/json" \
  -d '{"email":"vous@exemple.com","password":"motdepasse"}'

La réponse contient accessToken et le profil utilisateur.

Principaux endpoints

Auth

MéthodeEndpointDescription
POST/auth/registerCréer un compte
POST/auth/loginSe connecter
POST/auth/verify-otpValider le code OTP
POST/auth/forgot-passwordDemander un lien de réinitialisation
POST/auth/reset-passwordRéinitialiser le mot de passe

Git Providers

MéthodeEndpointDescription
POST/git-provider/save-tokenEnregistrer un token Git
GET/git-providersListe des comptes connectés
GET/git-providers/repositoriesRechercher des dépôts
GET/git-providers/:providerId/repos/:repo/branchesBranches d’un dépôt
DELETE/git-providers/:idDéconnecter un compte

Projets & Environnements

MéthodeEndpointDescription
POST/projectsCréer un projet
GET/projectsListe des projets
GET/projects/:idDétails d’un projet
PUT/projects/:idMettre à jour un projet
DELETE/projects/:idSupprimer un projet
GET/projects/analyze-repoAnalyser un dépôt
POST/projects/:id/finalizeFinaliser (optionnel : déployer)
POST/projects/:id/retry-analysisRelancer l’analyse

Environnements

MéthodeEndpointDescription
POST/environmentsCréer un environnement
PATCH/environments/:idMettre à jour un environnement
PATCH/environments/:id/branchChanger la branche
PATCH/environments/:id/serverLier un serveur
DELETE/environments/:idSupprimer un environnement
PATCH/environments/:id/auto-deployActiver/désactiver l’auto-deploy
POST/environments/:id/servicesConfigurer les services
POST/environments/:id/domainConfigurer le domaine + SSL
POST/environments/:id/variablesAjouter des variables
GET/environments/:id/deploymentsHistorique des déploiements
POST/environments/:id/deployments/:did/cancelAnnuler un déploiement

Serveurs

MéthodeEndpointDescription
POST/serversAjouter un serveur
GET/serversListe des serveurs
GET/servers/:id/securityÉtat de sécurité
POST/servers/:id/security/hardenDurcir le serveur
DELETE/servers/:idSupprimer un serveur

Domaines

MéthodeEndpointDescription
POST/domainsEnregistrer un domaine
GET/domainsListe des domaines
POST/domains/:id/verifyVérifier un domaine
DELETE/domains/:idSupprimer un domaine

Sauvegardes

MéthodeEndpointDescription
GET/environments/:id/backupsListe des sauvegardes
POST/environments/:id/backups/triggerDéclencher une sauvegarde
POST/environments/:id/backups/:bid/restoreRestaurer
POST/environments/:id/backups/importImporter un fichier SQL
PATCH/environments/:id/backups/configConfigurer la planification

Notifications

MéthodeEndpointDescription
GET/notification-connectorsListe des connecteurs
POST/notification-connectorsCréer un connecteur
POST/notification-connectors/:id/testTester un connecteur
PUT/notification-connectors/project/:projectIdAssocier à un projet
DELETE/notification-connectors/:idSupprimer un connecteur

Flux temps réel (SSE)

Certains endpoints diffusent des événements via Server-Sent Events :

  • GET /events — événements globaux (project_updated).
  • GET /environments/:id/deployments/:did/status — statut d’un déploiement.
  • GET /projects/:id/analysis-status — statut d’analyse.
  • POST /servers/test-connection — test de connexion SSH.
const sse = new EventSource('/api/v1/events');
sse.onmessage = (e) => console.log(e.data);

Limites de débit

L’API est protégée par un throttler. Les réponses en excès renvoient un code 429.

La liste ci-dessus est un aperçu. La référence exhaustive (schémas, paramètres, modèles) se trouve dans Swagger sur /api/docs.

Dernière mise à jour: 2026-08-14 Modifier cette page