Swagger (logiciel)
Swagger est un langage de description d'interface permettant de décrire des API RESTful exprimées à l'aide de JSON.
Développé par | SmartBear Software (en) |
---|---|
Première version | |
Type |
Interface description language RESTful API description language (d) |
Licence | Apache License 2.0 |
Site web | swagger.io |
Swagger est utilisé avec toute une série d'outils logiciels open source pour concevoir, créer, documenter et utiliser des services Web RESTful.
Swagger inclut des outils de documentation automatisée, de génération de code (dans de nombreux langages de programmation) et de génération de cas de test.
Historique
Le projet Swagger API a été créé en 2011 par Tony Tam, co-fondateur technique du site de dictionnaires Wordnik. Au cours du développement des produits Wordnik, le besoin d'automatisation de la documentation de l'API et de la génération du SDK client est devenu une source majeure de frustration. Tam a conçu une représentation JSON simple de l'API, en s'appuyant sur la flexibilité du style d'architecture REST et en utilisant de nombreuses fonctionnalités d'outils conçus pour le protocole SOAP. Le concept de l'interface utilisateur a été proposé par Ayush Gupta, qui a suggéré qu'une interface utilisateur interactive profiterait aux utilisateurs finaux qui souhaitaient « essayer » et développer une API. Le projet Swagger API a été rendu open source en septembre 2011. Peu de temps après la sortie, un certain nombre de nouveaux composants ont été ajoutés au projet, notamment un validateur autonome, la prise en charge de Node.js et de Ruby on Rails.
En novembre 2015, SmartBear Software, la société qui maintenait Swagger, a annoncé qu'elle aidait à créer une nouvelle organisation, sous le parrainage de la Linux Foundation, appelée OpenAPI Initiative. Diverses entreprises, dont Google, IBM et Microsoft en sont les membres fondateurs[1].
Le 1er janvier 2016, la spécification Swagger a été renommée OpenAPI Specification et déplacée vers un nouveau référentiel de logiciels sur GitHub[2]. Bien que la spécification elle-même n'ait pas été modifiée, ce changement de nom a permis d'expliciter la séparation entre le format de description de l'API et les outils open source.
Usage
L'utilisation des outils open source de Swagger peut être divisée en différents cas d'utilisation : développement, interaction avec les API et documentation.
Voir aussi
- Transfert d'état représentatif
- Autres langages de description d'API RESTful : RAML, WADL et WSDL
Références
- (en) « New Collaborative Project to Extend Swagger Specification for Building Connected Applications and Services » [archive du ], www.linuxfoundation.org (consulté le )
- (en) « The OpenAPI Specification », GitHub,
Liens externes
- Site Web de l'Open API Initiative (OAI)
- Site Web de Swagger
- Spécification OpenAPI sur GitHub
- Éditeur et environnement intégré Eclipse OpenAPI (OAS)
- Swagger - Outil de documentation de l'API
- Wiki d'utilisation de OpenAPI Editor and Test Studio
- Portail du logiciel