From 080e8e836460ec1509c39b0cc9fce24c0c4e1f4c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicolas=20Mass=C3=A9?= Date: Mon, 25 Feb 2019 19:17:31 +0100 Subject: [PATCH] update api contracts --- api-contracts/beer-catalog-1.0.yaml | 1 + api-contracts/beer-catalog-2.0.yaml | 107 ++++++++++++++++++++++++++++ 2 files changed, 108 insertions(+) create mode 100644 api-contracts/beer-catalog-2.0.yaml diff --git a/api-contracts/beer-catalog-1.0.yaml b/api-contracts/beer-catalog-1.0.yaml index 1e5aa76..02a3166 100644 --- a/api-contracts/beer-catalog-1.0.yaml +++ b/api-contracts/beer-catalog-1.0.yaml @@ -10,6 +10,7 @@ info: name: 'MIT License' url: 'https://opensource.org/licenses/MIT' version: '1.0' +basePath: /api paths: '/beer/{name}': get: diff --git a/api-contracts/beer-catalog-2.0.yaml b/api-contracts/beer-catalog-2.0.yaml new file mode 100644 index 0000000..610eb11 --- /dev/null +++ b/api-contracts/beer-catalog-2.0.yaml @@ -0,0 +1,107 @@ +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: '2.0' +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 \ No newline at end of file