Last active
June 9, 2017 23:09
-
-
Save sfszh/3c80f99aa6b6045ddf7d1c89f0dc09d2 to your computer and use it in GitHub Desktop.
g3-swagger.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
swagger: '2.0' | |
info: | |
description: >- | |
This is a sample server Petstore server. You can find out more about | |
Swagger at [http://swagger.io](http://swagger.io) or on [irc.freenode.net, | |
#swagger](http://swagger.io/irc/). For this sample, you can use the api | |
key `special-key` to test the authorization filters. | |
version: 1.0.0 | |
title: Swagger Petstore | |
termsOfService: 'http://swagger.io/terms/' | |
contact: | |
email: [email protected] | |
license: | |
name: Apache 2.0 | |
url: 'http://www.apache.org/licenses/LICENSE-2.0.html' | |
host: petstore.swagger.io | |
basePath: /v2 | |
tags: | |
- name: pet | |
description: Everything about your Pets | |
externalDocs: | |
description: Find out more | |
url: 'http://swagger.io' | |
- name: store | |
description: Access to Petstore orders | |
- name: user | |
description: Operations about user | |
externalDocs: | |
description: Find out more about our store | |
url: 'http://swagger.io' | |
schemes: | |
- http | |
paths: | |
/log: | |
post: | |
tags: | |
- log | |
summary: Add a new log | |
description: '' | |
operationId: addLog | |
consumes: | |
- application/json | |
- application/xml | |
produces: | |
- application/xml | |
- application/json | |
parameters: | |
- in: body | |
name: body | |
description: Pet object that needs to be added to the store | |
required: true | |
schema: | |
$ref: '#/definitions/Log' | |
responses: | |
'405': | |
description: Invalid input | |
security: | |
- petstore_auth: | |
- 'write:pets' | |
- 'read:pets' | |
put: | |
tags: | |
- log | |
summary: Update an existing log | |
description: '' | |
operationId: updateLog | |
consumes: | |
- application/json | |
- application/xml | |
produces: | |
- application/xml | |
- application/json | |
parameters: | |
- in: body | |
name: body | |
description: Pet object that needs to be added to the store | |
required: true | |
schema: | |
$ref: '#/definitions/Log' | |
responses: | |
'400': | |
description: Invalid ID supplied | |
'404': | |
description: Log not found | |
'405': | |
description: Validation exception | |
security: | |
- petstore_auth: | |
- 'write:pets' | |
- 'read:pets' | |
/log/findByTags: | |
get: | |
tags: | |
- log | |
summary: Finds Logs by tags | |
description: >- | |
Muliple tags can be provided with comma separated strings. Use | |
tag1, tag2, tag3 for testing. | |
operationId: findPetsByTags | |
produces: | |
- application/xml | |
- application/json | |
parameters: | |
- name: tags | |
in: query | |
description: Tags to filter by | |
required: true | |
type: array | |
items: | |
type: string | |
collectionFormat: multi | |
responses: | |
'200': | |
description: successful operation | |
schema: | |
type: array | |
items: | |
$ref: '#/definitions/Log' | |
'400': | |
description: Invalid tag value | |
security: | |
- petstore_auth: | |
- 'write:pets' | |
- 'read:pets' | |
'/log/{logId}': | |
get: | |
tags: | |
- log | |
summary: Find log by ID | |
description: Returns a single log | |
operationId: getLogById | |
produces: | |
- application/xml | |
- application/json | |
parameters: | |
- name: logId | |
in: path | |
description: ID of Log to return | |
required: true | |
type: integer | |
format: int64 | |
responses: | |
'200': | |
description: successful operation | |
schema: | |
$ref: '#/definitions/Log' | |
'400': | |
description: Invalid ID supplied | |
'404': | |
description: Log not found | |
security: | |
- api_key: [] | |
post: | |
tags: | |
- log | |
summary: Updates a log with form data | |
description: '' | |
operationId: updateLogWithForm | |
consumes: | |
- application/x-www-form-urlencoded | |
produces: | |
- application/xml | |
- application/json | |
parameters: | |
- name: logId | |
in: path | |
description: ID of log that needs to be updated | |
required: true | |
type: integer | |
format: int64 | |
- name: name | |
in: formData | |
description: Updated name of the log | |
required: false | |
type: string | |
responses: | |
'405': | |
description: Invalid input | |
security: | |
- petstore_auth: | |
- 'write:pets' | |
- 'read:pets' | |
delete: | |
tags: | |
- log | |
summary: Deletes a log | |
description: '' | |
operationId: deleteLog | |
produces: | |
- application/xml | |
- application/json | |
parameters: | |
- name: api_key | |
in: header | |
required: false | |
type: string | |
- name: logId | |
in: path | |
description: Log id to delete | |
required: true | |
type: integer | |
format: int64 | |
responses: | |
'400': | |
description: Invalid ID supplied | |
'404': | |
description: Log not found | |
security: | |
- petstore_auth: | |
- 'write:pets' | |
- 'read:pets' | |
'/log/{logId}/uploadImage': | |
post: | |
tags: | |
- log | |
summary: uploads an image | |
description: '' | |
operationId: uploadFile | |
consumes: | |
- multipart/form-data | |
produces: | |
- application/json | |
parameters: | |
- name: logId | |
in: path | |
description: ID of log to update | |
required: true | |
type: integer | |
format: int64 | |
- name: additionalMetadata | |
in: formData | |
description: Additional data to pass to server | |
required: false | |
type: string | |
- name: file | |
in: formData | |
description: file to upload | |
required: false | |
type: file | |
responses: | |
'200': | |
description: successful operation | |
schema: | |
$ref: '#/definitions/ApiResponse' | |
security: | |
- petstore_auth: | |
- 'write:pets' | |
- 'read:pets' | |
/user: | |
post: | |
tags: | |
- user | |
summary: Create user | |
description: This can only be done by the logged in user. | |
operationId: createUser | |
produces: | |
- application/xml | |
- application/json | |
parameters: | |
- in: body | |
name: body | |
description: Created user object | |
required: true | |
schema: | |
$ref: '#/definitions/User' | |
responses: | |
default: | |
description: successful operation | |
/user/createWithArray: | |
post: | |
tags: | |
- user | |
summary: Creates list of users with given input array | |
description: '' | |
operationId: createUsersWithArrayInput | |
produces: | |
- application/xml | |
- application/json | |
parameters: | |
- in: body | |
name: body | |
description: List of user object | |
required: true | |
schema: | |
type: array | |
items: | |
$ref: '#/definitions/User' | |
responses: | |
default: | |
description: successful operation | |
/user/createWithList: | |
post: | |
tags: | |
- user | |
summary: Creates list of users with given input array | |
description: '' | |
operationId: createUsersWithListInput | |
produces: | |
- application/xml | |
- application/json | |
parameters: | |
- in: body | |
name: body | |
description: List of user object | |
required: true | |
schema: | |
type: array | |
items: | |
$ref: '#/definitions/User' | |
responses: | |
default: | |
description: successful operation | |
/user/login: | |
get: | |
tags: | |
- user | |
summary: Logs user into the system | |
description: '' | |
operationId: loginUser | |
produces: | |
- application/xml | |
- application/json | |
parameters: | |
- name: username | |
in: query | |
description: The user name for login | |
required: true | |
type: string | |
- name: password | |
in: query | |
description: The password for login in clear text | |
required: true | |
type: string | |
responses: | |
'200': | |
description: successful operation | |
schema: | |
type: string | |
headers: | |
X-Rate-Limit: | |
type: integer | |
format: int32 | |
description: calls per hour allowed by the user | |
X-Expires-After: | |
type: string | |
format: date-time | |
description: date in UTC when token expires | |
'400': | |
description: Invalid username/password supplied | |
/user/logout: | |
get: | |
tags: | |
- user | |
summary: Logs out current logged in user session | |
description: '' | |
operationId: logoutUser | |
produces: | |
- application/xml | |
- application/json | |
parameters: [] | |
responses: | |
default: | |
description: successful operation | |
'/user/{username}': | |
get: | |
tags: | |
- user | |
summary: Get user by user name | |
description: '' | |
operationId: getUserByName | |
produces: | |
- application/xml | |
- application/json | |
parameters: | |
- name: username | |
in: path | |
description: 'The name that needs to be fetched. Use user1 for testing. ' | |
required: true | |
type: string | |
responses: | |
'200': | |
description: successful operation | |
schema: | |
$ref: '#/definitions/User' | |
'400': | |
description: Invalid username supplied | |
'404': | |
description: User not found | |
put: | |
tags: | |
- user | |
summary: Updated user | |
description: This can only be done by the logged in user. | |
operationId: updateUser | |
produces: | |
- application/xml | |
- application/json | |
parameters: | |
- name: username | |
in: path | |
description: name that need to be updated | |
required: true | |
type: string | |
- in: body | |
name: body | |
description: Updated user object | |
required: true | |
schema: | |
$ref: '#/definitions/User' | |
responses: | |
'400': | |
description: Invalid user supplied | |
'404': | |
description: User not found | |
delete: | |
tags: | |
- user | |
summary: Delete user | |
description: This can only be done by the logged in user. | |
operationId: deleteUser | |
produces: | |
- application/xml | |
- application/json | |
parameters: | |
- name: username | |
in: path | |
description: The name that needs to be deleted | |
required: true | |
type: string | |
responses: | |
'400': | |
description: Invalid username supplied | |
'404': | |
description: User not found | |
securityDefinitions: | |
petstore_auth: | |
type: oauth2 | |
authorizationUrl: 'http://petstore.swagger.io/oauth/dialog' | |
flow: implicit | |
scopes: | |
'write:pets': modify pets in your account | |
'read:pets': read your pets | |
api_key: | |
type: apiKey | |
name: api_key | |
in: header | |
definitions: | |
Order: | |
type: object | |
properties: | |
id: | |
type: integer | |
format: int64 | |
petId: | |
type: integer | |
format: int64 | |
quantity: | |
type: integer | |
format: int32 | |
shipDate: | |
type: string | |
format: date-time | |
status: | |
type: string | |
description: Order Status | |
enum: | |
- placed | |
- approved | |
- delivered | |
complete: | |
type: boolean | |
default: false | |
xml: | |
name: Order | |
Category: | |
type: object | |
properties: | |
id: | |
type: integer | |
format: int64 | |
name: | |
type: string | |
xml: | |
name: Category | |
User: | |
type: object | |
properties: | |
id: | |
type: integer | |
format: int64 | |
username: | |
type: string | |
firstName: | |
type: string | |
lastName: | |
type: string | |
email: | |
type: string | |
password: | |
type: string | |
phone: | |
type: string | |
userStatus: | |
type: integer | |
format: int32 | |
description: User Status | |
xml: | |
name: User | |
Tag: | |
type: object | |
properties: | |
id: | |
type: integer | |
format: int64 | |
name: | |
type: string | |
xml: | |
name: Tag | |
PriceTag: | |
type: object | |
properties: | |
id: | |
type: integer | |
format: int64 | |
name: | |
type: string | |
price: | |
type: integer | |
format: int32 | |
xml: | |
name: PriceTag | |
Pet: | |
type: object | |
required: | |
- name | |
- photoUrls | |
properties: | |
id: | |
type: integer | |
format: int64 | |
category: | |
$ref: '#/definitions/Category' | |
name: | |
type: string | |
example: doggie | |
photoUrls: | |
type: array | |
xml: | |
name: photoUrl | |
wrapped: true | |
items: | |
type: string | |
tags: | |
type: array | |
xml: | |
name: tag | |
wrapped: true | |
items: | |
$ref: '#/definitions/Tag' | |
status: | |
type: string | |
description: pet status in the store | |
enum: | |
- available | |
- pending | |
- sold | |
xml: | |
name: Pet | |
Log: | |
type: object | |
required: | |
- name | |
- time | |
- pricetag | |
properties: | |
id: | |
type: integer | |
format: int64 | |
category: | |
$ref: '#/definitions/Category' | |
time: | |
type: string | |
format: date-time | |
name: | |
type: string | |
example: good deed | |
description: | |
type: string | |
example: good deed description | |
photoUrls: | |
type: array | |
xml: | |
name: photoUrl | |
wrapped: true | |
items: | |
type: string | |
tags: | |
type: array | |
xml: | |
name: tag | |
wrapped: true | |
items: | |
$ref: '#/definitions/Tag' | |
pricetag: | |
$ref: '#/definitions/PriceTag' | |
xml: | |
name: Log | |
ApiResponse: | |
type: object | |
properties: | |
code: | |
type: integer | |
format: int32 | |
type: | |
type: string | |
message: | |
type: string | |
externalDocs: | |
description: Find out more about Swagger | |
url: 'http://swagger.io' |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment