mirror of
https://github.com/LukeHagar/connexion.git
synced 2025-12-09 12:27:46 +00:00
This PR updates the examples for Connexion 3.0 and merges them for OpenAPI and Swagger. 2 examples required some changes to make them work: - The reverse proxy example required some fixes to the SwaggerUIMiddleware to leverage the `root_path` correctly. This is included in the PR. - The enforced defaults example requires the json validator to adapt the body and pass it on. We currently pass on the original body after validation, and I'm not sure if we should change this. I'll submit a separate PR to discuss this.
149 lines
3.4 KiB
YAML
149 lines
3.4 KiB
YAML
openapi: "3.0.0"
|
|
info:
|
|
version: 1.0.0
|
|
title: Swagger Petstore
|
|
license:
|
|
name: MIT
|
|
servers:
|
|
- url: /openapi
|
|
paths:
|
|
/pets:
|
|
get:
|
|
summary: List all pets
|
|
tags:
|
|
- pets
|
|
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
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Pets"
|
|
default:
|
|
description: unexpected error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
post:
|
|
summary: Create a pet
|
|
tags:
|
|
- pets
|
|
requestBody:
|
|
description: Pet to add to the system
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Pet"
|
|
responses:
|
|
'201':
|
|
description: Null response
|
|
default:
|
|
description: unexpected error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
put:
|
|
summary: Update a pet
|
|
tags:
|
|
- pets
|
|
requestBody:
|
|
description: Pet to add to the system
|
|
content:
|
|
application/json:
|
|
schema:
|
|
allOf:
|
|
- $ref: "#/components/schemas/Pet"
|
|
- type: object
|
|
required:
|
|
- id
|
|
properties:
|
|
id:
|
|
type: integer
|
|
format: int64
|
|
example:
|
|
id: 1
|
|
name: chester
|
|
tag: sleepy
|
|
responses:
|
|
'201':
|
|
description: Null response
|
|
default:
|
|
description: unexpected error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
|
|
|
|
/pets/{petId}:
|
|
get:
|
|
summary: Info for a specific pet
|
|
tags:
|
|
- pets
|
|
parameters:
|
|
- name: petId
|
|
in: path
|
|
required: true
|
|
description: The id of the pet to retrieve
|
|
schema:
|
|
type: string
|
|
responses:
|
|
'200':
|
|
description: Expected response to a valid request
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Pets"
|
|
default:
|
|
description: unexpected error
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: "#/components/schemas/Error"
|
|
components:
|
|
schemas:
|
|
Pet:
|
|
required:
|
|
- name
|
|
properties:
|
|
id:
|
|
readOnly: true
|
|
type: integer
|
|
format: int64
|
|
name:
|
|
type: string
|
|
tag:
|
|
type: string
|
|
example:
|
|
name: chester
|
|
tag: fluffy
|
|
Pets:
|
|
type: array
|
|
items:
|
|
$ref: "#/components/schemas/Pet"
|
|
Error:
|
|
required:
|
|
- code
|
|
- message
|
|
properties:
|
|
code:
|
|
type: integer
|
|
format: int32
|
|
message:
|
|
type: string
|