encoding-space-delimited-style-only-for-array-type
Overview
This rule belongs to the openapi-v3-standards-validation
ruleset and states that:
In an OpenAPI v3.0.x document, the spaceDelimited
style can only be used when the type of the encoding property is set as array
i.e. it cannot be used for primitive or object types.
Property | Value |
---|---|
Enabled | Yes |
Maximum Severity | Error |
Message | Space delimited style cannot be used with the current property type. |
Code | OPENAPI3STANDARDS_V148 |
Type | Validation |
Rule System | Semantic |
Broad Category | Encoding |
Products Impacted | API Transformer, Code Generation, Developer Experience Portal |
Tags | openapi3 openapi standards semantic validation space delimited style array serialization property encoding |
Suggested Fixes
- Ensure that the
type
of the property set in the property's schema definition is equal toarray
. - If the property type is not expected to be an array, change the value of the style property to one that supports non-array types e.g. form, deepObject.
- If the property type is not expected to be an array and you are unsure about which style to use, simply remove the
style
property definition.
For More Information
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.3.md#encoding-object
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.3.md#style-values
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.3.md#parameter-object
- https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.0.3.md#openapi-specification
- https://docs.apimatic.io/rulesets/overview/