{"id":4179,"date":"2017-03-01T21:36:26","date_gmt":"2017-03-01T21:36:26","guid":{"rendered":"https:\/\/blog.fabianpiau.com\/?p=4179"},"modified":"2020-08-18T18:30:53","modified_gmt":"2020-08-18T17:30:53","slug":"swagger-automated-api-documentation","status":"publish","type":"post","link":"https:\/\/blog.fabianpiau.com\/fr\/2017\/03\/01\/swagger-automated-api-documentation\/","title":{"rendered":"Swagger, la documentation API automatis\u00e9e"},"content":{"rendered":"<p><a class=\"lang\" href=\"https:\/\/blog.fabianpiau.com\/en\/2017\/03\/01\/swagger-automated-api-documentation\/\" title=\"Read in english\"><strong class=\"labellang\"><span class=\"en\">&nbsp;<\/span>English version available<\/strong><\/a><\/p>\n<p>A l&rsquo;heure o\u00f9 les projets informatiques se basent la plupart du temps sur <a href=\"https:\/\/blog.fabianpiau.com\/fr\/2016\/10\/03\/microservices-architecture-best-practices\/\" title=\"Architecture Microservices \u2013 Les bonnes pratiques\">une architecture orient\u00e9e microservices<\/a>, il n&rsquo;est pas \u00e9tonnant que les diff\u00e9rents microservices soient d\u00e9velopp\u00e9s et maintenus par des \u00e9quipes diff\u00e9rentes.<\/p>\n<p>Chaque service fournit une API (priv\u00e9e ou public) qui permet de communiquer avec le monde ext\u00e9rieur tout en garantissant l&rsquo;int\u00e9grit\u00e9 de ses donn\u00e9es. De multiples appels imbriqu\u00e9s entre les microservices permettent de r\u00e9aliser un traitement plus complexe. Il est tr\u00e8s important d&rsquo;avoir une documentation \u00e0 jour pour chacune de vos API. Qui n&rsquo;a jamais entendu un d\u00e9veloppeur dire \u00e0 un autre \u00ab\u00a0Cette doc n&rsquo;a pas \u00e9t\u00e9 mise \u00e0 jour depuis des mois, regarde le code directement!\u00a0\u00bb.<\/p>\n<p class=\"left\" style=\"padding-right:15px;\"><a href=\"https:\/\/swagger.io\/tools\/swagger-ui\/\" target=\"_blank\" title=\"Swagger logo\" rel=\"noopener noreferrer\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" title=\"Swagger logo\" src=\"https:\/\/i0.wp.com\/blog.fabianpiau.com\/wp-content\/uploads\/post\/00087\/swagger-logo.png?resize=200%2C200&#038;ssl=1\" alt=\"Swagger logo\" width=\"200\" height=\"200\" \/><\/a><\/p>\n<p><a href=\"https:\/\/swagger.io\/tools\/swagger-ui\/\" target=\"_blank\" title=\"Site officiel de Swagger UI\" rel=\"noopener noreferrer\">Swagger UI<\/a> se conforme \u00e0 cette affirmation. Il suffit d&rsquo;ajouter des annotations pr\u00e9cises dans votre code et le framework s&rsquo;occupera de g\u00e9n\u00e9rer de mani\u00e8re semi-automatique toute la documentation de votre API. &lsquo;Semi-automatique&rsquo; car il ne peut pas \u00e9crire la documentation m\u00e9tier, vous devez donc l&rsquo;\u00e9crire vous-m\u00eame, un peu comme si vous \u00e9crivez de la Javadoc.<\/p>\n<p>La documentation g\u00e9n\u00e9r\u00e9e par Swagger est donc mise \u00e0 jour en m\u00eame temps que le code. Par exemple, si vous ajoutez un nouveau param\u00e8tre \u00e0 une m\u00e9thode expos\u00e9e, celui-ci sera automatiquement pris en compte et document\u00e9 avec les annotations ad\u00e9quates. La documentation n&rsquo;est pas seulement un fichier HTML statique, elle permet de faire office de client HTTP (il n&rsquo;y a pas besoin d&rsquo;avoir <a href=\"https:\/\/www.postman.com\/\" target=\"_blank\" title=\"Site officiel de Postman\" rel=\"noopener noreferrer\">Postman<\/a> install\u00e9 par exemple) pour tester les diff\u00e9rentes m\u00e9thodes expos\u00e9es par l&rsquo;API.<\/p>\n<p>Vous pouvez regarder <a href=\"https:\/\/petstore.swagger.io\/\" target=\"_blank\" title=\"Application Swagger exemple\" rel=\"noopener noreferrer\">l&rsquo;application exemple officielle (Petstore)<\/a> pour avoir un acc\u00e8s aux diff\u00e9rentes fonctionnalit\u00e9s support\u00e9es, par exemple l&rsquo;authentification OAuth2.0 est support\u00e9e.<\/p>\n<div style=\"max-width: 560px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/i0.wp.com\/blog.fabianpiau.com\/wp-content\/uploads\/post\/00087\/swagger-pet-store.png?ssl=1\" rel=\"shadowbox[sbpost-4179];player=img;\" title=\"Exemple d'application avec Swagger\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/blog.fabianpiau.com\/wp-content\/uploads\/post\/00087\/swagger-pet-store-thumbnail.png?resize=550%2C507&#038;ssl=1\" alt=\"Exemple d'application avec Swagger\" title=\"Exemple d'application avec Swagger\" width=\"550\" height=\"507\" class=\"size-medium wp-image-257\" \/><\/a><p class=\"wp-caption-text\">Exemple d'application avec Swagger<\/p><\/div>\n<p>Cerise sur le g\u00e2teau si vous utilisez Spring MVC dans votre application, le <a href=\"http:\/\/springfox.github.io\/springfox\/\" target=\"_blank\" title=\"Site officiel du projet SpringFox\" rel=\"noopener noreferrer\">projet SpringFox<\/a> (surcouche Swagger) rend l&rsquo;int\u00e9gration de Swagger tr\u00e8s simple. En moins d&rsquo;une heure, vous devriez \u00eatre capable de g\u00e9n\u00e9rer la documentation de votre API. Ensuite, vous pourrez ajouter des annotations optionnelles pour la rendre plus compl\u00e8te.<\/p>\n<p>En adoptant Swagger sur l&rsquo;ensemble de vos microservices, il est fort \u00e0 parier que la communication entre vos diff\u00e9rentes \u00e9quipes s\u2019am\u00e9liore. D\u00e9sormais, vous n&rsquo;aurez qu&rsquo;un seul point d&rsquo;entr\u00e9e, oubliez donc la page wiki mal-document\u00e9e qui avait tendance \u00e0 prendre la poussi\u00e8re&#8230; En vous souhaitant une bonne documentation!<\/p>\n<p><\/p>","protected":false},"excerpt":{"rendered":"<p>&nbsp;English version available A l&rsquo;heure o\u00f9 les projets informatiques se basent la plupart du temps sur une architecture orient\u00e9e microservices, il n&rsquo;est pas \u00e9tonnant que les diff\u00e9rents microservices soient d\u00e9velopp\u00e9s et maintenus par des \u00e9quipes diff\u00e9rentes. Chaque service fournit une API (priv\u00e9e ou public) qui permet de communiquer avec le monde ext\u00e9rieur tout en garantissant [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":4181,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[3],"tags":[39,280,87,129],"class_list":["post-4179","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-agile-programming","tag-best-practices","tag-microservices","tag-tool","tag-spring"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Swagger, la documentation API automatis\u00e9e | CarmaBlog<\/title>\n<meta name=\"description\" content=\"&nbsp;English version available A l&#039;heure o\u00f9 les projets informatiques se basent la plupart du temps sur une architecture orient\u00e9e microservices, il n&#039;est\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/blog.fabianpiau.com\/fr\/2017\/03\/01\/swagger-automated-api-documentation\/\" \/>\n<meta property=\"og:locale\" content=\"fr_FR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Swagger, la documentation API automatis\u00e9e | CarmaBlog\" \/>\n<meta property=\"og:description\" content=\"&nbsp;English version available A l&#039;heure o\u00f9 les projets informatiques se basent la plupart du temps sur une architecture orient\u00e9e microservices, il n&#039;est\" \/>\n<meta property=\"og:url\" content=\"https:\/\/blog.fabianpiau.com\/fr\/2017\/03\/01\/swagger-automated-api-documentation\/\" \/>\n<meta property=\"og:site_name\" content=\"CarmaBlog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/fabian.piau\" \/>\n<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/fabian.piau\" \/>\n<meta property=\"article:published_time\" content=\"2017-03-01T21:36:26+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2020-08-18T17:30:53+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/i1.wp.com\/blog.fabianpiau.com\/wp-content\/uploads\/2017\/03\/swagger.png?fit=250%2C250&ssl=1\" \/>\n\t<meta property=\"og:image:width\" content=\"250\" \/>\n\t<meta property=\"og:image:height\" content=\"250\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Fabian Piau\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@fabianpiau\" \/>\n<meta name=\"twitter:site\" content=\"@fabianpiau\" \/>\n<meta name=\"twitter:label1\" content=\"\u00c9crit par\" \/>\n\t<meta name=\"twitter:data1\" content=\"Fabian Piau\" \/>\n\t<meta name=\"twitter:label2\" content=\"Dur\u00e9e de lecture estim\u00e9e\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/blog.fabianpiau.com\\\/fr\\\/2017\\\/03\\\/01\\\/swagger-automated-api-documentation\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blog.fabianpiau.com\\\/fr\\\/2017\\\/03\\\/01\\\/swagger-automated-api-documentation\\\/\"},\"author\":{\"name\":\"Fabian Piau\",\"@id\":\"https:\\\/\\\/blog.fabianpiau.com\\\/#\\\/schema\\\/person\\\/c5cbffd7cf0b10117877f5dfd1b35f14\"},\"headline\":\"Swagger, la documentation API automatis\u00e9e\",\"datePublished\":\"2017-03-01T21:36:26+00:00\",\"dateModified\":\"2020-08-18T17:30:53+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/blog.fabianpiau.com\\\/fr\\\/2017\\\/03\\\/01\\\/swagger-automated-api-documentation\\\/\"},\"wordCount\":803,\"commentCount\":2,\"publisher\":{\"@id\":\"https:\\\/\\\/blog.fabianpiau.com\\\/#\\\/schema\\\/person\\\/c5cbffd7cf0b10117877f5dfd1b35f14\"},\"image\":{\"@id\":\"https:\\\/\\\/blog.fabianpiau.com\\\/fr\\\/2017\\\/03\\\/01\\\/swagger-automated-api-documentation\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/i0.wp.com\\\/blog.fabianpiau.com\\\/wp-content\\\/uploads\\\/2017\\\/03\\\/swagger.png?fit=250%2C250&ssl=1\",\"keywords\":[\"bonnes pratiques\",\"microservices\",\"outil\",\"spring\"],\"articleSection\":[\"Programmation agile\"],\"inLanguage\":\"fr-FR\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/blog.fabianpiau.com\\\/fr\\\/2017\\\/03\\\/01\\\/swagger-automated-api-documentation\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/blog.fabianpiau.com\\\/fr\\\/2017\\\/03\\\/01\\\/swagger-automated-api-documentation\\\/\",\"url\":\"https:\\\/\\\/blog.fabianpiau.com\\\/fr\\\/2017\\\/03\\\/01\\\/swagger-automated-api-documentation\\\/\",\"name\":\"Swagger, la documentation API automatis\u00e9e | CarmaBlog\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blog.fabianpiau.com\\\/fr\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/blog.fabianpiau.com\\\/fr\\\/2017\\\/03\\\/01\\\/swagger-automated-api-documentation\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/blog.fabianpiau.com\\\/fr\\\/2017\\\/03\\\/01\\\/swagger-automated-api-documentation\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/i0.wp.com\\\/blog.fabianpiau.com\\\/wp-content\\\/uploads\\\/2017\\\/03\\\/swagger.png?fit=250%2C250&ssl=1\",\"datePublished\":\"2017-03-01T21:36:26+00:00\",\"dateModified\":\"2020-08-18T17:30:53+00:00\",\"description\":\"&nbsp;English version available A l'heure o\u00f9 les projets informatiques se basent la plupart du temps sur une architecture orient\u00e9e microservices, il n'est\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/blog.fabianpiau.com\\\/fr\\\/2017\\\/03\\\/01\\\/swagger-automated-api-documentation\\\/#breadcrumb\"},\"inLanguage\":\"fr-FR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[[\"https:\\\/\\\/blog.fabianpiau.com\\\/fr\\\/2017\\\/03\\\/01\\\/swagger-automated-api-documentation\\\/\"]]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\\\/\\\/blog.fabianpiau.com\\\/fr\\\/2017\\\/03\\\/01\\\/swagger-automated-api-documentation\\\/#primaryimage\",\"url\":\"https:\\\/\\\/i0.wp.com\\\/blog.fabianpiau.com\\\/wp-content\\\/uploads\\\/2017\\\/03\\\/swagger.png?fit=250%2C250&ssl=1\",\"contentUrl\":\"https:\\\/\\\/i0.wp.com\\\/blog.fabianpiau.com\\\/wp-content\\\/uploads\\\/2017\\\/03\\\/swagger.png?fit=250%2C250&ssl=1\",\"width\":250,\"height\":250,\"caption\":\"swagger\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/blog.fabianpiau.com\\\/fr\\\/2017\\\/03\\\/01\\\/swagger-automated-api-documentation\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Homepage\",\"item\":\"https:\\\/\\\/blog.fabianpiau.com\\\/fr\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Programmation agile\",\"item\":\"https:\\\/\\\/blog.fabianpiau.com\\\/fr\\\/category\\\/agile-programming\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Swagger, la documentation API automatis\u00e9e\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/blog.fabianpiau.com\\\/fr\\\/#website\",\"url\":\"https:\\\/\\\/blog.fabianpiau.com\\\/fr\\\/\",\"name\":\"CarmaBlog\",\"description\":\"Agilit\u00e9, D\u00e9veloppement Java, Nouvelles technologies et plus...\",\"publisher\":{\"@id\":\"https:\\\/\\\/blog.fabianpiau.com\\\/fr\\\/#\\\/schema\\\/person\\\/c5cbffd7cf0b10117877f5dfd1b35f14\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/blog.fabianpiau.com\\\/fr\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"fr-FR\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/blog.fabianpiau.com\\\/fr\\\/#\\\/schema\\\/person\\\/c5cbffd7cf0b10117877f5dfd1b35f14\",\"name\":\"Fabian Piau\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\\\/\\\/i0.wp.com\\\/blog.fabianpiau.com\\\/wp-content\\\/uploads\\\/2022\\\/08\\\/fabian-pro-small.jpg?fit=567%2C667&ssl=1\",\"url\":\"https:\\\/\\\/i0.wp.com\\\/blog.fabianpiau.com\\\/wp-content\\\/uploads\\\/2022\\\/08\\\/fabian-pro-small.jpg?fit=567%2C667&ssl=1\",\"contentUrl\":\"https:\\\/\\\/i0.wp.com\\\/blog.fabianpiau.com\\\/wp-content\\\/uploads\\\/2022\\\/08\\\/fabian-pro-small.jpg?fit=567%2C667&ssl=1\",\"width\":567,\"height\":667,\"caption\":\"Fabian Piau\"},\"logo\":{\"@id\":\"https:\\\/\\\/i0.wp.com\\\/blog.fabianpiau.com\\\/wp-content\\\/uploads\\\/2022\\\/08\\\/fabian-pro-small.jpg?fit=567%2C667&ssl=1\"},\"description\":\"D\u00e9veloppeur Java, Fabian s'int\u00e9resse aux nouvelles technologies et plus particuli\u00e8rement \u00e0 leur utilisation dans un contexte agile.\",\"sameAs\":[\"https:\\\/\\\/blog.fabianpiau.com\",\"https:\\\/\\\/www.facebook.com\\\/fabian.piau\",\"https:\\\/\\\/www.instagram.com\\\/fabianpiau\\\/\",\"https:\\\/\\\/www.linkedin.com\\\/in\\\/fabianpiau\\\/\",\"https:\\\/\\\/x.com\\\/fabianpiau\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Swagger, la documentation API automatis\u00e9e | CarmaBlog","description":"&nbsp;English version available A l'heure o\u00f9 les projets informatiques se basent la plupart du temps sur une architecture orient\u00e9e microservices, il n'est","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/blog.fabianpiau.com\/fr\/2017\/03\/01\/swagger-automated-api-documentation\/","og_locale":"fr_FR","og_type":"article","og_title":"Swagger, la documentation API automatis\u00e9e | CarmaBlog","og_description":"&nbsp;English version available A l'heure o\u00f9 les projets informatiques se basent la plupart du temps sur une architecture orient\u00e9e microservices, il n'est","og_url":"https:\/\/blog.fabianpiau.com\/fr\/2017\/03\/01\/swagger-automated-api-documentation\/","og_site_name":"CarmaBlog","article_publisher":"https:\/\/www.facebook.com\/fabian.piau","article_author":"https:\/\/www.facebook.com\/fabian.piau","article_published_time":"2017-03-01T21:36:26+00:00","article_modified_time":"2020-08-18T17:30:53+00:00","og_image":[{"width":250,"height":250,"url":"https:\/\/i1.wp.com\/blog.fabianpiau.com\/wp-content\/uploads\/2017\/03\/swagger.png?fit=250%2C250&ssl=1","type":"image\/png"}],"author":"Fabian Piau","twitter_card":"summary_large_image","twitter_creator":"@fabianpiau","twitter_site":"@fabianpiau","twitter_misc":{"\u00c9crit par":"Fabian Piau","Dur\u00e9e de lecture estim\u00e9e":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/blog.fabianpiau.com\/fr\/2017\/03\/01\/swagger-automated-api-documentation\/#article","isPartOf":{"@id":"https:\/\/blog.fabianpiau.com\/fr\/2017\/03\/01\/swagger-automated-api-documentation\/"},"author":{"name":"Fabian Piau","@id":"https:\/\/blog.fabianpiau.com\/#\/schema\/person\/c5cbffd7cf0b10117877f5dfd1b35f14"},"headline":"Swagger, la documentation API automatis\u00e9e","datePublished":"2017-03-01T21:36:26+00:00","dateModified":"2020-08-18T17:30:53+00:00","mainEntityOfPage":{"@id":"https:\/\/blog.fabianpiau.com\/fr\/2017\/03\/01\/swagger-automated-api-documentation\/"},"wordCount":803,"commentCount":2,"publisher":{"@id":"https:\/\/blog.fabianpiau.com\/#\/schema\/person\/c5cbffd7cf0b10117877f5dfd1b35f14"},"image":{"@id":"https:\/\/blog.fabianpiau.com\/fr\/2017\/03\/01\/swagger-automated-api-documentation\/#primaryimage"},"thumbnailUrl":"https:\/\/i0.wp.com\/blog.fabianpiau.com\/wp-content\/uploads\/2017\/03\/swagger.png?fit=250%2C250&ssl=1","keywords":["bonnes pratiques","microservices","outil","spring"],"articleSection":["Programmation agile"],"inLanguage":"fr-FR","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/blog.fabianpiau.com\/fr\/2017\/03\/01\/swagger-automated-api-documentation\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/blog.fabianpiau.com\/fr\/2017\/03\/01\/swagger-automated-api-documentation\/","url":"https:\/\/blog.fabianpiau.com\/fr\/2017\/03\/01\/swagger-automated-api-documentation\/","name":"Swagger, la documentation API automatis\u00e9e | CarmaBlog","isPartOf":{"@id":"https:\/\/blog.fabianpiau.com\/fr\/#website"},"primaryImageOfPage":{"@id":"https:\/\/blog.fabianpiau.com\/fr\/2017\/03\/01\/swagger-automated-api-documentation\/#primaryimage"},"image":{"@id":"https:\/\/blog.fabianpiau.com\/fr\/2017\/03\/01\/swagger-automated-api-documentation\/#primaryimage"},"thumbnailUrl":"https:\/\/i0.wp.com\/blog.fabianpiau.com\/wp-content\/uploads\/2017\/03\/swagger.png?fit=250%2C250&ssl=1","datePublished":"2017-03-01T21:36:26+00:00","dateModified":"2020-08-18T17:30:53+00:00","description":"&nbsp;English version available A l'heure o\u00f9 les projets informatiques se basent la plupart du temps sur une architecture orient\u00e9e microservices, il n'est","breadcrumb":{"@id":"https:\/\/blog.fabianpiau.com\/fr\/2017\/03\/01\/swagger-automated-api-documentation\/#breadcrumb"},"inLanguage":"fr-FR","potentialAction":[{"@type":"ReadAction","target":[["https:\/\/blog.fabianpiau.com\/fr\/2017\/03\/01\/swagger-automated-api-documentation\/"]]}]},{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/blog.fabianpiau.com\/fr\/2017\/03\/01\/swagger-automated-api-documentation\/#primaryimage","url":"https:\/\/i0.wp.com\/blog.fabianpiau.com\/wp-content\/uploads\/2017\/03\/swagger.png?fit=250%2C250&ssl=1","contentUrl":"https:\/\/i0.wp.com\/blog.fabianpiau.com\/wp-content\/uploads\/2017\/03\/swagger.png?fit=250%2C250&ssl=1","width":250,"height":250,"caption":"swagger"},{"@type":"BreadcrumbList","@id":"https:\/\/blog.fabianpiau.com\/fr\/2017\/03\/01\/swagger-automated-api-documentation\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Homepage","item":"https:\/\/blog.fabianpiau.com\/fr\/"},{"@type":"ListItem","position":2,"name":"Programmation agile","item":"https:\/\/blog.fabianpiau.com\/fr\/category\/agile-programming\/"},{"@type":"ListItem","position":3,"name":"Swagger, la documentation API automatis\u00e9e"}]},{"@type":"WebSite","@id":"https:\/\/blog.fabianpiau.com\/fr\/#website","url":"https:\/\/blog.fabianpiau.com\/fr\/","name":"CarmaBlog","description":"Agilit\u00e9, D\u00e9veloppement Java, Nouvelles technologies et plus...","publisher":{"@id":"https:\/\/blog.fabianpiau.com\/fr\/#\/schema\/person\/c5cbffd7cf0b10117877f5dfd1b35f14"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/blog.fabianpiau.com\/fr\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"fr-FR"},{"@type":["Person","Organization"],"@id":"https:\/\/blog.fabianpiau.com\/fr\/#\/schema\/person\/c5cbffd7cf0b10117877f5dfd1b35f14","name":"Fabian Piau","image":{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/i0.wp.com\/blog.fabianpiau.com\/wp-content\/uploads\/2022\/08\/fabian-pro-small.jpg?fit=567%2C667&ssl=1","url":"https:\/\/i0.wp.com\/blog.fabianpiau.com\/wp-content\/uploads\/2022\/08\/fabian-pro-small.jpg?fit=567%2C667&ssl=1","contentUrl":"https:\/\/i0.wp.com\/blog.fabianpiau.com\/wp-content\/uploads\/2022\/08\/fabian-pro-small.jpg?fit=567%2C667&ssl=1","width":567,"height":667,"caption":"Fabian Piau"},"logo":{"@id":"https:\/\/i0.wp.com\/blog.fabianpiau.com\/wp-content\/uploads\/2022\/08\/fabian-pro-small.jpg?fit=567%2C667&ssl=1"},"description":"D\u00e9veloppeur Java, Fabian s'int\u00e9resse aux nouvelles technologies et plus particuli\u00e8rement \u00e0 leur utilisation dans un contexte agile.","sameAs":["https:\/\/blog.fabianpiau.com","https:\/\/www.facebook.com\/fabian.piau","https:\/\/www.instagram.com\/fabianpiau\/","https:\/\/www.linkedin.com\/in\/fabianpiau\/","https:\/\/x.com\/fabianpiau"]}]}},"views":4505,"jetpack_featured_media_url":"https:\/\/i0.wp.com\/blog.fabianpiau.com\/wp-content\/uploads\/2017\/03\/swagger.png?fit=250%2C250&ssl=1","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/pbSHyl-15p","_links":{"self":[{"href":"https:\/\/blog.fabianpiau.com\/fr\/wp-json\/wp\/v2\/posts\/4179","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.fabianpiau.com\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.fabianpiau.com\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.fabianpiau.com\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.fabianpiau.com\/fr\/wp-json\/wp\/v2\/comments?post=4179"}],"version-history":[{"count":0,"href":"https:\/\/blog.fabianpiau.com\/fr\/wp-json\/wp\/v2\/posts\/4179\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.fabianpiau.com\/fr\/wp-json\/wp\/v2\/media\/4181"}],"wp:attachment":[{"href":"https:\/\/blog.fabianpiau.com\/fr\/wp-json\/wp\/v2\/media?parent=4179"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.fabianpiau.com\/fr\/wp-json\/wp\/v2\/categories?post=4179"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.fabianpiau.com\/fr\/wp-json\/wp\/v2\/tags?post=4179"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}