Upgrade to Pro — share decks privately, control downloads, hide ads and more …

MicroXchg - OpenAPI Specification 3 - the evolution of Swagger

MicroXchg - OpenAPI Specification 3 - the evolution of Swagger

MicroXchg, Berlin, 22. März 2018

Swagger is the de facto standard for API description. It has evolved into a new version specified by the Open API Initiative under the umbrella of the Linux Foundation. This talk will show improvements and new features that will help you to define even better APIs.

A53b603265b6c5bf492b18a182cb15d0?s=128

Dennis Kieselhorst

March 22, 2018
Tweet

More Decks by Dennis Kieselhorst

Other Decks in Programming

Transcript

  1. OPENAPI SPECIFICATION 3 THE EVOLUTION OF SWAGGER Dennis Kieselhorst |

    CTS EVENTIM
  2. ABOUT ME over 10 years experience with distributed so ware

    architectures worked as lead developer, architect and consultant now team leader and chief architect Tixx at CTS EVENTIM committer at Apache So ware Foundation member of organizing committees Java user group (JUG) Bremen-Oldenburg Java Forum Nord
  3. APPLICATION PROGRAMMING INTERFACES (APIS) the glue between applications described with

    in the past but not resource-oriented is resource-oriented but has cumbersome XML-structure that's why Swagger was born in 2010 as an interface definition language (IDL) for REST-APIs Web Services Description Language (WSDL) Web Application Description Language (WADL)
  4. FORMATION OF THE OPEN API INITIATIVE fast-growing Swagger fan community

    bought by in early 2015 formation of the under the umbrella of the Linux Foundation by the end of 2015 now counts including Google, IBM and Microso . Swagger was renamed to old name is still used for tooling further spec development happens on GitHub in July 2017 the new major was published, followed by the 3.0.1 patch release in December SmartBear Open API Initiative (OAI) 32 members OpenAPI Specification (OAS) version 3.0.0
  5. DIFFERENCES BETWEEN VERSION 2.0 AND 3.0.0

  6. None
  7. None
  8. None
  9. None
  10. NOT COVERED BY THE CURRENT SPEC Alternative schemas like are

    in discussion, but not yet integrated in the specification. Asynchronous use cases like MQTT and AMQP are part of the that is based on the OpenAPI specification Google Protocol Buffers AsyncAPI Specification
  11. TOOL SUPPORT FOR OPENAPI DEVELOPMENT Swagger tooling a core library

    (swagger-core), a UI for visualization and test calls (swagger-ui), a code generator (swagger-codegen) sowie an editor (swagger-editor). implemented by and MicroProfile OpenAPI Open Liberty WildFly Swarm Apache CXF ...
  12. SAMPLE: HELLO DEMO WITH CXF AND SPRING BOOT alternatively git

    clone https://github.com/apache/cxf cd distribution/src/main/release/samples/jax_rs/spring_boot mvn spring-boot:run x-www-browser http://localhost:8080/services/helloservice/\ api-docs?url=/services/helloservice/openapi.json download the CXF sourcecode distribution
  13. CONCLUSION Swagger 2.0 is a de facto standard widely used

    in REST-based applications extensive tool-support OpenAPI Specification 3.0.0 is a reasoned cleanup all famous vendors are part of the initiative will replace Swagger 2.0 as soon as all common tools have adapted OAI 3.0.0
  14. IMAGE SOURCES , , , , , , , Public

    Domain Pixabay geralt CC0 Creative Commons Pixabay geralt CC0 Creative Commons Pixabay congerdesign CC0 Creative Commons Pexels startupstockphotos.com CC0 Creative Commons Pexels Markus Spiske CC0 Creative Commons Darrel Miller Open API Initiative Darrel Miller Open API Initiative Darrel Miller Open API Initiative Darrel Miller Open API Initiative Pixabay wilhei CC0 Creative Commons Huw Williams