mirror of
https://github.com/valitydev/openapi-generator.git
synced 2024-11-08 19:33:55 +00:00
674 lines
19 KiB
JSON
674 lines
19 KiB
JSON
{
|
|
"swagger" : "2.0",
|
|
"info" : {
|
|
"description" : "This is a sample server Petstore server.\n\n[Learn about Swagger](http://swagger.io) or join the IRC channel `#swagger` on irc.freenode.net.\n\nFor this sample, you can use the api key `special-key` to test the authorization filters\n",
|
|
"version" : "1.0.0",
|
|
"title" : "Swagger Petstore",
|
|
"termsOfService" : "http://helloreverb.com/terms/",
|
|
"contact" : {
|
|
"name" : "apiteam@swagger.io"
|
|
},
|
|
"license" : {
|
|
"name" : "Apache 2.0",
|
|
"url" : "http://www.apache.org/licenses/LICENSE-2.0.html"
|
|
}
|
|
},
|
|
"host" : "petstore.swagger.io",
|
|
"basePath" : "/v2",
|
|
"schemes" : [ "http" ],
|
|
"paths" : {
|
|
"/pets" : {
|
|
"post" : {
|
|
"tags" : [ "pet" ],
|
|
"summary" : "Add a new pet to the store",
|
|
"description" : "",
|
|
"operationId" : "addPet",
|
|
"consumes" : [ "application/json", "application/xml" ],
|
|
"produces" : [ "application/json", "application/xml" ],
|
|
"parameters" : [ {
|
|
"in" : "body",
|
|
"name" : "body",
|
|
"description" : "Pet object that needs to be added to the store",
|
|
"required" : false,
|
|
"schema" : {
|
|
"$ref" : "#/definitions/Pet"
|
|
}
|
|
} ],
|
|
"responses" : {
|
|
"405" : {
|
|
"description" : "Invalid input"
|
|
}
|
|
},
|
|
"security" : [ {
|
|
"petstore_auth" : [ "write_pets", "read_pets" ]
|
|
} ]
|
|
},
|
|
"put" : {
|
|
"tags" : [ "pet" ],
|
|
"summary" : "Update an existing pet",
|
|
"description" : "",
|
|
"operationId" : "updatePet",
|
|
"consumes" : [ "application/json", "application/xml" ],
|
|
"produces" : [ "application/json", "application/xml" ],
|
|
"parameters" : [ {
|
|
"in" : "body",
|
|
"name" : "body",
|
|
"description" : "Pet object that needs to be added to the store",
|
|
"required" : false,
|
|
"schema" : {
|
|
"$ref" : "#/definitions/Pet"
|
|
}
|
|
} ],
|
|
"responses" : {
|
|
"400" : {
|
|
"description" : "Invalid ID supplied"
|
|
},
|
|
"404" : {
|
|
"description" : "Pet not found"
|
|
},
|
|
"405" : {
|
|
"description" : "Validation exception"
|
|
}
|
|
},
|
|
"security" : [ {
|
|
"petstore_auth" : [ "write_pets", "read_pets" ]
|
|
} ]
|
|
}
|
|
},
|
|
"/pets/findByStatus" : {
|
|
"get" : {
|
|
"tags" : [ "pet" ],
|
|
"summary" : "Finds Pets by status",
|
|
"description" : "Multiple status values can be provided with comma seperated strings",
|
|
"operationId" : "findPetsByStatus",
|
|
"produces" : [ "application/json", "application/xml" ],
|
|
"parameters" : [ {
|
|
"name" : "status",
|
|
"in" : "query",
|
|
"description" : "Status values that need to be considered for filter",
|
|
"required" : false,
|
|
"type" : "array",
|
|
"items" : {
|
|
"type" : "string"
|
|
},
|
|
"collectionFormat" : "multi"
|
|
} ],
|
|
"responses" : {
|
|
"200" : {
|
|
"description" : "successful operation",
|
|
"schema" : {
|
|
"type" : "array",
|
|
"items" : {
|
|
"$ref" : "#/definitions/Pet"
|
|
}
|
|
}
|
|
},
|
|
"400" : {
|
|
"description" : "Invalid status value"
|
|
}
|
|
},
|
|
"security" : [ {
|
|
"petstore_auth" : [ "write_pets", "read_pets" ]
|
|
} ]
|
|
}
|
|
},
|
|
"/pets/findByTags" : {
|
|
"get" : {
|
|
"tags" : [ "pet" ],
|
|
"summary" : "Finds Pets by tags",
|
|
"description" : "Muliple tags can be provided with comma seperated strings. Use tag1, tag2, tag3 for testing.",
|
|
"operationId" : "findPetsByTags",
|
|
"produces" : [ "application/json", "application/xml" ],
|
|
"parameters" : [ {
|
|
"name" : "tags",
|
|
"in" : "query",
|
|
"description" : "Tags to filter by",
|
|
"required" : false,
|
|
"type" : "array",
|
|
"items" : {
|
|
"type" : "string"
|
|
},
|
|
"collectionFormat" : "multi"
|
|
} ],
|
|
"responses" : {
|
|
"200" : {
|
|
"description" : "successful operation",
|
|
"schema" : {
|
|
"type" : "array",
|
|
"items" : {
|
|
"$ref" : "#/definitions/Pet"
|
|
}
|
|
}
|
|
},
|
|
"400" : {
|
|
"description" : "Invalid tag value"
|
|
}
|
|
},
|
|
"security" : [ {
|
|
"petstore_auth" : [ "write_pets", "read_pets" ]
|
|
} ]
|
|
}
|
|
},
|
|
"/pets/{petId}" : {
|
|
"get" : {
|
|
"tags" : [ "pet" ],
|
|
"summary" : "Find pet by ID",
|
|
"description" : "Returns a pet when ID < 10. ID > 10 or nonintegers will simulate API error conditions",
|
|
"operationId" : "getPetById",
|
|
"produces" : [ "application/json", "application/xml" ],
|
|
"parameters" : [ {
|
|
"name" : "petId",
|
|
"in" : "path",
|
|
"description" : "ID of pet that needs to be fetched",
|
|
"required" : true,
|
|
"type" : "integer",
|
|
"format" : "int64"
|
|
} ],
|
|
"responses" : {
|
|
"200" : {
|
|
"description" : "successful operation",
|
|
"schema" : {
|
|
"$ref" : "#/definitions/Pet"
|
|
}
|
|
},
|
|
"400" : {
|
|
"description" : "Invalid ID supplied"
|
|
},
|
|
"404" : {
|
|
"description" : "Pet not found"
|
|
}
|
|
},
|
|
"security" : [ {
|
|
"api_key" : [ ]
|
|
}, {
|
|
"petstore_auth" : [ "write_pets", "read_pets" ]
|
|
} ]
|
|
},
|
|
"post" : {
|
|
"tags" : [ "pet" ],
|
|
"summary" : "Updates a pet in the store with form data",
|
|
"description" : "",
|
|
"operationId" : "updatePetWithForm",
|
|
"consumes" : [ "application/x-www-form-urlencoded" ],
|
|
"produces" : [ "application/json", "application/xml" ],
|
|
"parameters" : [ {
|
|
"name" : "petId",
|
|
"in" : "path",
|
|
"description" : "ID of pet that needs to be updated",
|
|
"required" : true,
|
|
"type" : "string"
|
|
}, {
|
|
"name" : "name",
|
|
"in" : "formData",
|
|
"description" : "Updated name of the pet",
|
|
"required" : true,
|
|
"type" : "string"
|
|
}, {
|
|
"name" : "status",
|
|
"in" : "formData",
|
|
"description" : "Updated status of the pet",
|
|
"required" : true,
|
|
"type" : "string"
|
|
} ],
|
|
"responses" : {
|
|
"405" : {
|
|
"description" : "Invalid input"
|
|
}
|
|
},
|
|
"security" : [ {
|
|
"petstore_auth" : [ "write_pets", "read_pets" ]
|
|
} ]
|
|
},
|
|
"delete" : {
|
|
"tags" : [ "pet" ],
|
|
"summary" : "Deletes a pet",
|
|
"description" : "",
|
|
"operationId" : "deletePet",
|
|
"produces" : [ "application/json", "application/xml" ],
|
|
"parameters" : [ {
|
|
"name" : "api_key",
|
|
"in" : "header",
|
|
"description" : "",
|
|
"required" : true,
|
|
"type" : "string"
|
|
}, {
|
|
"name" : "petId",
|
|
"in" : "path",
|
|
"description" : "Pet id to delete",
|
|
"required" : true,
|
|
"type" : "integer",
|
|
"format" : "int64"
|
|
} ],
|
|
"responses" : {
|
|
"400" : {
|
|
"description" : "Invalid pet value"
|
|
}
|
|
},
|
|
"security" : [ {
|
|
"petstore_auth" : [ "write_pets", "read_pets" ]
|
|
} ]
|
|
}
|
|
},
|
|
"/stores/order" : {
|
|
"post" : {
|
|
"tags" : [ "store" ],
|
|
"summary" : "Place an order for a pet",
|
|
"description" : "",
|
|
"operationId" : "placeOrder",
|
|
"produces" : [ "application/json", "application/xml" ],
|
|
"parameters" : [ {
|
|
"in" : "body",
|
|
"name" : "body",
|
|
"description" : "order placed for purchasing the pet",
|
|
"required" : false,
|
|
"schema" : {
|
|
"$ref" : "#/definitions/Order"
|
|
}
|
|
} ],
|
|
"responses" : {
|
|
"200" : {
|
|
"description" : "successful operation",
|
|
"schema" : {
|
|
"$ref" : "#/definitions/Order"
|
|
}
|
|
},
|
|
"400" : {
|
|
"description" : "Invalid Order"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/stores/order/{orderId}" : {
|
|
"get" : {
|
|
"tags" : [ "store" ],
|
|
"summary" : "Find purchase order by ID",
|
|
"description" : "For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions",
|
|
"operationId" : "getOrderById",
|
|
"produces" : [ "application/json", "application/xml" ],
|
|
"parameters" : [ {
|
|
"name" : "orderId",
|
|
"in" : "path",
|
|
"description" : "ID of pet that needs to be fetched",
|
|
"required" : true,
|
|
"type" : "string"
|
|
} ],
|
|
"responses" : {
|
|
"200" : {
|
|
"description" : "successful operation",
|
|
"schema" : {
|
|
"$ref" : "#/definitions/Order"
|
|
}
|
|
},
|
|
"400" : {
|
|
"description" : "Invalid ID supplied"
|
|
},
|
|
"404" : {
|
|
"description" : "Order not found"
|
|
}
|
|
}
|
|
},
|
|
"delete" : {
|
|
"tags" : [ "store" ],
|
|
"summary" : "Delete purchase order by ID",
|
|
"description" : "For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors",
|
|
"operationId" : "deleteOrder",
|
|
"produces" : [ "application/json", "application/xml" ],
|
|
"parameters" : [ {
|
|
"name" : "orderId",
|
|
"in" : "path",
|
|
"description" : "ID of the order that needs to be deleted",
|
|
"required" : true,
|
|
"type" : "string"
|
|
} ],
|
|
"responses" : {
|
|
"400" : {
|
|
"description" : "Invalid ID supplied"
|
|
},
|
|
"404" : {
|
|
"description" : "Order not found"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/users" : {
|
|
"post" : {
|
|
"tags" : [ "user" ],
|
|
"summary" : "Create user",
|
|
"description" : "This can only be done by the logged in user.",
|
|
"operationId" : "createUser",
|
|
"produces" : [ "application/json", "application/xml" ],
|
|
"parameters" : [ {
|
|
"in" : "body",
|
|
"name" : "body",
|
|
"description" : "Created user object",
|
|
"required" : false,
|
|
"schema" : {
|
|
"$ref" : "#/definitions/User"
|
|
}
|
|
} ],
|
|
"responses" : {
|
|
"default" : {
|
|
"description" : "successful operation"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/users/createWithArray" : {
|
|
"post" : {
|
|
"tags" : [ "user" ],
|
|
"summary" : "Creates list of users with given input array",
|
|
"description" : "",
|
|
"operationId" : "createUsersWithArrayInput",
|
|
"produces" : [ "application/json", "application/xml" ],
|
|
"parameters" : [ {
|
|
"in" : "body",
|
|
"name" : "body",
|
|
"description" : "List of user object",
|
|
"required" : false,
|
|
"schema" : {
|
|
"type" : "array",
|
|
"items" : {
|
|
"$ref" : "#/definitions/User"
|
|
}
|
|
}
|
|
} ],
|
|
"responses" : {
|
|
"default" : {
|
|
"description" : "successful operation"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/users/createWithList" : {
|
|
"post" : {
|
|
"tags" : [ "user" ],
|
|
"summary" : "Creates list of users with given input array",
|
|
"description" : "",
|
|
"operationId" : "createUsersWithListInput",
|
|
"produces" : [ "application/json", "application/xml" ],
|
|
"parameters" : [ {
|
|
"in" : "body",
|
|
"name" : "body",
|
|
"description" : "List of user object",
|
|
"required" : false,
|
|
"schema" : {
|
|
"type" : "array",
|
|
"items" : {
|
|
"$ref" : "#/definitions/User"
|
|
}
|
|
}
|
|
} ],
|
|
"responses" : {
|
|
"default" : {
|
|
"description" : "successful operation"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/users/login" : {
|
|
"get" : {
|
|
"tags" : [ "user" ],
|
|
"summary" : "Logs user into the system",
|
|
"description" : "",
|
|
"operationId" : "loginUser",
|
|
"produces" : [ "application/json", "application/xml" ],
|
|
"parameters" : [ {
|
|
"name" : "username",
|
|
"in" : "query",
|
|
"description" : "The user name for login",
|
|
"required" : false,
|
|
"type" : "string"
|
|
}, {
|
|
"name" : "password",
|
|
"in" : "query",
|
|
"description" : "The password for login in clear text",
|
|
"required" : false,
|
|
"type" : "string"
|
|
} ],
|
|
"responses" : {
|
|
"200" : {
|
|
"description" : "successful operation",
|
|
"schema" : {
|
|
"type" : "string"
|
|
}
|
|
},
|
|
"400" : {
|
|
"description" : "Invalid username/password supplied"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/users/logout" : {
|
|
"get" : {
|
|
"tags" : [ "user" ],
|
|
"summary" : "Logs out current logged in user session",
|
|
"description" : "",
|
|
"operationId" : "logoutUser",
|
|
"produces" : [ "application/json", "application/xml" ],
|
|
"parameters" : [ ],
|
|
"responses" : {
|
|
"default" : {
|
|
"description" : "successful operation"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/users/{username}" : {
|
|
"get" : {
|
|
"tags" : [ "user" ],
|
|
"summary" : "Get user by user name",
|
|
"description" : "",
|
|
"operationId" : "getUserByName",
|
|
"produces" : [ "application/json", "application/xml" ],
|
|
"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/json", "application/xml" ],
|
|
"parameters" : [ {
|
|
"name" : "username",
|
|
"in" : "path",
|
|
"description" : "name that need to be deleted",
|
|
"required" : true,
|
|
"type" : "string"
|
|
}, {
|
|
"in" : "body",
|
|
"name" : "body",
|
|
"description" : "Updated user object",
|
|
"required" : false,
|
|
"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/json", "application/xml" ],
|
|
"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/api/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" : {
|
|
"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"
|
|
}
|
|
}
|
|
},
|
|
"Category" : {
|
|
"type" : "object",
|
|
"properties" : {
|
|
"id" : {
|
|
"type" : "integer",
|
|
"format" : "int64"
|
|
},
|
|
"name" : {
|
|
"type" : "string"
|
|
}
|
|
}
|
|
},
|
|
"Pet" : {
|
|
"type" : "object",
|
|
"required" : [ "name", "photoUrls" ],
|
|
"properties" : {
|
|
"id" : {
|
|
"type" : "integer",
|
|
"format" : "int64"
|
|
},
|
|
"category" : {
|
|
"$ref" : "#/definitions/Category"
|
|
},
|
|
"name" : {
|
|
"type" : "string",
|
|
"example" : "doggie"
|
|
},
|
|
"photoUrls" : {
|
|
"type" : "array",
|
|
"items" : {
|
|
"type" : "string"
|
|
}
|
|
},
|
|
"tags" : {
|
|
"type" : "array",
|
|
"items" : {
|
|
"$ref" : "#/definitions/Tag"
|
|
}
|
|
},
|
|
"status" : {
|
|
"type" : "string",
|
|
"description" : "pet status in the store"
|
|
}
|
|
}
|
|
},
|
|
"Tag" : {
|
|
"type" : "object",
|
|
"properties" : {
|
|
"id" : {
|
|
"type" : "integer",
|
|
"format" : "int64"
|
|
},
|
|
"name" : {
|
|
"type" : "string"
|
|
}
|
|
}
|
|
},
|
|
"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"
|
|
},
|
|
"complete" : {
|
|
"type" : "boolean"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
} |