Back to Directory
S

Swagger Petstore - OpenAPI 3.0

Other
This is a sample Pet Store Server based on the OpenAPI 3.0 specification. You can find out more about Swagger at [https://swagger.io](https://swagger.io). In the third iteration of the pet store, we've switched to the design first approach! You can now help us improve the API whether it's by making changes to the definition itself or to the code. That way, with time, we can improve the API in general, and expose some of the new features in OAS3. Some useful links: - [The Pet Store repository](https://github.com/swagger-api/swagger-petstore) - [The source API definition for the Pet Store](https://github.com/swagger-api/swagger-petstore/blob/master/src/main/resources/openapi.yaml)

About Swagger Petstore - OpenAPI 3.0

Review the Service identity, supported languages, protocol versions, and source metadata discovered by the directory.

Service details

Service Id
bcbd2ab1-c285-4b33-a8d1-8f5e58cbf321
Service origin
https://petstore3.swagger.io
ListedOctober 31, 2026, 4:08 PM
Last checkedOctober 31, 2026, 4:08 PM

Protocol details

SourceOpenAPI

Endpoints

Endpoint details are saved from the OpenAPI document. Authentication requirements and prices are advertised information, not a verified payment or access guarantee. The document may contain additional endpoints.Open OpenAPI document
POST/pet

Add a new pet to the store.

Add a new pet to the store.The operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.
PUT/pet

Update an existing pet.

Update an existing pet by Id.The operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.
GET/pet/findByStatus

Finds Pets by status.

Multiple status values can be provided with comma separated strings.The operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.
GET/pet/findByTags

Finds Pets by tags.

Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.The operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.
DELETE/pet/{petId}

Deletes a pet.

Delete a pet.The operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.
GET/pet/{petId}

Find pet by ID.

Returns a single pet.The operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.
POST/pet/{petId}

Updates a pet in the store with form data.

Updates a pet resource based on the form data.The operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.
POST/pet/{petId}/uploadImage

Uploads an image.

Upload image of the pet.The operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.
GET/store/inventory

Returns pet inventories by status.

Returns a map of status codes to quantities.The operation requires declared authentication; API keys, bearer tokens and other schemes are not evidence of AEP support.
POST/store/order

Place an order for a pet.

Place a new order in the store.
DELETE/store/order/{orderId}

Delete purchase order by identifier.

For valid response try integer IDs with value < 1000. Anything above 1000 or non-integers will generate API errors.
GET/store/order/{orderId}

Find purchase order by ID.

For valid response try integer IDs with value <= 5 or > 10. Other values will generate exceptions.
POST/user

Create user.

This can only be done by the logged in user.
POST/user/createWithList

Creates list of users with given input array.

Creates list of users with given input array.
GET/user/login

Logs user into the system.

Log into the system.
GET/user/logout

Logs out current logged in user session.

Log user out of the system.
DELETE/user/{username}

Delete user resource.

This can only be done by the logged in user.
GET/user/{username}

Get user by user name.

Get user detail based on username.
PUT/user/{username}

Update user resource.

This can only be done by the logged in user.