openapi: 3.0.0
info:
  title: 'Swagger Petstore'
  license:
    name: MIT
  version: 1.0.0
servers:
  -
    url: petstore.swagger.io
    description: 'Api server'
paths:
  /pets:
    get:
      tags:
        - pets
      summary: 'List all pets'
      operationId: listPets
      parameters:
        -
          name: limit
          in: query
          description: 'How many items to return at one time (max 100)'
          required: false
          schema:
            type: integer
            format: int32
      responses:
        '200':
          description: 'An paged array of pets'
          headers:
            x-next:
              description: 'A link to the next page of responses'
              schema:
                type: string
        default:
          description: 'unexpected error'
    post:
      tags:
        - pets
      summary: 'Create a pet'
      operationId: createPets
      responses:
        '201':
          description: 'Null response'
        default:
          description: 'unexpected error'
  '/pets/{petId}':
    get:
      tags:
        - pets
      summary: 'Info for a specific pet'
      operationId: showPetById
      parameters:
        -
          name: petId
          in: path
          description: 'The id of the pet to retrieve'
          required: true
          schema:
            type: string
      responses:
        '200':
          description: 'Expected response to a valid request'
        default:
          description: 'unexpected error'
components:
  schemas:
    Pet:
      required:
        - id
        - name
      properties:
        id:
          type: integer
          format: int64
        name:
          type: string
        tag:
          type: string
      type: object
    Error:
      required:
        - code
        - message
      properties:
        code:
          type: integer
          format: int32
        message:
          type: string
      type: object
    Pets:
      type: array
      items:
        $ref: '#/components/schemas/Pet'
