Type object
File match **/.speakeasy/gen.yaml
Schema URL https://catalog.lintel.tools/schemas/schemastore/speakeasy-generation-config-file/latest.json
Source https://raw.githubusercontent.com/speakeasy-api/sdk-gen-config/main/schemas/gen.config.schema.json

Validate with Lintel

npx @lintel/lintel check
Type: object

Properties

configVersion string required

The version of the configuration file

minLength=1
generation object required

Generation configuration

18 nested properties
auth object

Authentication configuration

3 nested properties
hoistGlobalSecurity boolean

Enables hoisting of operation-level security schemes to global level when no global security is defined

oAuth2ClientCredentialsEnabled boolean

Enables support for OAuth2 client credentials grant type

oAuth2PasswordEnabled boolean

Enables support for OAuth2 resource owner password credentials grant type

baseServerUrl string

The base URL of the server. This value will be used if global servers are not defined in the spec.

deduplicateErrors boolean

Deduplicates errors that have the same schema

devContainers object

Dev container configuration

2 nested properties
enabled boolean

Whether dev containers are enabled

schemaPath string

Path to the schema file for the dev container

fixes object

Fixes applied to the SDK generation

8 nested properties
nameOverrideFeb2026 boolean

Prevents component-level x-speakeasy-name-override from affecting parent names when referencing schema via $ref or hoisting allOf extensions

nameResolutionDec2023 boolean

Enables name resolution fixes from December 2023

nameResolutionFeb2025 boolean

Enables name resolution fixes from February 2025

parameterOrderingFeb2024 boolean

Enables parameter ordering fixes from February 2024

requestResponseComponentNamesFeb2024 boolean

Enables request and response component naming fixes from February 2024

securityFeb2025 boolean

Enables fixes and refactoring for security that were introduced in February 2025

sharedErrorComponentsApr2025 boolean

Enables fixes that mean that when a component is used in both 2XX and 4XX responses, only the top level component will be duplicated to the errors scope as opposed to the entire component tree

sharedNestedComponentsJan2026 boolean

Fixes component naming when the same schema is referenced in multiple places within nested structures, ensuring consistent naming based on the original component definition

inferSSEOverload boolean

Generates an overload if generator detects that the request body field 'stream: true' is used for client intent to request 'text/event-stream' response

maintainOpenAPIOrder boolean

Maintains the order of parameters and fields in the OpenAPI specification

mockServer object

Mock server generation configuration

1 nested properties
disabled boolean

Disables the code generation of the mock server target

persistentEdits object

Configures whether user edits to generated SDKs persist across regenerations

2 nested properties
compilePristine null | boolean

When true (default), runs an initial compile pass to normalize pristine content. Set to false when generated SDK doesn't compile but you still want persistent edits.

enabled null | string

Enables preservation of user edits across SDK regenerations. Set to 'never' to disable prompts.

Values: "true" "never"
requestBodyFieldName string

The name of the field to use for the request body in generated SDKs

schemas object

Schema processing configuration

1 nested properties
allOfMergeStrategy string

Controls how allOf schemas are merged

Values: "deepMerge" "shallowMerge"
sdkClassName string

Generated name of the root SDK class

sdkHooksConfigAccess boolean

Enables access to the SDK configuration from hooks

skipErrorSuffix boolean

Skips the automatic addition of an error suffix to error types

tests object

Test generation configuration

3 nested properties
generateNewTests boolean

Enables generation of new tests for any new operations in the OpenAPI specification

generateTests boolean

Enables generation of tests

skipResponseBodyAssertions boolean

Skip asserting that the client got the same response bodies returned by the mock server

usageSnippets object

Configuration for usage snippets

3 nested properties
optionalPropertyRendering string

Controls how optional properties are rendered in usage snippets

Values: "always" "never" "withExample"
sdkInitStyle string

Controls how the SDK initialization is depicted in usage snippets

Values: "constructor" "builder"
serverToShowInSnippets string | integer

Controls which server is shown in usage snippets. If unset, no server will be shown. If an integer, it will be used as the server index. Otherwise, it will look for a matching server ID.

useClassNamesForArrayFields boolean

Use class names for array fields instead of the child's schema type

versioningStrategy string

Controls how SDK versions are determined. 'automatic' (default) bumps versions based on changes, 'manual' uses the version in gen.yaml as-is.

Values: "automatic" "manual"

Definitions

SdkGenConfigAuth object

Authentication configuration

hoistGlobalSecurity boolean

Enables hoisting of operation-level security schemes to global level when no global security is defined

oAuth2ClientCredentialsEnabled boolean

Enables support for OAuth2 client credentials grant type

oAuth2PasswordEnabled boolean

Enables support for OAuth2 resource owner password credentials grant type

SdkGenConfigDevContainers object

Dev container configuration

enabled boolean

Whether dev containers are enabled

schemaPath string

Path to the schema file for the dev container

SdkGenConfigFixes object

Fixes applied to the SDK generation

nameOverrideFeb2026 boolean

Prevents component-level x-speakeasy-name-override from affecting parent names when referencing schema via $ref or hoisting allOf extensions

nameResolutionDec2023 boolean

Enables name resolution fixes from December 2023

nameResolutionFeb2025 boolean

Enables name resolution fixes from February 2025

parameterOrderingFeb2024 boolean

Enables parameter ordering fixes from February 2024

requestResponseComponentNamesFeb2024 boolean

Enables request and response component naming fixes from February 2024

securityFeb2025 boolean

Enables fixes and refactoring for security that were introduced in February 2025

sharedErrorComponentsApr2025 boolean

Enables fixes that mean that when a component is used in both 2XX and 4XX responses, only the top level component will be duplicated to the errors scope as opposed to the entire component tree

sharedNestedComponentsJan2026 boolean

Fixes component naming when the same schema is referenced in multiple places within nested structures, ensuring consistent naming based on the original component definition

SdkGenConfigGeneration object

Generation configuration

auth object

Authentication configuration

3 nested properties
hoistGlobalSecurity boolean

Enables hoisting of operation-level security schemes to global level when no global security is defined

oAuth2ClientCredentialsEnabled boolean

Enables support for OAuth2 client credentials grant type

oAuth2PasswordEnabled boolean

Enables support for OAuth2 resource owner password credentials grant type

baseServerUrl string

The base URL of the server. This value will be used if global servers are not defined in the spec.

deduplicateErrors boolean

Deduplicates errors that have the same schema

devContainers object

Dev container configuration

2 nested properties
enabled boolean

Whether dev containers are enabled

schemaPath string

Path to the schema file for the dev container

fixes object

Fixes applied to the SDK generation

8 nested properties
nameOverrideFeb2026 boolean

Prevents component-level x-speakeasy-name-override from affecting parent names when referencing schema via $ref or hoisting allOf extensions

nameResolutionDec2023 boolean

Enables name resolution fixes from December 2023

nameResolutionFeb2025 boolean

Enables name resolution fixes from February 2025

parameterOrderingFeb2024 boolean

Enables parameter ordering fixes from February 2024

requestResponseComponentNamesFeb2024 boolean

Enables request and response component naming fixes from February 2024

securityFeb2025 boolean

Enables fixes and refactoring for security that were introduced in February 2025

sharedErrorComponentsApr2025 boolean

Enables fixes that mean that when a component is used in both 2XX and 4XX responses, only the top level component will be duplicated to the errors scope as opposed to the entire component tree

sharedNestedComponentsJan2026 boolean

Fixes component naming when the same schema is referenced in multiple places within nested structures, ensuring consistent naming based on the original component definition

inferSSEOverload boolean

Generates an overload if generator detects that the request body field 'stream: true' is used for client intent to request 'text/event-stream' response

maintainOpenAPIOrder boolean

Maintains the order of parameters and fields in the OpenAPI specification

mockServer object

Mock server generation configuration

1 nested properties
disabled boolean

Disables the code generation of the mock server target

persistentEdits object

Configures whether user edits to generated SDKs persist across regenerations

2 nested properties
compilePristine null | boolean

When true (default), runs an initial compile pass to normalize pristine content. Set to false when generated SDK doesn't compile but you still want persistent edits.

enabled null | string

Enables preservation of user edits across SDK regenerations. Set to 'never' to disable prompts.

Values: "true" "never"
requestBodyFieldName string

The name of the field to use for the request body in generated SDKs

schemas object

Schema processing configuration

1 nested properties
allOfMergeStrategy string

Controls how allOf schemas are merged

Values: "deepMerge" "shallowMerge"
sdkClassName string

Generated name of the root SDK class

sdkHooksConfigAccess boolean

Enables access to the SDK configuration from hooks

skipErrorSuffix boolean

Skips the automatic addition of an error suffix to error types

tests object

Test generation configuration

3 nested properties
generateNewTests boolean

Enables generation of new tests for any new operations in the OpenAPI specification

generateTests boolean

Enables generation of tests

skipResponseBodyAssertions boolean

Skip asserting that the client got the same response bodies returned by the mock server

usageSnippets object

Configuration for usage snippets

3 nested properties
optionalPropertyRendering string

Controls how optional properties are rendered in usage snippets

Values: "always" "never" "withExample"
sdkInitStyle string

Controls how the SDK initialization is depicted in usage snippets

Values: "constructor" "builder"
serverToShowInSnippets string | integer

Controls which server is shown in usage snippets. If unset, no server will be shown. If an integer, it will be used as the server index. Otherwise, it will look for a matching server ID.

useClassNamesForArrayFields boolean

Use class names for array fields instead of the child's schema type

versioningStrategy string

Controls how SDK versions are determined. 'automatic' (default) bumps versions based on changes, 'manual' uses the version in gen.yaml as-is.

Values: "automatic" "manual"
SdkGenConfigLanguageConfig object

Language-specific SDK configuration

Cfg Record<string, any>
version string

SDK version

SdkGenConfigMockServer object

Mock server generation configuration

disabled boolean

Disables the code generation of the mock server target

SdkGenConfigPersistentEdits object

Configures whether user edits to generated SDKs persist across regenerations

compilePristine null | boolean

When true (default), runs an initial compile pass to normalize pristine content. Set to false when generated SDK doesn't compile but you still want persistent edits.

enabled null | string

Enables preservation of user edits across SDK regenerations. Set to 'never' to disable prompts.

Values: "true" "never"
SdkGenConfigSchemas object

Schema processing configuration

allOfMergeStrategy string

Controls how allOf schemas are merged

Values: "deepMerge" "shallowMerge"
SdkGenConfigServerIndex string | integer

Controls which server is shown in usage snippets. If unset, no server will be shown. If an integer, it will be used as the server index. Otherwise, it will look for a matching server ID.

SdkGenConfigTests object

Test generation configuration

generateNewTests boolean

Enables generation of new tests for any new operations in the OpenAPI specification

generateTests boolean

Enables generation of tests

skipResponseBodyAssertions boolean

Skip asserting that the client got the same response bodies returned by the mock server

SdkGenConfigUsageSnippets object

Configuration for usage snippets

optionalPropertyRendering string

Controls how optional properties are rendered in usage snippets

Values: "always" "never" "withExample"
sdkInitStyle string

Controls how the SDK initialization is depicted in usage snippets

Values: "constructor" "builder"
serverToShowInSnippets string | integer

Controls which server is shown in usage snippets. If unset, no server will be shown. If an integer, it will be used as the server index. Otherwise, it will look for a matching server ID.