> This page is for SDKs, version Legacy.
> For other versions, use one of these documentation indexes:
> - Current (default): https://buildwithfern.com/learn/sdks/current/llms.txt
> - Legacy: https://buildwithfern.com/learn/sdks/legacy/llms.txt

> For clean Markdown content of this page, append .md to this URL. For the complete documentation index, see https://buildwithfern.com/learn/llms.txt.

## 2.18.0

**`(feat):`** Add `QueryStringBuilder` class for building query strings with proper URL encoding.

Example usage:

```csharp
var queryString = new QueryStringBuilder.Builder()
    .Add("access_token", "abc123")
    .Add("config_id", "cfg-456")
    .AddDeepObject("session_settings", new { SystemPrompt = "Hello" })
    .Build();
// Result: ?access_token=abc123&config_id=cfg-456&session_settings%5BSystemPrompt%5D=Hello
```

**`(chore):`** Improve header merging logic for better reliability and maintainability.

**`(chore):`** Remove `additional-properties` and `experimental-additional-properties` configuration options.
AdditionalProperties support is now always enabled for all generated SDKs, simplifying the generator
and ensuring consistent behavior across all generated code. This feature allows handling of extra/unknown
properties in JSON responses.