This rule ensures that responses for HTTP status 204 do not define their response bodies.
The rationale behind this rule is to enforce the correct usage of HTTP status codes as per the HTTP specification. This helps in ensuring that the API behaves as expected and can interact correctly with clients.
The no-content-response-defined
rule is designed to ensure that responses
for HTTP status 204 (No Content) do not define their response bodies. According
to the HTTP specification, a 204 response must not include a message body.
None.
This rule should be used whenever an OpenAPI schema is being defined.
Good. The following schema does not define any response body, thus making it obvious.
paths:
/users/{id}:
delete:
responses:
"204":
description: User deleted successfully.
Bad. The following schema defines a non-empty response body, thus defying the purpose of the 204 status code.
paths:
/users/{id}:
delete:
responses:
"204":
description: User deleted successfully.
content:
application/json:
schema:
type: object
We recommend to always use this rule.
This rule is compatible with all OpenAPI 3.x version.