OpenAPI support matrix
The tables below provide an overview of the OpenAPI features supported by Speakeasy.
✅ Server configuration
Name
ServerURL config
Notes
Global and per-method (include base URL and templating)
Support
✅
Swagger link
Authentication and security
Notes
Global and per-method
Support
✅
Swagger link
Method generation
Notes
Support
✅
Swagger link
Model generation
Notes
Request and response
Support
✅
Swagger link
⚠️ Path parameters serialization (Path parameters )
Name
Default
Notes
Support
✅
Swagger link
Basic types
Notes
Support
✅
Swagger link
Simple objects
Notes
Support
✅
Swagger link
label
Notes
Support
❌
Swagger link
matrix
Notes
Support
❌
Swagger link
⚠️ Query parameters serialization (Query parameters and query )
Name
json
Notes
Support
✅
Swagger link
form
Notes
Support
✅
Swagger link
spaceDelimited
Notes
Support
✅
Swagger link
pipeDelimited
Notes
Support
✅
Swagger link
deepObject
Notes
Support
✅
Swagger link
Basic types
Notes
Support
✅
Swagger link
Simple objects
Notes
Support
✅
Swagger link
✅ Request headers (Header )
Name
Simple (explode = true)
Notes
Support
✅
Swagger link
Simple (explode = false)
Notes
Support
✅
Swagger link
⚠️ Request body serialization
Name
Multipart encoding
Notes
Support
✅
Swagger link
Binary
Notes
Support
✅
Swagger link
Form data
Notes
Support
✅
Swagger link
JSON
Notes
Both
and
Support
✅
Swagger link
x-www-form-urlencoded
Notes
Including encoding, but not non-object types
Support
⚠️
Swagger link
Plain text
Notes
Support
✅
Swagger link
Raw byte
Notes
Support
✅
Swagger link
Handling
body
Notes
Support
✅
Swagger link
XML
Notes
Support
❌
Swagger link
Other media types
Notes
Support
❌
Swagger link
⚠️ Response body deserialization
Name
Return
and
Notes
Support
✅
Swagger link
JSON
Notes
Support
✅
Swagger link
Plain text
Notes
Support
✅
Swagger link
Raw byte
Notes
Support
✅
Swagger link
JSON
Notes
Support
✅
Swagger link
Other media types
Notes
Support
❌
Swagger link
✅ Media-type patterns (Media types )
✅ Data types
Name
Basic types
Notes
Support
✅
Swagger link
Enums
Notes
Support
✅
Swagger link
Number formats
Notes
float, double, int32, int64
Support
✅
Swagger link
Date-time
Notes
Support
✅
Swagger link
Binary
Notes
Support
✅
Swagger link
Arrays
Notes
Support
✅
Swagger link
Objects
Notes
Support
✅
Swagger link
Optional
Notes
Support
✅
Swagger link
Maps
Notes
Support
✅
Swagger link
Any type
Notes
Support
✅
Swagger link
,
, and
Notes
Support
⚠️ See
support below
Swagger link
✅ Union types
Name
oneOf
Notes
For languages that don't yet have native union type support in Speakeasy,
will be treated as an
type.
Language support
✅ TypeScript, Python, Go, C#, Java, PHP
allOf
Notes
To avoid construction of illogical types, Speakeasy currently constructs an object using the superset of fields from the listed schemas. In cases where the base schemas have a field name collision, Speakeasy will default to using the field from the object deepest in the list.
Language support
✅ All languages
anyOf
Notes
is treated as
to avoid the bloat of combinatorial data type creation.
Language support
✅ TypeScript, Python, Go
✅ Miscellaneous
Name
Auxiliary files*
Notes
Support
✅
Swagger link
generation
Notes
Support
✅
Swagger link
Snippet generation
Notes
Support
✅
Swagger link
README generation
Notes
Support
✅
Swagger link
Documentation generation
Notes
Support
✅
Swagger link
* Files needed for creating a fully compilable package that can be published to the relevant package manager without further changes.
Last updated on