diff --git a/fern/products/sdks/overview/csharp/configuration.mdx b/fern/products/sdks/overview/csharp/configuration.mdx
index 22c9d3413..47cb0bfa3 100644
--- a/fern/products/sdks/overview/csharp/configuration.mdx
+++ b/fern/products/sdks/overview/csharp/configuration.mdx
@@ -5,7 +5,7 @@ description: Configuration options for the Fern .NET SDK.
You can customize the behavior of the C#/.NET SDK generator in `generators.yml`:
-```yml {7-8}
+```yml {7-8} title="generators.yml"
default-group: local
groups:
local:
@@ -19,58 +19,77 @@ groups:
## SDK configuration options
+When enabled, allows handling of additional properties not explicitly defined in the API specification. This provides flexibility for APIs that may include extra fields in responses.
+Customizes the name of the base API exception class that all API-specific exceptions will inherit from. This allows you to define a custom base exception class name for better integration with your existing error handling patterns.
+Specifies the name of the base exception class that all generated exceptions will inherit from. This provides a common parent class for all SDK exceptions, enabling consistent exception handling patterns.
+Sets the name of the generated API client class. This determines the primary client type name that users will interact with in the generated .NET SDK.
+Customizes the name of the pagination helper class used for handling paginated API responses. This allows you to specify a custom name that fits your naming conventions.
+When enabled, generates enum types that can handle unknown values gracefully. This allows the SDK to process new enum values that may be added to the API without breaking existing client code, improving forward compatibility.
+Specifies the name of the environment configuration class used for managing different API environments (e.g., development, staging, production).
+When enabled, generates code with explicit namespace declarations throughout the SDK. This can help avoid naming conflicts and improve code clarity in larger projects.
+Sets the name of the exported client class that will be used in code examples and documentation. This is useful for customizing how the client appears in generated documentation.
+When enabled, generates specific error type classes for different API errors. This provides strongly-typed error handling instead of using generic exception types.
+When enabled, generates mock server tests alongside the SDK code. This helps with testing and validation of the SDK functionality during development.
+When enabled, includes built-in exception handling utilities in the generated SDK. This provides convenience methods for common error handling scenarios.
+When enabled, path parameters are included as properties in the request object instead of being passed as separate method parameters. This creates a more unified request structure where all parameters are grouped together.
+Specifies the root namespace for all generated .NET code. This determines the namespace hierarchy that users will import when using the SDK.
+Sets the NuGet package identifier for the generated SDK. This is used when publishing the SDK to NuGet or other package repositories.
+Specifies a list of types that should be generated using ReadOnlyMemory<T> instead of regular arrays or collections. This can improve performance for large data transfers by reducing memory allocations.
+Controls the access modifier for the root client class. Use 'public' to make the client accessible from other assemblies, or 'internal' to restrict access within the same assembly.
+When enabled, places core SDK classes (like base client classes and utilities) in the root namespace instead of nested namespaces. This can simplify imports for commonly used types.
+When enabled, generates discriminated union types for API responses that can contain multiple different object types. This provides type-safe handling of polymorphic responses.
\ No newline at end of file
diff --git a/fern/products/sdks/overview/go/configuration.mdx b/fern/products/sdks/overview/go/configuration.mdx
index 6dbda0f9f..b354535d8 100644
--- a/fern/products/sdks/overview/go/configuration.mdx
+++ b/fern/products/sdks/overview/go/configuration.mdx
@@ -5,7 +5,7 @@ description: Configuration options for the Fern Go SDK.
You can customize the behavior of the Go SDK generator in `generators.yml`:
-```yaml {7-8}
+```yaml {7-8} title="generators.yml"
default-group: local
groups:
local:
@@ -22,15 +22,19 @@ groups:
## SDK Configuration Options
+When enabled, ensures that all required properties are always included in API requests, even if they have default values or are otherwise optional in the implementation.
+Customizes the name of the client constructor function. This allows you to specify a custom name for the function that users will call to create a new instance of the client.
+Specifies the name of the generated client struct. This determines the primary client type name that users will interact with in the generated Go SDK.
+Sets the name of the exported client that will be used in code snippets and documentation examples. This is useful for customizing how the client appears in generated documentation.
@@ -60,15 +64,18 @@ with the relevant elements in your `go.mod` path. In this case, the generated Go
+When enabled, includes legacy client options for backward compatibility with older versions of the SDK. This is useful for maintaining compatibility when upgrading SDK versions.
+Controls whether file upload properties are generated as inline request properties instead of separate parameters. When enabled, file upload fields become part of the request struct rather than being passed as individual function parameters.
+When enabled, path parameters are inlined into request types rather than being passed as separate function parameters. This creates a more unified request structure where path parameters are included in the request object.
-
+
Use this option if you plan to distribute the generated Go SDK as a separate, published Go module.
If you only plan to use the generated SDK within your own Go module, use the `importPath` configuration option instead.
@@ -127,13 +134,17 @@ replace "github.com/your/sdk" v0.0.0 => "path/to/generated/sdk"
+Controls the organization of the generated package structure. Choose 'flat' for a flatter package structure with fewer nested directories, or 'nested' for a more hierarchical organization that mirrors your API structure.
+Specifies the package name for the generated Go code. This determines the package declaration that will appear at the top of generated Go files and affects how users import the SDK.
+Controls the union type generation strategy. Use 'v0' for the legacy union implementation or 'v1' for the newer, more robust union handling approach that provides better type safety and discriminated union support.
+When enabled, uses `io.Reader` interface for handling byte request bodies instead of byte slices. This is more memory-efficient for large payloads and follows Go best practices for streaming data.
\ No newline at end of file
diff --git a/fern/products/sdks/overview/java/configuration.mdx b/fern/products/sdks/overview/java/configuration.mdx
index 04dfde919..1bdbba94f 100644
--- a/fern/products/sdks/overview/java/configuration.mdx
+++ b/fern/products/sdks/overview/java/configuration.mdx
@@ -4,7 +4,7 @@ description: Configuration options for the Fern Java SDK.
---
You can customize the behavior of the Java SDK generator in `generators.yml`:
-```yaml {7-9}
+```yaml {7-9} title="generators.yml"
default-group: local
groups:
local:
@@ -18,9 +18,11 @@ groups:
## SDK Configuration Options
+Customizes the name of the base API exception class that all API-specific exceptions will extend. This allows you to define a custom base exception class name for better integration with your existing error handling patterns.
+Specifies the name of the base exception class that all generated exceptions will inherit from. This provides a common parent class for all SDK exceptions, enabling consistent exception handling patterns.
@@ -42,6 +44,7 @@ Example:
+When enabled, disables validation checks in builder patterns for required properties. This removes compile-time checks that ensure all required fields are set before building an object, providing more flexibility but less safety.
@@ -50,9 +53,11 @@ When enabled, generates extensible builder classes that support customization th
+When enabled, generates enum classes that can handle unknown values gracefully. This allows the SDK to process new enum values that may be added to the API without breaking existing client code, improving forward compatibility.
+When enabled, generates inline types for nested schemas instead of creating separate classes. This results in cleaner type definitions where nested objects are defined within their parent types, reducing the number of generated files.
@@ -61,18 +66,23 @@ When enabled, generates public constructors for model types.
+When enabled, generates unknown or untyped properties as structured JSON objects instead of raw Object types. This provides better type safety and easier manipulation of dynamic JSON content while maintaining flexibility for unknown data structures.
+Controls whether file upload properties are generated as inline request properties instead of separate method parameters. When enabled, file fields become part of the request object rather than being passed as individual function arguments.
+When enabled, path parameters are included as properties in the request object instead of being passed as separate method parameters. This creates a more unified request structure where all parameters are grouped together.
+Controls Jackson's JSON serialization behavior for optional fields. Use 'non-empty' to exclude null and empty values, or 'non-absent' to only exclude null values while preserving empty collections and strings.
+Determines the organization of generated Java packages. Choose 'nested' for a hierarchical package structure that mirrors your API organization, or 'flat' for a simpler structure with fewer nested packages.
@@ -114,12 +124,17 @@ If you want to customize how your publishing metadata looks in your
```
+Specifies the author name that will appear in the generated package metadata and build configuration files.
+Sets the contact email address for the package author that will be included in the generated package metadata.
+Defines the software license for the generated SDK. Choose from standard licenses like 'MIT' or 'Apache-2.0', or specify a custom license name.
+Provides a description of the SDK package that will appear in package metadata and documentation. This helps users understand what the SDK is for and its purpose.
+Sets the reference URL (typically the API documentation or project website) that will be included in the package metadata for users to find additional information.
\ No newline at end of file
diff --git a/fern/products/sdks/overview/php/configuration.mdx b/fern/products/sdks/overview/php/configuration.mdx
index 53eaa89d4..fb51f4ec4 100644
--- a/fern/products/sdks/overview/php/configuration.mdx
+++ b/fern/products/sdks/overview/php/configuration.mdx
@@ -5,7 +5,7 @@ description: Configuration options for the Fern PHP SDK.
You can customize the behavior of the PHP SDK generator in `generators.yml`:
-```yaml {7-8}
+```yaml {7-8} title="generators.yml"
default-group: local
groups:
local:
@@ -19,22 +19,29 @@ groups:
## SDK Configuration Options
+Sets the name of the generated API client class. This determines the primary client type name that users will interact with in the generated PHP SDK.
+Allows customization of the generated `composer.json` file contents. You can specify additional metadata, dependencies, or configuration that will be merged into the package's composer configuration file.
+When enabled, path parameters are included as properties in the request class instead of being passed as separate method parameters. This creates a more unified request structure where all parameters are grouped together in the request object.
+Specifies the PHP namespace for all generated code. This determines the namespace hierarchy that users will use when importing and using the SDK classes.
+Sets the name of the PHP package as it will appear in Composer and Packagist. This is the name users will use to install the SDK via Composer (e.g., `composer require your/package-name`).
+Specifies the directory path where the generated SDK source files should be placed. This determines the file system location of the generated PHP code relative to the output directory.
+Controls the access level of generated class properties. When set to 'public', properties are public and getter/setter methods are omitted. When set to 'private', properties are private and getter/setter methods are generated for encapsulation.
\ No newline at end of file
diff --git a/fern/products/sdks/overview/python/configuration.mdx b/fern/products/sdks/overview/python/configuration.mdx
index e08bc862e..d870097ba 100644
--- a/fern/products/sdks/overview/python/configuration.mdx
+++ b/fern/products/sdks/overview/python/configuration.mdx
@@ -5,7 +5,7 @@ description: Configuration options for the Fern Python SDK.
You can customize the behavior of the Python SDK generator in `generators.yml`:
-```yaml {7-16}
+```yaml {7-16} title="generators.yml"
default-group: local
groups:
local:
diff --git a/fern/products/sdks/overview/ruby/configuration.mdx b/fern/products/sdks/overview/ruby/configuration.mdx
index ec531c5a9..5f5ea9311 100644
--- a/fern/products/sdks/overview/ruby/configuration.mdx
+++ b/fern/products/sdks/overview/ruby/configuration.mdx
@@ -5,7 +5,7 @@ description: Configuration options for the Fern Ruby SDK.
You can customize the behavior of the Ruby SDK generator in `generators.yml`:
-```yaml {7-8}
+```yaml {7-8} title="generators.yml"
default-group: local
groups:
local:
diff --git a/fern/products/sdks/overview/typescript/configuration.mdx b/fern/products/sdks/overview/typescript/configuration.mdx
index bca129feb..aff0da464 100644
--- a/fern/products/sdks/overview/typescript/configuration.mdx
+++ b/fern/products/sdks/overview/typescript/configuration.mdx
@@ -5,7 +5,7 @@ description: Configuration options for the Fern TypeScript SDK.
You can customize the behavior of the TypeScript SDK generator in `generators.yml`:
-```yml {7-8}
+```yml {7-8} title="generators.yml"
default-group: local
groups:
local: