Сайт swagger docs показывает пример для этого случая, но не пройдите до конца, чтобы показать определение схемы Pet
.
E.g.:
paths:
/pets:
post:
summary: Add a new pet
requestBody:
$ref: '#/components/requestBodies/PetBody'
/pets/{petId}
put:
summary: Update a pet
parameters: [ ... ]
requestBody:
$ref: '#/components/requestBodies/PetBody'
components:
requestBodies:
PetBody:
description: A JSON object containing pet information
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/Pet'
Я не понимаю, куда в этом сценарии попадают имена параметров тела запроса. Я хочу увидеть определение #/components/schemas/Pet
. Для параметров запроса у вас есть components/parameters
, где вы может определять name
и schema
для каждого параметра. Но я не вижу эквивалента для параметров тела запроса. Например, если у меня есть POST /api/pets
с application/json
телом:
{ "name": "Fluffy", "type": "cat", "legs": 4 }
Где описать параметры name
, type
и legs
, включая их имена?
Также по несвязанной теме было бы неплохо, если бы был тег для OpenAPI v3.0 (не знаю, как его создать)
Также возможен связанный вопрос здесь.