# API Reference

# Swagger Petstore

This is a sample server Petstore server. You can find out more about Swagger at http://swagger.wordnik.com or on irc.freenode.net, #swagger. For this sample, you can use the api key "special-key" to test the authorization filters for our Partner
Contact Info: hello@helloreverb.com
Apache 2.0
http://www.apache.org/licenses/LICENSE-2.0.html

## Access

Access to the API requires an api key to be provided by our Partner for all requests. The api key is passed as a header with the name `api_key` and the value provided by Reverb Technologies, Inc. Unless otherwise agreed upon, access to the Reverb API is intended solely for usage by our Partner and not third parties.

## Methods

    post: /user

createUser Create user
This can only be done by the logged in user.

### Parameters

body (optional)
Body Parameter — Created user object

### Return type

    post: /user/createWithArray

createUsersWithArrayInput Creates list of users with given input array

### Parameters

body (optional)
Body Parameter — List of user object

### Return type

    post: /user/createWithList

createUsersWithListInput Creates list of users with given input array

### Parameters

body (optional)
Body Parameter — List of user object

### Return type

    get: /user/login

loginUser Logs user into the system

### Parameters

username (optional)
Query Parameter — The user name for login
password (optional)
Query Parameter — The password for login in clear text

### Return type

String

    get: /user/logout

logoutUser Logs out current logged in user session

### Parameters

### Return type

    get: /user/{username}

getUserByName Get user by user name

### Parameters

username (required)
Path Parameter — The name that needs to be fetched. Use user1 for testing.

### Return type

User

    put: /user/{username}

updateUser Updated user
This can only be done by the logged in user.

### Parameters

username (required)
Path Parameter — name that need to be deleted
body (optional)
Body Parameter — Updated user object

### Return type

    delete: /user/{username}

deleteUser Delete user
This can only be done by the logged in user.

### Parameters

username (required)
Path Parameter — The name that needs to be deleted

### Return type

    put: /pet

updatePet Update an existing pet

### Parameters

body (optional)
Body Parameter — Pet object that needs to be added to the store

### Return type

    post: /pet

addPet Add a new pet to the store

### Parameters

body (optional)
Body Parameter — Pet object that needs to be added to the store

### Return type

    get: /pet/findByStatus

findPetsByStatus Finds Pets by status
Multiple status values can be provided with comma seperated strings

### Parameters

status (optional)
Query Parameter — Status values that need to be considered for filter

### Return type

array[Pet]

    get: /pet/findByTags

findPetsByTags Finds Pets by tags
Muliple tags can be provided with comma seperated strings. Use tag1, tag2, tag3 for testing.

### Parameters

tags (optional)
Query Parameter — Tags to filter by

### Return type

array[Pet]

    get: /pet/{petId}

getPetById Find pet by ID
Returns a pet when ID < 10. ID > 10 or nonintegers will simulate API error conditions

### Parameters

petId (required)
Path Parameter — ID of pet that needs to be fetched

### Return type

Pet

    post: /pet/{petId}

updatePetWithForm Updates a pet in the store with form data

### Parameters

petId (required)
Path Parameter — ID of pet that needs to be updated
name (optional)
Form Parameter — Updated name of the pet
status (optional)
Form Parameter — Updated status of the pet

### Return type

    delete: /pet/{petId}

deletePet Deletes a pet

### Parameters

api_key (optional)
Header Parameter —
petId (required)
Path Parameter — Pet id to delete

### Return type

    get: /store/inventory

getInventory Returns pet inventories by status
Returns a map of status codes to quantities

### Parameters

### Return type

map[String, Integer]

    post: /store/order

placeOrder Place an order for a pet

### Parameters

body (optional)
Body Parameter — order placed for purchasing the pet

### Return type

Order

    get: /store/order/{orderId}

getOrderById Find purchase order by ID
For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions

### Parameters

orderId (required)
Path Parameter — ID of pet that needs to be fetched

### Return type

Order

    delete: /store/order/{orderId}

deleteOrder Delete purchase order by ID
For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors

### Parameters

orderId (required)
Path Parameter — ID of the order that needs to be deleted

### Return type

## Models

### User

id
Long
username
String
firstName
String
lastName
String
email
String
password
String
phone
String
userStatus
Integer User Status

### Category

id
Long
name
String

### Pet

id
Long
category
Category
name
String
photoUrls
array[String]
tags
array[Tag]
status
String pet status in the store

### Tag

id
Long
name
String

### Order

id
Long
petId
Long
quantity
Integer
shipDate
Date
status
String Order Status
complete
Boolean