Last active
December 12, 2022 11:27
-
-
Save intgr/05030864f99ab1c1386644d9f48e8abe to your computer and use it in GitHub Desktop.
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
openapi: 3.0.0 | |
info: | |
title: Pet Store | |
version: 1.0.0 | |
description: '' | |
externalDocs: | |
description: Find out how to create Github repo for your OpenAPI spec. | |
url: 'https://github.com/Rebilly/generator-openapi-repo' | |
tags: | |
- name: pet | |
description: Everything about your Pets | |
- name: store | |
description: Access to Petstore orders | |
x-tag-expanded: false | |
- name: user | |
description: Operations about user | |
- name: pet_model | |
description: The Pet Model | |
- name: store_model | |
description: The Order Model | |
paths: | |
'/pet/{petId}': | |
get: | |
tags: | |
- pet | |
summary: Find pet by ID | |
description: Returns a single pet | |
operationId: getPetById | |
parameters: | |
- name: petId | |
in: path | |
description: ID of pet to return | |
required: true | |
deprecated: true | |
schema: | |
type: integer | |
format: int64 | |
responses: | |
'200': | |
description: successful operation | |
content: | |
application/json: | |
schema: | |
$ref: '#/components/schemas/Pet' | |
security: | |
- api_key: [] | |
post: | |
tags: | |
- pet | |
summary: Updates a pet in the store with form data | |
description: '' | |
operationId: updatePetWithForm | |
parameters: | |
- name: petId | |
in: path | |
description: ID of pet that needs to be updated | |
required: true | |
schema: | |
type: integer | |
format: int64 | |
responses: | |
'405': | |
description: Invalid input | |
security: | |
- petstore_auth: | |
- 'write:pets' | |
- 'read:pets' | |
requestBody: | |
content: | |
application/x-www-form-urlencoded: | |
schema: | |
type: object | |
properties: | |
name: | |
description: Updated name of the pet | |
type: string | |
status: | |
description: Updated status of the pet | |
type: string | |
delete: | |
tags: | |
- pet | |
summary: Deletes a pet | |
description: '' | |
operationId: deletePet | |
parameters: | |
- name: api_key | |
in: header | |
required: false | |
schema: | |
type: string | |
example: 'Bearer <TOKEN>' | |
- name: petId | |
in: path | |
description: Pet id to delete | |
required: true | |
schema: | |
type: integer | |
format: int64 | |
responses: | |
'400': | |
description: Invalid pet value | |
security: | |
- petstore_auth: | |
- 'write:pets' | |
- 'read:pets' | |
components: | |
schemas: | |
ApiResponse: | |
type: object | |
properties: | |
code: | |
type: integer | |
format: int32 | |
type: | |
type: string | |
message: | |
type: string | |
Cat: | |
description: A representation of a cat | |
allOf: | |
- type: object | |
properties: | |
huntingSkill: | |
type: string | |
description: The measured skill for hunting | |
default: lazy | |
enum: | |
- clueless | |
- lazy | |
- adventurous | |
- aggressive | |
required: | |
- huntingSkill | |
Category: | |
type: object | |
properties: | |
id: | |
description: Category ID | |
allOf: | |
- $ref: '#/components/schemas/Id' | |
name: | |
description: Category name | |
type: string | |
minLength: 1 | |
sub: | |
description: Test Sub Category | |
type: object | |
properties: | |
prop1: | |
type: string | |
description: Dumb Property | |
xml: | |
name: Category | |
namespace: https://rapidocweb.com | |
Dog: | |
description: A representation of a dog | |
allOf: | |
- $ref: '#/components/schemas/Pet' | |
- type: object | |
properties: | |
packSize: | |
type: integer | |
format: int32 | |
description: The size of the pack the dog is from | |
default: 1 | |
minimum: 1 | |
required: | |
- packSize | |
HoneyBee: | |
description: A representation of a honey bee | |
allOf: | |
- $ref: '#/components/schemas/Pet' | |
- type: object | |
properties: | |
honeyPerDay: | |
type: number | |
description: Average amount of honey produced per day in ounces | |
example: 3.14 | |
required: | |
- honeyPerDay | |
Id: | |
type: integer | |
format: int64 | |
readOnly: true | |
Order: | |
type: object | |
properties: | |
id: | |
description: Order ID | |
allOf: | |
- $ref: '#/components/schemas/Id' | |
petId: | |
description: Pet ID | |
allOf: | |
- $ref: '#/components/schemas/Id' | |
quantity: | |
type: integer | |
format: int32 | |
minimum: 1 | |
default: 1 | |
shipDate: | |
description: Estimated ship date | |
type: string | |
format: date-time | |
status: | |
type: string | |
description: Order Status | |
enum: | |
- placed | |
- approved | |
- delivered | |
complete: | |
description: Indicates whenever order was completed or not | |
type: boolean | |
default: false | |
readOnly: true | |
rqeuestId: | |
description: Unique Request Id | |
type: string | |
writeOnly: true | |
xml: | |
name: Order | |
namespace: https://rapidocweb.com | |
Pet: | |
type: object | |
required: | |
- name | |
- cat | |
properties: | |
cat: | |
allOf: | |
- $ref: '#/components/schemas/Cat' | |
nullable: true | |
name: | |
description: The name given to a pet | |
type: string | |
nullable: true | |
Tag: | |
type: object | |
properties: | |
id: | |
description: Tag ID | |
allOf: | |
- $ref: '#/components/schemas/Id' | |
name: | |
description: Tag name | |
type: string | |
minLength: 1 | |
xml: | |
name: Tag | |
namespace: https://rapidocweb.com | |
User: | |
type: object | |
properties: | |
id: | |
$ref: '#/components/schemas/Id' | |
pet: | |
oneOf: | |
- $ref: '#/components/schemas/Pet' | |
- $ref: '#/components/schemas/Tag' | |
username: | |
description: User supplied username | |
type: string | |
minLength: 4 | |
example: John78 | |
firstName: | |
description: User first name | |
type: string | |
minLength: 1 | |
example: John | |
lastName: | |
description: User last name | |
type: string | |
minLength: 1 | |
example: Smith | |
email: | |
description: User email address | |
type: string | |
format: email | |
example: [email protected] | |
password: | |
type: string | |
description: >- | |
User password, MUST contain a mix of upper and lower case letters, | |
as well as digits | |
format: password | |
minLength: 8 | |
pattern: '/(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])/' | |
example: drowssaP123 | |
phone: | |
description: User phone number in international format | |
type: string | |
pattern: '/^\+(?:[0-9]-?){6,14}[0-9]$/' | |
example: +1-202-555-0192 | |
nullable: true | |
userStatus: | |
description: User status | |
type: integer | |
format: int32 | |
xml: | |
name: User | |
namespace: https://rapidocweb.com | |
requestBodies: | |
Pet: | |
content: | |
application/json: | |
schema: | |
allOf: | |
- description: My Pet | |
title: Pettie | |
- $ref: '#/components/schemas/Pet' | |
application/xml: | |
schema: | |
type: 'object' | |
properties: | |
name: | |
type: string | |
description: hooray | |
description: Pet object that needs to be added to the store | |
required: true | |
UserArray: | |
content: | |
application/json: | |
schema: | |
type: array | |
items: | |
$ref: '#/components/schemas/User' | |
description: List of user object | |
required: true | |
securitySchemes: | |
basic: | |
type: http | |
scheme: basic | |
petstore_auth: | |
description: | | |
Get access to data while protecting your account credentials. | |
OAuth2 is also a safer and more secure way to give you access. | |
type: oauth2 | |
flows: | |
implicit: | |
authorizationUrl: 'http://petstore.swagger.io/api/oauth/dialog' | |
scopes: | |
'write:pets': modify pets in your account | |
'read:pets': read your pets | |
api_key: | |
description: > | |
For this sample, you can use the api key `special-key` to test the | |
authorization filters. | |
type: apiKey | |
name: api_key | |
in: header | |
examples: | |
Order: | |
value: | |
quantity: 1, | |
shipDate: 2018-10-19T16:46:45Z, | |
status: placed, | |
complete: false |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment