diff --git a/src/libs/SmallestAI/Generated/SmallestAI.AuthClient.CreateAccessToken.g.cs b/src/libs/SmallestAI/Generated/SmallestAI.AuthClient.CreateAccessToken.g.cs
index 6a1501b..b2bb903 100644
--- a/src/libs/SmallestAI/Generated/SmallestAI.AuthClient.CreateAccessToken.g.cs
+++ b/src/libs/SmallestAI/Generated/SmallestAI.AuthClient.CreateAccessToken.g.cs
@@ -69,7 +69,7 @@ partial void ProcessCreateAccessTokenResponseContent(
/// -H "Content-Type: application/json" \
/// -d '{"ttl_seconds": 300}'
/// ```
- /// See the [Authentication guide](/models/api-reference/token-based-authentication)
+ /// See the [Authentication guide](/api-reference/token-based-authentication)
/// for the end-to-end server and client flow.
///
///
@@ -119,7 +119,7 @@ partial void ProcessCreateAccessTokenResponseContent(
/// -H "Content-Type: application/json" \
/// -d '{"ttl_seconds": 300}'
/// ```
- /// See the [Authentication guide](/models/api-reference/token-based-authentication)
+ /// See the [Authentication guide](/api-reference/token-based-authentication)
/// for the end-to-end server and client flow.
///
///
@@ -700,7 +700,7 @@ partial void ProcessCreateAccessTokenResponseContent(
/// -H "Content-Type: application/json" \
/// -d '{"ttl_seconds": 300}'
/// ```
- /// See the [Authentication guide](/models/api-reference/token-based-authentication)
+ /// See the [Authentication guide](/api-reference/token-based-authentication)
/// for the end-to-end server and client flow.
///
///
diff --git a/src/libs/SmallestAI/Generated/SmallestAI.ElectronClient.Complete.g.cs b/src/libs/SmallestAI/Generated/SmallestAI.ElectronClient.Complete.g.cs
index 71c75c4..a6eaa63 100644
--- a/src/libs/SmallestAI/Generated/SmallestAI.ElectronClient.Complete.g.cs
+++ b/src/libs/SmallestAI/Generated/SmallestAI.ElectronClient.Complete.g.cs
@@ -53,7 +53,7 @@ partial void ProcessCompleteResponseContent(
/// Tool calling follows OpenAI's `tools` array convention. When you
/// provide a voice-agent-style system prompt, Electron emits a short
/// filler phrase in the assistant message `content` field alongside
- /// `tool_calls` — see the [Tool Calling guide](/models/documentation/llm-electron/tool-function-calling)
+ /// `tool_calls` — see the [Tool Calling guide](/models/llm/tool-function-calling)
/// for the voice-agent pattern.
/// ## Examples
/// **cURL**
@@ -150,7 +150,7 @@ partial void ProcessCompleteResponseContent(
/// Tool calling follows OpenAI's `tools` array convention. When you
/// provide a voice-agent-style system prompt, Electron emits a short
/// filler phrase in the assistant message `content` field alongside
- /// `tool_calls` — see the [Tool Calling guide](/models/documentation/llm-electron/tool-function-calling)
+ /// `tool_calls` — see the [Tool Calling guide](/models/llm/tool-function-calling)
/// for the voice-agent pattern.
/// ## Examples
/// **cURL**
@@ -596,7 +596,7 @@ partial void ProcessCompleteResponseContent(
h => h.Key,
h => h.Value));
}
- // Rate limit (RPM) or concurrency cap hit. See [Concurrency and Limits](/models/api-reference/concurrency-and-limits).
+ // Rate limit (RPM) or concurrency cap hit. See [Concurrency and Limits](/api-reference/concurrency-and-limits).
if ((int)__response.StatusCode == 429)
{
string? __content_429 = null;
@@ -815,7 +815,7 @@ partial void ProcessCompleteResponseContent(
/// Tool calling follows OpenAI's `tools` array convention. When you
/// provide a voice-agent-style system prompt, Electron emits a short
/// filler phrase in the assistant message `content` field alongside
- /// `tool_calls` — see the [Tool Calling guide](/models/documentation/llm-electron/tool-function-calling)
+ /// `tool_calls` — see the [Tool Calling guide](/models/llm/tool-function-calling)
/// for the voice-agent pattern.
/// ## Examples
/// **cURL**
@@ -901,7 +901,7 @@ partial void ProcessCompleteResponseContent(
///
///
/// When true, response is `text/event-stream`. See the
- /// [Streaming guide](/models/documentation/llm-electron/streaming).
+ /// [Streaming guide](/models/llm/streaming).
/// Default Value: false
///
///
@@ -911,7 +911,7 @@ partial void ProcessCompleteResponseContent(
/// (`{type: "function", function: {name, description, parameters}}`)
/// is the recommended form and is what the examples below use.
/// The wire schema is permissive (`array<object>`) — any tools payload
- /// the upstream accepts will work. See [Tool Calling](/models/documentation/llm-electron/tool-function-calling)
+ /// the upstream accepts will work. See [Tool Calling](/models/llm/tool-function-calling)
/// for details.
///
///
diff --git a/src/libs/SmallestAI/Generated/SmallestAI.IAuthClient.CreateAccessToken.g.cs b/src/libs/SmallestAI/Generated/SmallestAI.IAuthClient.CreateAccessToken.g.cs
index 260ba90..ab1c3e8 100644
--- a/src/libs/SmallestAI/Generated/SmallestAI.IAuthClient.CreateAccessToken.g.cs
+++ b/src/libs/SmallestAI/Generated/SmallestAI.IAuthClient.CreateAccessToken.g.cs
@@ -32,7 +32,7 @@ public partial interface IAuthClient
/// -H "Content-Type: application/json" \
/// -d '{"ttl_seconds": 300}'
/// ```
- /// See the [Authentication guide](/models/api-reference/token-based-authentication)
+ /// See the [Authentication guide](/api-reference/token-based-authentication)
/// for the end-to-end server and client flow.
///
///
@@ -72,7 +72,7 @@ public partial interface IAuthClient
/// -H "Content-Type: application/json" \
/// -d '{"ttl_seconds": 300}'
/// ```
- /// See the [Authentication guide](/models/api-reference/token-based-authentication)
+ /// See the [Authentication guide](/api-reference/token-based-authentication)
/// for the end-to-end server and client flow.
///
///
@@ -112,7 +112,7 @@ public partial interface IAuthClient
/// -H "Content-Type: application/json" \
/// -d '{"ttl_seconds": 300}'
/// ```
- /// See the [Authentication guide](/models/api-reference/token-based-authentication)
+ /// See the [Authentication guide](/api-reference/token-based-authentication)
/// for the end-to-end server and client flow.
///
///
diff --git a/src/libs/SmallestAI/Generated/SmallestAI.IElectronClient.Complete.g.cs b/src/libs/SmallestAI/Generated/SmallestAI.IElectronClient.Complete.g.cs
index 5c6b3d4..13d77e4 100644
--- a/src/libs/SmallestAI/Generated/SmallestAI.IElectronClient.Complete.g.cs
+++ b/src/libs/SmallestAI/Generated/SmallestAI.IElectronClient.Complete.g.cs
@@ -16,7 +16,7 @@ public partial interface IElectronClient
/// Tool calling follows OpenAI's `tools` array convention. When you
/// provide a voice-agent-style system prompt, Electron emits a short
/// filler phrase in the assistant message `content` field alongside
- /// `tool_calls` — see the [Tool Calling guide](/models/documentation/llm-electron/tool-function-calling)
+ /// `tool_calls` — see the [Tool Calling guide](/models/llm/tool-function-calling)
/// for the voice-agent pattern.
/// ## Examples
/// **cURL**
@@ -103,7 +103,7 @@ public partial interface IElectronClient
/// Tool calling follows OpenAI's `tools` array convention. When you
/// provide a voice-agent-style system prompt, Electron emits a short
/// filler phrase in the assistant message `content` field alongside
- /// `tool_calls` — see the [Tool Calling guide](/models/documentation/llm-electron/tool-function-calling)
+ /// `tool_calls` — see the [Tool Calling guide](/models/llm/tool-function-calling)
/// for the voice-agent pattern.
/// ## Examples
/// **cURL**
@@ -190,7 +190,7 @@ public partial interface IElectronClient
/// Tool calling follows OpenAI's `tools` array convention. When you
/// provide a voice-agent-style system prompt, Electron emits a short
/// filler phrase in the assistant message `content` field alongside
- /// `tool_calls` — see the [Tool Calling guide](/models/documentation/llm-electron/tool-function-calling)
+ /// `tool_calls` — see the [Tool Calling guide](/models/llm/tool-function-calling)
/// for the voice-agent pattern.
/// ## Examples
/// **cURL**
@@ -276,7 +276,7 @@ public partial interface IElectronClient
///
///
/// When true, response is `text/event-stream`. See the
- /// [Streaming guide](/models/documentation/llm-electron/streaming).
+ /// [Streaming guide](/models/llm/streaming).
/// Default Value: false
///
///
@@ -286,7 +286,7 @@ public partial interface IElectronClient
/// (`{type: "function", function: {name, description, parameters}}`)
/// is the recommended form and is what the examples below use.
/// The wire schema is permissive (`array<object>`) — any tools payload
- /// the upstream accepts will work. See [Tool Calling](/models/documentation/llm-electron/tool-function-calling)
+ /// the upstream accepts will work. See [Tool Calling](/models/llm/tool-function-calling)
/// for details.
///
///
diff --git a/src/libs/SmallestAI/Generated/SmallestAI.ISpeechToTextClient.Transcribe.g.cs b/src/libs/SmallestAI/Generated/SmallestAI.ISpeechToTextClient.Transcribe.g.cs
index 8b281e0..d26f6c5 100644
--- a/src/libs/SmallestAI/Generated/SmallestAI.ISpeechToTextClient.Transcribe.g.cs
+++ b/src/libs/SmallestAI/Generated/SmallestAI.ISpeechToTextClient.Transcribe.g.cs
@@ -8,10 +8,10 @@ public partial interface ISpeechToTextClient
/// Transcribe (Pre-recorded)
/// Transcribe an audio file. The model is chosen via `?model=`:
/// - `?model=pulse-pro`: English-only, leaderboard-ranked accuracy. Raw bytes only; pass `webhook_url` to receive transcription asynchronously on long files.
- /// - `?model=pulse`: multilingual transcription (21 streaming + 26 pre-recorded languages), supports both raw bytes and audio-by-URL.
+ /// - `?model=pulse`: multilingual transcription (21 streaming + 12 pre-recorded languages), supports both raw bytes and audio-by-URL.
/// ## When to use this
- /// Use this endpoint when you have a complete audio file (call recording, voicemail, podcast episode) and want the transcript back in one response. For live transcription as audio arrives, use the realtime WebSocket endpoint (`WS /waves/v1/stt/live`) instead.
- /// Pulse Pro has no streaming worker today; calls to `WS /waves/v1/stt/live?model=pulse-pro` return `400` before the WebSocket upgrades.
+ /// Use this endpoint when you have a complete audio file (call recording, voicemail, podcast episode) and want the transcript back in one response. For live transcription as audio arrives, use the realtime WebSocket endpoint (`WS /waves/v1/stt/live?model=pulse`).
+ /// Pulse Pro is HTTP-only.
/// ## Input methods
/// - **Raw bytes**: `Content-Type: application/octet-stream` with the audio in the body. All knobs are query parameters.
/// - **URL (`?model=pulse` only)**: `Content-Type: application/json` with `{"url": "..."}` in the body.
@@ -66,9 +66,8 @@ public partial interface ISpeechToTextClient
/// ```
/// ## Common gotchas
/// - **`model` is required.** Missing or invalid values return `400` with an enum-validation error.
- /// - **Pulse Pro is English only.** Pass `language=en`. Other language codes are accepted at the wire level but produce unpredictable output.
- /// - **Pulse Pro does not support audio-by-URL.** Send raw bytes or use `?model=pulse` for the URL flow.
- /// - **Max payload 250 MB.** Larger requests return `413`. Compress to mono 16 kHz PCM if you are close to the limit; quality is unaffected.
+ /// - **Pulse Pro is English only.** Pass `language=en`. Any other value returns `400 invalid_enum_value` (`Expected 'en', received '<x>'`).
+ /// - **Pulse Pro does not support audio-by-URL.** Send raw bytes or use `?model=pulse` for the URL flow.
///
///
///
@@ -103,11 +102,11 @@ public partial interface ISpeechToTextClient
///
global::System.Threading.Tasks.Task TranscribeAsync(
global::SmallestAI.WavesV1SttPostParametersModel model,
- global::SmallestAI.WavesV1SttPostParametersLanguage language,
byte[] request,
- bool? wordTimestamps = default,
- bool? diarize = default,
+ global::SmallestAI.WavesV1SttPostParametersLanguage? language = default,
+ global::SmallestAI.WavesV1SttPostParametersWordTimestamps? wordTimestamps = default,
+ global::SmallestAI.WavesV1SttPostParametersDiarize? diarize = default,
string? keywords = default,
string? webhookUrl = default,
global::SmallestAI.WavesV1SttPostParametersWebhookMethod? webhookMethod = default,
@@ -123,10 +122,10 @@ public partial interface ISpeechToTextClient
/// Transcribe (Pre-recorded)
/// Transcribe an audio file. The model is chosen via `?model=`:
/// - `?model=pulse-pro`: English-only, leaderboard-ranked accuracy. Raw bytes only; pass `webhook_url` to receive transcription asynchronously on long files.
- /// - `?model=pulse`: multilingual transcription (21 streaming + 26 pre-recorded languages), supports both raw bytes and audio-by-URL.
+ /// - `?model=pulse`: multilingual transcription (21 streaming + 12 pre-recorded languages), supports both raw bytes and audio-by-URL.
/// ## When to use this
- /// Use this endpoint when you have a complete audio file (call recording, voicemail, podcast episode) and want the transcript back in one response. For live transcription as audio arrives, use the realtime WebSocket endpoint (`WS /waves/v1/stt/live`) instead.
- /// Pulse Pro has no streaming worker today; calls to `WS /waves/v1/stt/live?model=pulse-pro` return `400` before the WebSocket upgrades.
+ /// Use this endpoint when you have a complete audio file (call recording, voicemail, podcast episode) and want the transcript back in one response. For live transcription as audio arrives, use the realtime WebSocket endpoint (`WS /waves/v1/stt/live?model=pulse`).
+ /// Pulse Pro is HTTP-only.
/// ## Input methods
/// - **Raw bytes**: `Content-Type: application/octet-stream` with the audio in the body. All knobs are query parameters.
/// - **URL (`?model=pulse` only)**: `Content-Type: application/json` with `{"url": "..."}` in the body.
@@ -181,9 +180,8 @@ public partial interface ISpeechToTextClient
/// ```
/// ## Common gotchas
/// - **`model` is required.** Missing or invalid values return `400` with an enum-validation error.
- /// - **Pulse Pro is English only.** Pass `language=en`. Other language codes are accepted at the wire level but produce unpredictable output.
- /// - **Pulse Pro does not support audio-by-URL.** Send raw bytes or use `?model=pulse` for the URL flow.
- /// - **Max payload 250 MB.** Larger requests return `413`. Compress to mono 16 kHz PCM if you are close to the limit; quality is unaffected.
+ /// - **Pulse Pro is English only.** Pass `language=en`. Any other value returns `400 invalid_enum_value` (`Expected 'en', received '<x>'`).
+ /// - **Pulse Pro does not support audio-by-URL.** Send raw bytes or use `?model=pulse` for the URL flow.
///
///
///
@@ -218,11 +216,11 @@ public partial interface ISpeechToTextClient
///
global::System.Threading.Tasks.Task> TranscribeAsResponseAsync(
global::SmallestAI.WavesV1SttPostParametersModel model,
- global::SmallestAI.WavesV1SttPostParametersLanguage language,
byte[] request,
- bool? wordTimestamps = default,
- bool? diarize = default,
+ global::SmallestAI.WavesV1SttPostParametersLanguage? language = default,
+ global::SmallestAI.WavesV1SttPostParametersWordTimestamps? wordTimestamps = default,
+ global::SmallestAI.WavesV1SttPostParametersDiarize? diarize = default,
string? keywords = default,
string? webhookUrl = default,
global::SmallestAI.WavesV1SttPostParametersWebhookMethod? webhookMethod = default,
diff --git a/src/libs/SmallestAI/Generated/SmallestAI.ISpeechToTextClient.TranscribeWithJson.g.cs b/src/libs/SmallestAI/Generated/SmallestAI.ISpeechToTextClient.TranscribeWithJson.g.cs
index 74c467c..f69051a 100644
--- a/src/libs/SmallestAI/Generated/SmallestAI.ISpeechToTextClient.TranscribeWithJson.g.cs
+++ b/src/libs/SmallestAI/Generated/SmallestAI.ISpeechToTextClient.TranscribeWithJson.g.cs
@@ -8,10 +8,10 @@ public partial interface ISpeechToTextClient
/// Transcribe (Pre-recorded)
/// Transcribe an audio file. The model is chosen via `?model=`:
/// - `?model=pulse-pro`: English-only, leaderboard-ranked accuracy. Raw bytes only; pass `webhook_url` to receive transcription asynchronously on long files.
- /// - `?model=pulse`: multilingual transcription (21 streaming + 26 pre-recorded languages), supports both raw bytes and audio-by-URL.
+ /// - `?model=pulse`: multilingual transcription (21 streaming + 12 pre-recorded languages), supports both raw bytes and audio-by-URL.
/// ## When to use this
- /// Use this endpoint when you have a complete audio file (call recording, voicemail, podcast episode) and want the transcript back in one response. For live transcription as audio arrives, use the realtime WebSocket endpoint (`WS /waves/v1/stt/live`) instead.
- /// Pulse Pro has no streaming worker today; calls to `WS /waves/v1/stt/live?model=pulse-pro` return `400` before the WebSocket upgrades.
+ /// Use this endpoint when you have a complete audio file (call recording, voicemail, podcast episode) and want the transcript back in one response. For live transcription as audio arrives, use the realtime WebSocket endpoint (`WS /waves/v1/stt/live?model=pulse`).
+ /// Pulse Pro is HTTP-only.
/// ## Input methods
/// - **Raw bytes**: `Content-Type: application/octet-stream` with the audio in the body. All knobs are query parameters.
/// - **URL (`?model=pulse` only)**: `Content-Type: application/json` with `{"url": "..."}` in the body.
@@ -66,9 +66,8 @@ public partial interface ISpeechToTextClient
/// ```
/// ## Common gotchas
/// - **`model` is required.** Missing or invalid values return `400` with an enum-validation error.
- /// - **Pulse Pro is English only.** Pass `language=en`. Other language codes are accepted at the wire level but produce unpredictable output.
- /// - **Pulse Pro does not support audio-by-URL.** Send raw bytes or use `?model=pulse` for the URL flow.
- /// - **Max payload 250 MB.** Larger requests return `413`. Compress to mono 16 kHz PCM if you are close to the limit; quality is unaffected.
+ /// - **Pulse Pro is English only.** Pass `language=en`. Any other value returns `400 invalid_enum_value` (`Expected 'en', received '<x>'`).
+ /// - **Pulse Pro does not support audio-by-URL.** Send raw bytes or use `?model=pulse` for the URL flow.
///
///
///
@@ -103,11 +102,11 @@ public partial interface ISpeechToTextClient
///
global::System.Threading.Tasks.Task TranscribeWithJsonAsync(
global::SmallestAI.WavesV1SttPostParametersModel model,
- global::SmallestAI.WavesV1SttPostParametersLanguage language,
global::SmallestAI.TranscriptionUrlRequest request,
- bool? wordTimestamps = default,
- bool? diarize = default,
+ global::SmallestAI.WavesV1SttPostParametersLanguage? language = default,
+ global::SmallestAI.WavesV1SttPostParametersWordTimestamps? wordTimestamps = default,
+ global::SmallestAI.WavesV1SttPostParametersDiarize? diarize = default,
string? keywords = default,
string? webhookUrl = default,
global::SmallestAI.WavesV1SttPostParametersWebhookMethod? webhookMethod = default,
@@ -123,10 +122,10 @@ public partial interface ISpeechToTextClient
/// Transcribe (Pre-recorded)
/// Transcribe an audio file. The model is chosen via `?model=`:
/// - `?model=pulse-pro`: English-only, leaderboard-ranked accuracy. Raw bytes only; pass `webhook_url` to receive transcription asynchronously on long files.
- /// - `?model=pulse`: multilingual transcription (21 streaming + 26 pre-recorded languages), supports both raw bytes and audio-by-URL.
+ /// - `?model=pulse`: multilingual transcription (21 streaming + 12 pre-recorded languages), supports both raw bytes and audio-by-URL.
/// ## When to use this
- /// Use this endpoint when you have a complete audio file (call recording, voicemail, podcast episode) and want the transcript back in one response. For live transcription as audio arrives, use the realtime WebSocket endpoint (`WS /waves/v1/stt/live`) instead.
- /// Pulse Pro has no streaming worker today; calls to `WS /waves/v1/stt/live?model=pulse-pro` return `400` before the WebSocket upgrades.
+ /// Use this endpoint when you have a complete audio file (call recording, voicemail, podcast episode) and want the transcript back in one response. For live transcription as audio arrives, use the realtime WebSocket endpoint (`WS /waves/v1/stt/live?model=pulse`).
+ /// Pulse Pro is HTTP-only.
/// ## Input methods
/// - **Raw bytes**: `Content-Type: application/octet-stream` with the audio in the body. All knobs are query parameters.
/// - **URL (`?model=pulse` only)**: `Content-Type: application/json` with `{"url": "..."}` in the body.
@@ -181,9 +180,8 @@ public partial interface ISpeechToTextClient
/// ```
/// ## Common gotchas
/// - **`model` is required.** Missing or invalid values return `400` with an enum-validation error.
- /// - **Pulse Pro is English only.** Pass `language=en`. Other language codes are accepted at the wire level but produce unpredictable output.
- /// - **Pulse Pro does not support audio-by-URL.** Send raw bytes or use `?model=pulse` for the URL flow.
- /// - **Max payload 250 MB.** Larger requests return `413`. Compress to mono 16 kHz PCM if you are close to the limit; quality is unaffected.
+ /// - **Pulse Pro is English only.** Pass `language=en`. Any other value returns `400 invalid_enum_value` (`Expected 'en', received '<x>'`).
+ /// - **Pulse Pro does not support audio-by-URL.** Send raw bytes or use `?model=pulse` for the URL flow.
///
///
///
@@ -218,11 +216,11 @@ public partial interface ISpeechToTextClient
///
global::System.Threading.Tasks.Task> TranscribeWithJsonAsResponseAsync(
global::SmallestAI.WavesV1SttPostParametersModel model,
- global::SmallestAI.WavesV1SttPostParametersLanguage language,
global::SmallestAI.TranscriptionUrlRequest request,
- bool? wordTimestamps = default,
- bool? diarize = default,
+ global::SmallestAI.WavesV1SttPostParametersLanguage? language = default,
+ global::SmallestAI.WavesV1SttPostParametersWordTimestamps? wordTimestamps = default,
+ global::SmallestAI.WavesV1SttPostParametersDiarize? diarize = default,
string? keywords = default,
string? webhookUrl = default,
global::SmallestAI.WavesV1SttPostParametersWebhookMethod? webhookMethod = default,
@@ -238,10 +236,10 @@ public partial interface ISpeechToTextClient
/// Transcribe (Pre-recorded)
/// Transcribe an audio file. The model is chosen via `?model=`:
/// - `?model=pulse-pro`: English-only, leaderboard-ranked accuracy. Raw bytes only; pass `webhook_url` to receive transcription asynchronously on long files.
- /// - `?model=pulse`: multilingual transcription (21 streaming + 26 pre-recorded languages), supports both raw bytes and audio-by-URL.
+ /// - `?model=pulse`: multilingual transcription (21 streaming + 12 pre-recorded languages), supports both raw bytes and audio-by-URL.
/// ## When to use this
- /// Use this endpoint when you have a complete audio file (call recording, voicemail, podcast episode) and want the transcript back in one response. For live transcription as audio arrives, use the realtime WebSocket endpoint (`WS /waves/v1/stt/live`) instead.
- /// Pulse Pro has no streaming worker today; calls to `WS /waves/v1/stt/live?model=pulse-pro` return `400` before the WebSocket upgrades.
+ /// Use this endpoint when you have a complete audio file (call recording, voicemail, podcast episode) and want the transcript back in one response. For live transcription as audio arrives, use the realtime WebSocket endpoint (`WS /waves/v1/stt/live?model=pulse`).
+ /// Pulse Pro is HTTP-only.
/// ## Input methods
/// - **Raw bytes**: `Content-Type: application/octet-stream` with the audio in the body. All knobs are query parameters.
/// - **URL (`?model=pulse` only)**: `Content-Type: application/json` with `{"url": "..."}` in the body.
@@ -296,9 +294,8 @@ public partial interface ISpeechToTextClient
/// ```
/// ## Common gotchas
/// - **`model` is required.** Missing or invalid values return `400` with an enum-validation error.
- /// - **Pulse Pro is English only.** Pass `language=en`. Other language codes are accepted at the wire level but produce unpredictable output.
- /// - **Pulse Pro does not support audio-by-URL.** Send raw bytes or use `?model=pulse` for the URL flow.
- /// - **Max payload 250 MB.** Larger requests return `413`. Compress to mono 16 kHz PCM if you are close to the limit; quality is unaffected.
+ /// - **Pulse Pro is English only.** Pass `language=en`. Any other value returns `400 invalid_enum_value` (`Expected 'en', received '<x>'`).
+ /// - **Pulse Pro does not support audio-by-URL.** Send raw bytes or use `?model=pulse` for the URL flow.
///
///
///
@@ -335,10 +332,10 @@ public partial interface ISpeechToTextClient
///
global::System.Threading.Tasks.Task TranscribeWithJsonAsync(
global::SmallestAI.WavesV1SttPostParametersModel model,
- global::SmallestAI.WavesV1SttPostParametersLanguage language,
string url,
- bool? wordTimestamps = default,
- bool? diarize = default,
+ global::SmallestAI.WavesV1SttPostParametersLanguage? language = default,
+ global::SmallestAI.WavesV1SttPostParametersWordTimestamps? wordTimestamps = default,
+ global::SmallestAI.WavesV1SttPostParametersDiarize? diarize = default,
string? keywords = default,
string? webhookUrl = default,
global::SmallestAI.WavesV1SttPostParametersWebhookMethod? webhookMethod = default,
diff --git a/src/libs/SmallestAI/Generated/SmallestAI.ITextToSpeechClient.SynthesizeSpeech.g.cs b/src/libs/SmallestAI/Generated/SmallestAI.ITextToSpeechClient.SynthesizeSpeech.g.cs
index 2bad83c..e61d239 100644
--- a/src/libs/SmallestAI/Generated/SmallestAI.ITextToSpeechClient.SynthesizeSpeech.g.cs
+++ b/src/libs/SmallestAI/Generated/SmallestAI.ITextToSpeechClient.SynthesizeSpeech.g.cs
@@ -8,7 +8,7 @@ public partial interface ITextToSpeechClient
/// Synthesize speech
/// Synthesize speech from text in a single request. Pass `text` + `voice_id`, get back binary audio.
/// Pick the model with the `model` body parameter: default `lightning_v3.1`, or `lightning_v3.1_pro` for the Pro pool. Other request parameters are identical across models.
- /// **Language behaviour on `lightning_v3.1_pro`:** pass `language: en` for UK + American accented English, pass `language: hi` for Indian accented English + Hindi (code-switching), or omit `language` to default to `en + hi` (mixed Indian + Western English coverage). Pro supports 31 languages total (10 Indic, 8 Asian & Middle Eastern, 13 European including Dutch and Swedish). Pass the matching ISO 639-1 code (e.g. `ta`, `de`, `ja`) with a Pro voice from that language, or use `auto` to route across all supported languages with any English or Hindi voice. See the [Lightning v3.1 Pro model card](/models/model-cards/text-to-speech/lightning-v-3-1-pro#supported-languages) for the full list. On `lightning_v3.1` the model accepts 20 language codes (10 European + 10 Indic) plus `auto`; the trained voice catalog covers 12 of those directly.
+ /// **Language behaviour on `lightning_v3.1_pro`:** pass `language: en` for UK + American accented English, pass `language: hi` for Indian accented English + Hindi (code-switching), or omit `language` to default to `en + hi` (mixed Indian + Western English coverage). Pro supports 31 languages total (10 Indic, 8 Asian & Middle Eastern, 13 European including Dutch and Swedish). Pass the matching ISO 639-1 code (e.g. `ta`, `de`, `ja`) with a Pro voice from that language, or use `auto` to route across all supported languages with any English or Hindi voice. See the [Lightning v3.1 Pro model card](/model-cards/text-to-speech/lightning-v-3-1-pro#supported-languages) for the full list. On `lightning_v3.1` the model accepts 20 language codes (10 European + 10 Indic) plus `auto`; the trained voice catalog covers 12 of those directly.
/// ## When to use this
/// - **Use this** for short utterances you can render before playback (notifications, prompts, batch jobs, audio file generation).
/// - **Use `/waves/v1/tts/live`** when you want playback to start before the full audio is ready (long passages, latency-sensitive apps).
@@ -105,7 +105,7 @@ public partial interface ITextToSpeechClient
/// Synthesize speech
/// Synthesize speech from text in a single request. Pass `text` + `voice_id`, get back binary audio.
/// Pick the model with the `model` body parameter: default `lightning_v3.1`, or `lightning_v3.1_pro` for the Pro pool. Other request parameters are identical across models.
- /// **Language behaviour on `lightning_v3.1_pro`:** pass `language: en` for UK + American accented English, pass `language: hi` for Indian accented English + Hindi (code-switching), or omit `language` to default to `en + hi` (mixed Indian + Western English coverage). Pro supports 31 languages total (10 Indic, 8 Asian & Middle Eastern, 13 European including Dutch and Swedish). Pass the matching ISO 639-1 code (e.g. `ta`, `de`, `ja`) with a Pro voice from that language, or use `auto` to route across all supported languages with any English or Hindi voice. See the [Lightning v3.1 Pro model card](/models/model-cards/text-to-speech/lightning-v-3-1-pro#supported-languages) for the full list. On `lightning_v3.1` the model accepts 20 language codes (10 European + 10 Indic) plus `auto`; the trained voice catalog covers 12 of those directly.
+ /// **Language behaviour on `lightning_v3.1_pro`:** pass `language: en` for UK + American accented English, pass `language: hi` for Indian accented English + Hindi (code-switching), or omit `language` to default to `en + hi` (mixed Indian + Western English coverage). Pro supports 31 languages total (10 Indic, 8 Asian & Middle Eastern, 13 European including Dutch and Swedish). Pass the matching ISO 639-1 code (e.g. `ta`, `de`, `ja`) with a Pro voice from that language, or use `auto` to route across all supported languages with any English or Hindi voice. See the [Lightning v3.1 Pro model card](/model-cards/text-to-speech/lightning-v-3-1-pro#supported-languages) for the full list. On `lightning_v3.1` the model accepts 20 language codes (10 European + 10 Indic) plus `auto`; the trained voice catalog covers 12 of those directly.
/// ## When to use this
/// - **Use this** for short utterances you can render before playback (notifications, prompts, batch jobs, audio file generation).
/// - **Use `/waves/v1/tts/live`** when you want playback to start before the full audio is ready (long passages, latency-sensitive apps).
@@ -202,7 +202,7 @@ public partial interface ITextToSpeechClient
/// Synthesize speech
/// Synthesize speech from text in a single request. Pass `text` + `voice_id`, get back binary audio.
/// Pick the model with the `model` body parameter: default `lightning_v3.1`, or `lightning_v3.1_pro` for the Pro pool. Other request parameters are identical across models.
- /// **Language behaviour on `lightning_v3.1_pro`:** pass `language: en` for UK + American accented English, pass `language: hi` for Indian accented English + Hindi (code-switching), or omit `language` to default to `en + hi` (mixed Indian + Western English coverage). Pro supports 31 languages total (10 Indic, 8 Asian & Middle Eastern, 13 European including Dutch and Swedish). Pass the matching ISO 639-1 code (e.g. `ta`, `de`, `ja`) with a Pro voice from that language, or use `auto` to route across all supported languages with any English or Hindi voice. See the [Lightning v3.1 Pro model card](/models/model-cards/text-to-speech/lightning-v-3-1-pro#supported-languages) for the full list. On `lightning_v3.1` the model accepts 20 language codes (10 European + 10 Indic) plus `auto`; the trained voice catalog covers 12 of those directly.
+ /// **Language behaviour on `lightning_v3.1_pro`:** pass `language: en` for UK + American accented English, pass `language: hi` for Indian accented English + Hindi (code-switching), or omit `language` to default to `en + hi` (mixed Indian + Western English coverage). Pro supports 31 languages total (10 Indic, 8 Asian & Middle Eastern, 13 European including Dutch and Swedish). Pass the matching ISO 639-1 code (e.g. `ta`, `de`, `ja`) with a Pro voice from that language, or use `auto` to route across all supported languages with any English or Hindi voice. See the [Lightning v3.1 Pro model card](/model-cards/text-to-speech/lightning-v-3-1-pro#supported-languages) for the full list. On `lightning_v3.1` the model accepts 20 language codes (10 European + 10 Indic) plus `auto`; the trained voice catalog covers 12 of those directly.
/// ## When to use this
/// - **Use this** for short utterances you can render before playback (notifications, prompts, batch jobs, audio file generation).
/// - **Use `/waves/v1/tts/live`** when you want playback to start before the full audio is ready (long passages, latency-sensitive apps).
@@ -299,7 +299,7 @@ public partial interface ITextToSpeechClient
/// Synthesize speech
/// Synthesize speech from text in a single request. Pass `text` + `voice_id`, get back binary audio.
/// Pick the model with the `model` body parameter: default `lightning_v3.1`, or `lightning_v3.1_pro` for the Pro pool. Other request parameters are identical across models.
- /// **Language behaviour on `lightning_v3.1_pro`:** pass `language: en` for UK + American accented English, pass `language: hi` for Indian accented English + Hindi (code-switching), or omit `language` to default to `en + hi` (mixed Indian + Western English coverage). Pro supports 31 languages total (10 Indic, 8 Asian & Middle Eastern, 13 European including Dutch and Swedish). Pass the matching ISO 639-1 code (e.g. `ta`, `de`, `ja`) with a Pro voice from that language, or use `auto` to route across all supported languages with any English or Hindi voice. See the [Lightning v3.1 Pro model card](/models/model-cards/text-to-speech/lightning-v-3-1-pro#supported-languages) for the full list. On `lightning_v3.1` the model accepts 20 language codes (10 European + 10 Indic) plus `auto`; the trained voice catalog covers 12 of those directly.
+ /// **Language behaviour on `lightning_v3.1_pro`:** pass `language: en` for UK + American accented English, pass `language: hi` for Indian accented English + Hindi (code-switching), or omit `language` to default to `en + hi` (mixed Indian + Western English coverage). Pro supports 31 languages total (10 Indic, 8 Asian & Middle Eastern, 13 European including Dutch and Swedish). Pass the matching ISO 639-1 code (e.g. `ta`, `de`, `ja`) with a Pro voice from that language, or use `auto` to route across all supported languages with any English or Hindi voice. See the [Lightning v3.1 Pro model card](/model-cards/text-to-speech/lightning-v-3-1-pro#supported-languages) for the full list. On `lightning_v3.1` the model accepts 20 language codes (10 European + 10 Indic) plus `auto`; the trained voice catalog covers 12 of those directly.
/// ## When to use this
/// - **Use this** for short utterances you can render before playback (notifications, prompts, batch jobs, audio file generation).
/// - **Use `/waves/v1/tts/live`** when you want playback to start before the full audio is ready (long passages, latency-sensitive apps).
@@ -395,7 +395,7 @@ public partial interface ITextToSpeechClient
/// - `lightning_v3.1` (default) — standard Lightning v3.1.
/// - `lightning_v3.1_pro` — Lightning v3.1 Pro pool. Improved audio
/// quality and naturalness, with a curated voice catalog. See the
- /// [Lightning v3.1 Pro model card](/models/model-cards/text-to-speech/lightning-v-3-1-pro)
+ /// [Lightning v3.1 Pro model card](/model-cards/text-to-speech/lightning-v-3-1-pro)
/// for supported voice IDs.
/// Same concurrency and latency profile across both. Other request
/// parameters behave identically.
@@ -482,7 +482,7 @@ public partial interface ITextToSpeechClient
/// wrong-glyph `x`/`X`) fire glued or spaced (`5x3`, `5 x 3`).
/// The ambiguous `-` `–` `−` and `/` fire only when
/// space-padded, so `5-3` stays a range and `1/2` stays a
- /// fraction. See [Math notation](/models/documentation/text-to-speech-lightning/math-notation)
+ /// fraction. See [Math notation](/models/text-to-speech/math-notation)
/// for the full lexicon, known limitations (product dimensions,
/// `24x7` idiom, vehicle-reg codes), and EU-language
/// localizations.
@@ -499,7 +499,7 @@ public partial interface ITextToSpeechClient
/// `action: "flag"` synthesizes normally and records the match.
/// Matching is whole-word, not substring. If no verdict is returned
/// the request fails open and the audio is synthesized unfiltered.
- /// See [Content filter](/models/documentation/text-to-speech-lightning/content-filter).
+ /// See [Content filter](/models/text-to-speech/content-filter).
///
///
/// Format of the returned audio. `pcm` is the lowest-latency option
@@ -513,7 +513,7 @@ public partial interface ITextToSpeechClient
/// The IDs of the pronunciation dictionaries to use for speech generation. Available on both `lightning_v3.1` and `lightning_v3.1_pro`.
///
///
- /// **WebSocket-only feature.** Accepted on this endpoint but ignored — no per-word timing information is returned in the sync HTTP or SSE response shape. To receive `status: "word_timestamp"` frames with per-word `{ id, word, start, end }` data, use the WebSocket endpoint `wss://api.smallest.ai/waves/v1/tts/live`. See [Word-level timestamps](/models/documentation/text-to-speech-lightning/word-timestamps).
+ /// **WebSocket-only feature.** Accepted on this endpoint but ignored — no per-word timing information is returned in the sync HTTP or SSE response shape. To receive `status: "word_timestamp"` frames with per-word `{ id, word, start, end }` data, use the WebSocket endpoint `wss://api.smallest.ai/waves/v1/tts/live`. See [Word-level timestamps](/models/text-to-speech/word-timestamps).
/// Default Value: false
///
///
diff --git a/src/libs/SmallestAI/Generated/SmallestAI.ITextToSpeechClient.SynthesizeSpeechSse.g.cs b/src/libs/SmallestAI/Generated/SmallestAI.ITextToSpeechClient.SynthesizeSpeechSse.g.cs
index c463307..983f4be 100644
--- a/src/libs/SmallestAI/Generated/SmallestAI.ITextToSpeechClient.SynthesizeSpeechSse.g.cs
+++ b/src/libs/SmallestAI/Generated/SmallestAI.ITextToSpeechClient.SynthesizeSpeechSse.g.cs
@@ -9,7 +9,7 @@ public partial interface ITextToSpeechClient
/// Synthesize speech and stream the audio back over Server-Sent Events. Same body as `/waves/v1/tts` — the only difference is the response is a stream of base64-encoded PCM chunks instead of one binary blob.
/// Pick the model with the `model` body parameter, same as the sync route.
/// <Note>
- /// **The same URL serves the WebSocket endpoint.** `wss://api.smallest.ai/waves/v1/tts/live` accepts a WebSocket upgrade for streaming-text scenarios (LLM token streams, live captioning). The HTTP `POST` documented on this page returns SSE; use `wss://` to use the WebSocket protocol instead. See the [WebSocket reference](/models/documentation/text-to-speech-lightning/streaming).
+ /// **The same URL serves the WebSocket endpoint.** `wss://api.smallest.ai/waves/v1/tts/live` accepts a WebSocket upgrade for streaming-text scenarios (LLM token streams, live captioning). The HTTP `POST` documented on this page returns SSE; use `wss://` to use the WebSocket protocol instead. See the [WebSocket reference](/models/text-to-speech/streaming).
/// </Note>
/// ## When to use this
/// - **Use this** when you want playback to start before synthesis is complete — long passages, latency-sensitive UI, live narration.
@@ -54,7 +54,7 @@ public partial interface ITextToSpeechClient
/// Synthesize speech and stream the audio back over Server-Sent Events. Same body as `/waves/v1/tts` — the only difference is the response is a stream of base64-encoded PCM chunks instead of one binary blob.
/// Pick the model with the `model` body parameter, same as the sync route.
/// <Note>
- /// **The same URL serves the WebSocket endpoint.** `wss://api.smallest.ai/waves/v1/tts/live` accepts a WebSocket upgrade for streaming-text scenarios (LLM token streams, live captioning). The HTTP `POST` documented on this page returns SSE; use `wss://` to use the WebSocket protocol instead. See the [WebSocket reference](/models/documentation/text-to-speech-lightning/streaming).
+ /// **The same URL serves the WebSocket endpoint.** `wss://api.smallest.ai/waves/v1/tts/live` accepts a WebSocket upgrade for streaming-text scenarios (LLM token streams, live captioning). The HTTP `POST` documented on this page returns SSE; use `wss://` to use the WebSocket protocol instead. See the [WebSocket reference](/models/text-to-speech/streaming).
/// </Note>
/// ## When to use this
/// - **Use this** when you want playback to start before synthesis is complete — long passages, latency-sensitive UI, live narration.
@@ -98,7 +98,7 @@ public partial interface ITextToSpeechClient
/// - `lightning_v3.1` (default) — standard Lightning v3.1.
/// - `lightning_v3.1_pro` — Lightning v3.1 Pro pool. Improved audio
/// quality and naturalness, with a curated voice catalog. See the
- /// [Lightning v3.1 Pro model card](/models/model-cards/text-to-speech/lightning-v-3-1-pro)
+ /// [Lightning v3.1 Pro model card](/model-cards/text-to-speech/lightning-v-3-1-pro)
/// for supported voice IDs.
/// Same concurrency and latency profile across both. Other request
/// parameters behave identically.
@@ -185,7 +185,7 @@ public partial interface ITextToSpeechClient
/// wrong-glyph `x`/`X`) fire glued or spaced (`5x3`, `5 x 3`).
/// The ambiguous `-` `–` `−` and `/` fire only when
/// space-padded, so `5-3` stays a range and `1/2` stays a
- /// fraction. See [Math notation](/models/documentation/text-to-speech-lightning/math-notation)
+ /// fraction. See [Math notation](/models/text-to-speech/math-notation)
/// for the full lexicon, known limitations (product dimensions,
/// `24x7` idiom, vehicle-reg codes), and EU-language
/// localizations.
@@ -202,7 +202,7 @@ public partial interface ITextToSpeechClient
/// `action: "flag"` synthesizes normally and records the match.
/// Matching is whole-word, not substring. If no verdict is returned
/// the request fails open and the audio is synthesized unfiltered.
- /// See [Content filter](/models/documentation/text-to-speech-lightning/content-filter).
+ /// See [Content filter](/models/text-to-speech/content-filter).
///
///
/// Format of the returned audio. `pcm` is the lowest-latency option
@@ -216,7 +216,7 @@ public partial interface ITextToSpeechClient
/// The IDs of the pronunciation dictionaries to use for speech generation. Available on both `lightning_v3.1` and `lightning_v3.1_pro`.
///
///
- /// **WebSocket-only feature.** Accepted on this endpoint but ignored — no per-word timing information is returned in the sync HTTP or SSE response shape. To receive `status: "word_timestamp"` frames with per-word `{ id, word, start, end }` data, use the WebSocket endpoint `wss://api.smallest.ai/waves/v1/tts/live`. See [Word-level timestamps](/models/documentation/text-to-speech-lightning/word-timestamps).
+ /// **WebSocket-only feature.** Accepted on this endpoint but ignored — no per-word timing information is returned in the sync HTTP or SSE response shape. To receive `status: "word_timestamp"` frames with per-word `{ id, word, start, end }` data, use the WebSocket endpoint `wss://api.smallest.ai/waves/v1/tts/live`. See [Word-level timestamps](/models/text-to-speech/word-timestamps).
/// Default Value: false
///
///
diff --git a/src/libs/SmallestAI/Generated/SmallestAI.IVoicesClient.GetWavesVoices.g.cs b/src/libs/SmallestAI/Generated/SmallestAI.IVoicesClient.GetWavesVoices.g.cs
index dda4fce..ab75c0d 100644
--- a/src/libs/SmallestAI/Generated/SmallestAI.IVoicesClient.GetWavesVoices.g.cs
+++ b/src/libs/SmallestAI/Generated/SmallestAI.IVoicesClient.GetWavesVoices.g.cs
@@ -10,8 +10,8 @@ public partial interface IVoicesClient
/// - `lightning-v3.1` — the Standard catalog. Supports voice cloning; 20 language codes.
/// - `lightning-v3.1-pro` — the Pro catalog. Curated set across American, British, and Indian accents plus 29 additional languages. Same latency and concurrency as Standard, on dedicated inference.
/// The endpoint is pool-scoped: `/waves/v1/lightning-v3.1/get_voices` returns Standard voices only; `/waves/v1/lightning-v3.1-pro/get_voices` returns Pro voices only. Call one or both depending on which pool you plan to use.
- /// Each voice carries tags (`language`, `accent`, `gender`, `age`, `emotions`, `usecases`). Filter client-side to find the voices that match a target language, accent, or use case. Pass the returned `voiceId` as `voice_id` on the unified [`POST /waves/v1/tts`](/models/api-reference/text-to-speech/synthesize-speech) route, together with `"model": "lightning_v3.1"` (Standard) or `"model": "lightning_v3.1_pro"` (Pro).
- /// For the canonical per-language voice list (with previews and recommended pairings), see the [Lightning v3.1](/models/model-cards/text-to-speech/lightning-v-3-1) and [Lightning v3.1 Pro](/models/model-cards/text-to-speech/lightning-v-3-1-pro) model cards.
+ /// Each voice carries tags (`language`, `accent`, `gender`, `age`, `emotions`, `usecases`). Filter client-side to find the voices that match a target language, accent, or use case. Pass the returned `voiceId` as `voice_id` on the unified [`POST /waves/v1/tts`](/api-reference/models/text-to-speech/synthesize-speech) route, together with `"model": "lightning_v3.1"` (Standard) or `"model": "lightning_v3.1_pro"` (Pro).
+ /// For the canonical per-language voice list (with previews and recommended pairings), see the [Lightning v3.1](/model-cards/text-to-speech/lightning-v-3-1) and [Lightning v3.1 Pro](/model-cards/text-to-speech/lightning-v-3-1-pro) model cards.
///
///
/// Default Value: lightning-v3.1
@@ -29,8 +29,8 @@ public partial interface IVoicesClient
/// - `lightning-v3.1` — the Standard catalog. Supports voice cloning; 20 language codes.
/// - `lightning-v3.1-pro` — the Pro catalog. Curated set across American, British, and Indian accents plus 29 additional languages. Same latency and concurrency as Standard, on dedicated inference.
/// The endpoint is pool-scoped: `/waves/v1/lightning-v3.1/get_voices` returns Standard voices only; `/waves/v1/lightning-v3.1-pro/get_voices` returns Pro voices only. Call one or both depending on which pool you plan to use.
- /// Each voice carries tags (`language`, `accent`, `gender`, `age`, `emotions`, `usecases`). Filter client-side to find the voices that match a target language, accent, or use case. Pass the returned `voiceId` as `voice_id` on the unified [`POST /waves/v1/tts`](/models/api-reference/text-to-speech/synthesize-speech) route, together with `"model": "lightning_v3.1"` (Standard) or `"model": "lightning_v3.1_pro"` (Pro).
- /// For the canonical per-language voice list (with previews and recommended pairings), see the [Lightning v3.1](/models/model-cards/text-to-speech/lightning-v-3-1) and [Lightning v3.1 Pro](/models/model-cards/text-to-speech/lightning-v-3-1-pro) model cards.
+ /// Each voice carries tags (`language`, `accent`, `gender`, `age`, `emotions`, `usecases`). Filter client-side to find the voices that match a target language, accent, or use case. Pass the returned `voiceId` as `voice_id` on the unified [`POST /waves/v1/tts`](/api-reference/models/text-to-speech/synthesize-speech) route, together with `"model": "lightning_v3.1"` (Standard) or `"model": "lightning_v3.1_pro"` (Pro).
+ /// For the canonical per-language voice list (with previews and recommended pairings), see the [Lightning v3.1](/model-cards/text-to-speech/lightning-v-3-1) and [Lightning v3.1 Pro](/model-cards/text-to-speech/lightning-v-3-1-pro) model cards.
///
///
/// Default Value: lightning-v3.1
diff --git a/src/libs/SmallestAI/Generated/SmallestAI.JsonConverters.SttErrorResponseErrors.g.cs b/src/libs/SmallestAI/Generated/SmallestAI.JsonConverters.SttErrorResponseErrors.g.cs
new file mode 100644
index 0000000..d5b7c57
--- /dev/null
+++ b/src/libs/SmallestAI/Generated/SmallestAI.JsonConverters.SttErrorResponseErrors.g.cs
@@ -0,0 +1,162 @@
+#nullable enable
+#pragma warning disable CS0618 // Type or member is obsolete
+
+namespace SmallestAI.JsonConverters
+{
+ ///
+ public class SttErrorResponseErrorsJsonConverter : global::System.Text.Json.Serialization.JsonConverter
+ {
+ ///
+ public override global::SmallestAI.SttErrorResponseErrors Read(
+ ref global::System.Text.Json.Utf8JsonReader reader,
+ global::System.Type typeToConvert,
+ global::System.Text.Json.JsonSerializerOptions options)
+ {
+ options = options ?? throw new global::System.ArgumentNullException(nameof(options));
+ var typeInfoResolver = options.TypeInfoResolver ?? throw new global::System.InvalidOperationException("TypeInfoResolver is not set.");
+
+
+ using var __jsonDocument = global::System.Text.Json.JsonDocument.ParseValue(ref reader);
+ var __rawJson = __jsonDocument.RootElement.GetRawText();
+ var __jsonProps = new global::System.Collections.Generic.HashSet();
+ if (__jsonDocument.RootElement.ValueKind == global::System.Text.Json.JsonValueKind.Object)
+ {
+ foreach (var __jsonProp in __jsonDocument.RootElement.EnumerateObject())
+ {
+ __jsonProps.Add(__jsonProp.Name);
+ }
+ }
+
+ var __score0 = 0;
+ {
+ var __ti = typeInfoResolver.GetTypeInfo(typeof(global::System.Collections.Generic.IList), options);
+ if (__ti != null && __ti.Kind == global::System.Text.Json.Serialization.Metadata.JsonTypeInfoKind.Object)
+ {
+ foreach (var __prop in __ti.Properties)
+ {
+ if (__jsonProps.Contains(__prop.Name)) __score0++;
+ }
+ }
+ }
+ var __score1 = 0;
+ {
+ var __ti = typeInfoResolver.GetTypeInfo(typeof(string), options);
+ if (__ti != null && __ti.Kind == global::System.Text.Json.Serialization.Metadata.JsonTypeInfoKind.Object)
+ {
+ foreach (var __prop in __ti.Properties)
+ {
+ if (__jsonProps.Contains(__prop.Name)) __score1++;
+ }
+ }
+ }
+ var __bestScore = 0;
+ var __bestIndex = -1;
+ if (__score0 > __bestScore) { __bestScore = __score0; __bestIndex = 0; }
+ if (__score1 > __bestScore) { __bestScore = __score1; __bestIndex = 1; }
+
+ global::System.Collections.Generic.IList? sttErrorResponseErrors0 = default;
+ string? sttErrorResponseErrorsVariant2 = default;
+ if (__bestIndex >= 0)
+ {
+ if (__bestIndex == 0)
+ {
+ try
+ {
+
+ var typeInfo = typeInfoResolver.GetTypeInfo(typeof(global::System.Collections.Generic.IList), options) as global::System.Text.Json.Serialization.Metadata.JsonTypeInfo> ??
+ throw new global::System.InvalidOperationException($"Cannot get type info for {typeof(global::System.Collections.Generic.IList).Name}");
+ sttErrorResponseErrors0 = global::System.Text.Json.JsonSerializer.Deserialize(__rawJson, typeInfo);
+ }
+ catch (global::System.Text.Json.JsonException)
+ {
+ }
+ catch (global::System.InvalidOperationException)
+ {
+ }
+ }
+
+ else if (__bestIndex == 1)
+ {
+ try
+ {
+
+ var typeInfo = typeInfoResolver.GetTypeInfo(typeof(string), options) as global::System.Text.Json.Serialization.Metadata.JsonTypeInfo ??
+ throw new global::System.InvalidOperationException($"Cannot get type info for {typeof(string).Name}");
+ sttErrorResponseErrorsVariant2 = global::System.Text.Json.JsonSerializer.Deserialize(__rawJson, typeInfo);
+ }
+ catch (global::System.Text.Json.JsonException)
+ {
+ }
+ catch (global::System.InvalidOperationException)
+ {
+ }
+ }
+ }
+
+ if (sttErrorResponseErrors0 == null && sttErrorResponseErrorsVariant2 == null)
+ {
+ try
+ {
+
+ var typeInfo = typeInfoResolver.GetTypeInfo(typeof(global::System.Collections.Generic.IList), options) as global::System.Text.Json.Serialization.Metadata.JsonTypeInfo> ??
+ throw new global::System.InvalidOperationException($"Cannot get type info for {typeof(global::System.Collections.Generic.IList).Name}");
+ sttErrorResponseErrors0 = global::System.Text.Json.JsonSerializer.Deserialize(__rawJson, typeInfo);
+ }
+ catch (global::System.Text.Json.JsonException)
+ {
+ }
+ catch (global::System.InvalidOperationException)
+ {
+ }
+ }
+
+ if (sttErrorResponseErrors0 == null && sttErrorResponseErrorsVariant2 == null)
+ {
+ try
+ {
+
+ var typeInfo = typeInfoResolver.GetTypeInfo(typeof(string), options) as global::System.Text.Json.Serialization.Metadata.JsonTypeInfo ??
+ throw new global::System.InvalidOperationException($"Cannot get type info for {typeof(string).Name}");
+ sttErrorResponseErrorsVariant2 = global::System.Text.Json.JsonSerializer.Deserialize(__rawJson, typeInfo);
+ }
+ catch (global::System.Text.Json.JsonException)
+ {
+ }
+ catch (global::System.InvalidOperationException)
+ {
+ }
+ }
+
+ var __value = new global::SmallestAI.SttErrorResponseErrors(
+ sttErrorResponseErrors0,
+
+ sttErrorResponseErrorsVariant2
+ );
+
+ return __value;
+ }
+
+ ///
+ public override void Write(
+ global::System.Text.Json.Utf8JsonWriter writer,
+ global::SmallestAI.SttErrorResponseErrors value,
+ global::System.Text.Json.JsonSerializerOptions options)
+ {
+ options = options ?? throw new global::System.ArgumentNullException(nameof(options));
+ var typeInfoResolver = options.TypeInfoResolver ?? throw new global::System.InvalidOperationException("TypeInfoResolver is not set.");
+
+ if (value.IsSttErrorResponseErrors0)
+ {
+ var typeInfo = typeInfoResolver.GetTypeInfo(typeof(global::System.Collections.Generic.IList), options) as global::System.Text.Json.Serialization.Metadata.JsonTypeInfo?> ??
+ throw new global::System.InvalidOperationException($"Cannot get type info for {typeof(global::System.Collections.Generic.IList).Name}");
+ global::System.Text.Json.JsonSerializer.Serialize(writer, value.PickSttErrorResponseErrors0(), typeInfo);
+ }
+ else if (value.IsSttErrorResponseErrorsVariant2)
+ {
+ var typeInfo = typeInfoResolver.GetTypeInfo(typeof(string), options) as global::System.Text.Json.Serialization.Metadata.JsonTypeInfo ??
+ throw new global::System.InvalidOperationException($"Cannot get type info for {typeof(string).Name}");
+ global::System.Text.Json.JsonSerializer.Serialize(writer, value.PickSttErrorResponseErrorsVariant2(), typeInfo);
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/libs/SmallestAI/Generated/SmallestAI.JsonConverters.SttErrorResponseStatus.g.cs b/src/libs/SmallestAI/Generated/SmallestAI.JsonConverters.SttErrorResponseStatus.g.cs
new file mode 100644
index 0000000..28b0adc
--- /dev/null
+++ b/src/libs/SmallestAI/Generated/SmallestAI.JsonConverters.SttErrorResponseStatus.g.cs
@@ -0,0 +1,53 @@
+#nullable enable
+
+namespace SmallestAI.JsonConverters
+{
+ ///
+ public sealed class SttErrorResponseStatusJsonConverter : global::System.Text.Json.Serialization.JsonConverter
+ {
+ ///
+ public override global::SmallestAI.SttErrorResponseStatus Read(
+ ref global::System.Text.Json.Utf8JsonReader reader,
+ global::System.Type typeToConvert,
+ global::System.Text.Json.JsonSerializerOptions options)
+ {
+ switch (reader.TokenType)
+ {
+ case global::System.Text.Json.JsonTokenType.String:
+ {
+ var stringValue = reader.GetString();
+ if (stringValue != null)
+ {
+ return global::SmallestAI.SttErrorResponseStatusExtensions.ToEnum(stringValue) ?? default;
+ }
+
+ break;
+ }
+ case global::System.Text.Json.JsonTokenType.Number:
+ {
+ var numValue = reader.GetInt32();
+ return (global::SmallestAI.SttErrorResponseStatus)numValue;
+ }
+ case global::System.Text.Json.JsonTokenType.Null:
+ {
+ return default(global::SmallestAI.SttErrorResponseStatus);
+ }
+ default:
+ throw new global::System.ArgumentOutOfRangeException(nameof(reader));
+ }
+
+ return default;
+ }
+
+ ///
+ public override void Write(
+ global::System.Text.Json.Utf8JsonWriter writer,
+ global::SmallestAI.SttErrorResponseStatus value,
+ global::System.Text.Json.JsonSerializerOptions options)
+ {
+ writer = writer ?? throw new global::System.ArgumentNullException(nameof(writer));
+
+ writer.WriteStringValue(global::SmallestAI.SttErrorResponseStatusExtensions.ToValueString(value));
+ }
+ }
+}
diff --git a/src/libs/SmallestAI/Generated/SmallestAI.JsonConverters.SttErrorResponseStatusNullable.g.cs b/src/libs/SmallestAI/Generated/SmallestAI.JsonConverters.SttErrorResponseStatusNullable.g.cs
new file mode 100644
index 0000000..369cbf4
--- /dev/null
+++ b/src/libs/SmallestAI/Generated/SmallestAI.JsonConverters.SttErrorResponseStatusNullable.g.cs
@@ -0,0 +1,60 @@
+#nullable enable
+
+namespace SmallestAI.JsonConverters
+{
+ ///
+ public sealed class SttErrorResponseStatusNullableJsonConverter : global::System.Text.Json.Serialization.JsonConverter
+ {
+ ///
+ public override global::SmallestAI.SttErrorResponseStatus? Read(
+ ref global::System.Text.Json.Utf8JsonReader reader,
+ global::System.Type typeToConvert,
+ global::System.Text.Json.JsonSerializerOptions options)
+ {
+ switch (reader.TokenType)
+ {
+ case global::System.Text.Json.JsonTokenType.String:
+ {
+ var stringValue = reader.GetString();
+ if (stringValue != null)
+ {
+ return global::SmallestAI.SttErrorResponseStatusExtensions.ToEnum(stringValue);
+ }
+
+ break;
+ }
+ case global::System.Text.Json.JsonTokenType.Number:
+ {
+ var numValue = reader.GetInt32();
+ return (global::SmallestAI.SttErrorResponseStatus)numValue;
+ }
+ case global::System.Text.Json.JsonTokenType.Null:
+ {
+ return default(global::SmallestAI.SttErrorResponseStatus?);
+ }
+ default:
+ throw new global::System.ArgumentOutOfRangeException(nameof(reader));
+ }
+
+ return default;
+ }
+
+ ///
+ public override void Write(
+ global::System.Text.Json.Utf8JsonWriter writer,
+ global::SmallestAI.SttErrorResponseStatus? value,
+ global::System.Text.Json.JsonSerializerOptions options)
+ {
+ writer = writer ?? throw new global::System.ArgumentNullException(nameof(writer));
+
+ if (value == null)
+ {
+ writer.WriteNullValue();
+ }
+ else
+ {
+ writer.WriteStringValue(global::SmallestAI.SttErrorResponseStatusExtensions.ToValueString(value.Value));
+ }
+ }
+ }
+}
diff --git a/src/libs/SmallestAI/Generated/SmallestAI.JsonConverters.WavesV1SttPostParametersDiarize.g.cs b/src/libs/SmallestAI/Generated/SmallestAI.JsonConverters.WavesV1SttPostParametersDiarize.g.cs
new file mode 100644
index 0000000..3f5c9eb
--- /dev/null
+++ b/src/libs/SmallestAI/Generated/SmallestAI.JsonConverters.WavesV1SttPostParametersDiarize.g.cs
@@ -0,0 +1,53 @@
+#nullable enable
+
+namespace SmallestAI.JsonConverters
+{
+ ///
+ public sealed class WavesV1SttPostParametersDiarizeJsonConverter : global::System.Text.Json.Serialization.JsonConverter
+ {
+ ///
+ public override global::SmallestAI.WavesV1SttPostParametersDiarize Read(
+ ref global::System.Text.Json.Utf8JsonReader reader,
+ global::System.Type typeToConvert,
+ global::System.Text.Json.JsonSerializerOptions options)
+ {
+ switch (reader.TokenType)
+ {
+ case global::System.Text.Json.JsonTokenType.String:
+ {
+ var stringValue = reader.GetString();
+ if (stringValue != null)
+ {
+ return global::SmallestAI.WavesV1SttPostParametersDiarizeExtensions.ToEnum(stringValue) ?? default;
+ }
+
+ break;
+ }
+ case global::System.Text.Json.JsonTokenType.Number:
+ {
+ var numValue = reader.GetInt32();
+ return (global::SmallestAI.WavesV1SttPostParametersDiarize)numValue;
+ }
+ case global::System.Text.Json.JsonTokenType.Null:
+ {
+ return default(global::SmallestAI.WavesV1SttPostParametersDiarize);
+ }
+ default:
+ throw new global::System.ArgumentOutOfRangeException(nameof(reader));
+ }
+
+ return default;
+ }
+
+ ///
+ public override void Write(
+ global::System.Text.Json.Utf8JsonWriter writer,
+ global::SmallestAI.WavesV1SttPostParametersDiarize value,
+ global::System.Text.Json.JsonSerializerOptions options)
+ {
+ writer = writer ?? throw new global::System.ArgumentNullException(nameof(writer));
+
+ writer.WriteStringValue(global::SmallestAI.WavesV1SttPostParametersDiarizeExtensions.ToValueString(value));
+ }
+ }
+}
diff --git a/src/libs/SmallestAI/Generated/SmallestAI.JsonConverters.WavesV1SttPostParametersDiarizeNullable.g.cs b/src/libs/SmallestAI/Generated/SmallestAI.JsonConverters.WavesV1SttPostParametersDiarizeNullable.g.cs
new file mode 100644
index 0000000..8b4dce8
--- /dev/null
+++ b/src/libs/SmallestAI/Generated/SmallestAI.JsonConverters.WavesV1SttPostParametersDiarizeNullable.g.cs
@@ -0,0 +1,60 @@
+#nullable enable
+
+namespace SmallestAI.JsonConverters
+{
+ ///
+ public sealed class WavesV1SttPostParametersDiarizeNullableJsonConverter : global::System.Text.Json.Serialization.JsonConverter
+ {
+ ///
+ public override global::SmallestAI.WavesV1SttPostParametersDiarize? Read(
+ ref global::System.Text.Json.Utf8JsonReader reader,
+ global::System.Type typeToConvert,
+ global::System.Text.Json.JsonSerializerOptions options)
+ {
+ switch (reader.TokenType)
+ {
+ case global::System.Text.Json.JsonTokenType.String:
+ {
+ var stringValue = reader.GetString();
+ if (stringValue != null)
+ {
+ return global::SmallestAI.WavesV1SttPostParametersDiarizeExtensions.ToEnum(stringValue);
+ }
+
+ break;
+ }
+ case global::System.Text.Json.JsonTokenType.Number:
+ {
+ var numValue = reader.GetInt32();
+ return (global::SmallestAI.WavesV1SttPostParametersDiarize)numValue;
+ }
+ case global::System.Text.Json.JsonTokenType.Null:
+ {
+ return default(global::SmallestAI.WavesV1SttPostParametersDiarize?);
+ }
+ default:
+ throw new global::System.ArgumentOutOfRangeException(nameof(reader));
+ }
+
+ return default;
+ }
+
+ ///
+ public override void Write(
+ global::System.Text.Json.Utf8JsonWriter writer,
+ global::SmallestAI.WavesV1SttPostParametersDiarize? value,
+ global::System.Text.Json.JsonSerializerOptions options)
+ {
+ writer = writer ?? throw new global::System.ArgumentNullException(nameof(writer));
+
+ if (value == null)
+ {
+ writer.WriteNullValue();
+ }
+ else
+ {
+ writer.WriteStringValue(global::SmallestAI.WavesV1SttPostParametersDiarizeExtensions.ToValueString(value.Value));
+ }
+ }
+ }
+}
diff --git a/src/libs/SmallestAI/Generated/SmallestAI.JsonConverters.WavesV1SttPostParametersWordTimestamps.g.cs b/src/libs/SmallestAI/Generated/SmallestAI.JsonConverters.WavesV1SttPostParametersWordTimestamps.g.cs
new file mode 100644
index 0000000..98c649b
--- /dev/null
+++ b/src/libs/SmallestAI/Generated/SmallestAI.JsonConverters.WavesV1SttPostParametersWordTimestamps.g.cs
@@ -0,0 +1,53 @@
+#nullable enable
+
+namespace SmallestAI.JsonConverters
+{
+ ///
+ public sealed class WavesV1SttPostParametersWordTimestampsJsonConverter : global::System.Text.Json.Serialization.JsonConverter
+ {
+ ///
+ public override global::SmallestAI.WavesV1SttPostParametersWordTimestamps Read(
+ ref global::System.Text.Json.Utf8JsonReader reader,
+ global::System.Type typeToConvert,
+ global::System.Text.Json.JsonSerializerOptions options)
+ {
+ switch (reader.TokenType)
+ {
+ case global::System.Text.Json.JsonTokenType.String:
+ {
+ var stringValue = reader.GetString();
+ if (stringValue != null)
+ {
+ return global::SmallestAI.WavesV1SttPostParametersWordTimestampsExtensions.ToEnum(stringValue) ?? default;
+ }
+
+ break;
+ }
+ case global::System.Text.Json.JsonTokenType.Number:
+ {
+ var numValue = reader.GetInt32();
+ return (global::SmallestAI.WavesV1SttPostParametersWordTimestamps)numValue;
+ }
+ case global::System.Text.Json.JsonTokenType.Null:
+ {
+ return default(global::SmallestAI.WavesV1SttPostParametersWordTimestamps);
+ }
+ default:
+ throw new global::System.ArgumentOutOfRangeException(nameof(reader));
+ }
+
+ return default;
+ }
+
+ ///
+ public override void Write(
+ global::System.Text.Json.Utf8JsonWriter writer,
+ global::SmallestAI.WavesV1SttPostParametersWordTimestamps value,
+ global::System.Text.Json.JsonSerializerOptions options)
+ {
+ writer = writer ?? throw new global::System.ArgumentNullException(nameof(writer));
+
+ writer.WriteStringValue(global::SmallestAI.WavesV1SttPostParametersWordTimestampsExtensions.ToValueString(value));
+ }
+ }
+}
diff --git a/src/libs/SmallestAI/Generated/SmallestAI.JsonConverters.WavesV1SttPostParametersWordTimestampsNullable.g.cs b/src/libs/SmallestAI/Generated/SmallestAI.JsonConverters.WavesV1SttPostParametersWordTimestampsNullable.g.cs
new file mode 100644
index 0000000..62abf6b
--- /dev/null
+++ b/src/libs/SmallestAI/Generated/SmallestAI.JsonConverters.WavesV1SttPostParametersWordTimestampsNullable.g.cs
@@ -0,0 +1,60 @@
+#nullable enable
+
+namespace SmallestAI.JsonConverters
+{
+ ///
+ public sealed class WavesV1SttPostParametersWordTimestampsNullableJsonConverter : global::System.Text.Json.Serialization.JsonConverter
+ {
+ ///
+ public override global::SmallestAI.WavesV1SttPostParametersWordTimestamps? Read(
+ ref global::System.Text.Json.Utf8JsonReader reader,
+ global::System.Type typeToConvert,
+ global::System.Text.Json.JsonSerializerOptions options)
+ {
+ switch (reader.TokenType)
+ {
+ case global::System.Text.Json.JsonTokenType.String:
+ {
+ var stringValue = reader.GetString();
+ if (stringValue != null)
+ {
+ return global::SmallestAI.WavesV1SttPostParametersWordTimestampsExtensions.ToEnum(stringValue);
+ }
+
+ break;
+ }
+ case global::System.Text.Json.JsonTokenType.Number:
+ {
+ var numValue = reader.GetInt32();
+ return (global::SmallestAI.WavesV1SttPostParametersWordTimestamps)numValue;
+ }
+ case global::System.Text.Json.JsonTokenType.Null:
+ {
+ return default(global::SmallestAI.WavesV1SttPostParametersWordTimestamps?);
+ }
+ default:
+ throw new global::System.ArgumentOutOfRangeException(nameof(reader));
+ }
+
+ return default;
+ }
+
+ ///
+ public override void Write(
+ global::System.Text.Json.Utf8JsonWriter writer,
+ global::SmallestAI.WavesV1SttPostParametersWordTimestamps? value,
+ global::System.Text.Json.JsonSerializerOptions options)
+ {
+ writer = writer ?? throw new global::System.ArgumentNullException(nameof(writer));
+
+ if (value == null)
+ {
+ writer.WriteNullValue();
+ }
+ else
+ {
+ writer.WriteStringValue(global::SmallestAI.WavesV1SttPostParametersWordTimestampsExtensions.ToValueString(value.Value));
+ }
+ }
+ }
+}
diff --git a/src/libs/SmallestAI/Generated/SmallestAI.JsonSerializerContext.g.cs b/src/libs/SmallestAI/Generated/SmallestAI.JsonSerializerContext.g.cs
index 3aeac9b..df44ac1 100644
--- a/src/libs/SmallestAI/Generated/SmallestAI.JsonSerializerContext.g.cs
+++ b/src/libs/SmallestAI/Generated/SmallestAI.JsonSerializerContext.g.cs
@@ -91,6 +91,14 @@ namespace SmallestAI
typeof(global::SmallestAI.JsonConverters.WavesV1SttPostParametersLanguageNullableJsonConverter),
+ typeof(global::SmallestAI.JsonConverters.WavesV1SttPostParametersWordTimestampsJsonConverter),
+
+ typeof(global::SmallestAI.JsonConverters.WavesV1SttPostParametersWordTimestampsNullableJsonConverter),
+
+ typeof(global::SmallestAI.JsonConverters.WavesV1SttPostParametersDiarizeJsonConverter),
+
+ typeof(global::SmallestAI.JsonConverters.WavesV1SttPostParametersDiarizeNullableJsonConverter),
+
typeof(global::SmallestAI.JsonConverters.WavesV1SttPostParametersWebhookMethodJsonConverter),
typeof(global::SmallestAI.JsonConverters.WavesV1SttPostParametersWebhookMethodNullableJsonConverter),
@@ -115,6 +123,10 @@ namespace SmallestAI
typeof(global::SmallestAI.JsonConverters.WavesV1SttPostParametersXExpireContentNullableJsonConverter),
+ typeof(global::SmallestAI.JsonConverters.SttErrorResponseStatusJsonConverter),
+
+ typeof(global::SmallestAI.JsonConverters.SttErrorResponseStatusNullableJsonConverter),
+
typeof(global::SmallestAI.JsonConverters.ElectronToolCallTypeJsonConverter),
typeof(global::SmallestAI.JsonConverters.ElectronToolCallTypeNullableJsonConverter),
@@ -141,6 +153,8 @@ namespace SmallestAI
typeof(global::SmallestAI.JsonConverters.SpeechToTextTranscribeResponse200JsonConverter),
+ typeof(global::SmallestAI.JsonConverters.SttErrorResponseErrorsJsonConverter),
+
typeof(global::SmallestAI.JsonConverters.ChatCompletionRequestToolChoiceJsonConverter),
typeof(global::SmallestAI.JsonConverters.ChatCompletionRequestStopJsonConverter),
@@ -213,6 +227,8 @@ namespace SmallestAI
[global::System.Text.Json.Serialization.JsonSerializable(typeof(global::SmallestAI.DeletePronunciationDictResponse))]
[global::System.Text.Json.Serialization.JsonSerializable(typeof(global::SmallestAI.WavesV1SttPostParametersModel), TypeInfoPropertyName = "WavesV1SttPostParametersModel2")]
[global::System.Text.Json.Serialization.JsonSerializable(typeof(global::SmallestAI.WavesV1SttPostParametersLanguage), TypeInfoPropertyName = "WavesV1SttPostParametersLanguage2")]
+ [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::SmallestAI.WavesV1SttPostParametersWordTimestamps), TypeInfoPropertyName = "WavesV1SttPostParametersWordTimestamps2")]
+ [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::SmallestAI.WavesV1SttPostParametersDiarize), TypeInfoPropertyName = "WavesV1SttPostParametersDiarize2")]
[global::System.Text.Json.Serialization.JsonSerializable(typeof(global::SmallestAI.WavesV1SttPostParametersWebhookMethod), TypeInfoPropertyName = "WavesV1SttPostParametersWebhookMethod2")]
[global::System.Text.Json.Serialization.JsonSerializable(typeof(global::SmallestAI.WavesV1SttPostParametersRedactPii), TypeInfoPropertyName = "WavesV1SttPostParametersRedactPii2")]
[global::System.Text.Json.Serialization.JsonSerializable(typeof(global::SmallestAI.WavesV1SttPostParametersRedactPci), TypeInfoPropertyName = "WavesV1SttPostParametersRedactPci2")]
@@ -228,9 +244,11 @@ namespace SmallestAI
[global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.Dictionary))]
[global::System.Text.Json.Serialization.JsonSerializable(typeof(global::SmallestAI.AsyncAccepted))]
[global::System.Text.Json.Serialization.JsonSerializable(typeof(global::SmallestAI.SpeechToTextTranscribeResponse200), TypeInfoPropertyName = "SpeechToTextTranscribeResponse2002")]
- [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::SmallestAI.SttErrorResponseDetailsItems))]
+ [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::SmallestAI.SttErrorResponseStatus), TypeInfoPropertyName = "SttErrorResponseStatus2")]
+ [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::SmallestAI.SttErrorResponseErrorsOneOf0Items))]
+ [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))]
+ [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::SmallestAI.SttErrorResponseErrors), TypeInfoPropertyName = "SttErrorResponseErrors2")]
[global::System.Text.Json.Serialization.JsonSerializable(typeof(global::SmallestAI.SttErrorResponse))]
- [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList))]
[global::System.Text.Json.Serialization.JsonSerializable(typeof(global::SmallestAI.ElectronToolCallType), TypeInfoPropertyName = "ElectronToolCallType2")]
[global::System.Text.Json.Serialization.JsonSerializable(typeof(global::SmallestAI.ElectronToolCallFunction))]
[global::System.Text.Json.Serialization.JsonSerializable(typeof(global::SmallestAI.ElectronToolCall))]
@@ -273,7 +291,7 @@ namespace SmallestAI
[global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))]
[global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))]
[global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))]
- [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))]
+ [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))]
[global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))]
[global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))]
[global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))]
diff --git a/src/libs/SmallestAI/Generated/SmallestAI.JsonSerializerContextTypes.g.cs b/src/libs/SmallestAI/Generated/SmallestAI.JsonSerializerContextTypes.g.cs
index 075aa4a..83b07c0 100644
--- a/src/libs/SmallestAI/Generated/SmallestAI.JsonSerializerContextTypes.g.cs
+++ b/src/libs/SmallestAI/Generated/SmallestAI.JsonSerializerContextTypes.g.cs
@@ -285,207 +285,223 @@ public sealed partial class JsonSerializerContextTypes
///
///
///
- public global::SmallestAI.WavesV1SttPostParametersWebhookMethod? Type63 { get; set; }
+ public global::SmallestAI.WavesV1SttPostParametersWordTimestamps? Type63 { get; set; }
///
///
///
- public global::SmallestAI.WavesV1SttPostParametersRedactPii? Type64 { get; set; }
+ public global::SmallestAI.WavesV1SttPostParametersDiarize? Type64 { get; set; }
///
///
///
- public global::SmallestAI.WavesV1SttPostParametersRedactPci? Type65 { get; set; }
+ public global::SmallestAI.WavesV1SttPostParametersWebhookMethod? Type65 { get; set; }
///
///
///
- public global::SmallestAI.WavesV1SttPostParametersEmotionDetection? Type66 { get; set; }
+ public global::SmallestAI.WavesV1SttPostParametersRedactPii? Type66 { get; set; }
///
///
///
- public global::SmallestAI.WavesV1SttPostParametersGenderDetection? Type67 { get; set; }
+ public global::SmallestAI.WavesV1SttPostParametersRedactPci? Type67 { get; set; }
///
///
///
- public global::SmallestAI.WavesV1SttPostParametersXExpireContent? Type68 { get; set; }
+ public global::SmallestAI.WavesV1SttPostParametersEmotionDetection? Type68 { get; set; }
///
///
///
- public global::SmallestAI.Word? Type69 { get; set; }
+ public global::SmallestAI.WavesV1SttPostParametersGenderDetection? Type69 { get; set; }
///
///
///
- public global::SmallestAI.Utterance? Type70 { get; set; }
+ public global::SmallestAI.WavesV1SttPostParametersXExpireContent? Type70 { get; set; }
///
///
///
- public global::SmallestAI.TranscriptionResponseMetadata? Type71 { get; set; }
+ public global::SmallestAI.Word? Type71 { get; set; }
///
///
///
- public global::SmallestAI.TranscriptionResponse? Type72 { get; set; }
+ public global::SmallestAI.Utterance? Type72 { get; set; }
///
///
///
- public global::System.Collections.Generic.IList? Type73 { get; set; }
+ public global::SmallestAI.TranscriptionResponseMetadata? Type73 { get; set; }
///
///
///
- public global::System.Collections.Generic.IList? Type74 { get; set; }
+ public global::SmallestAI.TranscriptionResponse? Type74 { get; set; }
///
///
///
- public global::System.Collections.Generic.Dictionary? Type75 { get; set; }
+ public global::System.Collections.Generic.IList? Type75 { get; set; }
///
///
///
- public global::SmallestAI.AsyncAccepted? Type76 { get; set; }
+ public global::System.Collections.Generic.IList? Type76 { get; set; }
///
///
///
- public global::SmallestAI.SpeechToTextTranscribeResponse200? Type77 { get; set; }
+ public global::System.Collections.Generic.Dictionary? Type77 { get; set; }
///
///
///
- public global::SmallestAI.SttErrorResponseDetailsItems? Type78 { get; set; }
+ public global::SmallestAI.AsyncAccepted? Type78 { get; set; }
///
///
///
- public global::SmallestAI.SttErrorResponse? Type79 { get; set; }
+ public global::SmallestAI.SpeechToTextTranscribeResponse200? Type79 { get; set; }
///
///
///
- public global::System.Collections.Generic.IList? Type80 { get; set; }
+ public global::SmallestAI.SttErrorResponseStatus? Type80 { get; set; }
///
///
///
- public global::SmallestAI.ElectronToolCallType? Type81 { get; set; }
+ public global::SmallestAI.SttErrorResponseErrorsOneOf0Items? Type81 { get; set; }
///
///
///
- public global::SmallestAI.ElectronToolCallFunction? Type82 { get; set; }
+ public global::System.Collections.Generic.IList? Type82 { get; set; }
///
///
///
- public global::SmallestAI.ElectronToolCall? Type83 { get; set; }
+ public global::SmallestAI.SttErrorResponseErrors? Type83 { get; set; }
///
///
///
- public global::SmallestAI.ElectronMessage? Type84 { get; set; }
+ public global::SmallestAI.SttErrorResponse? Type84 { get; set; }
///
///
///
- public global::System.Collections.Generic.IList? Type85 { get; set; }
+ public global::SmallestAI.ElectronToolCallType? Type85 { get; set; }
///
///
///
- public global::SmallestAI.ChatCompletionRequestStreamOptions? Type86 { get; set; }
+ public global::SmallestAI.ElectronToolCallFunction? Type86 { get; set; }
///
///
///
- public global::SmallestAI.ChatCompletionRequestToolChoice0? Type87 { get; set; }
+ public global::SmallestAI.ElectronToolCall? Type87 { get; set; }
///
///
///
- public global::SmallestAI.ChatCompletionRequestToolChoiceOneOf1Type? Type88 { get; set; }
+ public global::SmallestAI.ElectronMessage? Type88 { get; set; }
///
///
///
- public global::SmallestAI.ChatCompletionRequestToolChoiceOneOf1Function? Type89 { get; set; }
+ public global::System.Collections.Generic.IList? Type89 { get; set; }
///
///
///
- public global::SmallestAI.ChatCompletionRequestToolChoice1? Type90 { get; set; }
+ public global::SmallestAI.ChatCompletionRequestStreamOptions? Type90 { get; set; }
///
///
///
- public global::SmallestAI.ChatCompletionRequestToolChoice? Type91 { get; set; }
+ public global::SmallestAI.ChatCompletionRequestToolChoice0? Type91 { get; set; }
///
///
///
- public global::SmallestAI.ChatCompletionRequestResponseFormatType? Type92 { get; set; }
+ public global::SmallestAI.ChatCompletionRequestToolChoiceOneOf1Type? Type92 { get; set; }
///
///
///
- public global::SmallestAI.ChatCompletionRequestResponseFormat? Type93 { get; set; }
+ public global::SmallestAI.ChatCompletionRequestToolChoiceOneOf1Function? Type93 { get; set; }
///
///
///
- public global::SmallestAI.ChatCompletionRequestStop? Type94 { get; set; }
+ public global::SmallestAI.ChatCompletionRequestToolChoice1? Type94 { get; set; }
///
///
///
- public global::SmallestAI.ChatCompletionRequest? Type95 { get; set; }
+ public global::SmallestAI.ChatCompletionRequestToolChoice? Type95 { get; set; }
///
///
///
- public global::System.Collections.Generic.IList? Type96 { get; set; }
+ public global::SmallestAI.ChatCompletionRequestResponseFormatType? Type96 { get; set; }
///
///
///
- public global::System.Collections.Generic.IList