P
🤖AutomatisationIntermédiaire4 étapes

Agent de génération automatique de documentation API REST complète

Cet agent analyse votre code source ou vos spécifications d'API pour générer automatiquement une documentation technique complète et structurée. Il produit des descriptions d'endpoints, des schémas de données, des exemples de requêtes/réponses et une gestion des erreurs documentée. Le résultat est prêt à être intégré dans un portail développeur ou exporté au format OpenAPI.

documentation techniqueAPI RESTcode cleanautomatisationdéveloppement backend

Pour qui

Développeurs backend, tech leads et équipes DevOps qui souhaitent documenter rapidement leurs APIs REST sans rédiger manuellement chaque endpoint.

Entrée

Type: text
Format: code source

Code source de l'API (fichiers de routes, contrôleurs, modèles, middleware) ou spécification partielle des endpoints à documenter. Formats acceptés : JavaScript/TypeScript (Express, NestJS), Python (FastAPI, Django), PHP (Laravel), Java (Spring Boot), ou toute description textuelle des endpoints.

étapes (4)

1

Analyse du code source et extraction des endpoints

prompt

Analyse le code fourni pour identifier tous les endpoints, méthodes HTTP, paramètres et structures de données.

2

Génération des descriptions et schémas de données

prompt

Rédige les descriptions fonctionnelles de chaque endpoint et formalise les schémas de données en JSON Schema.

3

Création des exemples de requêtes et réponses

prompt

Génère des exemples concrets et réalistes de requêtes cURL et de réponses JSON pour chaque endpoint.

4

Compilation en document de documentation finale

prompt

Assemble tous les éléments en un document de documentation complet et structuré, prêt à l'emploi.

Sortie

Type: text
Format: structuré

Documentation API complète incluant : description de chaque endpoint, schémas JSON Schema des requêtes et réponses, exemples cURL et multi-langages, gestion des erreurs, guide d'authentification et modèles de données. Format Markdown ou OpenAPI selon le choix utilisateur.

Exemple

Entrée

// routes/users.js (Express)
router.get('/api/v1/users', authMiddleware, async (req, res) => {
  const { page = 1, limit = 20, role } = req.query;
  const users = await User.find(role ? { role } : {}).skip((page-1)*limit).limit(limit);
  const total = await User.countDocuments(role ? { role } : {});
  res.json({ data: users, pagination: { page, limit, total } });
});

router.post('/api/v1/users', authMiddleware, adminOnly, async (req, res) => {
  const { email, name, role } = req.body;
  if (!email || !name) return res.status(400).json({ error: 'Email and name required' });
  const user = await User.create({ email, name, role: role || 'user' });
  res.status(201).json({ data: user });
});

Sortie

## Utilisateurs (Users)

### GET /api/v1/users
**Liste les utilisateurs** avec pagination et filtrage optionnel par rôle.
- Auth : Bearer token requis
- Query params : page (number, défaut: 1), limit (number, défaut: 20), role (string, optionnel)
- Réponse 200 : { data: User[], pagination: { page, limit, total } }

```curl
curl -H 'Authorization: Bearer eyJhb...' 'https://api.example.com/api/v1/users?page=1&limit=20&role=admin'
```

### POST /api/v1/users
**Crée un nouvel utilisateur.** Réservé aux administrateurs.
- Auth : Bearer token requis + rôle admin
- Body : { email (string, requis), name (string, requis), role (string, défaut: 'user') }
- Réponse 201 : { data: User }
- Erreur 400 : { error: 'Email and name required' }

Personnalisation

ParamètreDescriptionValeur par défaut
format_sortieFormat du document de documentation final généré par l'agentMarkdown
langLangue de rédaction de la documentation (français, anglais, etc.)français
lang_sdkLangage pour les exemples de code SDK côté clientJavaScript (fetch)

Notes techniques

<p>Cet agent fonctionne de manière optimale avec du code source structuré utilisant des frameworks populaires (Express, NestJS, FastAPI, Django REST, Spring Boot, Laravel). Pour les frameworks moins courants, fournissez des commentaires ou annotations dans le code pour améliorer la détection des endpoints.</p><p>Le format de sortie Markdown peut être converti en OpenAPI 3.0 YAML en ajoutant cette instruction dans le prompt de l'étape 4. Pour les APIs très volumineuses (50+ endpoints), il est recommandé de découper le code par module et de lancer l'agent plusieurs fois, puis de fusionner les résultats.</p><p>Les exemples générés utilisent des données fictives réalistes. Vérifiez toujours les contraintes de validation et les codes d'erreur par rapport à votre implémentation réelle avant de publier la documentation.</p>