Slide 1

Slide 1 text

Open API Beyond Swagger UI A boundless universe Arnaud Lauret @apihandyman

Slide 2

Slide 2 text

Beyond Swagger UI: Open API Spec

Slide 3

Slide 3 text

Code annotations Swagger UI

Slide 4

Slide 4 text

Expanding Swagger Universe Code Annotations and Swagger UI

Slide 5

Slide 5 text

Swagger Specification

Slide 6

Slide 6 text

January 2016

Slide 7

Slide 7 text

Expanding Swagger OpenAPI Universe Center of Universe: Open API Specification Design Design Analysis Documentation Code & Test Generation Mock Custom tools & Extension Tools’ Import

Slide 8

Slide 8 text

API Design

Slide 9

Slide 9 text

How to describe my API? Write Open API Specification!

Slide 10

Slide 10 text

How to write OpenAPI Spec?

Slide 11

Slide 11 text

Use YAML and Editor

Slide 12

Slide 12 text

READ the Specification!

Slide 13

Slide 13 text

Tools MAY NOT Support whole Specification

Slide 14

Slide 14 text

Demo Swagger Editor https://editor.swagger.io Open API Specification https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md Open API Specification Visual Documentation http://openapi-specification-visual-documentation.apihandyman.io/ Open API Specification Tutorial http://apihandyman.io/writing-openapi-swagger-specification-tutorial-part-1-introduction/

Slide 15

Slide 15 text

API Documentation

Slide 16

Slide 16 text

Many rendering possibilities

Slide 17

Slide 17 text

Interface Contract Is NOT Enough

Slide 18

Slide 18 text

Demo Swagger UI https://github.com/swagger-api/swagger-ui Swagger2markup & Asciidoctor https://github.com/Swagger2Markup/swagger2markup Swagger2Slate & Slate https://github.com/E96/swagger2slate Lucy Console https://github.com/lucybot/lucy-console

Slide 19

Slide 19 text

Open API import

Slide 20

Slide 20 text

Open A Test, API Gateway, Monitoring, Design, Documentation, SDKs ...

Slide 21

Slide 21 text

Demo Postman https://www.getpostman.com/ Ardoq https://ardoq.com/ Runscope https://www.runscope.com/ APIMatic https://www.apimatic.io/

Slide 22

Slide 22 text

API Design Analysis

Slide 23

Slide 23 text

Guidelines respect? Breaking changes?

Slide 24

Slide 24 text

Demo Swagger API Check Style https://github.com/jasonh-n-austin/swagger-api-checkstyle Swagger diff https://github.com/zallek/swagger-diff

Slide 25

Slide 25 text

API Mock

Slide 26

Slide 26 text

MOCK … with a complete Open API Specification!

Slide 27

Slide 27 text

Demo Prism https://stoplight.io/prism/

Slide 28

Slide 28 text

Code & Test Generation

Slide 29

Slide 29 text

OpenAPI = Blueprint

Slide 30

Slide 30 text

Demo Swagger Test Templates https://github.com/apigee-127/swagger-test-templates Swagger Codegen https://github.com/swagger-api/swagger-codegen

Slide 31

Slide 31 text

Custom Tools & Extension

Slide 32

Slide 32 text

Structured File + Extensions = Endless Possibilities

Slide 33

Slide 33 text

Demo Swagger Node https://github.com/swagger-api/swagger-node AWS API Gateway https://aws.amazon.com/

Slide 34

Slide 34 text

A boundless universe

Slide 35

Slide 35 text

It’s up to you to explore this universe! Simple format Many use cases Many existing tools Extensible Easy custom tools

Slide 36

Slide 36 text

Questions?

Slide 37

Slide 37 text

No content

Slide 38

Slide 38 text

Photo credits Why? by Evan Dennis https://unsplash.com/photos/i--IN3cvEjg OMG RTFM by Cylent https://www.flickr.com/photos/andibits/11227866046/ Warning by M.P.3. https://www.flickr.com/photos/lemonpixel/4578342858/ No Trespassing by Nils https://www.flickr.com/photos/nullprozent/4512766002/ Pier 1 Imports by M. Mozart https://www.flickr.com/photos/jeepersmedia/14677099887/ Microscopes by ZEISS Microscopy https://www.flickr.com/photos/zeissmicro/7039029805/ Easy Way by Memphis CVB https://www.flickr.com/photos/ilovememphis/6784252073/ Star Trek Blueprint by Cardoso https://www.flickr.com/photos/cardoso/2196726835/ Questions? By The Autowitch https://www.flickr.com/photos/autowitch/2198906338 Thank You by Russ Morris https://www.flickr.com/photos/russmorris/2486506322/