{
  "swagger": "2.0",
  "info": {
    "version": "1.0.0",
    "title": "Swagger Petstore",
    "contact": {"name": "OAI", "url": "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/master/examples/v2.0/json/petstore.json"},
    "license": {"name": "MIT"}
  },
  "host": "petstore.swagger.io",
  "basePath": "/v1",
  "schemes": ["http"],
  "consumes": ["application/json"],
  "produces": ["application/json"],
  "paths": {
    "/pets": {
      "get": {
        "summary": "List all pets",
        "operationId": "listPets",
        "tags": ["pets"],
        "parameters": [
          {"name": "limit", "in": "query", "default": 20, "description": "How many items to return at one time (max 100)", "required": false, "type": "integer", "format": "int32"}
        ],
        "responses": {
          "200": {
            "description": "An paged array of pets",
            "headers": {
              "x-next": {"type": "string", "description": "A link to the next page of responses"}
            },
            "schema": {"$ref": "#/definitions/Pets"}
          },
          "default": {
            "description": "unexpected error",
            "schema": {"$ref": "#/definitions/Error"}
          }
        }
      },
      "post": {
        "summary": "Create a pet",
        "operationId": "createPets",
        "tags": ["pets"],
        "parameters": [
          {"in": "body", "name": "body", "required": true, "schema": {"$ref" : "#/definitions/Pet"}}
        ],
        "responses": {
          "201": {
            "description": "Null response"
          },
          "default": {
            "description": "unexpected error",
            "schema": {"$ref": "#/definitions/Error"}
          }
        }
      }
    },
    "/pets/{petId}": {
      "parameters": [
        {"name": "petId", "in": "path", "required": true, "description": "The id of the pet to retrieve", "type": "string"}
      ],
      "get": {
        "summary": "Info for a specific pet",
        "operationId": "showPetById",
        "tags": ["pets"],
        "responses": {
          "200": {
            "description": "Expected response to a valid request",
            "schema": {"$ref": "#/definitions/Pets"}
          },
          "default": {
            "description": "unexpected error",
            "schema": {"$ref": "#/definitions/Error"}
          }
        }
      }
    }
  },
  "definitions": {
    "Pet": {
      "required": ["id", "name"],
      "properties": {
        "id": {"type": "integer", "format": "int64"},
        "name": {"type": "string"},
        "tag": {"type": "string"}
      }
    },
    "Pets": {
      "type": "array",
      "items": {"$ref": "#/definitions/Pet"}
    },
    "Error": {
      "required": ["code", "message"],
      "properties": {
        "code": {"type": "integer", "format": "int32"},
        "message": {"type": "string"}
      }
    }
  }
}