#### [Abblix\.Utils](https://www.abblix.com/en/docs/api/abblix-utils 'index')

## Abblix\.Utils\.Json Namespace

| Classes | |
| :--- | :--- |
| [ArrayConverter&lt;TElement,TConverter&gt;](https://www.abblix.com/en/docs/api/abblix-utils/Abblix.Utils.Json.ArrayConverter_TElement_TConverter_ 'Abblix\.Utils\.Json\.ArrayConverter\<TElement,TConverter\>') | JSON converter for nullable\-element arrays of [TElement](https://www.abblix.com/en/docs/api/abblix-utils/Abblix.Utils.Json.ArrayConverter_TElement_TConverter_#Abblix.Utils.Json.ArrayConverter_TElement,TConverter_.TElement 'Abblix\.Utils\.Json\.ArrayConverter\<TElement,TConverter\>\.TElement')\. Each non\-null element is delegated to an instance of [TConverter](https://www.abblix.com/en/docs/api/abblix-utils/Abblix.Utils.Json.ArrayConverter_TElement_TConverter_#Abblix.Utils.Json.ArrayConverter_TElement,TConverter_.TConverter 'Abblix\.Utils\.Json\.ArrayConverter\<TElement,TConverter\>\.TConverter'); each `null` element is preserved as `default()` on read and emitted as a JSON `null` on write, independently of how the inner converter would handle null\. A whole\-array JSON `null` deserializes to a `null` array\. Read accepts any JSON value form the inner converter can consume \(string, number, boolean, object, nested array\), keeping it symmetric with whatever Write can produce\. |
| [Base64UrlTextEncoderConverter](https://www.abblix.com/en/docs/api/abblix-utils/Abblix.Utils.Json.Base64UrlTextEncoderConverter 'Abblix\.Utils\.Json\.Base64UrlTextEncoderConverter') | A JSON converter for handling the serialization and deserialization of byte arrays as Base64 URL\-encoded strings\. |
| [CultureInfoConverter](https://www.abblix.com/en/docs/api/abblix-utils/Abblix.Utils.Json.CultureInfoConverter 'Abblix\.Utils\.Json\.CultureInfoConverter') | A custom JSON converter for [System\.Globalization\.CultureInfo](https://learn.microsoft.com/en-us/dotnet/api/system.globalization.cultureinfo 'System\.Globalization\.CultureInfo') objects\. It allows for the serialization and deserialization of [System\.Globalization\.CultureInfo](https://learn.microsoft.com/en-us/dotnet/api/system.globalization.cultureinfo 'System\.Globalization\.CultureInfo') instances when working with JSON data\. |
| [DateTimeOffsetUnixTimeSecondsConverter](https://www.abblix.com/en/docs/api/abblix-utils/Abblix.Utils.Json.DateTimeOffsetUnixTimeSecondsConverter 'Abblix\.Utils\.Json\.DateTimeOffsetUnixTimeSecondsConverter') | A custom JSON converter for handling [System\.DateTimeOffset](https://learn.microsoft.com/en-us/dotnet/api/system.datetimeoffset 'System\.DateTimeOffset') objects\. Converts to and from Unix time, which is the number of seconds that have elapsed since 00:00:00 UTC on 1 January 1970\. |
| [JsonIgnoreNullsAttribute](https://www.abblix.com/en/docs/api/abblix-utils/Abblix.Utils.Json.JsonIgnoreNullsAttribute 'Abblix\.Utils\.Json\.JsonIgnoreNullsAttribute') | Marks a class or struct so that all nullable properties are omitted from the serialized JSON when their value is `null`, without requiring a per\-property [System\.Text\.Json\.Serialization\.JsonIgnoreAttribute](https://learn.microsoft.com/en-us/dotnet/api/system.text.json.serialization.jsonignoreattribute 'System\.Text\.Json\.Serialization\.JsonIgnoreAttribute') on each one\. |
| [JsonIgnoreNullsModifier](https://www.abblix.com/en/docs/api/abblix-utils/Abblix.Utils.Json.JsonIgnoreNullsModifier 'Abblix\.Utils\.Json\.JsonIgnoreNullsModifier') | Provides a [System\.Text\.Json\.Serialization\.Metadata\.JsonTypeInfo](https://learn.microsoft.com/en-us/dotnet/api/system.text.json.serialization.metadata.jsontypeinfo 'System\.Text\.Json\.Serialization\.Metadata\.JsonTypeInfo') modifier that enforces null\-omission for all nullable properties of types decorated with [JsonIgnoreNullsAttribute](https://www.abblix.com/en/docs/api/abblix-utils/Abblix.Utils.Json.JsonIgnoreNullsAttribute 'Abblix\.Utils\.Json\.JsonIgnoreNullsAttribute')\. |
| [SingleOrArrayConverter&lt;T&gt;](https://www.abblix.com/en/docs/api/abblix-utils/Abblix.Utils.Json.SingleOrArrayConverter_T_ 'Abblix\.Utils\.Json\.SingleOrArrayConverter\<T\>') | Reads and writes a JSON value that may be either a single element of [T](https://www.abblix.com/en/docs/api/abblix-utils/Abblix.Utils.Json.SingleOrArrayConverter_T_#Abblix.Utils.Json.SingleOrArrayConverter_T_.T 'Abblix\.Utils\.Json\.SingleOrArrayConverter\<T\>\.T') or an array of such elements, exposing it uniformly to \.NET as `T[]`\. On write, a single\-element array is emitted as a bare scalar \(not an array\), matching the OAuth 2\.0 / OpenID Connect convention used for parameters such as `aud` and `response_type`\. |
| [SpaceSeparatedValuesConverter](https://www.abblix.com/en/docs/api/abblix-utils/Abblix.Utils.Json.SpaceSeparatedValuesConverter 'Abblix\.Utils\.Json\.SpaceSeparatedValuesConverter') | A custom JSON converter that handles arrays of strings, converting them to and from space\-separated values in JSON\. |
| [TimeSpanSecondsConverter](https://www.abblix.com/en/docs/api/abblix-utils/Abblix.Utils.Json.TimeSpanSecondsConverter 'Abblix\.Utils\.Json\.TimeSpanSecondsConverter') | A custom JSON converter for TimeSpan objects that serializes and deserializes them as a number of seconds\. |
