{ "swagger": "2.0", "info": { "title": "Beer Catalog API", "description": "An API for querying beer catalog of Acme Inc.", "contact": { "name": "Laurent Broudoux", "url": "http://github.com/lbroudoux", "email": "laurent.broudoux@gmail.com" }, "license": { "name": "MIT License", "url": "https://opensource.org/licenses/MIT" }, "version": "0.9" }, "basePath": "/api", "paths": { "/beer/{name}": { "get": { "tags": [ "beer" ], "summary": "Get beer having name", "description": "Get beer having name", "operationId": "GetBeer", "responses": { "200": { "description": "Beer having requested name", "schema": { "$ref": "#/definitions/Beer" } } } }, "parameters": [ { "name": "name", "in": "path", "description": "Name of beer to retrieve", "required": true, "type": "string" } ] }, "/beer/findByStatus/{status}": { "get": { "tags": [ "beer" ], "summary": "Get beers having status", "description": "Get beers having status", "operationId": "FindBeersByStatus", "responses": { "200": { "description": "List of beers having requested status", "schema": { "type": "array", "items": { "$ref": "#/definitions/Beer" } } } } }, "parameters": [ { "name": "status", "in": "path", "description": "Status of beers to retrieve", "required": true, "type": "string" }, { "name": "page", "in": "query", "description": "Number of page to retrieve", "type": "number" } ] }, "/beer": { "get": { "tags": [ "beer" ], "summary": "List beers within catalog", "description": "List beers within catalog", "operationId": "ListBeers", "responses": { "200": { "description": "Array of beers", "schema": { "type": "array", "items": { "$ref": "#/definitions/Beer" } } } } }, "parameters": [ { "name": "page", "in": "query", "description": "Number of page to retrieve", "type": "number" } ] } }, "tags": [ { "name": "beer", "description": "Beer resource" } ], "definitions": { "Beer": { "properties": { "name": { "description": "Name of Beer", "type": "string" }, "country": { "description": "Origin country of Beer", "type": "string" }, "type": { "description": "Type of Beer", "type": "string" }, "rating": { "description": "Rating from customers", "type": "number" }, "status": { "description": "Stock status", "type": "string" } } } }, "securityDefinitions": { "oidc": { "type": "oauth2", "flow": "accessCode", "authorizationUrl": "https://filled-later.dummy/auth", "tokenUrl": "https://filled-later.dummy/token", "scopes": { "openid": "Get an OpenID Connect token" } } }, "security": [ { "oidc": [ "openid" ] } ] }