Skip to content

Latest commit

 

History

History
58 lines (38 loc) · 3.74 KB

File metadata and controls

58 lines (38 loc) · 3.74 KB

Validation Performed By OpenAPI Reader

Additional Requirements For Membrane.

Specify an OperationId

Membrane requires all Operations to set a unique operationId.

This is used for identification of all available operations across your OpenAPI.

Unambiguous Query Strings

For query parameters (i.e. in:query) with a schema that allows compound types i.e. array or objects there are certain combinations of style and explode that do not use the parameter's name.

These combinations are:

  • type:object with style:form and explode:true
  • type:object or type:array with style:spaceDelimited
  • type:object or type:array with style:pipeDelimited

If an operation only has one query parameter (i.e. in:query) then this is fine. Membrane can safely assume the entire string belongs to that one parameter.

If an operation contains two query parameters, both of which do not use the parameter's name; Membrane cannot ascertain which parameter relates to which part of the query string.

This ambiguity leads to multiple "correct" ways to interpret the query string. Making it impossible to safely assume Membrane has validated it. Therefore, only one parameter, with one of the above combinations, is allowed on any given Operation.

Version 3.0.X

OpenAPI Object

Path Item

Operation

Parameter

Schema