Passer au contenu principal

Aperçu

Le playground API est un environnement interactif qui permet aux utilisateurs de tester et d’explorer vos endpoints d’API. Les développeurs peuvent composer des requêtes API, les envoyer et consulter les réponses sans quitter votre documentation. Voir Déclencher une mise à jour pour un exemple du playground API en action.
Playground API pour l’endpoint « Déclencher une mise à jour ».
Le playground génère des pages interactives pour vos endpoints à partir de votre spécification OpenAPI ou de votre schéma AsyncAPI. Si vous modifiez votre API, il met automatiquement à jour les pages concernées. Nous recommandons de générer votre playground API à partir d’une spécification OpenAPI. Cependant, vous pouvez créer manuellement des pages de référence de l’API après avoir défini une URL de base et une méthode d’authentification dans votre docs.json.

Premiers pas

1

Ajoutez votre fichier de spécification OpenAPI.

Validez votre fichier de spécification OpenAPI avec le Swagger Editor ou la commande Mint CLI mint openapi-check <filename>.
/your-project
  |- docs.json
  |- openapi.json
2

Générez les pages des endpoints.

Mettez à jour votre docs.json pour référencer votre spécification OpenAPI.Pour générer automatiquement des pages pour tous les endpoints de votre spécification OpenAPI, ajoutez une propriété openapi à n’importe quel élément de navigation.Cet exemple génère une page pour chaque endpoint défini dans openapi.json et organise les pages dans le groupe « Référence API ».
Generate all endpoint pages
"navigation": {
  "groups": [
    {
      "group": "API reference",
      "openapi": "openapi.json"
    }
  ]
}
Pour ne générer des pages que pour certains endpoints, énumérez-les dans la propriété pages de l’élément de navigation.Cet exemple génère des pages uniquement pour les endpoints GET /users et POST /users. Pour générer d’autres pages d’endpoints, ajoutez-les au tableau pages.
Generate specific endpoint pages
"navigation": {
  "groups": [
      {
        "group": "API reference",
        "openapi": "openapi.json",
        "pages": [
          "GET /users",
          "POST /users"
        ]
      }
  ]
}

Personnaliser votre bac à sable

Personnalisez votre bac à sable d’API en définissant les propriétés suivantes dans votre docs.json.
playground
object
Configurations du bac à sable d’API.
examples
object
Configurations pour les exemples d’API générés automatiquement.

Exemple de configuration

Cet exemple configure l’aire de test de l’API pour être interactive, avec des extraits de code pour cURL, Python et JavaScript. Seuls les paramètres requis sont affichés dans les extraits, et l’aire de test préremplit le corps de la requête avec des valeurs d’exemple.
{
 "api": {
   "playground": {
     "display": "interactive"
   },
   "examples": {
     "languages": ["curl", "python", "javascript"],
     "defaults": "required",
     "prefill": true
   }
 }
}

Affichage du playground basé sur l’authentification

Utilisez le mode d’affichage auth pour afficher le playground interactif uniquement aux utilisateurs authentifiés. C’est utile lorsque vous voulez rendre la documentation de votre API publique tout en restreignant l’accès au playground aux utilisateurs connectés. Lorsque display est défini sur auth :
  • Les utilisateurs authentifiés voient le playground interactif.
  • Les utilisateurs non authentifiés ne voient aucun playground (équivalent à none).
Vous pouvez également combiner auth avec la propriété groups dans le frontmatter de la page pour restreindre l’accès au playground à des groupes d’utilisateurs spécifiques.
Page with group-restricted playground
---
title: "Créer un utilisateur"
openapi: POST /users
playground: auth
groups: ["admin", "developer"]
public: true
---
Dans cet exemple :
  • La page est publique (tout le monde peut consulter la documentation).
  • Seuls les utilisateurs authentifiés appartenant aux groupes admin ou developer voient l’espace de test interactif.
  • Les utilisateurs qui ne sont pas dans ces groupes ne voient aucun espace de test.
Si la page ne comporte pas de propriété groups, tous les utilisateurs authentifiés voient l’espace de test interactif.
Le mode d’affichage auth nécessite que l’authentification soit configurée pour votre documentation.

Pages d’endpoint personnalisées

Lorsque vous avez besoin d’un contrôle plus fin sur votre documentation d’API, utilisez l’extension x-mint dans votre spécification OpenAPI ou créez des pages MDX individuelles pour vos endpoints. Les deux options vous permettent de :
  • Personnaliser la metadata de la page
  • Ajouter du contenu supplémentaire, comme des exemples
  • Contrôler le comportement du playground pour chaque page
L’extension x-mint est recommandée afin que toute votre documentation d’API soit automatiquement générée à partir de votre spécification OpenAPI et maintenue dans un seul fichier. Les pages MDX individuelles sont recommandées pour les petites API ou lorsque vous souhaitez expérimenter des modifications page par page.

Pour aller plus loin

  • Configuration OpenAPI pour en savoir plus sur la création de votre document OpenAPI.
  • Extension x-mint pour en savoir plus sur la personnalisation de vos pages d’endpoint.
  • Configuration MDX pour en savoir plus sur la création manuelle de pages de référence d’API individuelles.
  • Configuration AsyncAPI pour en savoir plus sur la création de votre schéma AsyncAPI afin de générer des pages de référence WebSocket.