Я хочу разработать API с использованием OpenAPI v2, возвращающего идентификатор в ответ на запрос POST. Вот что я пробовал:
responses:
201:
description: item created
content:
application/json:
schema:
type: integer
example: 234
400:
description: invalid input, object invalid
409:
description: an existing item already exists
Я использую Swagger HUB, и он вызывает следующую ошибку для ответа 201:
should NOT have additional properties additionalProperty: content





Ошибка возникает из-за того, что вы используете синтаксис (в частности, ключевое слово content) OpenAPI 3.0, а не 2.0.
Соответствующий синтаксис OpenAPI 2.0:
get:
produces:
- application/json
...
responses:
201:
description: item created
schema:
type: integer
example: 234
Полезные данные JSON обычно отправляются в виде объектов или массивов, а не примитивов. Я рекомендую вам сделать свой ответ объектом JSON, например. {"id": 234}. В этом случае схема ответа будет выглядеть так:
responses:
201:
description: item created
schema:
type: object
properties:
id:
type: integer
example: 234
Это решило мою проблему. Благодарю вас!