Designing an API using editor.swagger.io I find myself unable to add a requestBody attribute, getting an error I cannot address:
Schema error at paths['/projects/{projectId}/user'].post
should NOT have additional properties
additionalProperty: requestBody
Jump to line 91
I don't understand what I'm doing wrong, especially after looking at the requestBody documentation. Research has brought me nothing other than the tendency for errors to be misleading.
EDIT: From what the answers here have shown, it looks like the editor is supposed to use OpenAPI 2.0, but actually expects 3.0 while returning errors for both. I'd use some help on what to use, given that I've included a
swagger: "2.0"
line at the beginning of the document.
While testing with openapi: 3.0.0
as shown by @Mike in his answer, I just get more errors about allowed additional properties.
Here's what's generating the error, line 91 being post:
.
/projects/{projectId}/user:
post:
tags:
- projects
summary: Modify project user.
operationId: modifyProjectUser
parameters:
- name: projectId
in: path
description: ID of the project
required: true
type: integer
format: int32
requestBody:
content:
application/json:
schema:
$ref: '#/definitions/User'
responses:
"200":
description: Successful operation
schema:
type: array
items:
$ref: "#/definitions/User"
security:
- api_key: []
swagger: '2.0'
, 3.0 specs useopenapi: 3.0.0
. – ScaldrequestBody
usable. In addition, when trying to usein: body
, I get the following error: allowedValues: header, formData, query, path. – Accrescentin: body
doesn't work. I'm indeed confused. – Accrescentswagger: "2.0"
I included means that I should use the example given for OAS 3.0, right ? The examples in the link posted by @Infantryman are for OAS 2.0, and when trying to use theparameter in: body
, I get the error I reported above. Do you need more elements ? How can I be sure that I'm using the right things ? – Accrescent