---
updatedAt: 2026-04-27T03:49:00.000Z
agentTools:
  projectIndex: https://docs.recall.ai/llms.txt
---

# List Bots

Get a list of all bots

The base rate limit for this endpoint is:
- 60 requests per min per workspace

### Use this endpoint to:

* Get a list of bots in your workspace for dashboards, audits, exports, or admin tooling.
* Find bots scheduled in a specific time window, such as bots joining today or in the next hour.
* Look up bots by bot status, for a specific meeting, or filtering on custom bot metadata.

> 📘 Bot status change events
>
> To track bot lifecycle/status changes, listen for bot status change webhook events. Do not poll the API for bot status changes. Polling for bot status changes is an anti-pattern and must not be used in production integrations.
>
> Bot status change events are delivered through the webhook configured in the Recall webhook dashboard. They cannot be subscribed to through `recording_config.realtime_endpoints`.
>
> See <Anchor label="Status Change Webhooks" target="_blank" href="doc:status-change-webhooks-setup-verification">Status Change Webhooks</Anchor> for setup and verification details, and <Anchor label="Bot Webhooks" target="_blank" href="doc:bot-status-change-events">Bot Webhooks</Anchor> for the list of available bot status changes.

<br />

# OpenAPI definition

```json
{
  "openapi": "3.0.3",
  "info": {
    "title": "Recall.ai API",
    "version": "0.0.0",
    "description": "Recall.ai API Documentation"
  },
  "paths": {
    "/api/v1/bot/": {
      "get": {
        "operationId": "bot_list",
        "description": "Get a list of all bots\n\nThe base rate limit for this endpoint is:\n- 60 requests per min per workspace",
        "summary": "List Bots",
        "parameters": [
          {
            "in": "query",
            "name": "join_at_after",
            "schema": {
              "type": "string",
              "format": "date"
            }
          },
          {
            "in": "query",
            "name": "join_at_before",
            "schema": {
              "type": "string",
              "format": "date"
            }
          },
          {
            "in": "query",
            "name": "meeting_url",
            "schema": {
              "type": "string"
            }
          },
          {
            "in": "query",
            "name": "metadata__<key>",
            "schema": {
              "type": "string"
            },
            "description": "Filter by metadata. Replace <key> with the metadata key you want to filter on."
          },
          {
            "name": "page",
            "required": false,
            "in": "query",
            "description": "A page number within the paginated result set.",
            "schema": {
              "type": "integer"
            }
          },
          {
            "in": "query",
            "name": "platform",
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "chime_sdk",
                  "google_meet",
                  "google_meet_media_api",
                  "goto_meeting",
                  "microsoft_teams",
                  "microsoft_teams_live",
                  "slack_authenticator",
                  "slack_huddle_observer",
                  "webex",
                  "zoom",
                  "zoom_rtms"
                ]
              }
            },
            "description": "* `zoom` - Zoom\n* `google_meet` - Meet\n* `goto_meeting` - Goto\n* `microsoft_teams` - Teams\n* `microsoft_teams_live` - Teams Live\n* `webex` - Webex\n* `chime_sdk` - Chime Sdk\n* `zoom_rtms` - Zoom Rtms\n* `google_meet_media_api` - Google Meet Media Api\n* `slack_authenticator` - Slack Authenticator\n* `slack_huddle_observer` - Slack Huddle Observer",
            "explode": true,
            "style": "form"
          },
          {
            "in": "query",
            "name": "status",
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "analysis_done",
                  "analysis_failed",
                  "call_ended",
                  "done",
                  "fatal",
                  "in_call_not_recording",
                  "in_call_recording",
                  "in_waiting_room",
                  "joining_call",
                  "media_expired",
                  "ready",
                  "recording_done",
                  "recording_permission_allowed",
                  "recording_permission_denied"
                ]
              }
            },
            "description": "* `ready` - Ready\n* `joining_call` - Joining Call\n* `in_waiting_room` - In Waiting Room\n* `in_call_not_recording` - In Call Not Recording\n* `recording_permission_allowed` - Recording Permission Allowed\n* `recording_permission_denied` - Recording Permission Denied\n* `in_call_recording` - In Call Recording\n* `recording_done` - Recording Done\n* `call_ended` - Call Ended\n* `done` - Done\n* `fatal` - Fatal\n* `media_expired` - Media Expired\n* `analysis_done` - Analysis Done\n* `analysis_failed` - Analysis Failed",
            "explode": true,
            "style": "form"
          },
          {
            "in": "query",
            "name": "use_cursor",
            "schema": {
              "type": "string"
            },
            "description": "When present, uses cursor-based pagination instead of offset pagination."
          }
        ],
        "tags": [
          "bot"
        ],
        "security": [
          {
            "tokenAuth": []
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaginatedBotGetList"
                }
              }
            },
            "description": ""
          },
          "400": {
            "description": "No response body"
          },
          "404": {
            "description": "No response body"
          }
        },
        "x-throttles": [
          {
            "scope_key": "workspace_id",
            "limit": 60,
            "period": "min"
          }
        ]
      }
    }
  },
  "components": {
    "schemas": {
      "ArtifactStatus": {
        "type": "object",
        "properties": {
          "code": {
            "$ref": "#/components/schemas/ArtifactStatusCodeEnum"
          },
          "sub_code": {
            "type": "string",
            "nullable": true
          },
          "updated_at": {
            "type": "string",
            "format": "date-time"
          }
        },
        "required": [
          "code",
          "sub_code",
          "updated_at"
        ]
      },
      "ArtifactStatusCodeEnum": {
        "enum": [
          "processing",
          "done",
          "failed",
          "deleted"
        ],
        "type": "string",
        "description": "* `processing` - Processing\n* `done` - Done\n* `failed` - Failed\n* `deleted` - Deleted"
      },
      "AudioMixedArtifactData": {
        "type": "object",
        "properties": {
          "download_url": {
            "type": "string",
            "format": "uri",
            "readOnly": true,
            "nullable": true
          }
        },
        "required": [
          "download_url"
        ]
      },
      "AudioMixedArtifactShortcut": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "readOnly": true
          },
          "created_at": {
            "type": "string",
            "format": "date-time",
            "readOnly": true
          },
          "status": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ArtifactStatus"
              }
            ],
            "readOnly": true
          },
          "metadata": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            }
          },
          "data": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AudioMixedArtifactData"
              }
            ],
            "readOnly": true
          },
          "format": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Format33bEnum"
              }
            ],
            "readOnly": true,
            "description": "Format of the mixed audio file\n\n* `mp3` - Mp3\n* `raw` - Raw"
          }
        },
        "required": [
          "created_at",
          "data",
          "format",
          "id",
          "metadata",
          "status"
        ]
      },
      "AudioOutput": {
        "type": "object",
        "properties": {
          "data": {
            "$ref": "#/components/schemas/AudioOutputData"
          },
          "replay_on_participant_join": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AudioOutputReplay"
              }
            ],
            "description": "Specify this parameter if you want the audio to be replayed when additional participants join the call."
          }
        },
        "required": [
          "data"
        ]
      },
      "AudioOutputData": {
        "type": "object",
        "properties": {
          "kind": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AudioOutputDataKindEnum"
              }
            ],
            "description": "The kind of data encoded in b64_data\n\n* `mp3` - mp3"
          }
        },
        "required": [
          "kind"
        ]
      },
      "AudioOutputDataKindEnum": {
        "enum": [
          "mp3"
        ],
        "type": "string",
        "description": "* `mp3` - mp3"
      },
      "AudioOutputReplay": {
        "type": "object",
        "properties": {
          "debounce_mode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/DebounceModeEnum"
              }
            ],
            "default": "trailing",
            "description": "Leading: The debounce timer will start counting down when the first participant joins.\nTrailing: The debounce timer will start counting down when the last participant joins.\nFor example with a debounce_interval of 10, if two participants join 9 seconds apart: \n - In `Leading` mode the audio will play 10 seconds after the 1st participant joined (1 second after the 2nd participant)\n - In `Trailing` mode the audio will play 10 seconds after the 2nd participant joined (19 seconds after the 1st participant)\n\n* `leading` - leading\n* `trailing` - trailing"
          },
          "debounce_interval": {
            "type": "integer",
            "description": "The amount of time to wait for additional participants to join before replaying the audio."
          },
          "disable_after": {
            "type": "integer",
            "description": "The number of seconds after which the audio will no longer replay when new participants join. This parameter is useful to prevent the bot from interrupting a meeting, if a late participant joins."
          }
        },
        "required": [
          "debounce_interval"
        ]
      },
      "AutomaticAudioOutput": {
        "type": "object",
        "properties": {
          "in_call_recording": {
            "$ref": "#/components/schemas/AudioOutput"
          }
        },
        "required": [
          "in_call_recording"
        ]
      },
      "AutomaticLeave": {
        "type": "object",
        "properties": {
          "waiting_room_timeout": {
            "type": "integer",
            "minimum": 30,
            "default": 1200,
            "description": "The number of seconds after which the bot will automatically leave the call, if it has not been let in from the waiting room. If you join Zoom using an OBF token, this timeout also caps how long the bot will wait for the associated user to join the meeting; if the user never joins before the timeout, the join fails with zoom_obf_user_not_in_meeting. Note that this has a max value of 600 seconds for Google Meet and 1800 for Microsoft Teams."
          },
          "noone_joined_timeout": {
            "type": "integer",
            "minimum": 30,
            "default": 1200,
            "description": "The number of seconds after which the bot will automatically leave the call, if it has joined the meeting but no other participant has joined."
          },
          "everyone_left_timeout": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AutomaticLeaveEveryoneLeft"
              }
            ],
            "description": "The number of seconds after which the bot will automatically leave the call, if there were other participants in the call who have all left. Note: The everyone_left waiter remains active and will trigger even if recording is paused, unlike other automatic leave waiters which are paused when recording is paused."
          },
          "in_call_not_recording_timeout": {
            "type": "integer",
            "minimum": 1,
            "default": 3600,
            "description": "The number of seconds after which the bot will automatically leave the call, if it has joined the call and is not recording.This includes all periods when the bot is not recording, even if the bot has recorded previously."
          },
          "in_call_recording_timeout": {
            "type": "integer",
            "minimum": 1,
            "description": "The number of seconds after which the bot will automatically leave the call, if it has joined the call and started recording it. This can be used to enforce a maximum recording time limit for a bot. There is no default value for this parameter, meaning a bot will continue to record for as long as the meeting lasts."
          },
          "recording_permission_denied_timeout": {
            "type": "integer",
            "minimum": 1,
            "default": 30,
            "description": "The number of seconds after which the bot will automatically leave the call, if it has joined the call but has not started recording. For e.g This can occur due to bot being denied permission to record(Zoom meetings)."
          },
          "silence_detection": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AutomaticLeaveSilenceDetection"
              }
            ],
            "default": {
              "timeout": 3600,
              "activate_after": 1200
            }
          },
          "bot_detection": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AutomaticLeaveBotDetection"
              }
            ],
            "default": {
              "using_participant_events": {
                "timeout": 600,
                "activate_after": 1200
              },
              "using_participant_names": {
                "matches": [
                  "notetaker",
                  "recorder",
                  "assistant"
                ],
                "timeout": 600,
                "activate_after": 120
              }
            }
          }
        }
      },
      "AutomaticLeaveBotDetection": {
        "type": "object",
        "properties": {
          "using_participant_events": {
            "$ref": "#/components/schemas/AutomaticLeaveBotDetectionUsingParticipantEvents"
          },
          "using_participant_names": {
            "$ref": "#/components/schemas/AutomaticLeaveBotDetectionUsingParticipantNames"
          }
        }
      },
      "AutomaticLeaveBotDetectionUsingParticipantEvents": {
        "type": "object",
        "properties": {
          "timeout": {
            "type": "integer",
            "minimum": 10,
            "default": 600,
            "description": "The number of seconds after which the bot will automatically leave the call if all other participants(in call) are detected as bots using this heuristic. A participant is considered a bot if they have no audio or screenshare activity for the duration of the call."
          },
          "activate_after": {
            "type": "integer",
            "minimum": 1,
            "default": 1200,
            "description": "The number of seconds(post recording start) after which the bot will start detecting other participants as bots using this heuristic. This parameter can be helpful if the meeting tends to start late, so the bot does not preemptively leave."
          }
        }
      },
      "AutomaticLeaveBotDetectionUsingParticipantNames": {
        "type": "object",
        "properties": {
          "timeout": {
            "type": "integer",
            "minimum": 10,
            "description": "The number of seconds after which the bot will automatically leave the call if all other participants(in call) are detected as bots using this heuristic. A participant is considered a bot if their name contains any of the strings specified in the `matches` parameter(case insensitive match)."
          },
          "activate_after": {
            "type": "integer",
            "minimum": 1,
            "description": "The number of seconds(post recording start) after which the bot will start detecting other participants as bots using this heuristic. This parameter can be helpful if the meeting tends to start late, so the bot does not preemptively leave."
          },
          "matches": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "A list of strings that the bot will use to detect other bots. If a participant's name contains any of these strings(case insensitive match), they will be considered a bot. If all remaining participants in the call are detected as bots(except the bot itself), the bot will automatically leave the call.For e.g ['notetaker', 'recorder', 'assistant']"
          }
        },
        "required": [
          "activate_after",
          "matches",
          "timeout"
        ]
      },
      "AutomaticLeaveEveryoneLeft": {
        "type": "object",
        "properties": {
          "timeout": {
            "type": "integer",
            "minimum": 1,
            "default": 2,
            "description": "The number of seconds after which the bot will automatically leave the call, if there were other participants in the call who have all left."
          },
          "activate_after": {
            "type": "integer",
            "minimum": 1,
            "nullable": true,
            "description": "The number of seconds after which the bot will start detecting everyone left once it has started recording the call. "
          }
        }
      },
      "AutomaticLeaveSilenceDetection": {
        "type": "object",
        "properties": {
          "timeout": {
            "type": "integer",
            "minimum": 10,
            "default": 3600,
            "description": "The number of seconds of continuous silence after which the bot will automatically leave the call."
          },
          "activate_after": {
            "type": "integer",
            "minimum": 1,
            "default": 1200,
            "description": "The number of seconds after which the bot will start detecting silence once it has started recording the call. This parameter can be helpful if the meeting tends to start late, so the bot does not preemptively leave."
          }
        }
      },
      "AutomaticVideoOutput": {
        "type": "object",
        "properties": {
          "in_call_recording": {
            "allOf": [
              {
                "$ref": "#/components/schemas/VideoOutput"
              }
            ],
            "description": "The video that will be automatically output when the bot is in the **in_call_recording** state."
          },
          "in_call_not_recording": {
            "allOf": [
              {
                "$ref": "#/components/schemas/VideoOutput"
              }
            ],
            "description": "The video that will be automatically output when the bot is in the **in_call_not_recording** state. If not specified the bot will fallback to in_call_recording output if available."
          }
        }
      },
      "BotCalendarMeeting": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "readOnly": true
          },
          "start_time": {
            "type": "string",
            "format": "date-time",
            "readOnly": true
          },
          "end_time": {
            "type": "string",
            "format": "date-time",
            "readOnly": true
          },
          "calendar_user": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BotCalendarUser"
              }
            ],
            "readOnly": true
          }
        },
        "required": [
          "calendar_user",
          "end_time",
          "id",
          "start_time"
        ]
      },
      "BotCalendarUser": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "readOnly": true
          },
          "external_id": {
            "type": "string",
            "readOnly": true
          }
        },
        "required": [
          "external_id",
          "id"
        ]
      },
      "BotEvent": {
        "type": "object",
        "properties": {
          "code": {
            "type": "string",
            "readOnly": true
          },
          "message": {
            "type": "string",
            "readOnly": true
          },
          "created_at": {
            "type": "string",
            "format": "date-time",
            "readOnly": true
          },
          "sub_code": {
            "type": "string",
            "readOnly": true
          }
        },
        "required": [
          "code",
          "created_at",
          "message",
          "sub_code"
        ]
      },
      "BotGet": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "readOnly": true
          },
          "meeting_url": {
            "allOf": [
              {
                "$ref": "#/components/schemas/MeetingInvite"
              }
            ],
            "description": "The url of the meeting. For example, https://zoom.us/j/123?pwd=456. This field will be cleared a few days after the bot has joined a call."
          },
          "bot_name": {
            "type": "string",
            "default": "Meeting Notetaker",
            "description": "The name of the bot that will be displayed in the call.\n*(Note: Authenticated Google Meet bots will use the Google account name and this field will be ignored.)*",
            "maxLength": 100
          },
          "join_at": {
            "type": "string",
            "format": "date-time",
            "readOnly": true,
            "description": "The time at which the bot is scheduled to join the call, formatted in ISO 8601. For ad-hoc bots, this is the time at which the bot was requested to join."
          },
          "recording_config": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BotRecordingConfig"
              }
            ],
            "nullable": true,
            "description": "Configure the recording generated by the bot. Includes options for getting meeting transcript,  the layout of the recorded video, when to start recording and more."
          },
          "status_changes": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/BotEvent"
            },
            "readOnly": true
          },
          "recordings": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/BotRecordingEmbed"
            },
            "readOnly": true
          },
          "output_media": {
            "allOf": [
              {
                "$ref": "#/components/schemas/OutputMedia"
              }
            ],
            "nullable": true,
            "description": "Settings for the bot output media."
          },
          "automatic_video_output": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AutomaticVideoOutput"
              }
            ],
            "nullable": true,
            "description": "Settings for the bot to output video. Image should be 16:9. Read more about this here: https://docs.recall.ai/docs/output-video-in-meetings"
          },
          "automatic_audio_output": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AutomaticAudioOutput"
              }
            ],
            "nullable": true,
            "description": "Settings for the bot to output audio."
          },
          "chat": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Chat"
              }
            ],
            "nullable": true,
            "description": "Settings for the bot to send chat messages. \n*(Note: Chat functionality is only supported for Zoom, Google Meet and Microsoft Teams currently.)*"
          },
          "automatic_leave": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AutomaticLeave"
              }
            ],
            "nullable": true
          },
          "variant": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BotVariant"
              }
            ],
            "nullable": true,
            "description": "Configure bot variants per meeting platforms, e.g. {\"zoom\": \"web_4_core\"}."
          },
          "calendar_meetings": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/BotCalendarMeeting"
            },
            "readOnly": true,
            "description": "The calendar meetings associated with this bot. This field is **populated only for bots that are dispatched via Calendar V1 API integration**."
          },
          "zoom": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Zoom"
              }
            ],
            "nullable": true,
            "description": "Zoom specific parameters"
          },
          "google_meet": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GoogleMeet"
              }
            ],
            "nullable": true,
            "description": "Google Meet specific parameters"
          },
          "slack_team": {
            "allOf": [
              {
                "$ref": "#/components/schemas/SlackTeamIntegrationMinimal"
              }
            ],
            "readOnly": true,
            "nullable": true
          },
          "webex": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Webex"
              }
            ],
            "nullable": true,
            "description": "Webex specific parameters"
          },
          "breakout_room": {
            "allOf": [
              {
                "$ref": "#/components/schemas/_BreakoutRoomSchema"
              }
            ],
            "nullable": true,
            "description": "Configure how the bot handles breakout rooms. Currently, Zoom is supported.Examples: {\"mode\": \"join_main_room\"} | {\"mode\": \"join_specific_room\", \"room_id\": \"<uuid>\"} | {\"mode\": \"auto_accept_all_invites\"} (default)."
          },
          "metadata": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            }
          }
        },
        "required": [
          "calendar_meetings",
          "id",
          "join_at",
          "meeting_url",
          "recordings",
          "status_changes"
        ]
      },
      "BotIncludeInRecording": {
        "type": "object",
        "properties": {
          "audio": {
            "type": "boolean",
            "default": false,
            "description": "Whether to record audio from the bot."
          }
        }
      },
      "BotRecordingConfig": {
        "type": "object",
        "properties": {
          "transcript": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BotRecordingConfigTranscriptArtifact"
              }
            ],
            "nullable": true,
            "description": "Specify this to capture transcript of the meeting as part of the recording. Supports:\n- [Recall.ai Transcription](https://docs.recall.ai/docs/recallai-transcription)\n- [3rd-party AI transcription providers](https://docs.recall.ai/docs/ai-transcription)\n- [meeting caption transcription](https://docs.recall.ai/docs/meeting-caption-transcription)\n\n **[Read more about real-time transcription.](https://docs.recall.ai/docs/bot-real-time-transcription)**\n\nDefault: `null`\n\n"
          },
          "realtime_endpoints": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/BotRecordingConfigRealtimeEndpoint"
            },
            "default": [],
            "description": "Add endpoints here to receive data (e.g transcript, participant events) from the recording in realtime during the meeting.\n\nDefault: `[]`\n\n"
          },
          "retention": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BotRecordingConfigRetention"
              }
            ],
            "nullable": true,
            "description": "Specify the retention policy for the recording. **[Read more in this guide](https://docs.recall.ai/docs/storage-and-playback)**"
          },
          "video_mixed_layout": {
            "allOf": [
              {
                "$ref": "#/components/schemas/VideoMixedLayoutEnum"
              }
            ],
            "default": "speaker_view",
            "description": "The layout of the mixed video output.\n\n* `speaker_view` - speaker_view\n* `gallery_view` - gallery_view\n* `gallery_view_v2` - gallery_view_v2\n* `audio_only` - audio_only"
          },
          "video_mixed_mp4": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BotRecordingConfigBaseArtifact"
              }
            ],
            "nullable": true,
            "description": "Capture mixed video of the meeting as part of the recording. **This is enabled by default**.\n\nDefault: `{}`\n\n"
          },
          "participant_events": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BotRecordingConfigBaseArtifact"
              }
            ],
            "nullable": true,
            "default": {},
            "description": "Capture participant events as part of the recording. **This is enabled by default**.\n\nDefault: `{}`\n\n"
          },
          "meeting_metadata": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BotRecordingConfigBaseArtifact"
              }
            ],
            "nullable": true,
            "default": {},
            "description": "Capture meeting metadata as part of the recording. **This is enabled by default**.\n\nDefault: `{}`\n\n"
          },
          "video_mixed_participant_video_when_screenshare": {
            "allOf": [
              {
                "$ref": "#/components/schemas/VideoMixedParticipantVideoWhenScreenshareEnum"
              }
            ],
            "default": "overlap",
            "description": "The layout of participant video streams in mixed video output when screen is being shared. More docs: https://docs.recall.ai/docs/video-layouts\n\n* `hide` - hide\n* `beside` - beside\n* `overlap` - overlap"
          },
          "start_recording_on": {
            "allOf": [
              {
                "$ref": "#/components/schemas/StartRecordingOnEnum"
              }
            ],
            "default": "participant_join",
            "description": "Specify when automatic recording should start.\n*call_join* - Bot will start recording as soon as it joins the call.\n*participant_join* - Bot will start recording when the first participant joins the call. If a participant is already present when the bot joins, the bot will automatically start recording.\n*participant_speak* - Bot will start recording when the first participant starts talking.\n\n\n* `call_join` - call_join\n* `participant_join` - participant_join\n* `participant_speak` - participant_speak"
          },
          "include_bot_in_recording": {
            "$ref": "#/components/schemas/BotIncludeInRecording"
          },
          "metadata": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            }
          },
          "audio_mixed_raw": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BotRecordingConfigBaseArtifact"
              }
            ],
            "nullable": true,
            "description": "Specify this to capture mixed audio in raw format of the meeting.\n\nDefault: `null`\n\n"
          },
          "audio_mixed_mp3": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BotRecordingConfigBaseArtifact"
              }
            ],
            "nullable": true,
            "description": "Specify this to capture mixed audio in the mp3 format of the meeting\n\nDefault: `null`\n\n"
          },
          "video_separate_mp4": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BotRecordingConfigBaseArtifact"
              }
            ],
            "nullable": true,
            "description": "Specify this to capture separate video in mp4 format for each participant in the meeting. Only supported with video_mixed_layout='gallery_view_v2'. **[Read more in this guide](https://docs.recall.ai/docs/how-to-get-separate-videos-per-participant-async)**\n\nDefault: `null`\n\n"
          },
          "audio_separate_raw": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BotRecordingConfigBaseArtifact"
              }
            ],
            "nullable": true,
            "description": "Specify this to capture separate audio in raw format for each participant in the meeting(**limited support**).  **[Read more in this guide](https://docs.recall.ai/docs/how-to-get-separate-audio-per-participant-async)**\n\nDefault: `null`\n\n"
          },
          "audio_separate_mp3": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BotRecordingConfigBaseArtifact"
              }
            ],
            "nullable": true,
            "description": "Specify this to capture separate audio in mp3 format for each participant in the meeting. **[Read more in this guide](https://docs.recall.ai/docs/how-to-get-separate-audio-per-participant-async)**\n\nDefault: `null`\n\n"
          },
          "video_mixed_flv": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BotRecordingConfigBaseArtifact"
              }
            ],
            "nullable": true,
            "description": "Specify this to capture mixed video in flv format(**required for rtmp streaming). \n\nDefault: `null`\n\n"
          },
          "video_separate_png": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BotRecordingConfigBaseArtifact"
              }
            ],
            "nullable": true,
            "description": "Specify this to capture separate video in png format for each participant in the meeting. Only supported with video_mixed_layout='gallery_view_v2'. **[Read more in this guide](https://docs.recall.ai/docs/how-to-get-separate-videos-per-participant-realtime)**\n\nDefault: `null`\n\n"
          },
          "video_separate_h264": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BotRecordingConfigBaseArtifact"
              }
            ],
            "nullable": true,
            "description": "Specify this to capture separate video in compressed h264 for each participant in the meeting. **[Read more in this guide](https://docs.recall.ai/docs/how-to-get-separate-videos-per-participant-realtime)**\n\nDefault: `null`\n\n"
          }
        }
      },
      "BotRecordingConfigBaseArtifact": {
        "type": "object",
        "properties": {
          "metadata": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            }
          }
        }
      },
      "BotRecordingConfigRealtimeEndpoint": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/BotRecordingConfigRealtimeEndpointBotRecordingConfigRealtimeEndpointRtmp"
          },
          {
            "$ref": "#/components/schemas/BotRecordingConfigRealtimeEndpointBotRecordingConfigRealtimeEndpointWebsocket"
          },
          {
            "$ref": "#/components/schemas/BotRecordingConfigRealtimeEndpointBotRecordingConfigRealtimeEndpointWebhook"
          },
          {
            "$ref": "#/components/schemas/BotRecordingConfigRealtimeEndpointBotRecordingConfigRealtimeEndpointDesktopSdkCallback"
          }
        ],
        "discriminator": {
          "propertyName": "type",
          "mapping": {
            "rtmp": "#/components/schemas/BotRecordingConfigRealtimeEndpointBotRecordingConfigRealtimeEndpointRtmp",
            "websocket": "#/components/schemas/BotRecordingConfigRealtimeEndpointBotRecordingConfigRealtimeEndpointWebsocket",
            "webhook": "#/components/schemas/BotRecordingConfigRealtimeEndpointBotRecordingConfigRealtimeEndpointWebhook",
            "desktop_sdk_callback": "#/components/schemas/BotRecordingConfigRealtimeEndpointBotRecordingConfigRealtimeEndpointDesktopSdkCallback"
          }
        }
      },
      "BotRecordingConfigRealtimeEndpointBotRecordingConfigRealtimeEndpointDesktopSdkCallback": {
        "allOf": [
          {
            "$ref": "#/components/schemas/BotRecordingConfigRealtimeEndpointShared"
          },
          {
            "$ref": "#/components/schemas/BotRecordingConfigRealtimeEndpointDesktopSdkCallback"
          }
        ]
      },
      "BotRecordingConfigRealtimeEndpointBotRecordingConfigRealtimeEndpointRtmp": {
        "allOf": [
          {
            "$ref": "#/components/schemas/BotRecordingConfigRealtimeEndpointShared"
          },
          {
            "$ref": "#/components/schemas/BotRecordingConfigRealtimeEndpointRtmp"
          }
        ]
      },
      "BotRecordingConfigRealtimeEndpointBotRecordingConfigRealtimeEndpointWebhook": {
        "allOf": [
          {
            "$ref": "#/components/schemas/BotRecordingConfigRealtimeEndpointShared"
          },
          {
            "$ref": "#/components/schemas/BotRecordingConfigRealtimeEndpointWebhook"
          }
        ]
      },
      "BotRecordingConfigRealtimeEndpointBotRecordingConfigRealtimeEndpointWebsocket": {
        "allOf": [
          {
            "$ref": "#/components/schemas/BotRecordingConfigRealtimeEndpointShared"
          },
          {
            "$ref": "#/components/schemas/BotRecordingConfigRealtimeEndpointWebsocket"
          }
        ]
      },
      "BotRecordingConfigRealtimeEndpointDesktopSdkCallback": {
        "type": "object",
        "properties": {
          "events": {
            "type": "array",
            "items": {
              "type": "string",
              "enum": [
                "participant_events.join",
                "participant_events.leave",
                "participant_events.update",
                "participant_events.speech_on",
                "participant_events.speech_off",
                "participant_events.webcam_on",
                "participant_events.webcam_off",
                "participant_events.microphone_on",
                "participant_events.microphone_off",
                "participant_events.screenshare_on",
                "participant_events.screenshare_off",
                "participant_events.chat_message",
                "transcript.data",
                "transcript.partial_data",
                "transcript.provider_data",
                "video_separate_png.data",
                "video_separate_h264.data",
                "audio_mixed_raw.data",
                "audio_separate_raw.data"
              ]
            },
            "description": "The events to send to the realtime endpoint."
          }
        },
        "required": [
          "events"
        ]
      },
      "BotRecordingConfigRealtimeEndpointRtmp": {
        "type": "object",
        "properties": {
          "url": {
            "type": "string",
            "description": "The URL of the realtime endpoint.",
            "format": "uri"
          },
          "events": {
            "type": "array",
            "items": {
              "type": "string",
              "enum": [
                "video_mixed_flv.data"
              ]
            },
            "description": "The events to send to the realtime endpoint."
          }
        },
        "required": [
          "events",
          "url"
        ]
      },
      "BotRecordingConfigRealtimeEndpointShared": {
        "type": "object",
        "properties": {
          "metadata": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            }
          },
          "type": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BotRecordingConfigRealtimeEndpointSharedTypeEnum"
              }
            ],
            "description": "The type of the realtime endpoint.\n\n* `rtmp` - Rtmp\n* `websocket` - Websocket\n* `webhook` - Webhook\n* `desktop_sdk_callback` - Desktop Sdk Callback"
          }
        },
        "required": [
          "type"
        ]
      },
      "BotRecordingConfigRealtimeEndpointSharedTypeEnum": {
        "enum": [
          "rtmp",
          "websocket",
          "webhook",
          "desktop_sdk_callback"
        ],
        "type": "string",
        "description": "* `rtmp` - Rtmp\n* `websocket` - Websocket\n* `webhook` - Webhook\n* `desktop_sdk_callback` - Desktop Sdk Callback"
      },
      "BotRecordingConfigRealtimeEndpointWebhook": {
        "type": "object",
        "properties": {
          "url": {
            "type": "string",
            "description": "The URL of the realtime endpoint.",
            "format": "uri"
          },
          "events": {
            "type": "array",
            "items": {
              "type": "string",
              "enum": [
                "participant_events.join",
                "participant_events.leave",
                "participant_events.update",
                "participant_events.speech_on",
                "participant_events.speech_off",
                "participant_events.webcam_on",
                "participant_events.webcam_off",
                "participant_events.microphone_on",
                "participant_events.microphone_off",
                "participant_events.screenshare_on",
                "participant_events.screenshare_off",
                "participant_events.chat_message",
                "transcript.data",
                "transcript.partial_data",
                "transcript.provider_data"
              ]
            },
            "description": "The events to send to the realtime endpoint."
          }
        },
        "required": [
          "events",
          "url"
        ]
      },
      "BotRecordingConfigRealtimeEndpointWebsocket": {
        "type": "object",
        "properties": {
          "url": {
            "type": "string",
            "description": "The URL of the realtime endpoint.",
            "format": "uri"
          },
          "events": {
            "type": "array",
            "items": {
              "type": "string",
              "enum": [
                "participant_events.join",
                "participant_events.leave",
                "participant_events.update",
                "participant_events.speech_on",
                "participant_events.speech_off",
                "participant_events.webcam_on",
                "participant_events.webcam_off",
                "participant_events.microphone_on",
                "participant_events.microphone_off",
                "participant_events.screenshare_on",
                "participant_events.screenshare_off",
                "participant_events.chat_message",
                "audio_mixed_raw.data",
                "transcript.data",
                "transcript.partial_data",
                "transcript.provider_data",
                "audio_separate_raw.data",
                "video_separate_png.data",
                "video_separate_h264.data"
              ]
            },
            "description": "The events to send to the realtime endpoint."
          }
        },
        "required": [
          "events",
          "url"
        ]
      },
      "BotRecordingConfigRetention": {
        "type": "object",
        "properties": {
          "type": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BotRecordingConfigRetentionSharedTypeEnum"
              }
            ],
            "description": "The type of the retention policy.\n\n* `timed` - Timed\n* `forever` - Forever"
          },
          "hours": {
            "type": "integer",
            "minimum": 1,
            "default": 168,
            "description": "The number of hours to retain the recording."
          }
        },
        "required": [
          "type"
        ]
      },
      "BotRecordingConfigRetentionSharedTypeEnum": {
        "enum": [
          "timed",
          "forever"
        ],
        "type": "string",
        "description": "* `timed` - Timed\n* `forever` - Forever"
      },
      "BotRecordingConfigTranscriptArtifact": {
        "type": "object",
        "properties": {
          "metadata": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            }
          },
          "provider": {
            "allOf": [
              {
                "$ref": "#/components/schemas/BotRecordingConfigTranscriptProvider"
              }
            ],
            "title": "Transcription Provider",
            "description": "The **[transcription method](https://docs.recall.ai//docs/bot-transcription)** to get the transcript of the meeting."
          },
          "diarization": {
            "$ref": "#/components/schemas/BotRecordingConfigTranscriptDiarization"
          }
        },
        "required": [
          "provider"
        ]
      },
      "BotRecordingConfigTranscriptDiarization": {
        "type": "object",
        "properties": {
          "use_separate_streams_when_available": {
            "type": "boolean",
            "description": "Use separate audio streams(a.k.a perfect diarization) when available. This feature has limted support. **[Read more in this guide](https://docs.recall.ai/docs/perfect-diarization)**"
          }
        }
      },
      "BotRecordingConfigTranscriptProvider": {
        "type": "object",
        "properties": {
          "recallai_streaming": {
            "allOf": [
              {
                "$ref": "#/components/schemas/RecallaiStreamingTranscription"
              }
            ],
            "title": "RecallAI Real-time Transcription Settings",
            "description": " **[Read more in this guide](https://docs.recall.ai/docs/recallai-transcription)**"
          },
          "assembly_ai_async_chunked": {
            "properties": {
              "audio_end_at": {
                "x-label": "Audio end at",
                "description": "The point in time, in milliseconds, to stop transcribing in your media file. See [Set the start and end of the transcript](https://www.assemblyai.com/docs/pre-recorded-audio/set-the-start-and-end-of-the-transcript) for more details.",
                "type": "integer"
              },
              "audio_start_from": {
                "x-label": "Audio start from",
                "description": "The point in time, in milliseconds, to begin transcribing in your media file. See [Set the start and end of the transcript](https://www.assemblyai.com/docs/pre-recorded-audio/set-the-start-and-end-of-the-transcript) for more details.",
                "type": "integer"
              },
              "auto_chapters": {
                "x-label": "Auto chapters",
                "description": "Enable [Auto Chapters](https://www.assemblyai.com/docs/speech-understanding/auto-chapters), can be true or false",
                "type": "boolean",
                "default": false
              },
              "auto_highlights": {
                "x-label": "Key phrases",
                "description": "Enable [Key Phrases](https://www.assemblyai.com/docs/speech-understanding/key-phrases), either true or false",
                "type": "boolean",
                "default": false
              },
              "content_safety": {
                "x-label": "Content Moderation",
                "description": "Enable [Content Moderation](https://www.assemblyai.com/docs/content-moderation), can be true or false",
                "type": "boolean",
                "default": false
              },
              "content_safety_confidence": {
                "x-label": "Content Moderation confidence",
                "description": "The confidence threshold for the [Content Moderation](https://www.assemblyai.com/docs/content-moderation) model. Values must be between 25 and 100.",
                "type": "integer",
                "default": 50,
                "minimum": 25,
                "maximum": 100
              },
              "custom_spelling": {
                "x-label": "Custom spellings",
                "description": "Customize how words are spelled and formatted using to and from values. See [Custom Spelling](https://www.assemblyai.com/docs/pre-recorded-audio/custom-spelling) for more details.",
                "type": "array",
                "items": {
                  "x-label": "Custom spelling",
                  "description": "Object containing words or phrases to replace, and the word or phrase to replace with",
                  "x-fern-sdk-group-name": "transcripts",
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "from": {
                      "x-label": "From",
                      "description": "Words or phrases to replace",
                      "type": "array",
                      "items": {
                        "x-label": "Word or phrase",
                        "description": "Word or phrase to replace",
                        "type": "string"
                      }
                    },
                    "to": {
                      "x-label": "To",
                      "description": "Word to replace with",
                      "type": "string"
                    }
                  },
                  "required": [
                    "from",
                    "to"
                  ],
                  "example": {
                    "from": [
                      "dicarlo"
                    ],
                    "to": "Decarlo"
                  }
                }
              },
              "disfluencies": {
                "x-label": "Disfluencies",
                "description": "Transcribe [Filler Words](https://www.assemblyai.com/docs/pre-recorded-audio/filler-words), like \"umm\", in your media file; can be true or false",
                "type": "boolean",
                "default": false
              },
              "entity_detection": {
                "x-label": "Entity Detection",
                "description": "Enable [Entity Detection](https://www.assemblyai.com/docs/speech-understanding/entity-detection), can be true or false",
                "type": "boolean",
                "default": false
              },
              "filter_profanity": {
                "x-label": "Filter profanity",
                "description": "Filter profanity from the transcribed text, can be true or false. See [Profanity Filtering](https://www.assemblyai.com/docs/profanity-filtering) for more details.",
                "type": "boolean",
                "default": false
              },
              "format_text": {
                "x-label": "Format text",
                "description": "Enable [Text Formatting](https://www.assemblyai.com/docs/pre-recorded-audio), can be true or false",
                "type": "boolean",
                "default": true
              },
              "iab_categories": {
                "x-label": "Topic Detection",
                "description": "Enable [Topic Detection](https://www.assemblyai.com/docs/speech-understanding/topic-detection), can be true or false",
                "type": "boolean",
                "default": false
              },
              "keyterms_prompt": {
                "x-label": "Keyterms prompt",
                "description": "Improve accuracy with up to 200 (for Universal-2) or 1000 (for Universal-3-Pro) domain-specific words or phrases (maximum 6 words per phrase). See [Keyterms Prompting](https://www.assemblyai.com/docs/pre-recorded-audio/keyterms-prompting) for more details.\n",
                "type": "array",
                "items": {
                  "x-label": "Keyterm",
                  "type": "string"
                }
              },
              "language_code": {
                "x-label": "Language code",
                "description": "The language of your audio file. Possible values are found in [Supported Languages](https://www.assemblyai.com/docs/pre-recorded-audio/supported-languages).\nThe default value is 'en_us'.\n",
                "oneOf": [
                  {
                    "anyOf": [
                      {
                        "x-label": "Language code",
                        "type": "string",
                        "description": "The language of your audio file. Possible values are found in [Supported Languages](https://www.assemblyai.com/docs/pre-recorded-audio/supported-languages).\nThe default value is 'en_us'.\n",
                        "x-fern-sdk-group-name": "transcripts",
                        "enum": [
                          "en",
                          "en_au",
                          "en_uk",
                          "en_us",
                          "es",
                          "fr",
                          "de",
                          "it",
                          "pt",
                          "nl",
                          "af",
                          "sq",
                          "am",
                          "ar",
                          "hy",
                          "as",
                          "az",
                          "ba",
                          "eu",
                          "be",
                          "bn",
                          "bs",
                          "br",
                          "bg",
                          "my",
                          "ca",
                          "zh",
                          "hr",
                          "cs",
                          "da",
                          "et",
                          "fo",
                          "fi",
                          "gl",
                          "ka",
                          "el",
                          "gu",
                          "ht",
                          "ha",
                          "haw",
                          "he",
                          "hi",
                          "hu",
                          "is",
                          "id",
                          "ja",
                          "jw",
                          "kn",
                          "kk",
                          "km",
                          "ko",
                          "lo",
                          "la",
                          "lv",
                          "ln",
                          "lt",
                          "lb",
                          "mk",
                          "mg",
                          "ms",
                          "ml",
                          "mt",
                          "mi",
                          "mr",
                          "mn",
                          "ne",
                          "no",
                          "nn",
                          "oc",
                          "pa",
                          "ps",
                          "fa",
                          "pl",
                          "ro",
                          "ru",
                          "sa",
                          "sr",
                          "sn",
                          "sd",
                          "si",
                          "sk",
                          "sl",
                          "so",
                          "su",
                          "sw",
                          "sv",
                          "tl",
                          "tg",
                          "ta",
                          "tt",
                          "te",
                          "th",
                          "bo",
                          "tr",
                          "tk",
                          "uk",
                          "ur",
                          "uz",
                          "vi",
                          "cy",
                          "yi",
                          "yo"
                        ],
                        "x-aai-enum": {
                          "en": {
                            "label": "English (global)"
                          },
                          "en_au": {
                            "label": "English (Australian)"
                          },
                          "en_uk": {
                            "label": "English (British)"
                          },
                          "en_us": {
                            "label": "English (US)"
                          },
                          "es": {
                            "label": "Spanish"
                          },
                          "fr": {
                            "label": "French"
                          },
                          "de": {
                            "label": "German"
                          },
                          "it": {
                            "label": "Italian"
                          },
                          "pt": {
                            "label": "Portuguese"
                          },
                          "nl": {
                            "label": "Dutch"
                          },
                          "af": {
                            "label": "Afrikaans"
                          },
                          "sq": {
                            "label": "Albanian"
                          },
                          "am": {
                            "label": "Amharic"
                          },
                          "ar": {
                            "label": "Arabic"
                          },
                          "hy": {
                            "label": "Armenian"
                          },
                          "as": {
                            "label": "Assamese"
                          },
                          "az": {
                            "label": "Azerbaijani"
                          },
                          "ba": {
                            "label": "Bashkir"
                          },
                          "eu": {
                            "label": "Basque"
                          },
                          "be": {
                            "label": "Belarusian"
                          },
                          "bn": {
                            "label": "Bengali"
                          },
                          "bs": {
                            "label": "Bosnian"
                          },
                          "br": {
                            "label": "Breton"
                          },
                          "bg": {
                            "label": "Bulgarian"
                          },
                          "my": {
                            "label": "Burmese"
                          },
                          "ca": {
                            "label": "Catalan"
                          },
                          "zh": {
                            "label": "Chinese"
                          },
                          "hr": {
                            "label": "Croatian"
                          },
                          "cs": {
                            "label": "Czech"
                          },
                          "da": {
                            "label": "Danish"
                          },
                          "et": {
                            "label": "Estonian"
                          },
                          "fo": {
                            "label": "Faroese"
                          },
                          "fi": {
                            "label": "Finnish"
                          },
                          "gl": {
                            "label": "Galician"
                          },
                          "ka": {
                            "label": "Georgian"
                          },
                          "el": {
                            "label": "Greek"
                          },
                          "gu": {
                            "label": "Gujarati"
                          },
                          "ht": {
                            "label": "Haitian"
                          },
                          "ha": {
                            "label": "Hausa"
                          },
                          "haw": {
                            "label": "Hawaiian"
                          },
                          "he": {
                            "label": "Hebrew"
                          },
                          "hi": {
                            "label": "Hindi"
                          },
                          "hu": {
                            "label": "Hungarian"
                          },
                          "is": {
                            "label": "Icelandic"
                          },
                          "id": {
                            "label": "Indonesian"
                          },
                          "ja": {
                            "label": "Japanese"
                          },
                          "jw": {
                            "label": "Javanese"
                          },
                          "kn": {
                            "label": "Kannada"
                          },
                          "kk": {
                            "label": "Kazakh"
                          },
                          "km": {
                            "label": "Khmer"
                          },
                          "ko": {
                            "label": "Korean"
                          },
                          "lo": {
                            "label": "Lao"
                          },
                          "la": {
                            "label": "Latin"
                          },
                          "lv": {
                            "label": "Latvian"
                          },
                          "ln": {
                            "label": "Lingala"
                          },
                          "lt": {
                            "label": "Lithuanian"
                          },
                          "lb": {
                            "label": "Luxembourgish"
                          },
                          "mk": {
                            "label": "Macedonian"
                          },
                          "mg": {
                            "label": "Malagasy"
                          },
                          "ms": {
                            "label": "Malay"
                          },
                          "ml": {
                            "label": "Malayalam"
                          },
                          "mt": {
                            "label": "Maltese"
                          },
                          "mi": {
                            "label": "Maori"
                          },
                          "mr": {
                            "label": "Marathi"
                          },
                          "mn": {
                            "label": "Mongolian"
                          },
                          "ne": {
                            "label": "Nepali"
                          },
                          "no": {
                            "label": "Norwegian"
                          },
                          "nn": {
                            "label": "Norwegian Nynorsk"
                          },
                          "oc": {
                            "label": "Occitan"
                          },
                          "pa": {
                            "label": "Panjabi"
                          },
                          "ps": {
                            "label": "Pashto"
                          },
                          "fa": {
                            "label": "Persian"
                          },
                          "pl": {
                            "label": "Polish"
                          },
                          "ro": {
                            "label": "Romanian"
                          },
                          "ru": {
                            "label": "Russian"
                          },
                          "sa": {
                            "label": "Sanskrit"
                          },
                          "sr": {
                            "label": "Serbian"
                          },
                          "sn": {
                            "label": "Shona"
                          },
                          "sd": {
                            "label": "Sindhi"
                          },
                          "si": {
                            "label": "Sinhala"
                          },
                          "sk": {
                            "label": "Slovak"
                          },
                          "sl": {
                            "label": "Slovenian"
                          },
                          "so": {
                            "label": "Somali"
                          },
                          "su": {
                            "label": "Sundanese"
                          },
                          "sw": {
                            "label": "Swahili"
                          },
                          "sv": {
                            "label": "Swedish"
                          },
                          "tl": {
                            "label": "Tagalog"
                          },
                          "tg": {
                            "label": "Tajik"
                          },
                          "ta": {
                            "label": "Tamil"
                          },
                          "tt": {
                            "label": "Tatar"
                          },
                          "te": {
                            "label": "Telugu"
                          },
                          "th": {
                            "label": "Thai"
                          },
                          "bo": {
                            "label": "Tibetan"
                          },
                          "tr": {
                            "label": "Turkish"
                          },
                          "tk": {
                            "label": "Turkmen"
                          },
                          "uk": {
                            "label": "Ukrainian"
                          },
                          "ur": {
                            "label": "Urdu"
                          },
                          "uz": {
                            "label": "Uzbek"
                          },
                          "vi": {
                            "label": "Vietnamese"
                          },
                          "cy": {
                            "label": "Welsh"
                          },
                          "yi": {
                            "label": "Yiddish"
                          },
                          "yo": {
                            "label": "Yoruba"
                          }
                        }
                      },
                      {
                        "type": "string"
                      }
                    ]
                  },
                  {
                    "type": "string",
                    "nullable": true
                  }
                ],
                "default": "en_us",
                "x-ts-type": "LiteralUnion<TranscriptLanguageCode, string> | null",
                "x-go-type": "TranscriptLanguageCode"
              },
              "language_codes": {
                "description": "The language codes of your audio file. Used for [Code switching](https://www.assemblyai.com/docs/speech-to-text/pre-recorded-audio/code-switching)\nOne of the values specified must be `en`.\n",
                "type": "array",
                "items": {
                  "x-label": "Language code",
                  "type": "string",
                  "description": "The language of your audio file. Possible values are found in [Supported Languages](https://www.assemblyai.com/docs/pre-recorded-audio/supported-languages).\nThe default value is 'en_us'.\n",
                  "x-fern-sdk-group-name": "transcripts",
                  "enum": [
                    "en",
                    "en_au",
                    "en_uk",
                    "en_us",
                    "es",
                    "fr",
                    "de",
                    "it",
                    "pt",
                    "nl",
                    "af",
                    "sq",
                    "am",
                    "ar",
                    "hy",
                    "as",
                    "az",
                    "ba",
                    "eu",
                    "be",
                    "bn",
                    "bs",
                    "br",
                    "bg",
                    "my",
                    "ca",
                    "zh",
                    "hr",
                    "cs",
                    "da",
                    "et",
                    "fo",
                    "fi",
                    "gl",
                    "ka",
                    "el",
                    "gu",
                    "ht",
                    "ha",
                    "haw",
                    "he",
                    "hi",
                    "hu",
                    "is",
                    "id",
                    "ja",
                    "jw",
                    "kn",
                    "kk",
                    "km",
                    "ko",
                    "lo",
                    "la",
                    "lv",
                    "ln",
                    "lt",
                    "lb",
                    "mk",
                    "mg",
                    "ms",
                    "ml",
                    "mt",
                    "mi",
                    "mr",
                    "mn",
                    "ne",
                    "no",
                    "nn",
                    "oc",
                    "pa",
                    "ps",
                    "fa",
                    "pl",
                    "ro",
                    "ru",
                    "sa",
                    "sr",
                    "sn",
                    "sd",
                    "si",
                    "sk",
                    "sl",
                    "so",
                    "su",
                    "sw",
                    "sv",
                    "tl",
                    "tg",
                    "ta",
                    "tt",
                    "te",
                    "th",
                    "bo",
                    "tr",
                    "tk",
                    "uk",
                    "ur",
                    "uz",
                    "vi",
                    "cy",
                    "yi",
                    "yo"
                  ],
                  "x-aai-enum": {
                    "en": {
                      "label": "English (global)"
                    },
                    "en_au": {
                      "label": "English (Australian)"
                    },
                    "en_uk": {
                      "label": "English (British)"
                    },
                    "en_us": {
                      "label": "English (US)"
                    },
                    "es": {
                      "label": "Spanish"
                    },
                    "fr": {
                      "label": "French"
                    },
                    "de": {
                      "label": "German"
                    },
                    "it": {
                      "label": "Italian"
                    },
                    "pt": {
                      "label": "Portuguese"
                    },
                    "nl": {
                      "label": "Dutch"
                    },
                    "af": {
                      "label": "Afrikaans"
                    },
                    "sq": {
                      "label": "Albanian"
                    },
                    "am": {
                      "label": "Amharic"
                    },
                    "ar": {
                      "label": "Arabic"
                    },
                    "hy": {
                      "label": "Armenian"
                    },
                    "as": {
                      "label": "Assamese"
                    },
                    "az": {
                      "label": "Azerbaijani"
                    },
                    "ba": {
                      "label": "Bashkir"
                    },
                    "eu": {
                      "label": "Basque"
                    },
                    "be": {
                      "label": "Belarusian"
                    },
                    "bn": {
                      "label": "Bengali"
                    },
                    "bs": {
                      "label": "Bosnian"
                    },
                    "br": {
                      "label": "Breton"
                    },
                    "bg": {
                      "label": "Bulgarian"
                    },
                    "my": {
                      "label": "Burmese"
                    },
                    "ca": {
                      "label": "Catalan"
                    },
                    "zh": {
                      "label": "Chinese"
                    },
                    "hr": {
                      "label": "Croatian"
                    },
                    "cs": {
                      "label": "Czech"
                    },
                    "da": {
                      "label": "Danish"
                    },
                    "et": {
                      "label": "Estonian"
                    },
                    "fo": {
                      "label": "Faroese"
                    },
                    "fi": {
                      "label": "Finnish"
                    },
                    "gl": {
                      "label": "Galician"
                    },
                    "ka": {
                      "label": "Georgian"
                    },
                    "el": {
                      "label": "Greek"
                    },
                    "gu": {
                      "label": "Gujarati"
                    },
                    "ht": {
                      "label": "Haitian"
                    },
                    "ha": {
                      "label": "Hausa"
                    },
                    "haw": {
                      "label": "Hawaiian"
                    },
                    "he": {
                      "label": "Hebrew"
                    },
                    "hi": {
                      "label": "Hindi"
                    },
                    "hu": {
                      "label": "Hungarian"
                    },
                    "is": {
                      "label": "Icelandic"
                    },
                    "id": {
                      "label": "Indonesian"
                    },
                    "ja": {
                      "label": "Japanese"
                    },
                    "jw": {
                      "label": "Javanese"
                    },
                    "kn": {
                      "label": "Kannada"
                    },
                    "kk": {
                      "label": "Kazakh"
                    },
                    "km": {
                      "label": "Khmer"
                    },
                    "ko": {
                      "label": "Korean"
                    },
                    "lo": {
                      "label": "Lao"
                    },
                    "la": {
                      "label": "Latin"
                    },
                    "lv": {
                      "label": "Latvian"
                    },
                    "ln": {
                      "label": "Lingala"
                    },
                    "lt": {
                      "label": "Lithuanian"
                    },
                    "lb": {
                      "label": "Luxembourgish"
                    },
                    "mk": {
                      "label": "Macedonian"
                    },
                    "mg": {
                      "label": "Malagasy"
                    },
                    "ms": {
                      "label": "Malay"
                    },
                    "ml": {
                      "label": "Malayalam"
                    },
                    "mt": {
                      "label": "Maltese"
                    },
                    "mi": {
                      "label": "Maori"
                    },
                    "mr": {
                      "label": "Marathi"
                    },
                    "mn": {
                      "label": "Mongolian"
                    },
                    "ne": {
                      "label": "Nepali"
                    },
                    "no": {
                      "label": "Norwegian"
                    },
                    "nn": {
                      "label": "Norwegian Nynorsk"
                    },
                    "oc": {
                      "label": "Occitan"
                    },
                    "pa": {
                      "label": "Panjabi"
                    },
                    "ps": {
                      "label": "Pashto"
                    },
                    "fa": {
                      "label": "Persian"
                    },
                    "pl": {
                      "label": "Polish"
                    },
                    "ro": {
                      "label": "Romanian"
                    },
                    "ru": {
                      "label": "Russian"
                    },
                    "sa": {
                      "label": "Sanskrit"
                    },
                    "sr": {
                      "label": "Serbian"
                    },
                    "sn": {
                      "label": "Shona"
                    },
                    "sd": {
                      "label": "Sindhi"
                    },
                    "si": {
                      "label": "Sinhala"
                    },
                    "sk": {
                      "label": "Slovak"
                    },
                    "sl": {
                      "label": "Slovenian"
                    },
                    "so": {
                      "label": "Somali"
                    },
                    "su": {
                      "label": "Sundanese"
                    },
                    "sw": {
                      "label": "Swahili"
                    },
                    "sv": {
                      "label": "Swedish"
                    },
                    "tl": {
                      "label": "Tagalog"
                    },
                    "tg": {
                      "label": "Tajik"
                    },
                    "ta": {
                      "label": "Tamil"
                    },
                    "tt": {
                      "label": "Tatar"
                    },
                    "te": {
                      "label": "Telugu"
                    },
                    "th": {
                      "label": "Thai"
                    },
                    "bo": {
                      "label": "Tibetan"
                    },
                    "tr": {
                      "label": "Turkish"
                    },
                    "tk": {
                      "label": "Turkmen"
                    },
                    "uk": {
                      "label": "Ukrainian"
                    },
                    "ur": {
                      "label": "Urdu"
                    },
                    "uz": {
                      "label": "Uzbek"
                    },
                    "vi": {
                      "label": "Vietnamese"
                    },
                    "cy": {
                      "label": "Welsh"
                    },
                    "yi": {
                      "label": "Yiddish"
                    },
                    "yo": {
                      "label": "Yoruba"
                    }
                  }
                },
                "nullable": true
              },
              "language_confidence_threshold": {
                "x-label": "Language confidence threshold",
                "description": "The confidence threshold for the automatically detected language.\nAn error will be returned if the language confidence is below this threshold.\nDefaults to 0. See [Automatic Language Detection](https://www.assemblyai.com/docs/pre-recorded-audio/language-detection) for more details.\n",
                "type": "number",
                "format": "float",
                "minimum": 0,
                "maximum": 1,
                "default": 0
              },
              "language_detection": {
                "x-label": "Language detection",
                "description": "Enable [Automatic language detection](https://www.assemblyai.com/docs/pre-recorded-audio/language-detection), either true or false.",
                "type": "boolean",
                "default": false
              },
              "language_detection_options": {
                "x-label": "Specify options for Automatic Language Detection.",
                "description": "Specify options for [Automatic Language Detection](https://www.assemblyai.com/docs/pre-recorded-audio/language-detection).",
                "type": "object",
                "additionalProperties": false,
                "properties": {
                  "expected_languages": {
                    "x-label": "Expected languages",
                    "description": "List of languages expected in the audio file. Defaults to `[\"all\"]` when unspecified. See [Automatic Language Detection](https://www.assemblyai.com/docs/pre-recorded-audio/language-detection) for more details.",
                    "type": "array",
                    "items": {
                      "x-label": "language",
                      "type": "string"
                    }
                  },
                  "fallback_language": {
                    "x-label": "Fallback language",
                    "description": "If the detected language of the audio file is not in the list of expected languages, the `fallback_language` is used. Specify `[\"auto\"]` to let our model choose the fallback language from `expected_languages` with the highest confidence score. See [Automatic Language Detection](https://www.assemblyai.com/docs/pre-recorded-audio/language-detection) for more details.\n",
                    "type": "string",
                    "default": "auto"
                  },
                  "code_switching": {
                    "x-label": "Code switching",
                    "description": "Whether [code switching](https://www.assemblyai.com/docs/speech-to-text/pre-recorded-audio/code-switching) should be detected.\n",
                    "type": "boolean",
                    "default": false
                  },
                  "code_switching_confidence_threshold": {
                    "x-label": "Code switching confidence threshold",
                    "description": "The confidence threshold for [code switching](https://www.assemblyai.com/docs/speech-to-text/pre-recorded-audio/code-switching) detection. If the code switching confidence is below this threshold, the transcript will be processed in the language with the highest `language_detection_confidence` score.\n",
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1,
                    "default": 0.3
                  }
                }
              },
              "multichannel": {
                "x-label": "Multichannel",
                "description": "Enable [Multichannel](https://www.assemblyai.com/docs/pre-recorded-audio/multichannel) transcription, can be true or false.",
                "type": "boolean",
                "default": false
              },
              "prompt": {
                "x-label": "Prompt",
                "description": "Provide natural language prompting of up to 1,500 words of contextual information to the model. See the [Prompting Guide](https://www.assemblyai.com/docs/pre-recorded-audio/prompting) for best practices.\n\nNote: This parameter is only supported for the Universal-3-Pro model.\n",
                "type": "string"
              },
              "punctuate": {
                "x-label": "Punctuate",
                "description": "Enable [Automatic Punctuation](https://www.assemblyai.com/docs/pre-recorded-audio), can be true or false",
                "type": "boolean",
                "default": true
              },
              "redact_pii": {
                "x-label": "Redact PII",
                "description": "Redact PII from the transcribed text using the Redact PII model, can be true or false. See [PII Redaction](https://www.assemblyai.com/docs/pii-redaction) for more details.",
                "type": "boolean",
                "default": false
              },
              "redact_pii_audio": {
                "x-label": "Redact PII audio",
                "description": "Generate a copy of the original media file with spoken PII \"beeped\" out, can be true or false. See [PII redaction](https://www.assemblyai.com/docs/pii-redaction#request-for-redacted-audio) for more details.",
                "type": "boolean",
                "default": false
              },
              "redact_pii_audio_options": {
                "x-label": "Specify options for PII redacted audio files.",
                "description": "Specify options for [PII redacted audio](https://www.assemblyai.com/docs/pii-redaction#request-for-redacted-audio) files.",
                "type": "object",
                "additionalProperties": false,
                "properties": {
                  "return_redacted_no_speech_audio": {
                    "x-label": "Return redacted no speech audio",
                    "description": "By default, audio redaction provides redacted audio URLs only when speech is detected. However, if your use-case specifically requires redacted audio files even for silent audio files without any dialogue, you can opt to receive these URLs by setting this parameter to `true`.",
                    "type": "boolean",
                    "default": false
                  }
                }
              },
              "redact_pii_audio_quality": {
                "x-label": "Redact PII audio quality",
                "type": "string",
                "description": "Controls the filetype of the audio created by redact_pii_audio. Currently supports mp3 (default) and wav. See [PII redaction](https://www.assemblyai.com/docs/pii-redaction#request-for-redacted-audio) for more details.",
                "x-fern-sdk-group-name": "transcripts",
                "enum": [
                  "mp3",
                  "wav"
                ],
                "x-fern-enum": {
                  "mp3": {
                    "description": "MP3 audio format is lower quality and lower size than WAV.",
                    "casing": {
                      "camel": "mp3",
                      "snake": "mp3",
                      "pascal": "Mp3",
                      "screamingSnake": "MP3"
                    }
                  },
                  "wav": {
                    "description": "WAV audio format is the highest quality (no compression) and larger size than MP3."
                  }
                },
                "x-aai-enum": {
                  "mp3": {
                    "label": "MP3"
                  },
                  "wav": {
                    "label": "WAV"
                  }
                },
                "example": "mp3"
              },
              "redact_pii_policies": {
                "x-label": "Redact PII policies",
                "description": "The list of PII Redaction policies to enable. See [PII redaction](https://www.assemblyai.com/docs/pii-redaction) for more details.",
                "type": "array",
                "items": {
                  "x-label": "PII policy",
                  "description": "The type of PII to redact",
                  "x-fern-sdk-group-name": "transcripts",
                  "type": "string",
                  "enum": [
                    "account_number",
                    "banking_information",
                    "blood_type",
                    "credit_card_cvv",
                    "credit_card_expiration",
                    "credit_card_number",
                    "date",
                    "date_interval",
                    "date_of_birth",
                    "drivers_license",
                    "drug",
                    "duration",
                    "email_address",
                    "event",
                    "filename",
                    "gender_sexuality",
                    "healthcare_number",
                    "injury",
                    "ip_address",
                    "language",
                    "location",
                    "marital_status",
                    "medical_condition",
                    "medical_process",
                    "money_amount",
                    "nationality",
                    "number_sequence",
                    "occupation",
                    "organization",
                    "passport_number",
                    "password",
                    "person_age",
                    "person_name",
                    "phone_number",
                    "physical_attribute",
                    "political_affiliation",
                    "religion",
                    "statistics",
                    "time",
                    "url",
                    "us_social_security_number",
                    "username",
                    "vehicle_id",
                    "zodiac_sign"
                  ],
                  "x-fern-enum": {
                    "account_number": {
                      "description": "Customer account or membership identification number (e.g., Policy No. 10042992, Member ID: HZ-5235-001)"
                    },
                    "banking_information": {
                      "description": "Banking information, including account and routing numbers"
                    },
                    "blood_type": {
                      "description": "Blood type (e.g., O-, AB positive)"
                    },
                    "credit_card_cvv": {
                      "description": "Credit card verification code (e.g., CVV: 080)"
                    },
                    "credit_card_expiration": {
                      "description": "Expiration date of a credit card"
                    },
                    "credit_card_number": {
                      "description": "Credit card number"
                    },
                    "date": {
                      "description": "Specific calendar date (e.g., December 18)"
                    },
                    "date_interval": {
                      "description": "Broader time periods, including date ranges, months, seasons, years, and decades (e.g., 2020-2021, 5-9 May, January 1984)"
                    },
                    "date_of_birth": {
                      "description": "Date of birth (e.g., Date of Birth: March 7,1961)"
                    },
                    "drivers_license": {
                      "description": "Driver's license number. (e.g., DL# 356933-540)"
                    },
                    "drug": {
                      "description": "Medications, vitamins, or supplements (e.g., Advil, Acetaminophen, Panadol)"
                    },
                    "duration": {
                      "description": "Periods of time, specified as a number and a unit of time (e.g., 8 months, 2 years)"
                    },
                    "email_address": {
                      "description": "Email address (e.g., support@assemblyai.com)"
                    },
                    "event": {
                      "description": "Name of an event or holiday (e.g., Olympics, Yom Kippur)"
                    },
                    "filename": {
                      "description": "Names of computer files, including the extension or filepath (e.g., Taxes/2012/brad-tax-returns.pdf)"
                    },
                    "gender_sexuality": {
                      "description": "Terms indicating gender identity or sexual orientation, including slang terms (e.g., female, bisexual, trans)"
                    },
                    "healthcare_number": {
                      "description": "Healthcare numbers and health plan beneficiary numbers (e.g., Policy No.: 5584-486-674-YM)"
                    },
                    "injury": {
                      "description": "Bodily injury (e.g., I broke my arm, I have a sprained wrist)"
                    },
                    "ip_address": {
                      "description": "Internet IP address, including IPv4 and IPv6 formats (e.g., 192.168.0.1)"
                    },
                    "language": {
                      "description": "Name of a natural language (e.g., Spanish, French)"
                    },
                    "location": {
                      "description": "Any Location reference including mailing address, postal code, city, state, province, country, or coordinates. (e.g., Lake Victoria, 145 Windsor St., 90210)"
                    },
                    "marital_status": {
                      "description": "Terms indicating marital status (e.g., Single, common-law, ex-wife, married)"
                    },
                    "medical_condition": {
                      "description": "Name of a medical condition, disease, syndrome, deficit, or disorder (e.g., chronic fatigue syndrome, arrhythmia, depression)"
                    },
                    "medical_process": {
                      "description": "Medical process, including treatments, procedures, and tests (e.g., heart surgery, CT scan)"
                    },
                    "money_amount": {
                      "description": "Name and/or amount of currency (e.g., 15 pesos, $94.50)"
                    },
                    "nationality": {
                      "description": "Terms indicating nationality, ethnicity, or race (e.g., American, Asian, Caucasian)"
                    },
                    "number_sequence": {
                      "description": "Numerical PII (including alphanumeric strings) that doesn't fall under other categories"
                    },
                    "occupation": {
                      "description": "Job title or profession (e.g., professor, actors, engineer, CPA)"
                    },
                    "organization": {
                      "description": "Name of an organization (e.g., CNN, McDonalds, University of Alaska, Northwest General Hospital)"
                    },
                    "passport_number": {
                      "description": "Passport numbers, issued by any country (e.g., PA4568332, NU3C6L86S12)"
                    },
                    "password": {
                      "description": "Account passwords, PINs, access keys, or verification answers (e.g., 27%alfalfa, temp1234, My mother's maiden name is Smith)"
                    },
                    "person_age": {
                      "description": "Number associated with an age (e.g., 27, 75)"
                    },
                    "person_name": {
                      "description": "Name of a person (e.g., Bob, Doug Jones, Dr. Kay Martinez, MD)"
                    },
                    "phone_number": {
                      "description": "Telephone or fax number"
                    },
                    "physical_attribute": {
                      "description": "Distinctive bodily attributes, including terms indicating race (e.g., I'm 190cm tall, He belongs to the Black students' association)"
                    },
                    "political_affiliation": {
                      "description": "Terms referring to a political party, movement, or ideology (e.g., Republican, Liberal)"
                    },
                    "religion": {
                      "description": "Terms indicating religious affiliation (e.g., Hindu, Catholic)"
                    },
                    "statistics": {
                      "description": "Medical statistics (e.g., 18%, 18 percent)"
                    },
                    "time": {
                      "description": "Expressions indicating clock times (e.g., 19:37:28, 10pm EST)"
                    },
                    "url": {
                      "description": "Internet addresses (e.g., https://www.assemblyai.com/)"
                    },
                    "us_social_security_number": {
                      "description": "Social Security Number or equivalent"
                    },
                    "username": {
                      "description": "Usernames, login names, or handles (e.g., @AssemblyAI)"
                    },
                    "vehicle_id": {
                      "description": "Vehicle identification numbers (VINs), vehicle serial numbers, and license plate numbers (e.g., 5FNRL38918B111818, BIF7547)"
                    },
                    "zodiac_sign": {
                      "description": "Names of Zodiac signs (e.g., Aries, Taurus)"
                    }
                  },
                  "x-aai-enum": {
                    "account_number": {
                      "label": "Account number"
                    },
                    "banking_information": {
                      "label": "Banking information"
                    },
                    "blood_type": {
                      "label": "Blood type"
                    },
                    "credit_card_cvv": {
                      "label": "Credit card CVV"
                    },
                    "credit_card_expiration": {
                      "label": "Credit card expiration"
                    },
                    "credit_card_number": {
                      "label": "Credit card number"
                    },
                    "date": {
                      "label": "Date"
                    },
                    "date_interval": {
                      "label": "Date interval"
                    },
                    "date_of_birth": {
                      "label": "Date of birth"
                    },
                    "drivers_license": {
                      "label": "Driver's license"
                    },
                    "drug": {
                      "label": "Drug"
                    },
                    "duration": {
                      "label": "Duration"
                    },
                    "email_address": {
                      "label": "Email address"
                    },
                    "event": {
                      "label": "Event"
                    },
                    "filename": {
                      "label": "Filename"
                    },
                    "gender_sexuality": {
                      "label": "Gender sexuality"
                    },
                    "healthcare_number": {
                      "label": "Healthcare number"
                    },
                    "injury": {
                      "label": "Injury"
                    },
                    "ip_address": {
                      "label": "IP address"
                    },
                    "language": {
                      "label": "Language"
                    },
                    "location": {
                      "label": "Location"
                    },
                    "marital_status": {
                      "label": "Marital status"
                    },
                    "medical_condition": {
                      "label": "Medical condition"
                    },
                    "medical_process": {
                      "label": "Medical process"
                    },
                    "money_amount": {
                      "label": "Money amount"
                    },
                    "nationality": {
                      "label": "Nationality"
                    },
                    "number_sequence": {
                      "label": "Number sequence"
                    },
                    "occupation": {
                      "label": "Occupation"
                    },
                    "organization": {
                      "label": "Organization"
                    },
                    "passport_number": {
                      "label": "Passport number"
                    },
                    "password": {
                      "label": "Password"
                    },
                    "person_age": {
                      "label": "Person age"
                    },
                    "person_name": {
                      "label": "Person name"
                    },
                    "phone_number": {
                      "label": "Phone number"
                    },
                    "physical_attribute": {
                      "label": "Physical attribute"
                    },
                    "political_affiliation": {
                      "label": "Political affiliation"
                    },
                    "religion": {
                      "label": "Religion"
                    },
                    "statistics": {
                      "label": "Statistics"
                    },
                    "time": {
                      "label": "Time"
                    },
                    "url": {
                      "label": "URL"
                    },
                    "us_social_security_number": {
                      "label": "US Social Security Number"
                    },
                    "username": {
                      "label": "Username"
                    },
                    "vehicle_id": {
                      "label": "Vehicle ID"
                    },
                    "zodiac_sign": {
                      "label": "Zodiac sign"
                    }
                  }
                }
              },
              "redact_pii_sub": {
                "x-label": "Redact PII substitution",
                "description": "The replacement logic for detected PII, can be `entity_type` or `hash`. See [PII redaction](https://www.assemblyai.com/docs/pii-redaction) for more details.",
                "oneOf": [
                  {
                    "x-label": "Redact PII substitution",
                    "type": "string",
                    "x-fern-sdk-group-name": "transcripts",
                    "description": "The replacement logic for detected PII, can be `entity_name` or `hash`. See [PII redaction](https://www.assemblyai.com/docs/pii-redaction) for more details.",
                    "enum": [
                      "entity_name",
                      "hash"
                    ],
                    "x-aai-enum": {
                      "entity_name": {
                        "label": "Entity name"
                      },
                      "hash": {
                        "label": "Hash"
                      }
                    }
                  },
                  {
                    "type": "string",
                    "nullable": true
                  }
                ],
                "default": "hash"
              },
              "sentiment_analysis": {
                "x-label": "Sentiment Analysis",
                "description": "Enable [Sentiment Analysis](https://www.assemblyai.com/docs/speech-understanding/sentiment-analysis), can be true or false",
                "type": "boolean",
                "default": false
              },
              "speaker_labels": {
                "x-label": "Speaker labels",
                "description": "Enable [Speaker diarization](https://www.assemblyai.com/docs/pre-recorded-audio/speaker-diarization), can be true or false",
                "type": "boolean",
                "default": false
              },
              "speaker_options": {
                "x-label": "Specify options for speaker diarization.",
                "description": "Specify options for [Speaker diarization](https://www.assemblyai.com/docs/pre-recorded-audio/speaker-diarization#set-a-range-of-possible-speakers). Use this to set a range of possible speakers.",
                "type": "object",
                "additionalProperties": false,
                "properties": {
                  "min_speakers_expected": {
                    "x-label": "Minimum speakers expected",
                    "description": "The minimum number of speakers expected in the audio file. See [Set a range of possible speakers](https://www.assemblyai.com/docs/pre-recorded-audio/speaker-diarization#set-a-range-of-possible-speakers) for more details.",
                    "type": "integer",
                    "default": 1
                  },
                  "max_speakers_expected": {
                    "x-label": "Maximum speakers expected",
                    "description": "<Warning>Setting this parameter too high may hurt model accuracy</Warning>\nThe maximum number of speakers expected in the audio file. See [Set a range of possible speakers](https://www.assemblyai.com/docs/pre-recorded-audio/speaker-diarization#set-a-range-of-possible-speakers) for more details.\n",
                    "type": "integer",
                    "default": 10
                  }
                }
              },
              "speakers_expected": {
                "x-label": "Speakers expected",
                "description": "Tells the speaker label model how many speakers it should attempt to identify. See [Set number of speakers expected](https://www.assemblyai.com/docs/pre-recorded-audio/speaker-diarization#set-number-of-speakers-expected) for more details.",
                "type": "integer",
                "default": null,
                "nullable": true
              },
              "speech_models": {
                "x-label": "Speech models",
                "description": "List multiple speech models in priority order, allowing our system to automatically route your audio to the best available option. See [Model Selection](https://www.assemblyai.com/docs/pre-recorded-audio/select-the-speech-model) for available models and routing behavior.\n",
                "type": "array",
                "items": {
                  "x-label": "Speech model",
                  "type": "string",
                  "description": "The speech model to use for the transcription. See [Model Selection](https://www.assemblyai.com/docs/pre-recorded-audio/select-the-speech-model) for available models.",
                  "x-fern-sdk-group-name": "transcripts"
                }
              },
              "speech_threshold": {
                "x-label": "Speech threshold",
                "description": "Reject audio files that contain less than this fraction of speech.\nValid values are in the range [0, 1] inclusive. See [Speech Threshold](https://www.assemblyai.com/docs/speech-threshold) for more details.\n",
                "type": "number",
                "format": "float",
                "minimum": 0,
                "maximum": 1,
                "default": 0,
                "nullable": true
              },
              "speech_understanding": {
                "x-label": "Speech Understanding",
                "description": "Enable speech understanding tasks like [Translation](https://www.assemblyai.com/docs/speech-understanding/translation), [Speaker Identification](https://www.assemblyai.com/docs/speech-understanding/speaker-identification), and [Custom Formatting](https://www.assemblyai.com/docs/speech-understanding/custom-formatting). See the task-specific docs for available options and configuration.\n",
                "type": "object",
                "properties": {
                  "request": {
                    "oneOf": [
                      {
                        "x-label": "Translation request body",
                        "description": "Request body for [Translation](https://www.assemblyai.com/docs/speech-understanding/translation).",
                        "type": "object",
                        "properties": {
                          "translation": {
                            "type": "object",
                            "properties": {
                              "target_languages": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "List of target language codes (e.g., `[\"es\", \"de\"]`). See [Translation](https://www.assemblyai.com/docs/speech-understanding/translation) for supported languages."
                              },
                              "formal": {
                                "type": "boolean",
                                "description": "Use formal language style. See [Translation](https://www.assemblyai.com/docs/speech-understanding/translation) for more details.",
                                "default": true
                              },
                              "match_original_utterance": {
                                "type": "boolean",
                                "description": "When enabled with Speaker Labels, returns translated text in the utterances array. Each utterance will include a `translated_texts` key containing translations for each target language.",
                                "default": false
                              }
                            },
                            "required": [
                              "target_languages"
                            ]
                          }
                        },
                        "required": [
                          "translation"
                        ]
                      },
                      {
                        "type": "object",
                        "description": "Request body for [Speaker Identification](https://www.assemblyai.com/docs/speech-understanding/speaker-identification).",
                        "properties": {
                          "speaker_identification": {
                            "type": "object",
                            "properties": {
                              "speaker_type": {
                                "type": "string",
                                "enum": [
                                  "role",
                                  "name"
                                ],
                                "description": "Type of speaker identification. See [Speaker Identification](https://www.assemblyai.com/docs/speech-understanding/speaker-identification) for details on each type."
                              },
                              "known_values": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Required if speaker_type is \"role\". Each value must be 35 characters or less."
                              },
                              "speakers": {
                                "type": "array",
                                "description": "An array of speaker objects with metadata to improve identification accuracy. Each object should include a `role` or `name` (depending on `speaker_type`) and an optional `description` to help the model identify the speaker. You can also include any additional custom properties (e.g., `company`, `title`) to provide more context. Use this as an alternative to `known_values` when you want to provide additional context about each speaker.",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "role": {
                                      "type": "string",
                                      "description": "The role of the speaker. Required when `speaker_type` is \"role\"."
                                    },
                                    "name": {
                                      "type": "string",
                                      "description": "The name of the speaker. Required when `speaker_type` is \"name\"."
                                    },
                                    "description": {
                                      "type": "string",
                                      "description": "A description of the speaker to help the model identify them based on conversational context."
                                    }
                                  },
                                  "additionalProperties": true
                                }
                              }
                            },
                            "required": [
                              "speaker_type"
                            ]
                          }
                        },
                        "required": [
                          "speaker_identification"
                        ]
                      },
                      {
                        "type": "object",
                        "description": "Request body for [Custom Formatting](https://www.assemblyai.com/docs/speech-understanding/custom-formatting).",
                        "properties": {
                          "custom_formatting": {
                            "type": "object",
                            "properties": {
                              "date": {
                                "type": "string",
                                "description": "Date format pattern (e.g., `\"mm/dd/yyyy\"`). See [Custom Formatting](https://www.assemblyai.com/docs/speech-understanding/custom-formatting) for more details."
                              },
                              "phone_number": {
                                "type": "string",
                                "description": "Phone number format pattern (e.g., `\"(xxx)xxx-xxxx\"`). See [Custom Formatting](https://www.assemblyai.com/docs/speech-understanding/custom-formatting) for more details."
                              },
                              "email": {
                                "type": "string",
                                "description": "Email format pattern (e.g., `\"username@domain.com\"`). See [Custom Formatting](https://www.assemblyai.com/docs/speech-understanding/custom-formatting) for more details."
                              }
                            }
                          }
                        },
                        "required": [
                          "custom_formatting"
                        ]
                      }
                    ]
                  }
                },
                "required": [
                  "request"
                ]
              },
              "summarization": {
                "x-label": "Enable Summarization",
                "description": "Enable [Summarization](https://www.assemblyai.com/docs/speech-understanding/summarization), can be true or false",
                "type": "boolean",
                "default": false
              },
              "summary_model": {
                "type": "string",
                "x-label": "Summary model",
                "description": "The model to summarize the transcript",
                "x-fern-sdk-group-name": "transcripts",
                "enum": [
                  "informative",
                  "conversational",
                  "catchy"
                ],
                "x-aai-enum": {
                  "informative": {
                    "label": "Informative"
                  },
                  "conversational": {
                    "label": "Conversational"
                  },
                  "catchy": {
                    "label": "Catchy"
                  }
                }
              },
              "summary_type": {
                "type": "string",
                "x-label": "Summary type",
                "description": "The type of summary",
                "x-fern-sdk-group-name": "transcripts",
                "enum": [
                  "bullets",
                  "bullets_verbose",
                  "gist",
                  "headline",
                  "paragraph"
                ],
                "x-aai-enum": {
                  "bullets": {
                    "label": "Bullets"
                  },
                  "bullets_verbose": {
                    "label": "Bullets verbose"
                  },
                  "gist": {
                    "label": "Gist"
                  },
                  "headline": {
                    "label": "Headline"
                  },
                  "paragraph": {
                    "label": "Paragraph"
                  }
                }
              },
              "temperature": {
                "x-label": "Temperature",
                "description": "Control the amount of randomness injected into the model's response. See the [Prompting Guide](https://www.assemblyai.com/docs/pre-recorded-audio/prompting) for more details.\n\nNote: This parameter can only be used with the Universal-3-Pro model.\n",
                "type": "number",
                "minimum": 0,
                "maximum": 1,
                "default": 0
              },
              "custom_topics": {
                "x-label": "Enable custom topics",
                "description": "This parameter does not currently have any functionality attached to it.",
                "type": "boolean",
                "default": false,
                "deprecated": true
              },
              "speech_model": {
                "x-label": "Speech model",
                "description": "This parameter has been replaced with the `speech_models` parameter, learn more about the `speech_models` parameter [here](https://www.assemblyai.com/docs/pre-recorded-audio/select-the-speech-model).\n",
                "oneOf": [
                  {
                    "x-label": "Speech model",
                    "type": "string",
                    "description": "The speech model to use for the transcription. See [Model Selection](https://www.assemblyai.com/docs/pre-recorded-audio/select-the-speech-model) for available models.",
                    "x-fern-sdk-group-name": "transcripts"
                  },
                  {
                    "type": "string",
                    "nullable": true
                  }
                ],
                "deprecated": true
              },
              "topics": {
                "x-label": "Custom topics",
                "description": "This parameter does not currently have any functionality attached to it.",
                "type": "array",
                "items": {
                  "x-label": "Topic",
                  "type": "string"
                },
                "deprecated": true
              }
            },
            "type": "object",
            "additionalProperties": false,
            "x-label": "Optional transcript parameters",
            "description": "Docs: https://www.assemblyai.com/docs/api-reference/transcripts/submit",
            "x-fern-sdk-group-name": "transcripts",
            "example": {
              "speech_model": null,
              "language_code": "en_us",
              "language_detection": true,
              "language_confidence_threshold": 0.7,
              "punctuate": true,
              "format_text": true,
              "multichannel": true,
              "webhook_url": "https://your-webhook-url.tld/path",
              "webhook_auth_header_name": "webhook-secret",
              "webhook_auth_header_value": "webhook-secret-value",
              "auto_highlights": true,
              "audio_start_from": 10,
              "audio_end_at": 280,
              "filter_profanity": true,
              "redact_pii": true,
              "redact_pii_audio": true,
              "redact_pii_audio_quality": "mp3",
              "redact_pii_policies": [
                "us_social_security_number",
                "credit_card_number"
              ],
              "redact_pii_sub": "hash",
              "speaker_labels": true,
              "speakers_expected": 2,
              "content_safety": true,
              "iab_categories": true,
              "custom_spelling": [],
              "disfluencies": false,
              "sentiment_analysis": true,
              "auto_chapters": true,
              "entity_detection": true,
              "speech_threshold": 0.5,
              "summarization": true,
              "summary_model": "informative",
              "summary_type": "bullets",
              "custom_topics": true,
              "topics": [],
              "speech_understanding": {
                "request": {
                  "translation": {
                    "target_languages": [
                      "es",
                      "de"
                    ],
                    "formal": true,
                    "match_original_utterance": true
                  }
                }
              }
            },
            "title": "AssemblyAi async chunked transcription Settings"
          },
          "assembly_ai_v3_streaming": {
            "type": "object",
            "properties": {
              "speech_model": {
                "description": "The speech model used for your Streaming session.",
                "enum": [
                  "universal-streaming-english",
                  "universal-streaming-multilingual",
                  "whisper-rt",
                  "u3-rt-pro",
                  "universal-3-5-pro"
                ]
              },
              "format_turns": {
                "description": "Whether to return formatted final transcripts.",
                "default": false,
                "type": "boolean"
              },
              "inactivity_timeout": {
                "description": "Optional time in seconds of inactivity before session is terminated. If not set, no inactivity timeout is applied.",
                "default": "None",
                "format": "s",
                "type": "integer",
                "minimum": 5,
                "maximum": 3600
              },
              "keyterms_prompt": {
                "description": "A list of words and phrases to improve recognition accuracy for. See [Keyterms Prompting](https://www.assemblyai.com/docs/streaming/keyterms-prompting) for more details.",
                "type": "array",
                "items": {
                  "x-label": "Word",
                  "type": "string"
                }
              },
              "language_detection": {
                "description": "Whether to detect the language and return language metadata on utterances and final turns. Only available for the multilingual model.",
                "enum": [
                  "true",
                  "false",
                  true,
                  false
                ],
                "default": "false"
              },
              "max_turn_silence": {
                "description": "The maximum amount of silence in milliseconds allowed in a turn before end of turn is triggered. See [Turn Detection](https://www.assemblyai.com/docs/streaming/universal-streaming/turn-detection) for configuration details.",
                "type": "integer",
                "default": 1280
              },
              "min_turn_silence": {
                "description": "The minimum amount of silence in milliseconds required to detect end of turn when confident. See [Turn Detection](https://www.assemblyai.com/docs/streaming/universal-streaming/turn-detection) for configuration details.",
                "type": "integer",
                "default": 400
              },
              "vad_threshold": {
                "description": "The confidence threshold (0.0 to 1.0) for classifying audio frames as silence. Frames with VAD confidence below this value are considered silent. Increase for noisy environments to reduce false speech detection.",
                "default": 0.4,
                "type": "number"
              },
              "end_of_turn_confidence_threshold": {
                "description": "The confidence threshold (0.0 to 1.0) to use when determining if the end of a turn has been reached. See [Turn Detection](https://www.assemblyai.com/docs/streaming/universal-streaming/turn-detection) for configuration details.",
                "deprecated": true,
                "type": "number",
                "default": 0.4
              },
              "language": {
                "description": "The language of your audio stream.",
                "enum": [
                  "en",
                  "multi"
                ],
                "default": "en",
                "deprecated": true
              }
            },
            "title": "AssemblyAi Real-time Transcription Settings",
            "description": "Docs: https://www.assemblyai.com/docs/api-reference/streaming-api/streaming-api"
          },
          "deepgram_streaming": {
            "type": "object",
            "properties": {
              "diarize": {
                "description": "Defaults to `false`. Recognize speaker changes. Each word in the transcript will be assigned a speaker number starting at 0",
                "default": "false",
                "enum": [
                  "true",
                  "false",
                  true,
                  false
                ]
              },
              "dictation": {
                "description": "Identify and extract key entities from content in submitted audio",
                "default": "false",
                "enum": [
                  "true",
                  "false",
                  true,
                  false
                ]
              },
              "endpointing": {
                "description": "Indicates how long Deepgram will wait to detect whether a speaker has finished speaking or pauses for a significant period of time. When set to a value, the streaming endpoint immediately finalizes the transcription for the processed time range and returns the transcript with a speech_final parameter set to true. Can also be set to false to disable endpointing",
                "default": "10"
              },
              "extra": {
                "description": "Arbitrary key-value pairs that are attached to the API response for usage in downstream processing"
              },
              "filler_words": {
                "description": "Filler Words can help transcribe interruptions in your audio, like \"uh\" and \"um\"",
                "default": "false",
                "enum": [
                  "true",
                  "false",
                  true,
                  false
                ]
              },
              "interim_results": {
                "description": "Specifies whether the streaming endpoint should provide ongoing transcription updates as more audio is received. When set to true, the endpoint sends continuous updates, meaning transcription results may evolve over time",
                "default": "false",
                "enum": [
                  "true",
                  "false",
                  true,
                  false
                ]
              },
              "keyterm": {
                "description": "Key term prompting can boost or suppress specialized terminology and brands. Only compatible with Nova-3"
              },
              "keywords": {
                "description": "Keywords can boost or suppress specialized terminology and brands"
              },
              "language": {
                "description": "The [BCP-47 language tag](https://tools.ietf.org/html/bcp47) that hints at the primary spoken language. Depending on the Model you choose only certain languages are available",
                "default": "en",
                "enum": [
                  "bg",
                  "ca",
                  "cs",
                  "da",
                  "da-DK",
                  "de",
                  "de-CH",
                  "el",
                  "en",
                  "en-AU",
                  "en-GB",
                  "en-IN",
                  "en-NZ",
                  "en-US",
                  "es",
                  "es-419",
                  "es-LATAM",
                  "et",
                  "fi",
                  "fr",
                  "fr-CA",
                  "hi",
                  "hi-Latn",
                  "hu",
                  "id",
                  "it",
                  "ja",
                  "ko",
                  "ko-KR",
                  "lt",
                  "lv",
                  "ms",
                  "multi",
                  "nl",
                  "nl-BE",
                  "no",
                  "pl",
                  "pt",
                  "pt-BR",
                  "pt-PT",
                  "ro",
                  "ru",
                  "sk",
                  "sv",
                  "sv-SE",
                  "taq",
                  "th",
                  "th-TH",
                  "tr",
                  "uk",
                  "vi",
                  "zh",
                  "zh-CN",
                  "zh-HK",
                  "zh-Hans",
                  "zh-Hant",
                  "zh-TW"
                ]
              },
              "mip_opt_out": {
                "description": "Opts out requests from the Deepgram Model Improvement Program. Refer to our Docs for pricing impacts before setting this to true. https://dpgr.am/deepgram-mip",
                "default": "false"
              },
              "model": {
                "description": "AI model to use for the transcription",
                "enum": [
                  "nova-3",
                  "nova-3-general",
                  "nova-3-medical",
                  "nova-2",
                  "nova-2-general",
                  "nova-2-meeting",
                  "nova-2-finance",
                  "nova-2-conversationalai",
                  "nova-2-voicemail",
                  "nova-2-video",
                  "nova-2-medical",
                  "nova-2-drivethru",
                  "nova-2-automotive",
                  "nova",
                  "nova-general",
                  "nova-phonecall",
                  "nova-medical",
                  "enhanced",
                  "enhanced-general",
                  "enhanced-meeting",
                  "enhanced-phonecall",
                  "enhanced-finance",
                  "base",
                  "meeting",
                  "phonecall",
                  "finance",
                  "conversationalai",
                  "voicemail",
                  "video",
                  "custom"
                ]
              },
              "multichannel": {
                "description": "Transcribe each audio channel independently",
                "default": "false",
                "enum": [
                  "true",
                  "false",
                  true,
                  false
                ]
              },
              "numerals": {
                "description": "Convert numbers from written format to numerical format",
                "default": "false",
                "enum": [
                  "true",
                  "false",
                  true,
                  false
                ]
              },
              "profanity_filter": {
                "description": "Profanity Filter looks for recognized profanity and converts it to the nearest recognized non-profane word or removes it from the transcript completely",
                "default": "false",
                "enum": [
                  "true",
                  "false",
                  true,
                  false
                ]
              },
              "punctuate": {
                "description": "Add punctuation and capitalization to the transcript",
                "default": "false",
                "enum": [
                  "true",
                  "false",
                  true,
                  false
                ]
              },
              "redact": {
                "description": "Redaction removes sensitive information from your transcripts",
                "default": "false",
                "oneOf": [
                  {
                    "type": "string"
                  },
                  {
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  }
                ]
              },
              "replace": {
                "description": "Search for terms or phrases in submitted audio and replaces them"
              },
              "search": {
                "description": "Search for terms or phrases in submitted audio"
              },
              "smart_format": {
                "description": "Apply formatting to transcript output. When set to true, additional formatting will be applied to transcripts to improve readability",
                "default": "false",
                "enum": [
                  "true",
                  "false",
                  true,
                  false
                ]
              },
              "tag": {
                "description": "Label your requests for the purpose of identification during usage reporting"
              },
              "utterance_end_ms": {
                "description": "Indicates how long Deepgram will wait to send an UtteranceEnd message after a word has been transcribed. Use with interim_results"
              },
              "vad_events": {
                "description": "Indicates that speech has started. You'll begin receiving Speech Started messages upon speech starting",
                "default": "false",
                "enum": [
                  "true",
                  "false",
                  true,
                  false
                ]
              },
              "version": {
                "description": "Version of an AI model to use",
                "default": "latest"
              }
            },
            "title": "Deepgram Real-time Transcription Settings",
            "description": "Docs: https://developers.deepgram.com/reference/streaming"
          },
          "gladia_v2_streaming": {
            "type": "object",
            "properties": {
              "custom_metadata": {
                "type": "object",
                "description": "Custom metadata you can attach to this live transcription",
                "example": {
                  "user": "John Doe"
                }
              },
              "model": {
                "type": "string",
                "description": "The model used to process the audio. \"solaria-1\" is used by default.",
                "default": "solaria-1",
                "enum": [
                  "solaria-1"
                ]
              },
              "endpointing": {
                "type": "number",
                "description": "The endpointing duration in seconds. Endpointing is the duration of silence which will cause an utterance to be considered as finished",
                "default": 0.05,
                "minimum": 0.01,
                "maximum": 10
              },
              "maximum_duration_without_endpointing": {
                "type": "number",
                "description": "The maximum duration in seconds without endpointing. If endpointing is not detected after this duration, current utterance will be considered as finished",
                "default": 5,
                "minimum": 5,
                "maximum": 60
              },
              "language_config": {
                "properties": {
                  "languages": {
                    "type": "array",
                    "description": "If one language is set, it will be used for the transcription. Otherwise, language will be auto-detected by the model.",
                    "default": [],
                    "items": {
                      "type": "string",
                      "enum": [
                        "af",
                        "sq",
                        "am",
                        "ar",
                        "hy",
                        "as",
                        "az",
                        "ba",
                        "eu",
                        "be",
                        "bn",
                        "bs",
                        "br",
                        "bg",
                        "ca",
                        "zh",
                        "hr",
                        "cs",
                        "da",
                        "nl",
                        "en",
                        "et",
                        "fo",
                        "fi",
                        "fr",
                        "gl",
                        "ka",
                        "de",
                        "el",
                        "gu",
                        "ht",
                        "ha",
                        "haw",
                        "he",
                        "hi",
                        "hu",
                        "is",
                        "id",
                        "it",
                        "ja",
                        "jv",
                        "kn",
                        "kk",
                        "km",
                        "ko",
                        "lo",
                        "la",
                        "lv",
                        "ln",
                        "lt",
                        "lb",
                        "mk",
                        "mg",
                        "ms",
                        "ml",
                        "mt",
                        "mi",
                        "mr",
                        "mn",
                        "mymr",
                        "ne",
                        "no",
                        "nn",
                        "oc",
                        "ps",
                        "fa",
                        "pl",
                        "pt",
                        "pa",
                        "ro",
                        "ru",
                        "sa",
                        "sr",
                        "sn",
                        "sd",
                        "si",
                        "sk",
                        "sl",
                        "so",
                        "es",
                        "su",
                        "sw",
                        "sv",
                        "tl",
                        "tg",
                        "ta",
                        "tt",
                        "te",
                        "th",
                        "bo",
                        "tr",
                        "tk",
                        "uk",
                        "ur",
                        "uz",
                        "vi",
                        "cy",
                        "yi",
                        "yo",
                        "jp"
                      ]
                    }
                  },
                  "code_switching": {
                    "type": "boolean",
                    "description": "If true, language will be auto-detected on each utterance. Otherwise, language will be auto-detected on first utterance and then used for the rest of the transcription. If one language is set, this option will be ignored.",
                    "default": false
                  }
                },
                "type": "object",
                "description": "Specify the language configuration"
              },
              "pre_processing": {
                "properties": {
                  "audio_enhancer": {
                    "type": "boolean",
                    "description": "If true, apply pre-processing to the audio stream to enhance the quality.",
                    "default": false
                  },
                  "speech_threshold": {
                    "type": "number",
                    "description": "Sensitivity configuration for Speech Threshold. A value close to 1 will apply stricter thresholds, making it less likely to detect background sounds as speech.",
                    "default": 0.6,
                    "minimum": 0,
                    "maximum": 1
                  }
                },
                "type": "object",
                "description": "Specify the pre-processing configuration"
              },
              "realtime_processing": {
                "properties": {
                  "custom_vocabulary": {
                    "type": "boolean",
                    "description": "If true, enable custom vocabulary for the transcription.",
                    "default": false
                  },
                  "custom_vocabulary_config": {
                    "properties": {
                      "vocabulary": {
                        "description": "Specific vocabulary list to feed the transcription model with. Each item can be a string or an object with the following properties: value, intensity, pronunciations, language.",
                        "example": [
                          "Westeros",
                          {
                            "value": "Stark"
                          },
                          {
                            "value": "Night's Watch",
                            "pronunciations": [
                              "Nightz Watch"
                            ],
                            "intensity": 0.4,
                            "language": "en"
                          }
                        ],
                        "type": "array",
                        "items": {
                          "oneOf": [
                            {
                              "type": "object",
                              "properties": {
                                "value": {
                                  "type": "string",
                                  "description": "The text used to replace in the transcription.",
                                  "example": "Gladia"
                                },
                                "intensity": {
                                  "type": "number",
                                  "description": "The global intensity of the feature.",
                                  "example": 0.5,
                                  "minimum": 0,
                                  "maximum": 1
                                },
                                "pronunciations": {
                                  "description": "The pronunciations used in the transcription.",
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  }
                                },
                                "language": {
                                  "type": "string",
                                  "description": "Specify the language in which it will be pronounced when sound comparison occurs. Default to transcription language.",
                                  "example": "en"
                                }
                              },
                              "required": [
                                "value"
                              ]
                            },
                            {
                              "type": "string"
                            }
                          ]
                        }
                      },
                      "default_intensity": {
                        "type": "number",
                        "description": "Default intensity for the custom vocabulary",
                        "example": 0.5,
                        "minimum": 0,
                        "maximum": 1
                      }
                    },
                    "required": [
                      "vocabulary"
                    ],
                    "type": "object",
                    "description": "Custom vocabulary configuration, if `custom_vocabulary` is enabled"
                  },
                  "custom_spelling": {
                    "type": "boolean",
                    "description": "If true, enable custom spelling for the transcription.",
                    "default": false
                  },
                  "custom_spelling_config": {
                    "properties": {
                      "spelling_dictionary": {
                        "type": "object",
                        "description": "The list of spelling applied on the audio transcription",
                        "example": {
                          "Gettleman": [
                            "gettleman"
                          ],
                          "SQL": [
                            "Sequel"
                          ]
                        }
                      }
                    },
                    "required": [
                      "spelling_dictionary"
                    ],
                    "type": "object",
                    "description": "Custom spelling configuration, if `custom_spelling` is enabled"
                  },
                  "translation": {
                    "type": "boolean",
                    "description": "If true, enable translation for the transcription",
                    "default": false
                  },
                  "translation_config": {
                    "properties": {
                      "target_languages": {
                        "type": "array",
                        "example": [
                          "en"
                        ],
                        "minItems": 1,
                        "items": {
                          "type": "string",
                          "description": "The target language in `iso639-1` format",
                          "enum": [
                            "af",
                            "sq",
                            "am",
                            "ar",
                            "hy",
                            "as",
                            "ast",
                            "az",
                            "ba",
                            "eu",
                            "be",
                            "bn",
                            "bs",
                            "br",
                            "bg",
                            "my",
                            "ca",
                            "ceb",
                            "zh",
                            "hr",
                            "cs",
                            "da",
                            "nl",
                            "en",
                            "et",
                            "fo",
                            "fi",
                            "nl",
                            "fr",
                            "fy",
                            "ff",
                            "gd",
                            "gl",
                            "lg",
                            "ka",
                            "de",
                            "el",
                            "gu",
                            "ht",
                            "ha",
                            "haw",
                            "he",
                            "hi",
                            "hu",
                            "is",
                            "ig",
                            "ilo",
                            "id",
                            "ga",
                            "it",
                            "ja",
                            "jp",
                            "jv",
                            "kn",
                            "kk",
                            "km",
                            "ko",
                            "lo",
                            "la",
                            "lv",
                            "ln",
                            "lt",
                            "lb",
                            "mk",
                            "mg",
                            "ms",
                            "ml",
                            "mt",
                            "mi",
                            "mr",
                            "mo",
                            "mn",
                            "mymr",
                            "ne",
                            "no",
                            "nn",
                            "oc",
                            "or",
                            "pa",
                            "ps",
                            "fa",
                            "pl",
                            "pt",
                            "pa",
                            "ro",
                            "ru",
                            "sa",
                            "sr",
                            "sn",
                            "sd",
                            "si",
                            "sk",
                            "sl",
                            "so",
                            "es",
                            "su",
                            "sw",
                            "ss",
                            "sv",
                            "tl",
                            "tg",
                            "ta",
                            "tt",
                            "te",
                            "th",
                            "bo",
                            "tn",
                            "tr",
                            "tk",
                            "uk",
                            "ur",
                            "uz",
                            "vi",
                            "cy",
                            "wo",
                            "xh",
                            "yi",
                            "yo",
                            "zu"
                          ]
                        }
                      },
                      "model": {
                        "type": "string",
                        "description": "Model you want the translation model to use to translate",
                        "default": "base",
                        "enum": [
                          "base",
                          "enhanced"
                        ]
                      },
                      "match_original_utterances": {
                        "type": "boolean",
                        "description": "Align translated utterances with the original ones",
                        "default": true
                      },
                      "lipsync": {
                        "type": "boolean",
                        "description": "Whether to apply lipsync to the translated transcription. ",
                        "default": true
                      },
                      "context_adaptation": {
                        "type": "boolean",
                        "description": "Enables or disables context-aware translation features that allow the model to adapt translations based on provided context.",
                        "default": true
                      },
                      "context": {
                        "type": "string",
                        "description": "Context information to improve translation accuracy"
                      },
                      "informal": {
                        "type": "boolean",
                        "description": "Forces the translation to use informal language forms when available in the target language.",
                        "default": false
                      }
                    },
                    "required": [
                      "target_languages"
                    ],
                    "type": "object",
                    "description": "Translation configuration, if `translation` is enabled"
                  },
                  "named_entity_recognition": {
                    "type": "boolean",
                    "description": "If true, enable named entity recognition for the transcription.",
                    "default": false
                  },
                  "sentiment_analysis": {
                    "type": "boolean",
                    "description": "If true, enable sentiment analysis for the transcription.",
                    "default": false
                  }
                },
                "type": "object",
                "description": "Specify the realtime processing configuration"
              },
              "post_processing": {
                "properties": {
                  "summarization": {
                    "type": "boolean",
                    "description": "If true, generates summarization for the whole transcription.",
                    "default": false
                  },
                  "summarization_config": {
                    "properties": {
                      "type": {
                        "type": "string",
                        "description": "The type of summarization to apply",
                        "default": "general",
                        "enum": [
                          "general",
                          "bullet_points",
                          "concise"
                        ]
                      }
                    },
                    "type": "object",
                    "description": "Summarization configuration, if `summarization` is enabled"
                  },
                  "chapterization": {
                    "type": "boolean",
                    "description": "If true, generates chapters for the whole transcription.",
                    "default": false
                  }
                },
                "type": "object",
                "description": "Specify the post-processing configuration"
              },
              "messages_config": {
                "properties": {
                  "receive_final_transcripts": {
                    "type": "boolean",
                    "description": "If true, final utterance will be sent to websocket.",
                    "default": true
                  },
                  "receive_speech_events": {
                    "type": "boolean",
                    "description": "If true, begin and end speech events will be sent to websocket.",
                    "default": true
                  },
                  "receive_pre_processing_events": {
                    "type": "boolean",
                    "description": "If true, pre-processing events will be sent to websocket.",
                    "default": true
                  },
                  "receive_realtime_processing_events": {
                    "type": "boolean",
                    "description": "If true, realtime processing events will be sent to websocket.",
                    "default": true
                  },
                  "receive_post_processing_events": {
                    "type": "boolean",
                    "description": "If true, post-processing events will be sent to websocket.",
                    "default": true
                  },
                  "receive_acknowledgments": {
                    "type": "boolean",
                    "description": "If true, acknowledgments will be sent to websocket.",
                    "default": true
                  },
                  "receive_errors": {
                    "type": "boolean",
                    "description": "If true, errors will be sent to websocket.",
                    "default": true
                  },
                  "receive_lifecycle_events": {
                    "type": "boolean",
                    "description": "If true, lifecycle events will be sent to websocket.",
                    "default": false
                  }
                },
                "type": "object",
                "description": "Specify the websocket messages configuration"
              },
              "callback": {
                "type": "boolean",
                "description": "If true, messages will be sent to configured url.",
                "default": false
              },
              "callback_config": {
                "properties": {
                  "url": {
                    "type": "string",
                    "description": "URL on which we will do a `POST` request with configured messages",
                    "example": "https://callback.example",
                    "format": "uri"
                  },
                  "receive_final_transcripts": {
                    "type": "boolean",
                    "description": "If true, final utterance will be sent to the defined callback.",
                    "default": true
                  },
                  "receive_speech_events": {
                    "type": "boolean",
                    "description": "If true, begin and end speech events will be sent to the defined callback.",
                    "default": false
                  },
                  "receive_pre_processing_events": {
                    "type": "boolean",
                    "description": "If true, pre-processing events will be sent to the defined callback.",
                    "default": true
                  },
                  "receive_realtime_processing_events": {
                    "type": "boolean",
                    "description": "If true, realtime processing events will be sent to the defined callback.",
                    "default": true
                  },
                  "receive_post_processing_events": {
                    "type": "boolean",
                    "description": "If true, post-processing events will be sent to the defined callback.",
                    "default": true
                  },
                  "receive_acknowledgments": {
                    "type": "boolean",
                    "description": "If true, acknowledgments will be sent to the defined callback.",
                    "default": false
                  },
                  "receive_errors": {
                    "type": "boolean",
                    "description": "If true, errors will be sent to the defined callback.",
                    "default": false
                  },
                  "receive_lifecycle_events": {
                    "type": "boolean",
                    "description": "If true, lifecycle events will be sent to the defined callback.",
                    "default": true
                  }
                },
                "type": "object",
                "description": "Specify the callback configuration"
              }
            },
            "title": "Gladia Real-time Transcription Settings",
            "description": "Docs: https://docs.gladia.io/reference/live-audio"
          },
          "rev_streaming": {
            "type": "object",
            "properties": {
              "obscure_expletives": {
                "type": "boolean"
              },
              "delete_after": {
                "type": "string",
                "format": "date-span"
              },
              "audio_options._content_type": {
                "type": "string"
              },
              "audio_options._layout": {
                "type": "string"
              },
              "audio_options._rate": {
                "type": "integer",
                "format": "int32"
              },
              "audio_options._format": {
                "type": "string"
              },
              "audio_options._channels": {
                "type": "integer",
                "format": "int32"
              },
              "transcriber": {
                "enum": [
                  0,
                  1
                ],
                "type": "integer",
                "format": "int32"
              },
              "language": {
                "type": "string"
              },
              "metadata": {
                "maxLength": 512,
                "minLength": 0,
                "type": "string"
              },
              "filter_profanity": {
                "type": "boolean"
              },
              "remove_disfluencies": {
                "type": "boolean"
              },
              "detailed_partials": {
                "type": "boolean"
              },
              "custom_vocabulary_id": {
                "type": "string"
              },
              "delete_after_seconds": {
                "type": "integer",
                "format": "int32"
              },
              "max_segment_duration_seconds": {
                "maximum": 30,
                "minimum": 5,
                "type": "integer",
                "format": "int32"
              },
              "max_connection_wait_seconds": {
                "maximum": 600,
                "minimum": 60,
                "type": "integer",
                "format": "int32"
              },
              "allow_interruption": {
                "type": "boolean"
              },
              "enable_speaker_switch": {
                "type": "boolean"
              },
              "start_ts": {
                "type": "string",
                "format": "date-span"
              },
              "skip_postprocessing": {
                "type": "boolean"
              },
              "priority": {
                "enum": [
                  0,
                  1
                ],
                "type": "integer",
                "format": "int32"
              },
              "user_agent": {
                "type": "string"
              }
            },
            "title": "Rev Real-time Transcription Settings",
            "description": "Docs: https://docs.rev.ai/api/streaming/requests/"
          },
          "aws_transcribe_streaming": {
            "type": "object",
            "description": "You must specify either:\n- `language_code`(e.g `en-US`) OR\n- Set `language_identification` to `true` AND specify `language_options`(e.g `en-US,fr-FR,es-US,de-DE,it-IT`).\n\nDocs: https://docs.aws.amazon.com/transcribe/latest/APIReference/API_streaming_StartStreamTranscription.html",
            "properties": {
              "language_code": {
                "type": "string",
                "description": "Specify the language code that represents the language spoken. If you're unsure of the language spoken in your audio, consider using IdentifyLanguage to enable automatic language identification."
              },
              "vocabulary_filter_method": {
                "type": "string",
                "description": "Specify how you want your vocabulary filter applied to your transcript. To replace words with ***, choose mask. To delete words, choose remove. To flag words without changing them, choose tag."
              },
              "vocabulary_filter_name": {
                "type": "string",
                "description": "Specify the name of the custom vocabulary filter that you want to use when processing your transcription. Note that vocabulary filter names are case sensitive.  If you use Amazon Transcribe in multiple Regions, the vocabulary filter must be available in Amazon Transcribe in each Region. If you include IdentifyLanguage and want to use one or more vocabulary filters with your transcription, use the VocabularyFilterNames parameter instead."
              },
              "vocabulary_name": {
                "type": "string",
                "description": "Specify the name of the custom vocabulary that you want to use when processing your transcription. Note that vocabulary names are case sensitive. If you use Amazon Transcribe multiple Regions, the vocabulary must be available in Amazon Transcribe in each Region. If you include IdentifyLanguage and want to use one or more custom vocabularies with your transcription, use the VocabularyNames parameter instead."
              },
              "region": {
                "type": "string",
                "description": "The Amazon Web Services Region in which to use Amazon Transcribe. If you don't specify a Region, then the MediaRegion of the meeting is used. However, if Amazon Transcribe is not available in the MediaRegion, then a TranscriptFailed event is sent. Use auto to use Amazon Transcribe in a Region near the meeting’s MediaRegion. For more information, refer to Choosing a transcription Region in the Amazon Chime SDK Developer Guide."
              },
              "enable_partial_results_stabilization": {
                "type": "boolean",
                "description": "Enables partial result stabilization for your transcription. Partial result stabilization can reduce latency in your output, but may impact accuracy."
              },
              "partial_results_stability": {
                "type": "string",
                "description": "Specify the level of stability to use when you enable partial results stabilization (EnablePartialResultsStabilization). Low stability provides the highest accuracy. High stability transcribes faster, but with slightly lower accuracy."
              },
              "content_identification_type": {
                "type": "string",
                "description": "Labels all personally identifiable information (PII) identified in your transcript. If you don't include PiiEntityTypes, all PII is identified.  You can’t set ContentIdentificationType and ContentRedactionType. "
              },
              "content_redaction_type": {
                "type": "string",
                "description": "Content redaction is performed at the segment level. If you don't include PiiEntityTypes, all PII is redacted.  You can’t set ContentRedactionType and ContentIdentificationType. "
              },
              "pii_entity_types": {
                "type": "string",
                "description": "Specify which types of personally identifiable information (PII) you want to redact in your transcript. You can include as many types as you'd like, or you can select ALL. Values must be comma-separated and can include: ADDRESS, BANK_ACCOUNT_NUMBER, BANK_ROUTING, CREDIT_DEBIT_CVV, CREDIT_DEBIT_EXPIRY CREDIT_DEBIT_NUMBER, EMAIL,NAME, PHONE, PIN, SSN, or ALL. Note that if you include PiiEntityTypes, you must also include ContentIdentificationType or ContentRedactionType. If you include ContentRedactionType or ContentIdentificationType, but do not include PiiEntityTypes, all PII is redacted or identified."
              },
              "language_model_name": {
                "type": "string",
                "description": "Specify the name of the custom language model that you want to use when processing your transcription. Note that language model names are case sensitive. The language of the specified language model must match the language code. If the languages don't match, the custom language model isn't applied. There are no errors or warnings associated with a language mismatch. If you use Amazon Transcribe in multiple Regions, the custom language model must be available in Amazon Transcribe in each Region."
              },
              "identify_language": {
                "type": "boolean",
                "description": "Enables automatic language identification for your transcription. If you include IdentifyLanguage, you can optionally use LanguageOptions to include a list of language codes that you think may be present in your audio stream. Including language options can improve transcription accuracy. You can also use PreferredLanguage to include a preferred language. Doing so can help Amazon Transcribe identify the language faster. You must include either LanguageCode or IdentifyLanguage. Language identification can't be combined with custom language models or redaction."
              },
              "language_options": {
                "type": "string",
                "description": "Specify two or more language codes that represent the languages you think may be present in your media; including more than five is not recommended. If you're unsure what languages are present, do not include this parameter. Including language options can improve the accuracy of language identification. If you include LanguageOptions, you must also include IdentifyLanguage.  You can only include one language dialect per language. For example, you cannot include en-US and en-AU. "
              },
              "preferred_language": {
                "type": "string",
                "description": "Specify a preferred language from the subset of languages codes you specified in LanguageOptions. You can only use this parameter if you include IdentifyLanguage and LanguageOptions."
              },
              "vocabulary_names": {
                "type": "string",
                "description": "Specify the names of the custom vocabularies that you want to use when processing your transcription. Note that vocabulary names are case sensitive. If you use Amazon Transcribe in multiple Regions, the vocabulary must be available in Amazon Transcribe in each Region. If you don't include IdentifyLanguage and want to use a custom vocabulary with your transcription, use the VocabularyName parameter instead."
              },
              "vocabulary_filter_names": {
                "type": "string",
                "description": "Specify the names of the custom vocabulary filters that you want to use when processing your transcription. Note that vocabulary filter names are case sensitive. If you use Amazon Transcribe in multiple Regions, the vocabulary filter must be available in Amazon Transcribe in each Region.  If you're not including IdentifyLanguage and want to use a custom vocabulary filter with your transcription, use the VocabularyFilterName parameter instead."
              }
            },
            "oneOf": [
              {
                "required": [
                  "language_code"
                ]
              },
              {
                "required": [
                  "identify_language",
                  "language_options"
                ],
                "properties": {
                  "identify_language": {
                    "type": "boolean",
                    "enum": [
                      true
                    ]
                  }
                }
              }
            ],
            "title": "AWS Transcribe Streaming Transcription Settings"
          },
          "speechmatics_streaming": {
            "type": "object",
            "properties": {
              "language": {
                "type": "string"
              },
              "domain": {
                "type": "string",
                "description": "Request a specialized model based on 'language' but optimized for a particular field, e.g. \"finance\" or \"medical\"."
              },
              "output_locale": {
                "type": "string",
                "minLength": 1
              },
              "additional_vocab": {
                "type": "array",
                "items": {
                  "type": "object",
                  "oneOf": [
                    {
                      "type": "string",
                      "minLength": 1
                    },
                    {
                      "type": "object",
                      "properties": {
                        "content": {
                          "type": "string",
                          "minLength": 1
                        },
                        "sounds_like": {
                          "type": "array",
                          "items": {
                            "type": "string",
                            "minLength": 1
                          },
                          "minItems": 1
                        }
                      },
                      "required": [
                        "content"
                      ]
                    }
                  ]
                }
              },
              "diarization": {
                "type": "string",
                "enum": [
                  "none",
                  "speaker"
                ]
              },
              "max_delay": {
                "type": "number",
                "minimum": 0
              },
              "max_delay_mode": {
                "type": "string",
                "enum": [
                  "flexible",
                  "fixed"
                ]
              },
              "speaker_diarization_config": {
                "type": "object",
                "properties": {
                  "max_speakers": {
                    "type": "number",
                    "format": "integer",
                    "minimum": 2,
                    "maximum": 100
                  },
                  "prefer_current_speaker": {
                    "type": "boolean"
                  },
                  "speaker_sensitivity": {
                    "type": "number",
                    "format": "float",
                    "minimum": 0,
                    "maximum": 1
                  },
                  "get_speakers": {
                    "type": "boolean"
                  },
                  "speakers": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "label": {
                          "type": "string",
                          "minLength": 1
                        },
                        "speaker_identifiers": {
                          "type": "array",
                          "items": {
                            "type": "string",
                            "format": "byte"
                          },
                          "minItems": 1
                        }
                      },
                      "required": [
                        "label",
                        "speaker_identifiers"
                      ]
                    },
                    "maxItems": 50
                  }
                }
              },
              "audio_filtering_config": {
                "type": "object",
                "properties": {
                  "volume_threshold": {
                    "type": "number",
                    "format": "float",
                    "minimum": 0,
                    "maximum": 100
                  }
                }
              },
              "transcript_filtering_config": {
                "type": "object",
                "properties": {
                  "remove_disfluencies": {
                    "type": "boolean"
                  },
                  "replacements": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "from": {
                          "type": "string"
                        },
                        "to": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "from",
                        "to"
                      ]
                    }
                  }
                }
              },
              "enable_partials": {
                "type": "boolean",
                "default": false
              },
              "enable_entities": {
                "type": "boolean",
                "default": true
              },
              "operating_point": {
                "type": "string",
                "enum": [
                  "standard",
                  "enhanced"
                ]
              },
              "punctuation_overrides": {
                "type": "object",
                "properties": {
                  "permitted_marks": {
                    "type": "array",
                    "description": "The punctuation marks which the client is prepared to accept in transcription output, or the special value 'all' (the default). Unsupported marks are ignored. This value is used to guide the transcription process.",
                    "items": {
                      "pattern": "^(.|all)$",
                      "type": "string"
                    }
                  },
                  "sensitivity": {
                    "type": "number",
                    "description": "Ranges between zero and one. Higher values will produce more punctuation. The default is 0.5.",
                    "format": "float",
                    "maximum": 1,
                    "minimum": 0
                  }
                }
              },
              "conversation_config": {
                "type": "object",
                "properties": {
                  "end_of_utterance_silence_trigger": {
                    "type": "number",
                    "format": "float",
                    "minimum": 0,
                    "maximum": 2,
                    "default": 0
                  }
                },
                "description": "This mode will detect when a speaker has stopped talking. The end_of_utterance_silence_trigger is the time in seconds after which the server will assume that the speaker has finished speaking, and will emit an EndOfUtterance message. A value of 0 disables the feature."
              }
            },
            "required": [
              "language"
            ],
            "title": "Speechmatics Real-time Transcription Settings",
            "description": "You must specify `language` (e.g `en`)\n\nDocs: https://docs.speechmatics.com/rt-api-ref#transcription-config"
          },
          "elevenlabs_streaming": {
            "type": "object",
            "properties": {
              "model_id": {
                "description": "The model to use for transcription.",
                "type": "string",
                "default": "eleven_whisper_v2_realtime"
              },
              "language_code": {
                "description": "ISO 639-1 two-letter language code. When not specified, the model auto-detects the language.",
                "type": "string"
              },
              "previous_text": {
                "description": "Text from a previous transcription session to provide context for the model. Sent in the first message to the WebSocket.",
                "type": "string"
              }
            },
            "title": "ElevenLabs Real-time Transcription Settings",
            "description": "Docs: https://elevenlabs.io/docs/api-reference/speech-to-text"
          },
          "meeting_captions": {
            "allOf": [
              {
                "$ref": "#/components/schemas/MeetingCaptions"
              }
            ],
            "title": "Closed captions from the meeting platform",
            "description": "Captures native meeting platform's built-in closed captions. **[Pros, cons, and supported platforms listed in the following guide.](https://docs.recall.ai/docs/meeting-caption-transcription)**"
          }
        }
      },
      "BotRecordingEmbed": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "readOnly": true
          },
          "created_at": {
            "type": "string",
            "format": "date-time",
            "readOnly": true
          },
          "started_at": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "completed_at": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "expires_at": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "status": {
            "allOf": [
              {
                "$ref": "#/components/schemas/RecordingStatus"
              }
            ],
            "readOnly": true,
            "nullable": true
          },
          "media_shortcuts": {
            "allOf": [
              {
                "$ref": "#/components/schemas/RecordingShortcuts"
              }
            ],
            "readOnly": true,
            "nullable": true
          },
          "metadata": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            }
          }
        },
        "required": [
          "created_at",
          "id",
          "media_shortcuts",
          "status"
        ]
      },
      "BotVariant": {
        "type": "object",
        "properties": {
          "zoom": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ZoomEnum"
              }
            ],
            "description": "Choose the bot variant to use for Zoom meetings."
          },
          "google_meet": {
            "allOf": [
              {
                "$ref": "#/components/schemas/GoogleMeetEnum"
              }
            ],
            "description": "Choose the bot variant to use for Google Meet meetings.\n\n* `web` - web\n* `web_4_core` - web_4_core\n* `web_gpu` - web_gpu"
          },
          "microsoft_teams": {
            "allOf": [
              {
                "$ref": "#/components/schemas/MicrosoftTeamsEnum"
              }
            ],
            "description": "Choose the bot variant to use for Microsoft Teams meetings.\n\n* `web` - web\n* `web_4_core` - web_4_core\n* `web_gpu` - web_gpu"
          },
          "webex": {
            "allOf": [
              {
                "$ref": "#/components/schemas/WebexEnum"
              }
            ],
            "description": "Choose the bot variant to use for Webex meetings.\n\n* `web` - web\n* `web_4_core` - web_4_core\n* `web_gpu` - web_gpu"
          }
        }
      },
      "Chat": {
        "type": "object",
        "properties": {
          "on_bot_join": {
            "$ref": "#/components/schemas/ChatOnBotJoin"
          },
          "on_participant_join": {
            "$ref": "#/components/schemas/ChatOnParticipantJoin"
          }
        }
      },
      "ChatOnBotJoin": {
        "type": "object",
        "properties": {
          "send_to": {
            "$ref": "#/components/schemas/SendToEnum"
          },
          "message": {
            "type": "string",
            "maxLength": 4096
          },
          "pin": {
            "type": "boolean",
            "default": false,
            "description": "Pin message after sending. Only Google Meet and Microsoft Teams are supported at this time"
          }
        },
        "required": [
          "message",
          "send_to"
        ]
      },
      "ChatOnParticipantJoin": {
        "type": "object",
        "properties": {
          "message": {
            "type": "string",
            "maxLength": 4096
          },
          "exclude_host": {
            "type": "boolean"
          }
        },
        "required": [
          "exclude_host",
          "message"
        ]
      },
      "DebounceModeEnum": {
        "enum": [
          "leading",
          "trailing"
        ],
        "type": "string",
        "description": "* `leading` - leading\n* `trailing` - trailing"
      },
      "Format33bEnum": {
        "enum": [
          "mp3",
          "raw"
        ],
        "type": "string",
        "description": "* `mp3` - Mp3\n* `raw` - Raw"
      },
      "Format3b3Enum": {
        "enum": [
          "mp4"
        ],
        "type": "string",
        "description": "* `mp4` - Mp4"
      },
      "GmeetMeetingInviteMeetingLink": {
        "type": "object",
        "properties": {
          "platform": {
            "$ref": "#/components/schemas/GmeetMeetingInviteMeetingLinkPlatformEnum"
          },
          "meeting_id": {
            "type": "string"
          }
        },
        "required": [
          "meeting_id",
          "platform"
        ]
      },
      "GmeetMeetingInviteMeetingLinkPlatformEnum": {
        "enum": [
          "google_meet"
        ],
        "type": "string",
        "description": "* `google_meet` - google_meet"
      },
      "GoogleMeet": {
        "type": "object",
        "properties": {
          "google_login_group_id": {
            "type": "string",
            "format": "uuid",
            "nullable": true,
            "description": "The ID of the google login group to use for this meeting."
          }
        }
      },
      "GoogleMeetEnum": {
        "enum": [
          "web",
          "web_4_core",
          "web_gpu"
        ],
        "type": "string",
        "description": "* `web` - web\n* `web_4_core` - web_4_core\n* `web_gpu` - web_gpu"
      },
      "GotoMeetingInviteMeetingLink": {
        "type": "object",
        "properties": {
          "platform": {
            "$ref": "#/components/schemas/GotoMeetingInviteMeetingLinkPlatformEnum"
          },
          "meeting_id": {
            "type": "string"
          }
        },
        "required": [
          "meeting_id",
          "platform"
        ]
      },
      "GotoMeetingInviteMeetingLinkPlatformEnum": {
        "enum": [
          "goto_meeting"
        ],
        "type": "string",
        "description": "* `goto_meeting` - goto_meeting"
      },
      "LanguageCodeC40Enum": {
        "enum": [
          "auto",
          "bg",
          "ca",
          "cs",
          "da",
          "de",
          "el",
          "en",
          "en_au",
          "en_uk",
          "en_us",
          "es",
          "et",
          "fi",
          "fr",
          "he",
          "hi",
          "hr",
          "hu",
          "id",
          "it",
          "ja",
          "ko",
          "lt",
          "lv",
          "ms",
          "nl",
          "no",
          "pl",
          "pt",
          "ro",
          "ru",
          "sk",
          "sv",
          "th",
          "tr",
          "uk",
          "vi",
          "zh"
        ],
        "type": "string",
        "description": "* `auto` - auto\n* `bg` - bg\n* `ca` - ca\n* `cs` - cs\n* `da` - da\n* `de` - de\n* `el` - el\n* `en` - en\n* `en_au` - en_au\n* `en_uk` - en_uk\n* `en_us` - en_us\n* `es` - es\n* `et` - et\n* `fi` - fi\n* `fr` - fr\n* `he` - he\n* `hi` - hi\n* `hr` - hr\n* `hu` - hu\n* `id` - id\n* `it` - it\n* `ja` - ja\n* `ko` - ko\n* `lt` - lt\n* `lv` - lv\n* `ms` - ms\n* `nl` - nl\n* `no` - no\n* `pl` - pl\n* `pt` - pt\n* `ro` - ro\n* `ru` - ru\n* `sk` - sk\n* `sv` - sv\n* `th` - th\n* `tr` - tr\n* `uk` - uk\n* `vi` - vi\n* `zh` - zh"
      },
      "MeetingCaptions": {
        "type": "object",
        "properties": {
          "language_code": {
            "nullable": true,
            "title": "Language for captions. If not specified, the selection is meeting platform-specific.",
            "allOf": [
              {
                "$ref": "#/components/schemas/MeetingCaptionsLanguageCodeEnum"
              }
            ]
          }
        }
      },
      "MeetingCaptionsLanguageCodeEnum": {
        "enum": [
          "cs",
          "de",
          "en",
          "es",
          "fil",
          "fr",
          "he",
          "hi",
          "it",
          "ja",
          "ko",
          "nl",
          "pl",
          "pt",
          "pt-BR",
          "ro",
          "ru",
          "sv",
          "th",
          "tr",
          "uk",
          "vi",
          "zh"
        ],
        "type": "string",
        "description": "* `cs` - Czech\n* `de` - German\n* `en` - English\n* `es` - Spanish\n* `fil` - Filipino\n* `fr` - French\n* `he` - Hebrew\n* `hi` - Hindi\n* `it` - Italian\n* `ja` - Japanese\n* `ko` - Korean\n* `nl` - Dutch\n* `pl` - Polish\n* `pt` - Portuguese\n* `pt-BR` - Portuguese (Brazil)\n* `ro` - Romanian\n* `ru` - Russian\n* `sv` - Swedish\n* `th` - Thai\n* `tr` - Turkish\n* `uk` - Ukrainian\n* `vi` - Vietnamese\n* `zh` - Chinese"
      },
      "MeetingInvite": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/WebexMeetingInvite"
          },
          {
            "$ref": "#/components/schemas/GmeetMeetingInviteMeetingLink"
          },
          {
            "$ref": "#/components/schemas/GotoMeetingInviteMeetingLink"
          },
          {
            "$ref": "#/components/schemas/TeamsLiveMeetingInviteMeetingLink"
          },
          {
            "$ref": "#/components/schemas/TeamsMeetingInviteMeetingLink"
          },
          {
            "$ref": "#/components/schemas/ZoomMeetingInviteMeetingLink"
          }
        ],
        "discriminator": {
          "propertyName": "platform",
          "mapping": {
            "webex": "#/components/schemas/WebexMeetingInvite",
            "google_meet": "#/components/schemas/GmeetMeetingInviteMeetingLink",
            "goto_meeting": "#/components/schemas/GotoMeetingInviteMeetingLink",
            "microsoft_teams_live": "#/components/schemas/TeamsLiveMeetingInviteMeetingLink",
            "microsoft_teams": "#/components/schemas/TeamsMeetingInviteMeetingLink",
            "zoom": "#/components/schemas/ZoomMeetingInviteMeetingLink"
          }
        }
      },
      "MeetingMetadataArtifactData": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string",
            "readOnly": true,
            "nullable": true
          },
          "zoom": {
            "allOf": [
              {
                "$ref": "#/components/schemas/MeetingMetadataArtifactDataZoom"
              }
            ],
            "readOnly": true,
            "nullable": true
          }
        },
        "required": [
          "title",
          "zoom"
        ]
      },
      "MeetingMetadataArtifactDataZoom": {
        "type": "object",
        "properties": {
          "meeting_uuid": {
            "type": "string",
            "nullable": true
          }
        },
        "required": [
          "meeting_uuid"
        ]
      },
      "MeetingMetadataArtifactShortcut": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "readOnly": true
          },
          "created_at": {
            "type": "string",
            "format": "date-time",
            "readOnly": true
          },
          "status": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ArtifactStatus"
              }
            ],
            "readOnly": true
          },
          "metadata": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            }
          },
          "data": {
            "allOf": [
              {
                "$ref": "#/components/schemas/MeetingMetadataArtifactData"
              }
            ],
            "readOnly": true
          }
        },
        "required": [
          "created_at",
          "data",
          "id",
          "metadata",
          "status"
        ]
      },
      "MicrosoftTeamsEnum": {
        "enum": [
          "web",
          "web_4_core",
          "web_gpu"
        ],
        "type": "string",
        "description": "* `web` - web\n* `web_4_core` - web_4_core\n* `web_gpu` - web_gpu"
      },
      "OutputMedia": {
        "type": "object",
        "properties": {
          "camera": {
            "$ref": "#/components/schemas/OutputMediaConfig"
          },
          "screenshare": {
            "$ref": "#/components/schemas/OutputMediaConfig"
          }
        }
      },
      "OutputMediaConfig": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/OutputMediaWebpage"
          }
        ],
        "discriminator": {
          "propertyName": "kind",
          "mapping": {
            "webpage": "#/components/schemas/OutputMediaWebpage"
          }
        }
      },
      "OutputMediaWebpage": {
        "type": "object",
        "properties": {
          "kind": {
            "$ref": "#/components/schemas/OutputMediaWebpageKindEnum"
          },
          "config": {
            "$ref": "#/components/schemas/OutputMediaWebpageConfig"
          }
        },
        "required": [
          "config",
          "kind"
        ]
      },
      "OutputMediaWebpageConfig": {
        "type": "object",
        "properties": {
          "url": {
            "type": "string",
            "description": "URL for the webpage",
            "format": "uri"
          }
        },
        "required": [
          "url"
        ]
      },
      "OutputMediaWebpageKindEnum": {
        "enum": [
          "webpage"
        ],
        "type": "string",
        "description": "* `webpage` - webpage"
      },
      "PaginatedBotGetList": {
        "type": "object",
        "properties": {
          "count": {
            "type": "integer",
            "example": 123
          },
          "next": {
            "type": "string",
            "nullable": true,
            "format": "uri",
            "example": "http://api.example.org/accounts/?page=4"
          },
          "previous": {
            "type": "string",
            "nullable": true,
            "format": "uri",
            "example": "http://api.example.org/accounts/?page=2"
          },
          "results": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/BotGet"
            }
          }
        }
      },
      "ParticipantEventsArtifactData": {
        "type": "object",
        "properties": {
          "participant_events_download_url": {
            "type": "string",
            "format": "uri",
            "readOnly": true,
            "nullable": true,
            "description": "Download all participant events for the recording. **[See response format here](https://docs.recall.ai/docs/download-schemas#json-participant-event-download-url)**"
          },
          "speaker_timeline_download_url": {
            "type": "string",
            "format": "uri",
            "readOnly": true,
            "nullable": true,
            "description": "Download speaker timeline for the recording. **[See response format here](https://docs.recall.ai/docs/download-schemas#json-speaker-timeline-download-url)**"
          },
          "participants_download_url": {
            "type": "string",
            "format": "uri",
            "readOnly": true,
            "nullable": true,
            "description": "Download all participants for the recording. **[See response format here](https://docs.recall.ai/docs/download-schemas#json-participant-download-url)**"
          }
        },
        "required": [
          "participant_events_download_url",
          "participants_download_url",
          "speaker_timeline_download_url"
        ]
      },
      "ParticipantEventsArtifactShortcut": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "readOnly": true
          },
          "created_at": {
            "type": "string",
            "format": "date-time",
            "readOnly": true
          },
          "status": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ArtifactStatus"
              }
            ],
            "readOnly": true
          },
          "metadata": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            }
          },
          "data": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ParticipantEventsArtifactData"
              }
            ],
            "readOnly": true
          }
        },
        "required": [
          "created_at",
          "data",
          "id",
          "metadata",
          "status"
        ]
      },
      "RecallaiSpellingEntry": {
        "type": "object",
        "properties": {
          "find": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Find any of these items in the source transcript"
          },
          "replace": {
            "type": "string",
            "description": "Replace found matches with this exact string (will not change case)"
          }
        },
        "required": [
          "find",
          "replace"
        ]
      },
      "RecallaiStreamingTranscription": {
        "type": "object",
        "properties": {
          "language_code": {
            "allOf": [
              {
                "$ref": "#/components/schemas/LanguageCodeC40Enum"
              }
            ],
            "default": "auto",
            "description": "Must be `en` in low latency mode. Docs: https://docs.recall.ai/docs/recallai-transcription\n\n* `auto` - auto\n* `bg` - bg\n* `ca` - ca\n* `cs` - cs\n* `da` - da\n* `de` - de\n* `el` - el\n* `en` - en\n* `en_au` - en_au\n* `en_uk` - en_uk\n* `en_us` - en_us\n* `es` - es\n* `et` - et\n* `fi` - fi\n* `fr` - fr\n* `he` - he\n* `hi` - hi\n* `hr` - hr\n* `hu` - hu\n* `id` - id\n* `it` - it\n* `ja` - ja\n* `ko` - ko\n* `lt` - lt\n* `lv` - lv\n* `ms` - ms\n* `nl` - nl\n* `no` - no\n* `pl` - pl\n* `pt` - pt\n* `ro` - ro\n* `ru` - ru\n* `sk` - sk\n* `sv` - sv\n* `th` - th\n* `tr` - tr\n* `uk` - uk\n* `vi` - vi\n* `zh` - zh"
          },
          "spelling": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/RecallaiSpellingEntry"
            },
            "description": "List of text strings to find/replace in the transcript."
          },
          "key_terms": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Increases the chances that these terms appear in the transcript over some sound-alikes."
          },
          "filter_profanity": {
            "type": "boolean",
            "default": false
          },
          "mode": {
            "allOf": [
              {
                "$ref": "#/components/schemas/RecallaiStreamingTranscriptionModeEnum"
              }
            ],
            "default": "prioritize_accuracy",
            "description": "The mode of the transcription algorithm. If you just want the transcript very quickly after the call is over, use `prioritize_accuracy`. If you need the words on realtime endpoints within seconds of utterance, use `prioritize_low_latency`, with the caveat that most features are unsupported in low latency mode.\n\n* `prioritize_low_latency` - prioritize_low_latency\n* `prioritize_accuracy` - prioritize_accuracy"
          }
        }
      },
      "RecallaiStreamingTranscriptionModeEnum": {
        "enum": [
          "prioritize_low_latency",
          "prioritize_accuracy"
        ],
        "type": "string",
        "description": "* `prioritize_low_latency` - prioritize_low_latency\n* `prioritize_accuracy` - prioritize_accuracy"
      },
      "RecordingShortcuts": {
        "type": "object",
        "properties": {
          "video_mixed": {
            "allOf": [
              {
                "$ref": "#/components/schemas/VideoMixedArtifactShortcut"
              }
            ],
            "readOnly": true,
            "nullable": true
          },
          "transcript": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TranscriptArtifactShortcut"
              }
            ],
            "readOnly": true,
            "nullable": true
          },
          "participant_events": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ParticipantEventsArtifactShortcut"
              }
            ],
            "readOnly": true,
            "nullable": true
          },
          "meeting_metadata": {
            "allOf": [
              {
                "$ref": "#/components/schemas/MeetingMetadataArtifactShortcut"
              }
            ],
            "readOnly": true,
            "nullable": true
          },
          "audio_mixed": {
            "allOf": [
              {
                "$ref": "#/components/schemas/AudioMixedArtifactShortcut"
              }
            ],
            "readOnly": true,
            "nullable": true
          }
        },
        "required": [
          "audio_mixed",
          "meeting_metadata",
          "participant_events",
          "transcript",
          "video_mixed"
        ]
      },
      "RecordingStatus": {
        "type": "object",
        "properties": {
          "code": {
            "$ref": "#/components/schemas/RecordingStatusCodeEnum"
          },
          "sub_code": {
            "type": "string",
            "nullable": true
          },
          "updated_at": {
            "type": "string",
            "format": "date-time"
          }
        },
        "required": [
          "code",
          "sub_code",
          "updated_at"
        ]
      },
      "RecordingStatusCodeEnum": {
        "enum": [
          "processing",
          "paused",
          "done",
          "failed",
          "deleted"
        ],
        "type": "string",
        "description": "* `processing` - Processing\n* `paused` - Paused\n* `done` - Done\n* `failed` - Failed\n* `deleted` - Deleted"
      },
      "SendToEnum": {
        "enum": [
          "host",
          "everyone",
          "everyone_except_host"
        ],
        "type": "string",
        "description": "* `host` - host\n* `everyone` - everyone\n* `everyone_except_host` - everyone_except_host"
      },
      "SlackTeamIntegrationMinimal": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "readOnly": true
          },
          "metadata": {
            "type": "object",
            "additionalProperties": {
              "type": "string",
              "nullable": true
            }
          }
        },
        "required": [
          "id",
          "metadata"
        ]
      },
      "StartRecordingOnEnum": {
        "enum": [
          "call_join",
          "participant_join",
          "participant_speak"
        ],
        "type": "string",
        "description": "* `call_join` - call_join\n* `participant_join` - participant_join\n* `participant_speak` - participant_speak"
      },
      "TeamsLiveMeetingInviteMeetingLink": {
        "type": "object",
        "properties": {
          "platform": {
            "$ref": "#/components/schemas/TeamsLiveMeetingInviteMeetingLinkPlatformEnum"
          },
          "meeting_id": {
            "type": "string"
          },
          "meeting_password": {
            "type": "string",
            "nullable": true
          }
        },
        "required": [
          "meeting_id",
          "platform"
        ]
      },
      "TeamsLiveMeetingInviteMeetingLinkPlatformEnum": {
        "enum": [
          "microsoft_teams_live"
        ],
        "type": "string",
        "description": "* `microsoft_teams_live` - microsoft_teams_live"
      },
      "TeamsMeetingInviteMeetingLink": {
        "type": "object",
        "properties": {
          "platform": {
            "$ref": "#/components/schemas/TeamsMeetingInviteMeetingLinkPlatformEnum"
          },
          "meeting_id": {
            "type": "string",
            "nullable": true
          },
          "meeting_password": {
            "type": "string",
            "nullable": true
          },
          "organizer_id": {
            "type": "string",
            "nullable": true
          },
          "tenant_id": {
            "type": "string",
            "nullable": true
          },
          "message_id": {
            "type": "string",
            "nullable": true
          },
          "thread_id": {
            "type": "string",
            "nullable": true
          },
          "business_meeting_id": {
            "type": "string",
            "nullable": true
          },
          "business_meeting_password": {
            "type": "string",
            "nullable": true
          }
        },
        "required": [
          "platform"
        ]
      },
      "TeamsMeetingInviteMeetingLinkPlatformEnum": {
        "enum": [
          "microsoft_teams"
        ],
        "type": "string",
        "description": "* `microsoft_teams` - microsoft_teams"
      },
      "TranscriptArtifactData": {
        "type": "object",
        "properties": {
          "download_url": {
            "type": "string",
            "format": "uri",
            "readOnly": true,
            "nullable": true,
            "description": "Download transcript for the recording. **[See response format here](https://docs.recall.ai/docs/download-schemas#json-transcript-download-url)**"
          },
          "provider_data_download_url": {
            "type": "string",
            "format": "uri",
            "readOnly": true,
            "nullable": true,
            "description": "Download raw transcription data received from the provider for the recording. **[See response format here](https://docs.recall.ai/docs/download-schemas#json-transcript-provider-data-download-url)**"
          }
        },
        "required": [
          "download_url",
          "provider_data_download_url"
        ]
      },
      "TranscriptArtifactDiarization": {
        "type": "object",
        "properties": {
          "use_separate_streams_when_available": {
            "type": "boolean",
            "readOnly": true
          }
        },
        "required": [
          "use_separate_streams_when_available"
        ]
      },
      "TranscriptArtifactProvider": {
        "type": "object",
        "properties": {
          "assembly_ai_async": {
            "properties": {
              "audio_end_at": {
                "x-label": "Audio end at",
                "description": "The point in time, in milliseconds, to stop transcribing in your media file. See [Set the start and end of the transcript](https://www.assemblyai.com/docs/pre-recorded-audio/set-the-start-and-end-of-the-transcript) for more details.",
                "type": "integer"
              },
              "audio_start_from": {
                "x-label": "Audio start from",
                "description": "The point in time, in milliseconds, to begin transcribing in your media file. See [Set the start and end of the transcript](https://www.assemblyai.com/docs/pre-recorded-audio/set-the-start-and-end-of-the-transcript) for more details.",
                "type": "integer"
              },
              "auto_chapters": {
                "x-label": "Auto chapters",
                "description": "Enable [Auto Chapters](https://www.assemblyai.com/docs/speech-understanding/auto-chapters), can be true or false",
                "type": "boolean",
                "default": false
              },
              "auto_highlights": {
                "x-label": "Key phrases",
                "description": "Enable [Key Phrases](https://www.assemblyai.com/docs/speech-understanding/key-phrases), either true or false",
                "type": "boolean",
                "default": false
              },
              "content_safety": {
                "x-label": "Content Moderation",
                "description": "Enable [Content Moderation](https://www.assemblyai.com/docs/content-moderation), can be true or false",
                "type": "boolean",
                "default": false
              },
              "content_safety_confidence": {
                "x-label": "Content Moderation confidence",
                "description": "The confidence threshold for the [Content Moderation](https://www.assemblyai.com/docs/content-moderation) model. Values must be between 25 and 100.",
                "type": "integer",
                "default": 50,
                "minimum": 25,
                "maximum": 100
              },
              "custom_spelling": {
                "x-label": "Custom spellings",
                "description": "Customize how words are spelled and formatted using to and from values. See [Custom Spelling](https://www.assemblyai.com/docs/pre-recorded-audio/custom-spelling) for more details.",
                "type": "array",
                "items": {
                  "x-label": "Custom spelling",
                  "description": "Object containing words or phrases to replace, and the word or phrase to replace with",
                  "x-fern-sdk-group-name": "transcripts",
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "from": {
                      "x-label": "From",
                      "description": "Words or phrases to replace",
                      "type": "array",
                      "items": {
                        "x-label": "Word or phrase",
                        "description": "Word or phrase to replace",
                        "type": "string"
                      }
                    },
                    "to": {
                      "x-label": "To",
                      "description": "Word to replace with",
                      "type": "string"
                    }
                  },
                  "required": [
                    "from",
                    "to"
                  ],
                  "example": {
                    "from": [
                      "dicarlo"
                    ],
                    "to": "Decarlo"
                  }
                }
              },
              "disfluencies": {
                "x-label": "Disfluencies",
                "description": "Transcribe [Filler Words](https://www.assemblyai.com/docs/pre-recorded-audio/filler-words), like \"umm\", in your media file; can be true or false",
                "type": "boolean",
                "default": false
              },
              "entity_detection": {
                "x-label": "Entity Detection",
                "description": "Enable [Entity Detection](https://www.assemblyai.com/docs/speech-understanding/entity-detection), can be true or false",
                "type": "boolean",
                "default": false
              },
              "filter_profanity": {
                "x-label": "Filter profanity",
                "description": "Filter profanity from the transcribed text, can be true or false. See [Profanity Filtering](https://www.assemblyai.com/docs/profanity-filtering) for more details.",
                "type": "boolean",
                "default": false
              },
              "format_text": {
                "x-label": "Format text",
                "description": "Enable [Text Formatting](https://www.assemblyai.com/docs/pre-recorded-audio), can be true or false",
                "type": "boolean",
                "default": true
              },
              "iab_categories": {
                "x-label": "Topic Detection",
                "description": "Enable [Topic Detection](https://www.assemblyai.com/docs/speech-understanding/topic-detection), can be true or false",
                "type": "boolean",
                "default": false
              },
              "keyterms_prompt": {
                "x-label": "Keyterms prompt",
                "description": "Improve accuracy with up to 200 (for Universal-2) or 1000 (for Universal-3-Pro) domain-specific words or phrases (maximum 6 words per phrase). See [Keyterms Prompting](https://www.assemblyai.com/docs/pre-recorded-audio/keyterms-prompting) for more details.\n",
                "type": "array",
                "items": {
                  "x-label": "Keyterm",
                  "type": "string"
                }
              },
              "language_code": {
                "x-label": "Language code",
                "description": "The language of your audio file. Possible values are found in [Supported Languages](https://www.assemblyai.com/docs/pre-recorded-audio/supported-languages).\nThe default value is 'en_us'.\n",
                "oneOf": [
                  {
                    "anyOf": [
                      {
                        "x-label": "Language code",
                        "type": "string",
                        "description": "The language of your audio file. Possible values are found in [Supported Languages](https://www.assemblyai.com/docs/pre-recorded-audio/supported-languages).\nThe default value is 'en_us'.\n",
                        "x-fern-sdk-group-name": "transcripts",
                        "enum": [
                          "en",
                          "en_au",
                          "en_uk",
                          "en_us",
                          "es",
                          "fr",
                          "de",
                          "it",
                          "pt",
                          "nl",
                          "af",
                          "sq",
                          "am",
                          "ar",
                          "hy",
                          "as",
                          "az",
                          "ba",
                          "eu",
                          "be",
                          "bn",
                          "bs",
                          "br",
                          "bg",
                          "my",
                          "ca",
                          "zh",
                          "hr",
                          "cs",
                          "da",
                          "et",
                          "fo",
                          "fi",
                          "gl",
                          "ka",
                          "el",
                          "gu",
                          "ht",
                          "ha",
                          "haw",
                          "he",
                          "hi",
                          "hu",
                          "is",
                          "id",
                          "ja",
                          "jw",
                          "kn",
                          "kk",
                          "km",
                          "ko",
                          "lo",
                          "la",
                          "lv",
                          "ln",
                          "lt",
                          "lb",
                          "mk",
                          "mg",
                          "ms",
                          "ml",
                          "mt",
                          "mi",
                          "mr",
                          "mn",
                          "ne",
                          "no",
                          "nn",
                          "oc",
                          "pa",
                          "ps",
                          "fa",
                          "pl",
                          "ro",
                          "ru",
                          "sa",
                          "sr",
                          "sn",
                          "sd",
                          "si",
                          "sk",
                          "sl",
                          "so",
                          "su",
                          "sw",
                          "sv",
                          "tl",
                          "tg",
                          "ta",
                          "tt",
                          "te",
                          "th",
                          "bo",
                          "tr",
                          "tk",
                          "uk",
                          "ur",
                          "uz",
                          "vi",
                          "cy",
                          "yi",
                          "yo"
                        ],
                        "x-aai-enum": {
                          "en": {
                            "label": "English (global)"
                          },
                          "en_au": {
                            "label": "English (Australian)"
                          },
                          "en_uk": {
                            "label": "English (British)"
                          },
                          "en_us": {
                            "label": "English (US)"
                          },
                          "es": {
                            "label": "Spanish"
                          },
                          "fr": {
                            "label": "French"
                          },
                          "de": {
                            "label": "German"
                          },
                          "it": {
                            "label": "Italian"
                          },
                          "pt": {
                            "label": "Portuguese"
                          },
                          "nl": {
                            "label": "Dutch"
                          },
                          "af": {
                            "label": "Afrikaans"
                          },
                          "sq": {
                            "label": "Albanian"
                          },
                          "am": {
                            "label": "Amharic"
                          },
                          "ar": {
                            "label": "Arabic"
                          },
                          "hy": {
                            "label": "Armenian"
                          },
                          "as": {
                            "label": "Assamese"
                          },
                          "az": {
                            "label": "Azerbaijani"
                          },
                          "ba": {
                            "label": "Bashkir"
                          },
                          "eu": {
                            "label": "Basque"
                          },
                          "be": {
                            "label": "Belarusian"
                          },
                          "bn": {
                            "label": "Bengali"
                          },
                          "bs": {
                            "label": "Bosnian"
                          },
                          "br": {
                            "label": "Breton"
                          },
                          "bg": {
                            "label": "Bulgarian"
                          },
                          "my": {
                            "label": "Burmese"
                          },
                          "ca": {
                            "label": "Catalan"
                          },
                          "zh": {
                            "label": "Chinese"
                          },
                          "hr": {
                            "label": "Croatian"
                          },
                          "cs": {
                            "label": "Czech"
                          },
                          "da": {
                            "label": "Danish"
                          },
                          "et": {
                            "label": "Estonian"
                          },
                          "fo": {
                            "label": "Faroese"
                          },
                          "fi": {
                            "label": "Finnish"
                          },
                          "gl": {
                            "label": "Galician"
                          },
                          "ka": {
                            "label": "Georgian"
                          },
                          "el": {
                            "label": "Greek"
                          },
                          "gu": {
                            "label": "Gujarati"
                          },
                          "ht": {
                            "label": "Haitian"
                          },
                          "ha": {
                            "label": "Hausa"
                          },
                          "haw": {
                            "label": "Hawaiian"
                          },
                          "he": {
                            "label": "Hebrew"
                          },
                          "hi": {
                            "label": "Hindi"
                          },
                          "hu": {
                            "label": "Hungarian"
                          },
                          "is": {
                            "label": "Icelandic"
                          },
                          "id": {
                            "label": "Indonesian"
                          },
                          "ja": {
                            "label": "Japanese"
                          },
                          "jw": {
                            "label": "Javanese"
                          },
                          "kn": {
                            "label": "Kannada"
                          },
                          "kk": {
                            "label": "Kazakh"
                          },
                          "km": {
                            "label": "Khmer"
                          },
                          "ko": {
                            "label": "Korean"
                          },
                          "lo": {
                            "label": "Lao"
                          },
                          "la": {
                            "label": "Latin"
                          },
                          "lv": {
                            "label": "Latvian"
                          },
                          "ln": {
                            "label": "Lingala"
                          },
                          "lt": {
                            "label": "Lithuanian"
                          },
                          "lb": {
                            "label": "Luxembourgish"
                          },
                          "mk": {
                            "label": "Macedonian"
                          },
                          "mg": {
                            "label": "Malagasy"
                          },
                          "ms": {
                            "label": "Malay"
                          },
                          "ml": {
                            "label": "Malayalam"
                          },
                          "mt": {
                            "label": "Maltese"
                          },
                          "mi": {
                            "label": "Maori"
                          },
                          "mr": {
                            "label": "Marathi"
                          },
                          "mn": {
                            "label": "Mongolian"
                          },
                          "ne": {
                            "label": "Nepali"
                          },
                          "no": {
                            "label": "Norwegian"
                          },
                          "nn": {
                            "label": "Norwegian Nynorsk"
                          },
                          "oc": {
                            "label": "Occitan"
                          },
                          "pa": {
                            "label": "Panjabi"
                          },
                          "ps": {
                            "label": "Pashto"
                          },
                          "fa": {
                            "label": "Persian"
                          },
                          "pl": {
                            "label": "Polish"
                          },
                          "ro": {
                            "label": "Romanian"
                          },
                          "ru": {
                            "label": "Russian"
                          },
                          "sa": {
                            "label": "Sanskrit"
                          },
                          "sr": {
                            "label": "Serbian"
                          },
                          "sn": {
                            "label": "Shona"
                          },
                          "sd": {
                            "label": "Sindhi"
                          },
                          "si": {
                            "label": "Sinhala"
                          },
                          "sk": {
                            "label": "Slovak"
                          },
                          "sl": {
                            "label": "Slovenian"
                          },
                          "so": {
                            "label": "Somali"
                          },
                          "su": {
                            "label": "Sundanese"
                          },
                          "sw": {
                            "label": "Swahili"
                          },
                          "sv": {
                            "label": "Swedish"
                          },
                          "tl": {
                            "label": "Tagalog"
                          },
                          "tg": {
                            "label": "Tajik"
                          },
                          "ta": {
                            "label": "Tamil"
                          },
                          "tt": {
                            "label": "Tatar"
                          },
                          "te": {
                            "label": "Telugu"
                          },
                          "th": {
                            "label": "Thai"
                          },
                          "bo": {
                            "label": "Tibetan"
                          },
                          "tr": {
                            "label": "Turkish"
                          },
                          "tk": {
                            "label": "Turkmen"
                          },
                          "uk": {
                            "label": "Ukrainian"
                          },
                          "ur": {
                            "label": "Urdu"
                          },
                          "uz": {
                            "label": "Uzbek"
                          },
                          "vi": {
                            "label": "Vietnamese"
                          },
                          "cy": {
                            "label": "Welsh"
                          },
                          "yi": {
                            "label": "Yiddish"
                          },
                          "yo": {
                            "label": "Yoruba"
                          }
                        }
                      },
                      {
                        "type": "string"
                      }
                    ]
                  },
                  {
                    "type": "string",
                    "nullable": true
                  }
                ],
                "default": "en_us",
                "x-ts-type": "LiteralUnion<TranscriptLanguageCode, string> | null",
                "x-go-type": "TranscriptLanguageCode"
              },
              "language_codes": {
                "description": "The language codes of your audio file. Used for [Code switching](https://www.assemblyai.com/docs/speech-to-text/pre-recorded-audio/code-switching)\nOne of the values specified must be `en`.\n",
                "type": "array",
                "items": {
                  "x-label": "Language code",
                  "type": "string",
                  "description": "The language of your audio file. Possible values are found in [Supported Languages](https://www.assemblyai.com/docs/pre-recorded-audio/supported-languages).\nThe default value is 'en_us'.\n",
                  "x-fern-sdk-group-name": "transcripts",
                  "enum": [
                    "en",
                    "en_au",
                    "en_uk",
                    "en_us",
                    "es",
                    "fr",
                    "de",
                    "it",
                    "pt",
                    "nl",
                    "af",
                    "sq",
                    "am",
                    "ar",
                    "hy",
                    "as",
                    "az",
                    "ba",
                    "eu",
                    "be",
                    "bn",
                    "bs",
                    "br",
                    "bg",
                    "my",
                    "ca",
                    "zh",
                    "hr",
                    "cs",
                    "da",
                    "et",
                    "fo",
                    "fi",
                    "gl",
                    "ka",
                    "el",
                    "gu",
                    "ht",
                    "ha",
                    "haw",
                    "he",
                    "hi",
                    "hu",
                    "is",
                    "id",
                    "ja",
                    "jw",
                    "kn",
                    "kk",
                    "km",
                    "ko",
                    "lo",
                    "la",
                    "lv",
                    "ln",
                    "lt",
                    "lb",
                    "mk",
                    "mg",
                    "ms",
                    "ml",
                    "mt",
                    "mi",
                    "mr",
                    "mn",
                    "ne",
                    "no",
                    "nn",
                    "oc",
                    "pa",
                    "ps",
                    "fa",
                    "pl",
                    "ro",
                    "ru",
                    "sa",
                    "sr",
                    "sn",
                    "sd",
                    "si",
                    "sk",
                    "sl",
                    "so",
                    "su",
                    "sw",
                    "sv",
                    "tl",
                    "tg",
                    "ta",
                    "tt",
                    "te",
                    "th",
                    "bo",
                    "tr",
                    "tk",
                    "uk",
                    "ur",
                    "uz",
                    "vi",
                    "cy",
                    "yi",
                    "yo"
                  ],
                  "x-aai-enum": {
                    "en": {
                      "label": "English (global)"
                    },
                    "en_au": {
                      "label": "English (Australian)"
                    },
                    "en_uk": {
                      "label": "English (British)"
                    },
                    "en_us": {
                      "label": "English (US)"
                    },
                    "es": {
                      "label": "Spanish"
                    },
                    "fr": {
                      "label": "French"
                    },
                    "de": {
                      "label": "German"
                    },
                    "it": {
                      "label": "Italian"
                    },
                    "pt": {
                      "label": "Portuguese"
                    },
                    "nl": {
                      "label": "Dutch"
                    },
                    "af": {
                      "label": "Afrikaans"
                    },
                    "sq": {
                      "label": "Albanian"
                    },
                    "am": {
                      "label": "Amharic"
                    },
                    "ar": {
                      "label": "Arabic"
                    },
                    "hy": {
                      "label": "Armenian"
                    },
                    "as": {
                      "label": "Assamese"
                    },
                    "az": {
                      "label": "Azerbaijani"
                    },
                    "ba": {
                      "label": "Bashkir"
                    },
                    "eu": {
                      "label": "Basque"
                    },
                    "be": {
                      "label": "Belarusian"
                    },
                    "bn": {
                      "label": "Bengali"
                    },
                    "bs": {
                      "label": "Bosnian"
                    },
                    "br": {
                      "label": "Breton"
                    },
                    "bg": {
                      "label": "Bulgarian"
                    },
                    "my": {
                      "label": "Burmese"
                    },
                    "ca": {
                      "label": "Catalan"
                    },
                    "zh": {
                      "label": "Chinese"
                    },
                    "hr": {
                      "label": "Croatian"
                    },
                    "cs": {
                      "label": "Czech"
                    },
                    "da": {
                      "label": "Danish"
                    },
                    "et": {
                      "label": "Estonian"
                    },
                    "fo": {
                      "label": "Faroese"
                    },
                    "fi": {
                      "label": "Finnish"
                    },
                    "gl": {
                      "label": "Galician"
                    },
                    "ka": {
                      "label": "Georgian"
                    },
                    "el": {
                      "label": "Greek"
                    },
                    "gu": {
                      "label": "Gujarati"
                    },
                    "ht": {
                      "label": "Haitian"
                    },
                    "ha": {
                      "label": "Hausa"
                    },
                    "haw": {
                      "label": "Hawaiian"
                    },
                    "he": {
                      "label": "Hebrew"
                    },
                    "hi": {
                      "label": "Hindi"
                    },
                    "hu": {
                      "label": "Hungarian"
                    },
                    "is": {
                      "label": "Icelandic"
                    },
                    "id": {
                      "label": "Indonesian"
                    },
                    "ja": {
                      "label": "Japanese"
                    },
                    "jw": {
                      "label": "Javanese"
                    },
                    "kn": {
                      "label": "Kannada"
                    },
                    "kk": {
                      "label": "Kazakh"
                    },
                    "km": {
                      "label": "Khmer"
                    },
                    "ko": {
                      "label": "Korean"
                    },
                    "lo": {
                      "label": "Lao"
                    },
                    "la": {
                      "label": "Latin"
                    },
                    "lv": {
                      "label": "Latvian"
                    },
                    "ln": {
                      "label": "Lingala"
                    },
                    "lt": {
                      "label": "Lithuanian"
                    },
                    "lb": {
                      "label": "Luxembourgish"
                    },
                    "mk": {
                      "label": "Macedonian"
                    },
                    "mg": {
                      "label": "Malagasy"
                    },
                    "ms": {
                      "label": "Malay"
                    },
                    "ml": {
                      "label": "Malayalam"
                    },
                    "mt": {
                      "label": "Maltese"
                    },
                    "mi": {
                      "label": "Maori"
                    },
                    "mr": {
                      "label": "Marathi"
                    },
                    "mn": {
                      "label": "Mongolian"
                    },
                    "ne": {
                      "label": "Nepali"
                    },
                    "no": {
                      "label": "Norwegian"
                    },
                    "nn": {
                      "label": "Norwegian Nynorsk"
                    },
                    "oc": {
                      "label": "Occitan"
                    },
                    "pa": {
                      "label": "Panjabi"
                    },
                    "ps": {
                      "label": "Pashto"
                    },
                    "fa": {
                      "label": "Persian"
                    },
                    "pl": {
                      "label": "Polish"
                    },
                    "ro": {
                      "label": "Romanian"
                    },
                    "ru": {
                      "label": "Russian"
                    },
                    "sa": {
                      "label": "Sanskrit"
                    },
                    "sr": {
                      "label": "Serbian"
                    },
                    "sn": {
                      "label": "Shona"
                    },
                    "sd": {
                      "label": "Sindhi"
                    },
                    "si": {
                      "label": "Sinhala"
                    },
                    "sk": {
                      "label": "Slovak"
                    },
                    "sl": {
                      "label": "Slovenian"
                    },
                    "so": {
                      "label": "Somali"
                    },
                    "su": {
                      "label": "Sundanese"
                    },
                    "sw": {
                      "label": "Swahili"
                    },
                    "sv": {
                      "label": "Swedish"
                    },
                    "tl": {
                      "label": "Tagalog"
                    },
                    "tg": {
                      "label": "Tajik"
                    },
                    "ta": {
                      "label": "Tamil"
                    },
                    "tt": {
                      "label": "Tatar"
                    },
                    "te": {
                      "label": "Telugu"
                    },
                    "th": {
                      "label": "Thai"
                    },
                    "bo": {
                      "label": "Tibetan"
                    },
                    "tr": {
                      "label": "Turkish"
                    },
                    "tk": {
                      "label": "Turkmen"
                    },
                    "uk": {
                      "label": "Ukrainian"
                    },
                    "ur": {
                      "label": "Urdu"
                    },
                    "uz": {
                      "label": "Uzbek"
                    },
                    "vi": {
                      "label": "Vietnamese"
                    },
                    "cy": {
                      "label": "Welsh"
                    },
                    "yi": {
                      "label": "Yiddish"
                    },
                    "yo": {
                      "label": "Yoruba"
                    }
                  }
                },
                "nullable": true
              },
              "language_confidence_threshold": {
                "x-label": "Language confidence threshold",
                "description": "The confidence threshold for the automatically detected language.\nAn error will be returned if the language confidence is below this threshold.\nDefaults to 0. See [Automatic Language Detection](https://www.assemblyai.com/docs/pre-recorded-audio/language-detection) for more details.\n",
                "type": "number",
                "format": "float",
                "minimum": 0,
                "maximum": 1,
                "default": 0
              },
              "language_detection": {
                "x-label": "Language detection",
                "description": "Enable [Automatic language detection](https://www.assemblyai.com/docs/pre-recorded-audio/language-detection), either true or false.",
                "type": "boolean",
                "default": false
              },
              "language_detection_options": {
                "x-label": "Specify options for Automatic Language Detection.",
                "description": "Specify options for [Automatic Language Detection](https://www.assemblyai.com/docs/pre-recorded-audio/language-detection).",
                "type": "object",
                "additionalProperties": false,
                "properties": {
                  "expected_languages": {
                    "x-label": "Expected languages",
                    "description": "List of languages expected in the audio file. Defaults to `[\"all\"]` when unspecified. See [Automatic Language Detection](https://www.assemblyai.com/docs/pre-recorded-audio/language-detection) for more details.",
                    "type": "array",
                    "items": {
                      "x-label": "language",
                      "type": "string"
                    }
                  },
                  "fallback_language": {
                    "x-label": "Fallback language",
                    "description": "If the detected language of the audio file is not in the list of expected languages, the `fallback_language` is used. Specify `[\"auto\"]` to let our model choose the fallback language from `expected_languages` with the highest confidence score. See [Automatic Language Detection](https://www.assemblyai.com/docs/pre-recorded-audio/language-detection) for more details.\n",
                    "type": "string",
                    "default": "auto"
                  },
                  "code_switching": {
                    "x-label": "Code switching",
                    "description": "Whether [code switching](https://www.assemblyai.com/docs/speech-to-text/pre-recorded-audio/code-switching) should be detected.\n",
                    "type": "boolean",
                    "default": false
                  },
                  "code_switching_confidence_threshold": {
                    "x-label": "Code switching confidence threshold",
                    "description": "The confidence threshold for [code switching](https://www.assemblyai.com/docs/speech-to-text/pre-recorded-audio/code-switching) detection. If the code switching confidence is below this threshold, the transcript will be processed in the language with the highest `language_detection_confidence` score.\n",
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1,
                    "default": 0.3
                  }
                }
              },
              "multichannel": {
                "x-label": "Multichannel",
                "description": "Enable [Multichannel](https://www.assemblyai.com/docs/pre-recorded-audio/multichannel) transcription, can be true or false.",
                "type": "boolean",
                "default": false
              },
              "prompt": {
                "x-label": "Prompt",
                "description": "Provide natural language prompting of up to 1,500 words of contextual information to the model. See the [Prompting Guide](https://www.assemblyai.com/docs/pre-recorded-audio/prompting) for best practices.\n\nNote: This parameter is only supported for the Universal-3-Pro model.\n",
                "type": "string"
              },
              "punctuate": {
                "x-label": "Punctuate",
                "description": "Enable [Automatic Punctuation](https://www.assemblyai.com/docs/pre-recorded-audio), can be true or false",
                "type": "boolean",
                "default": true
              },
              "redact_pii": {
                "x-label": "Redact PII",
                "description": "Redact PII from the transcribed text using the Redact PII model, can be true or false. See [PII Redaction](https://www.assemblyai.com/docs/pii-redaction) for more details.",
                "type": "boolean",
                "default": false
              },
              "redact_pii_audio": {
                "x-label": "Redact PII audio",
                "description": "Generate a copy of the original media file with spoken PII \"beeped\" out, can be true or false. See [PII redaction](https://www.assemblyai.com/docs/pii-redaction#request-for-redacted-audio) for more details.",
                "type": "boolean",
                "default": false
              },
              "redact_pii_audio_options": {
                "x-label": "Specify options for PII redacted audio files.",
                "description": "Specify options for [PII redacted audio](https://www.assemblyai.com/docs/pii-redaction#request-for-redacted-audio) files.",
                "type": "object",
                "additionalProperties": false,
                "properties": {
                  "return_redacted_no_speech_audio": {
                    "x-label": "Return redacted no speech audio",
                    "description": "By default, audio redaction provides redacted audio URLs only when speech is detected. However, if your use-case specifically requires redacted audio files even for silent audio files without any dialogue, you can opt to receive these URLs by setting this parameter to `true`.",
                    "type": "boolean",
                    "default": false
                  }
                }
              },
              "redact_pii_audio_quality": {
                "x-label": "Redact PII audio quality",
                "type": "string",
                "description": "Controls the filetype of the audio created by redact_pii_audio. Currently supports mp3 (default) and wav. See [PII redaction](https://www.assemblyai.com/docs/pii-redaction#request-for-redacted-audio) for more details.",
                "x-fern-sdk-group-name": "transcripts",
                "enum": [
                  "mp3",
                  "wav"
                ],
                "x-fern-enum": {
                  "mp3": {
                    "description": "MP3 audio format is lower quality and lower size than WAV.",
                    "casing": {
                      "camel": "mp3",
                      "snake": "mp3",
                      "pascal": "Mp3",
                      "screamingSnake": "MP3"
                    }
                  },
                  "wav": {
                    "description": "WAV audio format is the highest quality (no compression) and larger size than MP3."
                  }
                },
                "x-aai-enum": {
                  "mp3": {
                    "label": "MP3"
                  },
                  "wav": {
                    "label": "WAV"
                  }
                },
                "example": "mp3"
              },
              "redact_pii_policies": {
                "x-label": "Redact PII policies",
                "description": "The list of PII Redaction policies to enable. See [PII redaction](https://www.assemblyai.com/docs/pii-redaction) for more details.",
                "type": "array",
                "items": {
                  "x-label": "PII policy",
                  "description": "The type of PII to redact",
                  "x-fern-sdk-group-name": "transcripts",
                  "type": "string",
                  "enum": [
                    "account_number",
                    "banking_information",
                    "blood_type",
                    "credit_card_cvv",
                    "credit_card_expiration",
                    "credit_card_number",
                    "date",
                    "date_interval",
                    "date_of_birth",
                    "drivers_license",
                    "drug",
                    "duration",
                    "email_address",
                    "event",
                    "filename",
                    "gender_sexuality",
                    "healthcare_number",
                    "injury",
                    "ip_address",
                    "language",
                    "location",
                    "marital_status",
                    "medical_condition",
                    "medical_process",
                    "money_amount",
                    "nationality",
                    "number_sequence",
                    "occupation",
                    "organization",
                    "passport_number",
                    "password",
                    "person_age",
                    "person_name",
                    "phone_number",
                    "physical_attribute",
                    "political_affiliation",
                    "religion",
                    "statistics",
                    "time",
                    "url",
                    "us_social_security_number",
                    "username",
                    "vehicle_id",
                    "zodiac_sign"
                  ],
                  "x-fern-enum": {
                    "account_number": {
                      "description": "Customer account or membership identification number (e.g., Policy No. 10042992, Member ID: HZ-5235-001)"
                    },
                    "banking_information": {
                      "description": "Banking information, including account and routing numbers"
                    },
                    "blood_type": {
                      "description": "Blood type (e.g., O-, AB positive)"
                    },
                    "credit_card_cvv": {
                      "description": "Credit card verification code (e.g., CVV: 080)"
                    },
                    "credit_card_expiration": {
                      "description": "Expiration date of a credit card"
                    },
                    "credit_card_number": {
                      "description": "Credit card number"
                    },
                    "date": {
                      "description": "Specific calendar date (e.g., December 18)"
                    },
                    "date_interval": {
                      "description": "Broader time periods, including date ranges, months, seasons, years, and decades (e.g., 2020-2021, 5-9 May, January 1984)"
                    },
                    "date_of_birth": {
                      "description": "Date of birth (e.g., Date of Birth: March 7,1961)"
                    },
                    "drivers_license": {
                      "description": "Driver's license number. (e.g., DL# 356933-540)"
                    },
                    "drug": {
                      "description": "Medications, vitamins, or supplements (e.g., Advil, Acetaminophen, Panadol)"
                    },
                    "duration": {
                      "description": "Periods of time, specified as a number and a unit of time (e.g., 8 months, 2 years)"
                    },
                    "email_address": {
                      "description": "Email address (e.g., support@assemblyai.com)"
                    },
                    "event": {
                      "description": "Name of an event or holiday (e.g., Olympics, Yom Kippur)"
                    },
                    "filename": {
                      "description": "Names of computer files, including the extension or filepath (e.g., Taxes/2012/brad-tax-returns.pdf)"
                    },
                    "gender_sexuality": {
                      "description": "Terms indicating gender identity or sexual orientation, including slang terms (e.g., female, bisexual, trans)"
                    },
                    "healthcare_number": {
                      "description": "Healthcare numbers and health plan beneficiary numbers (e.g., Policy No.: 5584-486-674-YM)"
                    },
                    "injury": {
                      "description": "Bodily injury (e.g., I broke my arm, I have a sprained wrist)"
                    },
                    "ip_address": {
                      "description": "Internet IP address, including IPv4 and IPv6 formats (e.g., 192.168.0.1)"
                    },
                    "language": {
                      "description": "Name of a natural language (e.g., Spanish, French)"
                    },
                    "location": {
                      "description": "Any Location reference including mailing address, postal code, city, state, province, country, or coordinates. (e.g., Lake Victoria, 145 Windsor St., 90210)"
                    },
                    "marital_status": {
                      "description": "Terms indicating marital status (e.g., Single, common-law, ex-wife, married)"
                    },
                    "medical_condition": {
                      "description": "Name of a medical condition, disease, syndrome, deficit, or disorder (e.g., chronic fatigue syndrome, arrhythmia, depression)"
                    },
                    "medical_process": {
                      "description": "Medical process, including treatments, procedures, and tests (e.g., heart surgery, CT scan)"
                    },
                    "money_amount": {
                      "description": "Name and/or amount of currency (e.g., 15 pesos, $94.50)"
                    },
                    "nationality": {
                      "description": "Terms indicating nationality, ethnicity, or race (e.g., American, Asian, Caucasian)"
                    },
                    "number_sequence": {
                      "description": "Numerical PII (including alphanumeric strings) that doesn't fall under other categories"
                    },
                    "occupation": {
                      "description": "Job title or profession (e.g., professor, actors, engineer, CPA)"
                    },
                    "organization": {
                      "description": "Name of an organization (e.g., CNN, McDonalds, University of Alaska, Northwest General Hospital)"
                    },
                    "passport_number": {
                      "description": "Passport numbers, issued by any country (e.g., PA4568332, NU3C6L86S12)"
                    },
                    "password": {
                      "description": "Account passwords, PINs, access keys, or verification answers (e.g., 27%alfalfa, temp1234, My mother's maiden name is Smith)"
                    },
                    "person_age": {
                      "description": "Number associated with an age (e.g., 27, 75)"
                    },
                    "person_name": {
                      "description": "Name of a person (e.g., Bob, Doug Jones, Dr. Kay Martinez, MD)"
                    },
                    "phone_number": {
                      "description": "Telephone or fax number"
                    },
                    "physical_attribute": {
                      "description": "Distinctive bodily attributes, including terms indicating race (e.g., I'm 190cm tall, He belongs to the Black students' association)"
                    },
                    "political_affiliation": {
                      "description": "Terms referring to a political party, movement, or ideology (e.g., Republican, Liberal)"
                    },
                    "religion": {
                      "description": "Terms indicating religious affiliation (e.g., Hindu, Catholic)"
                    },
                    "statistics": {
                      "description": "Medical statistics (e.g., 18%, 18 percent)"
                    },
                    "time": {
                      "description": "Expressions indicating clock times (e.g., 19:37:28, 10pm EST)"
                    },
                    "url": {
                      "description": "Internet addresses (e.g., https://www.assemblyai.com/)"
                    },
                    "us_social_security_number": {
                      "description": "Social Security Number or equivalent"
                    },
                    "username": {
                      "description": "Usernames, login names, or handles (e.g., @AssemblyAI)"
                    },
                    "vehicle_id": {
                      "description": "Vehicle identification numbers (VINs), vehicle serial numbers, and license plate numbers (e.g., 5FNRL38918B111818, BIF7547)"
                    },
                    "zodiac_sign": {
                      "description": "Names of Zodiac signs (e.g., Aries, Taurus)"
                    }
                  },
                  "x-aai-enum": {
                    "account_number": {
                      "label": "Account number"
                    },
                    "banking_information": {
                      "label": "Banking information"
                    },
                    "blood_type": {
                      "label": "Blood type"
                    },
                    "credit_card_cvv": {
                      "label": "Credit card CVV"
                    },
                    "credit_card_expiration": {
                      "label": "Credit card expiration"
                    },
                    "credit_card_number": {
                      "label": "Credit card number"
                    },
                    "date": {
                      "label": "Date"
                    },
                    "date_interval": {
                      "label": "Date interval"
                    },
                    "date_of_birth": {
                      "label": "Date of birth"
                    },
                    "drivers_license": {
                      "label": "Driver's license"
                    },
                    "drug": {
                      "label": "Drug"
                    },
                    "duration": {
                      "label": "Duration"
                    },
                    "email_address": {
                      "label": "Email address"
                    },
                    "event": {
                      "label": "Event"
                    },
                    "filename": {
                      "label": "Filename"
                    },
                    "gender_sexuality": {
                      "label": "Gender sexuality"
                    },
                    "healthcare_number": {
                      "label": "Healthcare number"
                    },
                    "injury": {
                      "label": "Injury"
                    },
                    "ip_address": {
                      "label": "IP address"
                    },
                    "language": {
                      "label": "Language"
                    },
                    "location": {
                      "label": "Location"
                    },
                    "marital_status": {
                      "label": "Marital status"
                    },
                    "medical_condition": {
                      "label": "Medical condition"
                    },
                    "medical_process": {
                      "label": "Medical process"
                    },
                    "money_amount": {
                      "label": "Money amount"
                    },
                    "nationality": {
                      "label": "Nationality"
                    },
                    "number_sequence": {
                      "label": "Number sequence"
                    },
                    "occupation": {
                      "label": "Occupation"
                    },
                    "organization": {
                      "label": "Organization"
                    },
                    "passport_number": {
                      "label": "Passport number"
                    },
                    "password": {
                      "label": "Password"
                    },
                    "person_age": {
                      "label": "Person age"
                    },
                    "person_name": {
                      "label": "Person name"
                    },
                    "phone_number": {
                      "label": "Phone number"
                    },
                    "physical_attribute": {
                      "label": "Physical attribute"
                    },
                    "political_affiliation": {
                      "label": "Political affiliation"
                    },
                    "religion": {
                      "label": "Religion"
                    },
                    "statistics": {
                      "label": "Statistics"
                    },
                    "time": {
                      "label": "Time"
                    },
                    "url": {
                      "label": "URL"
                    },
                    "us_social_security_number": {
                      "label": "US Social Security Number"
                    },
                    "username": {
                      "label": "Username"
                    },
                    "vehicle_id": {
                      "label": "Vehicle ID"
                    },
                    "zodiac_sign": {
                      "label": "Zodiac sign"
                    }
                  }
                }
              },
              "redact_pii_sub": {
                "x-label": "Redact PII substitution",
                "description": "The replacement logic for detected PII, can be `entity_type` or `hash`. See [PII redaction](https://www.assemblyai.com/docs/pii-redaction) for more details.",
                "oneOf": [
                  {
                    "x-label": "Redact PII substitution",
                    "type": "string",
                    "x-fern-sdk-group-name": "transcripts",
                    "description": "The replacement logic for detected PII, can be `entity_name` or `hash`. See [PII redaction](https://www.assemblyai.com/docs/pii-redaction) for more details.",
                    "enum": [
                      "entity_name",
                      "hash"
                    ],
                    "x-aai-enum": {
                      "entity_name": {
                        "label": "Entity name"
                      },
                      "hash": {
                        "label": "Hash"
                      }
                    }
                  },
                  {
                    "type": "string",
                    "nullable": true
                  }
                ],
                "default": "hash"
              },
              "sentiment_analysis": {
                "x-label": "Sentiment Analysis",
                "description": "Enable [Sentiment Analysis](https://www.assemblyai.com/docs/speech-understanding/sentiment-analysis), can be true or false",
                "type": "boolean",
                "default": false
              },
              "speaker_labels": {
                "x-label": "Speaker labels",
                "description": "Enable [Speaker diarization](https://www.assemblyai.com/docs/pre-recorded-audio/speaker-diarization), can be true or false",
                "type": "boolean",
                "default": false
              },
              "speaker_options": {
                "x-label": "Specify options for speaker diarization.",
                "description": "Specify options for [Speaker diarization](https://www.assemblyai.com/docs/pre-recorded-audio/speaker-diarization#set-a-range-of-possible-speakers). Use this to set a range of possible speakers.",
                "type": "object",
                "additionalProperties": false,
                "properties": {
                  "min_speakers_expected": {
                    "x-label": "Minimum speakers expected",
                    "description": "The minimum number of speakers expected in the audio file. See [Set a range of possible speakers](https://www.assemblyai.com/docs/pre-recorded-audio/speaker-diarization#set-a-range-of-possible-speakers) for more details.",
                    "type": "integer",
                    "default": 1
                  },
                  "max_speakers_expected": {
                    "x-label": "Maximum speakers expected",
                    "description": "<Warning>Setting this parameter too high may hurt model accuracy</Warning>\nThe maximum number of speakers expected in the audio file. See [Set a range of possible speakers](https://www.assemblyai.com/docs/pre-recorded-audio/speaker-diarization#set-a-range-of-possible-speakers) for more details.\n",
                    "type": "integer",
                    "default": 10
                  }
                }
              },
              "speakers_expected": {
                "x-label": "Speakers expected",
                "description": "Tells the speaker label model how many speakers it should attempt to identify. See [Set number of speakers expected](https://www.assemblyai.com/docs/pre-recorded-audio/speaker-diarization#set-number-of-speakers-expected) for more details.",
                "type": "integer",
                "default": null,
                "nullable": true
              },
              "speech_models": {
                "x-label": "Speech models",
                "description": "List multiple speech models in priority order, allowing our system to automatically route your audio to the best available option. See [Model Selection](https://www.assemblyai.com/docs/pre-recorded-audio/select-the-speech-model) for available models and routing behavior.\n",
                "type": "array",
                "items": {
                  "x-label": "Speech model",
                  "type": "string",
                  "description": "The speech model to use for the transcription. See [Model Selection](https://www.assemblyai.com/docs/pre-recorded-audio/select-the-speech-model) for available models.",
                  "x-fern-sdk-group-name": "transcripts"
                }
              },
              "speech_threshold": {
                "x-label": "Speech threshold",
                "description": "Reject audio files that contain less than this fraction of speech.\nValid values are in the range [0, 1] inclusive. See [Speech Threshold](https://www.assemblyai.com/docs/speech-threshold) for more details.\n",
                "type": "number",
                "format": "float",
                "minimum": 0,
                "maximum": 1,
                "default": 0,
                "nullable": true
              },
              "speech_understanding": {
                "x-label": "Speech Understanding",
                "description": "Enable speech understanding tasks like [Translation](https://www.assemblyai.com/docs/speech-understanding/translation), [Speaker Identification](https://www.assemblyai.com/docs/speech-understanding/speaker-identification), and [Custom Formatting](https://www.assemblyai.com/docs/speech-understanding/custom-formatting). See the task-specific docs for available options and configuration.\n",
                "type": "object",
                "properties": {
                  "request": {
                    "oneOf": [
                      {
                        "x-label": "Translation request body",
                        "description": "Request body for [Translation](https://www.assemblyai.com/docs/speech-understanding/translation).",
                        "type": "object",
                        "properties": {
                          "translation": {
                            "type": "object",
                            "properties": {
                              "target_languages": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "List of target language codes (e.g., `[\"es\", \"de\"]`). See [Translation](https://www.assemblyai.com/docs/speech-understanding/translation) for supported languages."
                              },
                              "formal": {
                                "type": "boolean",
                                "description": "Use formal language style. See [Translation](https://www.assemblyai.com/docs/speech-understanding/translation) for more details.",
                                "default": true
                              },
                              "match_original_utterance": {
                                "type": "boolean",
                                "description": "When enabled with Speaker Labels, returns translated text in the utterances array. Each utterance will include a `translated_texts` key containing translations for each target language.",
                                "default": false
                              }
                            },
                            "required": [
                              "target_languages"
                            ]
                          }
                        },
                        "required": [
                          "translation"
                        ]
                      },
                      {
                        "type": "object",
                        "description": "Request body for [Speaker Identification](https://www.assemblyai.com/docs/speech-understanding/speaker-identification).",
                        "properties": {
                          "speaker_identification": {
                            "type": "object",
                            "properties": {
                              "speaker_type": {
                                "type": "string",
                                "enum": [
                                  "role",
                                  "name"
                                ],
                                "description": "Type of speaker identification. See [Speaker Identification](https://www.assemblyai.com/docs/speech-understanding/speaker-identification) for details on each type."
                              },
                              "known_values": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Required if speaker_type is \"role\". Each value must be 35 characters or less."
                              },
                              "speakers": {
                                "type": "array",
                                "description": "An array of speaker objects with metadata to improve identification accuracy. Each object should include a `role` or `name` (depending on `speaker_type`) and an optional `description` to help the model identify the speaker. You can also include any additional custom properties (e.g., `company`, `title`) to provide more context. Use this as an alternative to `known_values` when you want to provide additional context about each speaker.",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "role": {
                                      "type": "string",
                                      "description": "The role of the speaker. Required when `speaker_type` is \"role\"."
                                    },
                                    "name": {
                                      "type": "string",
                                      "description": "The name of the speaker. Required when `speaker_type` is \"name\"."
                                    },
                                    "description": {
                                      "type": "string",
                                      "description": "A description of the speaker to help the model identify them based on conversational context."
                                    }
                                  },
                                  "additionalProperties": true
                                }
                              }
                            },
                            "required": [
                              "speaker_type"
                            ]
                          }
                        },
                        "required": [
                          "speaker_identification"
                        ]
                      },
                      {
                        "type": "object",
                        "description": "Request body for [Custom Formatting](https://www.assemblyai.com/docs/speech-understanding/custom-formatting).",
                        "properties": {
                          "custom_formatting": {
                            "type": "object",
                            "properties": {
                              "date": {
                                "type": "string",
                                "description": "Date format pattern (e.g., `\"mm/dd/yyyy\"`). See [Custom Formatting](https://www.assemblyai.com/docs/speech-understanding/custom-formatting) for more details."
                              },
                              "phone_number": {
                                "type": "string",
                                "description": "Phone number format pattern (e.g., `\"(xxx)xxx-xxxx\"`). See [Custom Formatting](https://www.assemblyai.com/docs/speech-understanding/custom-formatting) for more details."
                              },
                              "email": {
                                "type": "string",
                                "description": "Email format pattern (e.g., `\"username@domain.com\"`). See [Custom Formatting](https://www.assemblyai.com/docs/speech-understanding/custom-formatting) for more details."
                              }
                            }
                          }
                        },
                        "required": [
                          "custom_formatting"
                        ]
                      }
                    ]
                  }
                },
                "required": [
                  "request"
                ]
              },
              "summarization": {
                "x-label": "Enable Summarization",
                "description": "Enable [Summarization](https://www.assemblyai.com/docs/speech-understanding/summarization), can be true or false",
                "type": "boolean",
                "default": false
              },
              "summary_model": {
                "type": "string",
                "x-label": "Summary model",
                "description": "The model to summarize the transcript",
                "x-fern-sdk-group-name": "transcripts",
                "enum": [
                  "informative",
                  "conversational",
                  "catchy"
                ],
                "x-aai-enum": {
                  "informative": {
                    "label": "Informative"
                  },
                  "conversational": {
                    "label": "Conversational"
                  },
                  "catchy": {
                    "label": "Catchy"
                  }
                }
              },
              "summary_type": {
                "type": "string",
                "x-label": "Summary type",
                "description": "The type of summary",
                "x-fern-sdk-group-name": "transcripts",
                "enum": [
                  "bullets",
                  "bullets_verbose",
                  "gist",
                  "headline",
                  "paragraph"
                ],
                "x-aai-enum": {
                  "bullets": {
                    "label": "Bullets"
                  },
                  "bullets_verbose": {
                    "label": "Bullets verbose"
                  },
                  "gist": {
                    "label": "Gist"
                  },
                  "headline": {
                    "label": "Headline"
                  },
                  "paragraph": {
                    "label": "Paragraph"
                  }
                }
              },
              "temperature": {
                "x-label": "Temperature",
                "description": "Control the amount of randomness injected into the model's response. See the [Prompting Guide](https://www.assemblyai.com/docs/pre-recorded-audio/prompting) for more details.\n\nNote: This parameter can only be used with the Universal-3-Pro model.\n",
                "type": "number",
                "minimum": 0,
                "maximum": 1,
                "default": 0
              },
              "webhook_auth_header_name": {
                "x-label": "Webhook auth header name",
                "description": "The header name to be sent with the transcript completed or failed [webhook](https://www.assemblyai.com/docs/deployment/webhooks-for-pre-recorded-audio) requests",
                "type": "string",
                "default": null,
                "nullable": true
              },
              "webhook_auth_header_value": {
                "x-label": "Webhook auth header value",
                "description": "The header value to send back with the transcript completed or failed [webhook](https://www.assemblyai.com/docs/deployment/webhooks-for-pre-recorded-audio) requests for added security",
                "type": "string",
                "default": null,
                "nullable": true
              },
              "webhook_url": {
                "x-label": "Webhook URL",
                "description": "The URL to which we send [webhook](https://www.assemblyai.com/docs/deployment/webhooks-for-pre-recorded-audio) requests.\n",
                "type": "string",
                "format": "url"
              },
              "custom_topics": {
                "x-label": "Enable custom topics",
                "description": "This parameter does not currently have any functionality attached to it.",
                "type": "boolean",
                "default": false,
                "deprecated": true
              },
              "speech_model": {
                "x-label": "Speech model",
                "description": "This parameter has been replaced with the `speech_models` parameter, learn more about the `speech_models` parameter [here](https://www.assemblyai.com/docs/pre-recorded-audio/select-the-speech-model).\n",
                "oneOf": [
                  {
                    "x-label": "Speech model",
                    "type": "string",
                    "description": "The speech model to use for the transcription. See [Model Selection](https://www.assemblyai.com/docs/pre-recorded-audio/select-the-speech-model) for available models.",
                    "x-fern-sdk-group-name": "transcripts"
                  },
                  {
                    "type": "string",
                    "nullable": true
                  }
                ],
                "deprecated": true
              },
              "topics": {
                "x-label": "Custom topics",
                "description": "This parameter does not currently have any functionality attached to it.",
                "type": "array",
                "items": {
                  "x-label": "Topic",
                  "type": "string"
                },
                "deprecated": true
              }
            },
            "type": "object",
            "additionalProperties": false,
            "x-label": "Optional transcript parameters",
            "description": "The parameters for creating a transcript",
            "x-fern-sdk-group-name": "transcripts",
            "example": {
              "speech_model": null,
              "language_code": "en_us",
              "language_detection": true,
              "language_confidence_threshold": 0.7,
              "punctuate": true,
              "format_text": true,
              "multichannel": true,
              "webhook_url": "https://your-webhook-url.tld/path",
              "webhook_auth_header_name": "webhook-secret",
              "webhook_auth_header_value": "webhook-secret-value",
              "auto_highlights": true,
              "audio_start_from": 10,
              "audio_end_at": 280,
              "filter_profanity": true,
              "redact_pii": true,
              "redact_pii_audio": true,
              "redact_pii_audio_quality": "mp3",
              "redact_pii_policies": [
                "us_social_security_number",
                "credit_card_number"
              ],
              "redact_pii_sub": "hash",
              "speaker_labels": true,
              "speakers_expected": 2,
              "content_safety": true,
              "iab_categories": true,
              "custom_spelling": [],
              "disfluencies": false,
              "sentiment_analysis": true,
              "auto_chapters": true,
              "entity_detection": true,
              "speech_threshold": 0.5,
              "summarization": true,
              "summary_model": "informative",
              "summary_type": "bullets",
              "custom_topics": true,
              "topics": [],
              "speech_understanding": {
                "request": {
                  "translation": {
                    "target_languages": [
                      "es",
                      "de"
                    ],
                    "formal": true,
                    "match_original_utterance": true
                  }
                }
              }
            },
            "readOnly": true,
            "nullable": true
          },
          "deepgram_async": {
            "type": "object",
            "properties": {
              "callback": {
                "type": "string"
              },
              "callback_method": {
                "default": "POST",
                "enum": [
                  "POST",
                  "PUT"
                ]
              },
              "custom_topic": {
                "oneOf": [
                  {
                    "type": "string"
                  },
                  {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "maxItems": 100
                  }
                ]
              },
              "custom_topic_mode": {
                "default": "extended",
                "type": "string",
                "enum": [
                  "extended",
                  "strict"
                ]
              },
              "custom_intent": {
                "oneOf": [
                  {
                    "type": "string"
                  },
                  {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "maxItems": 100
                    }
                  }
                ]
              },
              "custom_intent_mode": {
                "default": "extended",
                "type": "string",
                "enum": [
                  "extended",
                  "strict"
                ]
              },
              "detect_entities": {
                "default": false,
                "type": "boolean"
              },
              "detect_language": {
                "oneOf": [
                  {
                    "type": "boolean",
                    "default": false
                  },
                  {
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  }
                ]
              },
              "diarize": {
                "default": false,
                "type": "boolean"
              },
              "dictation": {
                "default": false,
                "type": "boolean"
              },
              "encoding": {
                "type": "string",
                "enum": [
                  "linear16",
                  "flac",
                  "mulaw",
                  "amr-nb",
                  "amr-wb",
                  "opus",
                  "speex",
                  "g729"
                ]
              },
              "extra": {
                "oneOf": [
                  {
                    "type": "string"
                  },
                  {
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  }
                ]
              },
              "filler_words": {
                "default": false,
                "type": "boolean"
              },
              "intents": {
                "default": false,
                "type": "boolean"
              },
              "keyterm": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              },
              "keywords": {
                "oneOf": [
                  {
                    "type": "string"
                  },
                  {
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  }
                ]
              },
              "language": {
                "type": "string",
                "default": "en",
                "enum": [
                  "bg",
                  "ca",
                  "zh",
                  "zh-CN",
                  "zh-TW",
                  "zh-HK",
                  "zh-Hans",
                  "zh-Hant",
                  "cs",
                  "da",
                  "da-DK",
                  "nl",
                  "nl-BE",
                  "en",
                  "en-US",
                  "en-AU",
                  "en-GB",
                  "en-NZ",
                  "en-IN",
                  "et",
                  "fi",
                  "fr",
                  "fr-CA",
                  "de",
                  "de-CH",
                  "el",
                  "hi",
                  "hi-Latn",
                  "hu",
                  "id",
                  "it",
                  "ja",
                  "ko",
                  "ko-KR",
                  "lv",
                  "lt",
                  "ms",
                  "multi",
                  "no",
                  "pl",
                  "pt",
                  "pt-BR",
                  "pt-PT",
                  "ro",
                  "ru",
                  "sk",
                  "es",
                  "es-419",
                  "es-LATAM",
                  "sv",
                  "sv-SE",
                  "taq",
                  "th",
                  "th-TH",
                  "tr",
                  "uk",
                  "vi"
                ]
              },
              "measurements": {
                "default": false,
                "type": "boolean"
              },
              "mip_opt_out": {
                "default": false,
                "type": "boolean"
              },
              "model": {
                "default": "base-general",
                "anyOf": [
                  {
                    "type": "string",
                    "description": "Our public models available to all accounts",
                    "enum": [
                      "nova-3",
                      "nova-3-general",
                      "nova-3-medical",
                      "nova-2",
                      "nova-2-general",
                      "nova-2-meeting",
                      "nova-2-finance",
                      "nova-2-conversationalai",
                      "nova-2-voicemail",
                      "nova-2-video",
                      "nova-2-medical",
                      "nova-2-drivethru",
                      "nova-2-automotive",
                      "nova",
                      "nova-general",
                      "nova-phonecall",
                      "nova-medical",
                      "enhanced",
                      "enhanced-general",
                      "enhanced-meeting",
                      "enhanced-phonecall",
                      "enhanced-finance",
                      "base",
                      "meeting",
                      "phonecall",
                      "finance",
                      "conversationalai",
                      "voicemail",
                      "video"
                    ]
                  },
                  {
                    "type": "string",
                    "description": "Custom string if you've had a model trained by Deepgram"
                  }
                ],
                "example": "nova-3"
              },
              "multichannel": {
                "default": false,
                "type": "boolean"
              },
              "numerals": {
                "default": false,
                "type": "boolean"
              },
              "paragraphs": {
                "default": false,
                "type": "boolean"
              },
              "profanity_filter": {
                "default": false,
                "type": "boolean"
              },
              "punctuate": {
                "default": false,
                "type": "boolean"
              },
              "redact": {
                "oneOf": [
                  {
                    "type": "string"
                  },
                  {
                    "type": "array",
                    "items": {
                      "type": "string"
                    },
                    "maxItems": 100
                  }
                ]
              },
              "replace": {
                "oneOf": [
                  {
                    "type": "string"
                  },
                  {
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  }
                ]
              },
              "search": {
                "oneOf": [
                  {
                    "type": "string"
                  },
                  {
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  }
                ]
              },
              "sentiment": {
                "default": false,
                "type": "boolean"
              },
              "smart_format": {
                "default": false,
                "type": "boolean"
              },
              "summarize": {
                "enum": [
                  "v1",
                  "v2",
                  "true",
                  "false",
                  true,
                  false
                ]
              },
              "tag": {
                "oneOf": [
                  {
                    "type": "string"
                  },
                  {
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  }
                ]
              },
              "topics": {
                "default": false,
                "type": "boolean"
              },
              "utterances": {
                "default": false,
                "type": "boolean"
              },
              "utt_split": {
                "default": 0.8,
                "type": "number"
              },
              "version": {
                "default": "latest",
                "anyOf": [
                  {
                    "type": "string",
                    "description": "Use the latest version of a model",
                    "enum": [
                      "latest"
                    ]
                  },
                  {
                    "type": "string",
                    "description": "Use a previous version of a model"
                  }
                ]
              },
              "credential_id": {
                "type": "string",
                "description": "The ID of the Deepgram credential to use for this transcription. If not specified, the default credential will be used."
              }
            },
            "readOnly": true,
            "nullable": true
          },
          "gladia_v2_async": {
            "type": "object",
            "properties": {
              "context_prompt": {
                "type": "string",
                "description": "**[Deprecated]** Context to feed the transcription model with for possible better accuracy",
                "deprecated": true
              },
              "custom_vocabulary": {
                "type": "boolean",
                "description": "**[Beta]** Can be either boolean to enable custom_vocabulary for this audio or an array with specific vocabulary list to feed the transcription model with",
                "default": false
              },
              "custom_vocabulary_config": {
                "properties": {
                  "vocabulary": {
                    "description": "Specific vocabulary list to feed the transcription model with. Each item can be a string or an object with the following properties: value, intensity, pronunciations, language.",
                    "example": [
                      "Westeros",
                      {
                        "value": "Stark"
                      },
                      {
                        "value": "Night's Watch",
                        "pronunciations": [
                          "Nightz Watch"
                        ],
                        "intensity": 0.4,
                        "language": "en"
                      }
                    ],
                    "type": "array",
                    "items": {
                      "oneOf": [
                        {
                          "type": "object",
                          "properties": {
                            "value": {
                              "type": "string",
                              "description": "The text used to replace in the transcription.",
                              "example": "Gladia"
                            },
                            "intensity": {
                              "type": "number",
                              "description": "The global intensity of the feature.",
                              "example": 0.5,
                              "minimum": 0,
                              "maximum": 1
                            },
                            "pronunciations": {
                              "description": "The pronunciations used in the transcription.",
                              "type": "array",
                              "items": {
                                "type": "string"
                              }
                            },
                            "language": {
                              "type": "string",
                              "description": "Specify the language in which it will be pronounced when sound comparison occurs. Default to transcription language.",
                              "example": "en"
                            }
                          },
                          "required": [
                            "value"
                          ]
                        },
                        {
                          "type": "string"
                        }
                      ]
                    }
                  },
                  "default_intensity": {
                    "type": "number",
                    "description": "Default intensity for the custom vocabulary",
                    "example": 0.5,
                    "minimum": 0,
                    "maximum": 1
                  }
                },
                "required": [
                  "vocabulary"
                ],
                "type": "object",
                "description": "**[Beta]** Custom vocabulary configuration, if `custom_vocabulary` is enabled"
              },
              "detect_language": {
                "type": "boolean",
                "description": "**[Deprecated]** Use `language_config` instead. Detect the language from the given audio",
                "default": true,
                "deprecated": true
              },
              "enable_code_switching": {
                "type": "boolean",
                "description": "**[Deprecated]** Use `language_config` instead.Detect multiple languages in the given audio",
                "default": false,
                "deprecated": true
              },
              "code_switching_config": {
                "properties": {
                  "languages": {
                    "type": "array",
                    "description": "Specify the languages you want to use when detecting multiple languages",
                    "default": [],
                    "items": {
                      "type": "string",
                      "enum": [
                        "af",
                        "sq",
                        "am",
                        "ar",
                        "hy",
                        "as",
                        "az",
                        "ba",
                        "eu",
                        "be",
                        "bn",
                        "bs",
                        "br",
                        "bg",
                        "ca",
                        "zh",
                        "hr",
                        "cs",
                        "da",
                        "nl",
                        "en",
                        "et",
                        "fo",
                        "fi",
                        "fr",
                        "gl",
                        "ka",
                        "de",
                        "el",
                        "gu",
                        "ht",
                        "ha",
                        "haw",
                        "he",
                        "hi",
                        "hu",
                        "is",
                        "id",
                        "it",
                        "ja",
                        "jv",
                        "kn",
                        "kk",
                        "km",
                        "ko",
                        "lo",
                        "la",
                        "lv",
                        "ln",
                        "lt",
                        "lb",
                        "mk",
                        "mg",
                        "ms",
                        "ml",
                        "mt",
                        "mi",
                        "mr",
                        "mn",
                        "mymr",
                        "ne",
                        "no",
                        "nn",
                        "oc",
                        "ps",
                        "fa",
                        "pl",
                        "pt",
                        "pa",
                        "ro",
                        "ru",
                        "sa",
                        "sr",
                        "sn",
                        "sd",
                        "si",
                        "sk",
                        "sl",
                        "so",
                        "es",
                        "su",
                        "sw",
                        "sv",
                        "tl",
                        "tg",
                        "ta",
                        "tt",
                        "te",
                        "th",
                        "bo",
                        "tr",
                        "tk",
                        "uk",
                        "ur",
                        "uz",
                        "vi",
                        "cy",
                        "yi",
                        "yo",
                        "jp"
                      ]
                    }
                  }
                },
                "type": "object",
                "description": "**[Deprecated]** Use `language_config` instead. Specify the configuration for code switching",
                "deprecated": true
              },
              "language": {
                "type": "string",
                "description": "**[Deprecated]** Use `language_config` instead. Set the spoken language for the given audio (ISO 639 standard)",
                "deprecated": true,
                "enum": [
                  "af",
                  "sq",
                  "am",
                  "ar",
                  "hy",
                  "as",
                  "az",
                  "ba",
                  "eu",
                  "be",
                  "bn",
                  "bs",
                  "br",
                  "bg",
                  "ca",
                  "zh",
                  "hr",
                  "cs",
                  "da",
                  "nl",
                  "en",
                  "et",
                  "fo",
                  "fi",
                  "fr",
                  "gl",
                  "ka",
                  "de",
                  "el",
                  "gu",
                  "ht",
                  "ha",
                  "haw",
                  "he",
                  "hi",
                  "hu",
                  "is",
                  "id",
                  "it",
                  "ja",
                  "jv",
                  "kn",
                  "kk",
                  "km",
                  "ko",
                  "lo",
                  "la",
                  "lv",
                  "ln",
                  "lt",
                  "lb",
                  "mk",
                  "mg",
                  "ms",
                  "ml",
                  "mt",
                  "mi",
                  "mr",
                  "mn",
                  "mymr",
                  "ne",
                  "no",
                  "nn",
                  "oc",
                  "ps",
                  "fa",
                  "pl",
                  "pt",
                  "pa",
                  "ro",
                  "ru",
                  "sa",
                  "sr",
                  "sn",
                  "sd",
                  "si",
                  "sk",
                  "sl",
                  "so",
                  "es",
                  "su",
                  "sw",
                  "sv",
                  "tl",
                  "tg",
                  "ta",
                  "tt",
                  "te",
                  "th",
                  "bo",
                  "tr",
                  "tk",
                  "uk",
                  "ur",
                  "uz",
                  "vi",
                  "cy",
                  "yi",
                  "yo",
                  "jp"
                ]
              },
              "subtitles": {
                "type": "boolean",
                "description": "Enable subtitles generation for this transcription",
                "default": false
              },
              "subtitles_config": {
                "properties": {
                  "formats": {
                    "type": "array",
                    "minItems": 1,
                    "example": [
                      "srt"
                    ],
                    "items": {
                      "type": "string",
                      "description": "Subtitles formats you want your transcription to be formatted to",
                      "enum": [
                        "srt",
                        "vtt"
                      ]
                    }
                  },
                  "minimum_duration": {
                    "type": "number",
                    "description": "Minimum duration of a subtitle in seconds",
                    "minimum": 0
                  },
                  "maximum_duration": {
                    "type": "number",
                    "description": "Maximum duration of a subtitle in seconds",
                    "minimum": 1,
                    "maximum": 30
                  },
                  "maximum_characters_per_row": {
                    "type": "integer",
                    "description": "Maximum number of characters per row in a subtitle",
                    "minimum": 1
                  },
                  "maximum_rows_per_caption": {
                    "type": "integer",
                    "description": "Maximum number of rows per caption",
                    "minimum": 1,
                    "maximum": 5
                  },
                  "style": {
                    "type": "string",
                    "description": "Style of the subtitles. Compliance mode refers to : https://loc.gov/preservation/digital/formats//fdd/fdd000569.shtml#:~:text=SRT%20files%20are%20basic%20text,alongside%2C%20example%3A%20%22MyVideo123 ",
                    "default": "default",
                    "enum": [
                      "default",
                      "compliance"
                    ]
                  }
                },
                "type": "object",
                "description": "Configuration for subtitles generation if `subtitles` is enabled"
              },
              "diarization": {
                "type": "boolean",
                "description": "Enable speaker recognition (diarization) for this audio",
                "default": false
              },
              "diarization_config": {
                "properties": {
                  "number_of_speakers": {
                    "type": "integer",
                    "description": "Exact number of speakers in the audio",
                    "example": 3,
                    "minimum": 1
                  },
                  "min_speakers": {
                    "type": "integer",
                    "description": "Minimum number of speakers in the audio",
                    "example": 1,
                    "minimum": 0
                  },
                  "max_speakers": {
                    "type": "integer",
                    "description": "Maximum number of speakers in the audio",
                    "example": 2,
                    "minimum": 0
                  },
                  "enhanced": {
                    "type": "boolean",
                    "description": "**[Alpha]** Use enhanced diarization for this audio",
                    "default": false
                  }
                },
                "type": "object",
                "description": "Speaker recognition configuration, if `diarization` is enabled"
              },
              "translation": {
                "type": "boolean",
                "description": "**[Beta]** Enable translation for this audio",
                "default": false
              },
              "translation_config": {
                "properties": {
                  "target_languages": {
                    "type": "array",
                    "example": [
                      "en"
                    ],
                    "minItems": 1,
                    "items": {
                      "type": "string",
                      "description": "The target language in `iso639-1` format",
                      "enum": [
                        "af",
                        "sq",
                        "am",
                        "ar",
                        "hy",
                        "as",
                        "ast",
                        "az",
                        "ba",
                        "eu",
                        "be",
                        "bn",
                        "bs",
                        "br",
                        "bg",
                        "my",
                        "ca",
                        "ceb",
                        "zh",
                        "hr",
                        "cs",
                        "da",
                        "nl",
                        "en",
                        "et",
                        "fo",
                        "fi",
                        "nl",
                        "fr",
                        "fy",
                        "ff",
                        "gd",
                        "gl",
                        "lg",
                        "ka",
                        "de",
                        "el",
                        "gu",
                        "ht",
                        "ha",
                        "haw",
                        "he",
                        "hi",
                        "hu",
                        "is",
                        "ig",
                        "ilo",
                        "id",
                        "ga",
                        "it",
                        "ja",
                        "jp",
                        "jv",
                        "kn",
                        "kk",
                        "km",
                        "ko",
                        "lo",
                        "la",
                        "lv",
                        "ln",
                        "lt",
                        "lb",
                        "mk",
                        "mg",
                        "ms",
                        "ml",
                        "mt",
                        "mi",
                        "mr",
                        "mo",
                        "mn",
                        "mymr",
                        "ne",
                        "no",
                        "nn",
                        "oc",
                        "or",
                        "pa",
                        "ps",
                        "fa",
                        "pl",
                        "pt",
                        "pa",
                        "ro",
                        "ru",
                        "sa",
                        "sr",
                        "sn",
                        "sd",
                        "si",
                        "sk",
                        "sl",
                        "so",
                        "es",
                        "su",
                        "sw",
                        "ss",
                        "sv",
                        "tl",
                        "tg",
                        "ta",
                        "tt",
                        "te",
                        "th",
                        "bo",
                        "tn",
                        "tr",
                        "tk",
                        "uk",
                        "ur",
                        "uz",
                        "vi",
                        "cy",
                        "wo",
                        "xh",
                        "yi",
                        "yo",
                        "zu"
                      ]
                    }
                  },
                  "model": {
                    "type": "string",
                    "description": "Model you want the translation model to use to translate",
                    "default": "base",
                    "enum": [
                      "base",
                      "enhanced"
                    ]
                  },
                  "match_original_utterances": {
                    "type": "boolean",
                    "description": "Align translated utterances with the original ones",
                    "default": true
                  },
                  "lipsync": {
                    "type": "boolean",
                    "description": "Whether to apply lipsync to the translated transcription. ",
                    "default": true
                  },
                  "context_adaptation": {
                    "type": "boolean",
                    "description": "Enables or disables context-aware translation features that allow the model to adapt translations based on provided context.",
                    "default": true
                  },
                  "context": {
                    "type": "string",
                    "description": "Context information to improve translation accuracy"
                  },
                  "informal": {
                    "type": "boolean",
                    "description": "Forces the translation to use informal language forms when available in the target language.",
                    "default": false
                  }
                },
                "required": [
                  "target_languages"
                ],
                "type": "object",
                "description": "**[Beta]** Translation configuration, if `translation` is enabled"
              },
              "summarization": {
                "type": "boolean",
                "description": "**[Beta]** Enable summarization for this audio",
                "default": false
              },
              "summarization_config": {
                "properties": {
                  "type": {
                    "type": "string",
                    "description": "The type of summarization to apply",
                    "default": "general",
                    "enum": [
                      "general",
                      "bullet_points",
                      "concise"
                    ]
                  }
                },
                "type": "object",
                "description": "**[Beta]** Summarization configuration, if `summarization` is enabled"
              },
              "moderation": {
                "type": "boolean",
                "description": "**[Alpha]** Enable moderation for this audio",
                "default": false
              },
              "named_entity_recognition": {
                "type": "boolean",
                "description": "**[Alpha]** Enable named entity recognition for this audio",
                "default": false
              },
              "chapterization": {
                "type": "boolean",
                "description": "**[Alpha]** Enable chapterization for this audio",
                "default": false
              },
              "name_consistency": {
                "type": "boolean",
                "description": "**[Alpha]** Enable names consistency for this audio",
                "default": false
              },
              "custom_spelling": {
                "type": "boolean",
                "description": "**[Alpha]** Enable custom spelling for this audio",
                "default": false
              },
              "custom_spelling_config": {
                "properties": {
                  "spelling_dictionary": {
                    "type": "object",
                    "description": "The list of spelling applied on the audio transcription",
                    "example": {
                      "Gettleman": [
                        "gettleman"
                      ],
                      "SQL": [
                        "Sequel"
                      ]
                    }
                  }
                },
                "required": [
                  "spelling_dictionary"
                ],
                "type": "object",
                "description": "**[Alpha]** Custom spelling configuration, if `custom_spelling` is enabled"
              },
              "structured_data_extraction": {
                "type": "boolean",
                "description": "**[Alpha]** Enable structured data extraction for this audio",
                "default": false
              },
              "structured_data_extraction_config": {
                "properties": {
                  "classes": {
                    "description": "The list of classes to extract from the audio transcription",
                    "example": [
                      "Persons",
                      "Organizations"
                    ],
                    "minItems": 1,
                    "type": "array",
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    }
                  }
                },
                "required": [
                  "classes"
                ],
                "type": "object",
                "description": "**[Alpha]** Structured data extraction configuration, if `structured_data_extraction` is enabled"
              },
              "sentiment_analysis": {
                "type": "boolean",
                "description": "**[Alpha]** Enable sentiment analysis for this audio",
                "default": false
              },
              "audio_to_llm": {
                "type": "boolean",
                "description": "**[Alpha]** Enable audio to llm processing for this audio",
                "default": false
              },
              "audio_to_llm_config": {
                "properties": {
                  "prompts": {
                    "description": "The list of prompts applied on the audio transcription",
                    "example": [
                      "Extract the key points from the transcription"
                    ],
                    "minItems": 1,
                    "type": "array",
                    "items": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    }
                  }
                },
                "required": [
                  "prompts"
                ],
                "type": "object",
                "description": "**[Alpha]** Audio to llm configuration, if `audio_to_llm` is enabled"
              },
              "custom_metadata": {
                "type": "object",
                "description": "Custom metadata you can attach to this transcription"
              },
              "sentences": {
                "type": "boolean",
                "description": "Enable sentences for this audio",
                "default": false
              },
              "display_mode": {
                "type": "boolean",
                "description": "**[Alpha]** Allows to change the output display_mode for this audio. The output will be reordered, creating new utterances when speakers overlapped",
                "default": false
              },
              "punctuation_enhanced": {
                "type": "boolean",
                "description": "**[Alpha]** Use enhanced punctuation for this audio",
                "default": false
              },
              "language_config": {
                "properties": {
                  "languages": {
                    "type": "array",
                    "description": "If one language is set, it will be used for the transcription. Otherwise, language will be auto-detected by the model.",
                    "default": [],
                    "items": {
                      "type": "string",
                      "enum": [
                        "af",
                        "sq",
                        "am",
                        "ar",
                        "hy",
                        "as",
                        "az",
                        "ba",
                        "eu",
                        "be",
                        "bn",
                        "bs",
                        "br",
                        "bg",
                        "ca",
                        "zh",
                        "hr",
                        "cs",
                        "da",
                        "nl",
                        "en",
                        "et",
                        "fo",
                        "fi",
                        "fr",
                        "gl",
                        "ka",
                        "de",
                        "el",
                        "gu",
                        "ht",
                        "ha",
                        "haw",
                        "he",
                        "hi",
                        "hu",
                        "is",
                        "id",
                        "it",
                        "ja",
                        "jv",
                        "kn",
                        "kk",
                        "km",
                        "ko",
                        "lo",
                        "la",
                        "lv",
                        "ln",
                        "lt",
                        "lb",
                        "mk",
                        "mg",
                        "ms",
                        "ml",
                        "mt",
                        "mi",
                        "mr",
                        "mn",
                        "mymr",
                        "ne",
                        "no",
                        "nn",
                        "oc",
                        "ps",
                        "fa",
                        "pl",
                        "pt",
                        "pa",
                        "ro",
                        "ru",
                        "sa",
                        "sr",
                        "sn",
                        "sd",
                        "si",
                        "sk",
                        "sl",
                        "so",
                        "es",
                        "su",
                        "sw",
                        "sv",
                        "tl",
                        "tg",
                        "ta",
                        "tt",
                        "te",
                        "th",
                        "bo",
                        "tr",
                        "tk",
                        "uk",
                        "ur",
                        "uz",
                        "vi",
                        "cy",
                        "yi",
                        "yo",
                        "jp"
                      ]
                    }
                  },
                  "code_switching": {
                    "type": "boolean",
                    "description": "If true, language will be auto-detected on each utterance. Otherwise, language will be auto-detected on first utterance and then used for the rest of the transcription. If one language is set, this option will be ignored.",
                    "default": false
                  }
                },
                "type": "object",
                "description": "Specify the language configuration"
              }
            },
            "readOnly": true,
            "nullable": true
          },
          "rev_async": {
            "type": "object",
            "properties": {
              "metadata": {
                "maxLength": 512,
                "minLength": 0,
                "type": "string",
                "description": "Optional metadata for the job",
                "nullable": true
              },
              "delete_after": {
                "type": "string",
                "description": "Optional setting for the number of Seconds after job completion\r\nwhen the job should be auto-deleted",
                "format": "date-span",
                "nullable": true
              },
              "language": {
                "type": "string",
                "description": "Optional language setting for foreign languages",
                "nullable": true
              },
              "skip_diarization": {
                "type": "boolean",
                "description": "Optional setting for turning on/off diarization.\r\nIf not set, we will assume the value is false.",
                "nullable": true
              },
              "skip_postprocessing": {
                "type": "boolean",
                "description": "Optional setting for turning on/off postprocessing.\r\nIf not set, we will assume the value is false.",
                "nullable": true
              },
              "custom_vocabularies": {
                "maxItems": 50,
                "type": "array",
                "items": {
                  "required": [
                    "phrases"
                  ],
                  "type": "object",
                  "properties": {
                    "phrases": {
                      "maxItems": 20000,
                      "minItems": 1,
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    }
                  },
                  "additionalProperties": false
                },
                "description": "Optional setting for passing in custom vocabularies.",
                "nullable": true
              },
              "custom_vocabulary_id": {
                "type": "string",
                "description": "The id of the prebuilt custom vocabulary job",
                "nullable": true
              },
              "strict_custom_vocabulary": {
                "type": "boolean",
                "description": "If true, only exact phrases submitted in the Rev.Ai.Api.Models.SubmitJobOptions.CustomVocabularies option will be used as custom vocabulary,\r\ni.e. phrases will not be split into individual words for processing.\r\nDefaults to true if Rev.Ai.Api.Models.SubmitJobOptions.CustomVocabularies is set.",
                "nullable": true
              },
              "skip_punctuation": {
                "type": "boolean",
                "description": "Optional setting for disabling punctuation.\r\nIf unset, the value is assumed to be false.",
                "nullable": true
              },
              "remove_disfluencies": {
                "type": "boolean",
                "description": "Optional setting for removing disfluencies\r\nIf unset the value is assumed to be false",
                "nullable": true
              },
              "remove_atmospherics": {
                "type": "boolean",
                "description": "Optional setting for removing atmospherics\r\nIf unset the value is assumed to be false",
                "nullable": true
              },
              "filter_profanity": {
                "type": "boolean",
                "description": "Optional setting for removing profanities\r\nIf unset the value is assumed to be false",
                "nullable": true
              },
              "add_data_labels": {
                "type": "boolean",
                "description": "Optional setting for adding data classification labels\r\nIf unset the value is assumed to be false",
                "nullable": true
              },
              "enable_redaction": {
                "type": "boolean",
                "description": "Optional setting for redacting certain data labels\r\nIf unset the value is assumed to be false",
                "nullable": true
              },
              "speaker_channels_count": {
                "maximum": 8,
                "minimum": 1,
                "type": "integer",
                "description": "Optional speaker channels count used to indicate how many individual channels\r\nto transcribe for a given audio",
                "format": "int32",
                "nullable": true
              },
              "speakers_count": {
                "maximum": 2147483647,
                "minimum": 1,
                "type": "integer",
                "description": "Optional count of speakers in the audio to improve diarization accuracy",
                "format": "int32",
                "nullable": true
              },
              "alternatives_count": {
                "maximum": 3,
                "minimum": 0,
                "type": "integer",
                "description": "Optional count of alternatives to generate",
                "format": "int32",
                "nullable": true
              },
              "deletion_length_penalty": {
                "maximum": 100,
                "minimum": -100,
                "type": "integer",
                "format": "int32",
                "nullable": true
              },
              "chunk_size": {
                "type": "string",
                "description": "Optional chunk size to be sent to Revspeech for processing",
                "format": "date-span",
                "nullable": true
              },
              "transcriber": {
                "enum": [
                  0,
                  1,
                  2,
                  3,
                  4,
                  5,
                  6,
                  7,
                  8,
                  9,
                  10,
                  11,
                  12,
                  13,
                  14,
                  15,
                  16,
                  17
                ],
                "type": "integer",
                "format": "int32"
              },
              "verbatim": {
                "type": "boolean",
                "description": "Instructs Revver to transcribe audio with all details including disfluencies and other verbal interactions\r\nsuch as laughter",
                "nullable": true
              },
              "rush": {
                "type": "boolean",
                "description": "Whether human order should be rushed at a greater cost to the customer",
                "nullable": true
              },
              "segments_to_transcribe": {
                "type": "array",
                "items": {
                  "required": [
                    "end",
                    "start"
                  ],
                  "type": "object",
                  "properties": {
                    "start": {
                      "type": "string",
                      "format": "date-span"
                    },
                    "end": {
                      "type": "string",
                      "format": "date-span"
                    }
                  },
                  "additionalProperties": false
                },
                "description": "Specific segments of the file to be transcribed by a human",
                "nullable": true
              },
              "test_mode": {
                "type": "boolean",
                "description": "Whether human order is test mode and should return a dummy transcript",
                "nullable": true
              },
              "speaker_names": {
                "type": "array",
                "items": {
                  "required": [
                    "displayName"
                  ],
                  "type": "object",
                  "properties": {
                    "display_name": {
                      "maxLength": 50,
                      "minLength": 1,
                      "type": "string"
                    }
                  },
                  "additionalProperties": false
                },
                "description": "Speaker names for human transcription",
                "nullable": true
              },
              "predict_topics": {
                "type": "boolean",
                "description": "Whether to predict topics while performing speech rec",
                "nullable": true
              },
              "top_nwords": {
                "maximum": 100,
                "minimum": 0,
                "type": "integer",
                "description": "Returns the top n words of a transcript. Defaults to 0",
                "format": "int32",
                "nullable": true
              },
              "forced_alignment": {
                "type": "boolean",
                "description": "Whether improved alignment should be used with transcription",
                "nullable": true
              },
              "enable_fusion": {
                "type": "boolean",
                "description": "Whether transcription should be done with fusion",
                "nullable": true
              },
              "domain": {
                "enum": [
                  0,
                  1
                ],
                "type": "integer",
                "format": "int32"
              },
              "apply_duration_padding": {
                "type": "boolean",
                "description": "If set adds one second of silence to the audio at the end",
                "nullable": true
              },
              "diarization_type": {
                "enum": [
                  0,
                  10,
                  20
                ],
                "type": "integer",
                "format": "int32"
              },
              "summarization_config": {
                "type": "object",
                "properties": {
                  "prompt": {
                    "type": "string",
                    "description": "User defined prompt.",
                    "nullable": true
                  },
                  "model": {
                    "enum": [
                      0,
                      1
                    ],
                    "type": "integer",
                    "description": "Summarization model options for Rev.ai API",
                    "format": "int32"
                  },
                  "type": {
                    "enum": [
                      0,
                      1
                    ],
                    "type": "integer",
                    "description": "Summarization formatting options.",
                    "format": "int32"
                  }
                },
                "additionalProperties": false,
                "description": "Summarization options."
              },
              "captions_config": {
                "type": "object",
                "additionalProperties": false,
                "description": "Caption options."
              },
              "translation_config": {
                "required": [
                  "targetLanguages"
                ],
                "type": "object",
                "properties": {
                  "target_languages": {
                    "maxItems": 5,
                    "minItems": 1,
                    "type": "array",
                    "items": {
                      "required": [
                        "language"
                      ],
                      "type": "object",
                      "properties": {
                        "model": {
                          "enum": [
                            0,
                            1
                          ],
                          "type": "integer",
                          "description": "Defines the type of models supported to translated the content",
                          "format": "int32"
                        },
                        "language": {
                          "minLength": 1,
                          "type": "string",
                          "description": "Target language"
                        }
                      },
                      "additionalProperties": false,
                      "description": "Options for translation as part of Async job request for specific target language"
                    },
                    "description": "Target languages"
                  }
                },
                "additionalProperties": false,
                "description": "Options for translation as part of Async job request"
              }
            },
            "additionalProperties": false,
            "readOnly": true,
            "nullable": true
          },
          "speechmatics_async": {
            "description": "JSON object that contains various groups of job configuration\nparameters. Based on the value of `type`, a type-specific object\nsuch as `transcription_config` is required to be present to\nspecify all configuration settings or parameters needed to\nprocess the job inputs as expected.\n\nIf the results of the job are to be forwarded on completion,\n`notification_config` can be provided with a list of callbacks\nto be made; no assumptions should be made about the order in\nwhich they will occur.\n\nCustomer specific job details or metadata can be supplied in\n`tracking`, and this information will be available where\npossible in the job results and in callbacks.\n",
            "properties": {
              "alignment_config": {
                "required": [
                  "language"
                ],
                "properties": {
                  "language": {
                    "type": "string"
                  }
                },
                "example": {
                  "language": "en"
                }
              },
              "transcription_config": {
                "required": [
                  "language"
                ],
                "properties": {
                  "language": {
                    "type": "string",
                    "description": "Language model to process the audio input, normally specified as an ISO language code"
                  },
                  "domain": {
                    "type": "string",
                    "description": "Request a specialized model based on 'language' but optimized for a particular field, e.g. \"finance\" or \"medical\"."
                  },
                  "output_locale": {
                    "type": "string",
                    "description": "Language locale to be used when generating the transcription output, normally specified as an ISO language code"
                  },
                  "model": {
                    "type": "string",
                    "description": "Specific model to use in transcription (previously called operating point).",
                    "enum": [
                      "standard",
                      "enhanced",
                      "melia-1"
                    ]
                  },
                  "operating_point": {
                    "type": "string",
                    "enum": [
                      "standard",
                      "enhanced",
                      "melia-1"
                    ]
                  },
                  "additional_vocab": {
                    "type": "array",
                    "x-omitempty": true,
                    "items": {
                      "type": "object",
                      "required": [
                        "content"
                      ],
                      "properties": {
                        "content": {
                          "type": "string"
                        },
                        "sounds_like": {
                          "type": "array",
                          "x-omitempty": true,
                          "items": {
                            "type": "string"
                          }
                        }
                      }
                    },
                    "description": "List of custom words or phrases that should be recognized. Alternative pronunciations can be specified to aid recognition."
                  },
                  "punctuation_overrides": {
                    "properties": {
                      "sensitivity": {
                        "type": "number",
                        "format": "float",
                        "minimum": 0,
                        "maximum": 1,
                        "description": "Ranges between zero and one. Higher values will produce more punctuation. The default is 0.5."
                      },
                      "permitted_marks": {
                        "type": "array",
                        "items": {
                          "type": "string",
                          "pattern": "^(.|all)$"
                        },
                        "description": "The punctuation marks which the client is prepared to accept in transcription output, or the special value 'all' (the default). Unsupported marks are ignored. This value is used to guide the transcription process."
                      }
                    },
                    "description": "Control punctuation settings."
                  },
                  "diarization": {
                    "type": "string",
                    "enum": [
                      "none",
                      "speaker",
                      "channel"
                    ],
                    "description": "Specify whether speaker or channel labels are added to the transcript.\nThe default is `none`.\n  - **none**: no speaker or channel labels are added.\n  - **speaker**: speaker attribution is performed based on acoustic matching;\n             all input channels are mixed into a single stream for processing.\n  - **channel**: multiple input channels are processed individually and collated\n            into a single transcript."
                  },
                  "channel_diarization_labels": {
                    "type": "array",
                    "x-omitempty": true,
                    "items": {
                      "type": "string",
                      "pattern": "^[A-Za-z0-9._]+$"
                    },
                    "description": "Transcript labels to use when using collating separate input channels."
                  },
                  "enable_entities": {
                    "type": "boolean",
                    "description": "Include additional 'entity' objects in the transcription results (e.g. dates, numbers) and their original spoken form. These entities are interleaved with other types of results. The concatenation of these words is represented as a single entity with the concatenated written form present in the 'content' field. The entities contain a 'spoken_form' field, which can be used in place of the corresponding 'word' type results, in case a spoken form is preferred to a written form. They also contain a 'written_form', which can be used instead of the entity, if you want a breakdown of the words without spaces. They can still contain non-breaking spaces and other special whitespace characters, as they are considered part of the word for the formatting output. In case of a written_form, the individual word times are estimated and might not be accurate if the order of the words in the written form does not correspond to the order they were actually spoken (such as 'one hundred million dollars' and '$100 million')."
                  },
                  "max_delay_mode": {
                    "type": "string",
                    "enum": [
                      "fixed",
                      "flexible"
                    ],
                    "description": "Whether or not to enable flexible endpointing and allow the entity to continue to be spoken."
                  },
                  "transcript_filtering_config": {
                    "description": "Configuration for applying filtering to the transcription",
                    "properties": {
                      "remove_disfluencies": {
                        "type": "boolean",
                        "description": "If true, words that are identified as disfluencies will be removed from the transcript. If false (default), they are tagged in the transcript as 'disfluency'."
                      },
                      "replacements": {
                        "type": "array",
                        "x-omitempty": true,
                        "items": {
                          "additionalProperties": false,
                          "type": "object",
                          "required": [
                            "from",
                            "to"
                          ],
                          "properties": {
                            "from": {
                              "type": "string"
                            },
                            "to": {
                              "type": "string"
                            }
                          }
                        },
                        "description": "A list of replacements to apply to the transcript. Each replacement is a pair of strings, where the first string is the pattern to be replaced and the second string is the replacement text."
                      }
                    }
                  },
                  "speaker_diarization_config": {
                    "description": "Configuration for speaker diarization",
                    "properties": {
                      "prefer_current_speaker": {
                        "type": "boolean",
                        "description": "If true, the algorithm will prefer to stay with the current active speaker if it is a close enough match, even if other speakers may be closer.  This is useful for cases where we can flip incorrectly between similar speakers during a single speaker section.\""
                      },
                      "speaker_sensitivity": {
                        "type": "number",
                        "format": "float",
                        "minimum": 0,
                        "maximum": 1,
                        "description": "Controls how sensitive the algorithm is in terms of keeping similar speakers separate, as opposed to combining them into a single speaker.  Higher values will typically lead to more speakers, as the degree of difference between speakers in order to allow them to remain distinct will be lower.  A lower value for this parameter will conversely guide the algorithm towards being less sensitive in terms of retaining similar speakers, and as such may lead to fewer speakers overall.  The default is 0.5."
                      }
                    }
                  }
                },
                "example": {
                  "language": "en",
                  "output_locale": "en-GB",
                  "additional_vocab": [
                    {
                      "content": "Speechmatics",
                      "sounds_like": [
                        "speechmatics"
                      ]
                    },
                    {
                      "content": "gnocchi",
                      "sounds_like": [
                        "nyohki",
                        "nokey",
                        "nochi"
                      ]
                    },
                    {
                      "content": "CEO",
                      "sounds_like": [
                        "C.E.O."
                      ]
                    },
                    {
                      "content": "financial crisis"
                    }
                  ],
                  "diarization": "channel",
                  "channel_diarization_labels": [
                    "Caller",
                    "Agent"
                  ]
                }
              },
              "tracking": {
                "properties": {
                  "title": {
                    "type": "string",
                    "description": "The title of the job."
                  },
                  "reference": {
                    "type": "string",
                    "description": "External system reference."
                  },
                  "tags": {
                    "type": "array",
                    "x-omitempty": true,
                    "items": {
                      "type": "string"
                    }
                  },
                  "details": {
                    "type": "object",
                    "description": "Customer-defined JSON structure."
                  }
                },
                "example": {
                  "title": "ACME Q12018 Earnings Call",
                  "reference": "/data/clients/ACME/statements/segs/2018Q1-seg8",
                  "tags": [
                    "quick-review",
                    "segment"
                  ],
                  "details": {
                    "client": "ACME Corp",
                    "segment": 8,
                    "seg_start": 963.201,
                    "seg_end": 1091.481
                  }
                }
              },
              "output_config": {
                "x-omitempty": true,
                "type": "object",
                "properties": {
                  "srt_overrides": {
                    "description": "Parameters that override default values of srt conversion. max_line_length: sets maximum count of characters per subtitle line including white space. max_lines: sets maximum count of lines in a subtitle section.",
                    "type": "object",
                    "properties": {
                      "max_line_length": {
                        "type": "integer"
                      },
                      "max_lines": {
                        "type": "integer"
                      }
                    }
                  }
                }
              },
              "translation_config": {
                "required": [
                  "target_languages"
                ],
                "properties": {
                  "target_languages": {
                    "type": "array",
                    "maxItems": 5,
                    "items": {
                      "type": "string"
                    }
                  }
                }
              },
              "language_identification_config": {
                "properties": {
                  "expected_languages": {
                    "type": "array",
                    "x-omitempty": true,
                    "items": {
                      "type": "string"
                    }
                  },
                  "low_confidence_action": {
                    "type": "string",
                    "enum": [
                      "allow",
                      "reject",
                      "use_default_language"
                    ],
                    "description": "Action to take if all of the predicted languages are below the confidence threshold"
                  },
                  "default_language": {
                    "type": "string"
                  }
                }
              },
              "summarization_config": {
                "properties": {
                  "content_type": {
                    "type": "string",
                    "enum": [
                      "auto",
                      "informative",
                      "conversational"
                    ]
                  },
                  "summary_length": {
                    "type": "string",
                    "enum": [
                      "brief",
                      "detailed"
                    ]
                  },
                  "summary_type": {
                    "type": "string",
                    "enum": [
                      "paragraphs",
                      "bullets"
                    ]
                  }
                }
              },
              "sentiment_analysis_config": {
                "type": "object"
              },
              "topic_detection_config": {
                "properties": {
                  "topics": {
                    "x-omitempty": true,
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  }
                }
              },
              "auto_chapters_config": {
                "type": "object"
              },
              "audio_events_config": {
                "x-omitempty": true,
                "type": "object",
                "properties": {
                  "types": {
                    "x-omitempty": true,
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  }
                }
              }
            },
            "readOnly": true,
            "nullable": true
          },
          "recallai_async": {
            "type": "object",
            "properties": {
              "language_code": {
                "enum": [
                  "auto",
                  "bg",
                  "ca",
                  "cs",
                  "da",
                  "de",
                  "el",
                  "en",
                  "en_au",
                  "en_uk",
                  "en_us",
                  "es",
                  "et",
                  "fi",
                  "fr",
                  "he",
                  "hi",
                  "hr",
                  "hu",
                  "id",
                  "it",
                  "ja",
                  "ko",
                  "lt",
                  "lv",
                  "ms",
                  "nl",
                  "no",
                  "pl",
                  "pt",
                  "ro",
                  "ru",
                  "sk",
                  "sv",
                  "th",
                  "tr",
                  "uk",
                  "vi",
                  "zh"
                ],
                "type": "string",
                "default": "auto",
                "description": "Must be `en` in low latency mode. Docs: https://docs.recall.ai/docs/recallai-transcription\n\n* `auto` - auto\n* `bg` - bg\n* `ca` - ca\n* `cs` - cs\n* `da` - da\n* `de` - de\n* `el` - el\n* `en` - en\n* `en_au` - en_au\n* `en_uk` - en_uk\n* `en_us` - en_us\n* `es` - es\n* `et` - et\n* `fi` - fi\n* `fr` - fr\n* `he` - he\n* `hi` - hi\n* `hr` - hr\n* `hu` - hu\n* `id` - id\n* `it` - it\n* `ja` - ja\n* `ko` - ko\n* `lt` - lt\n* `lv` - lv\n* `ms` - ms\n* `nl` - nl\n* `no` - no\n* `pl` - pl\n* `pt` - pt\n* `ro` - ro\n* `ru` - ru\n* `sk` - sk\n* `sv` - sv\n* `th` - th\n* `tr` - tr\n* `uk` - uk\n* `vi` - vi\n* `zh` - zh"
              },
              "spelling": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/RecallaiSpellingEntry"
                },
                "description": "List of text strings to find/replace in the transcript."
              },
              "key_terms": {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "description": "Increases the chances that these terms appear in the transcript over some sound-alikes."
              },
              "filter_profanity": {
                "type": "boolean",
                "default": false
              }
            },
            "readOnly": true,
            "nullable": true,
            "title": "Recall.ai async transcription Settings",
            "description": "Docs: https://docs.recall.ai/docs/recallai-transcription"
          },
          "google_speech_v2_async": {
            "description": "Docs: https://docs.cloud.google.com/speech-to-text/docs/reference/rest/v2/projects.locations.recognizers/batchRecognize",
            "type": "object",
            "properties": {
              "recognizer": {
                "description": "Required. The name of the Recognizer to use during recognition. The expected format is `projects/{project}/locations/{location}/recognizers/{recognizer}`. The {recognizer} segment may be set to `_` to use an empty implicit Recognizer.",
                "type": "string",
                "default": "projects/{project_id}/locations/global/recognizers/_"
              },
              "config": {
                "description": "Provides information to the Recognizer that specifies how to process the recognition request.",
                "type": "object",
                "properties": {
                  "autoDecodingConfig": {
                    "description": "Automatically detected decoding parameters. Supported for the following encodings: * WAV_LINEAR16: 16-bit signed little-endian PCM samples in a WAV container. * WAV_MULAW: 8-bit companded mulaw samples in a WAV container. * WAV_ALAW: 8-bit companded alaw samples in a WAV container. * RFC4867_5_AMR: AMR frames with an rfc4867.5 header. * RFC4867_5_AMRWB: AMR-WB frames with an rfc4867.5 header. * FLAC: FLAC frames in the \"native FLAC\" container format. * MP3: MPEG audio frames with optional (ignored) ID3 metadata. * OGG_OPUS: Opus audio frames in an Ogg container. * WEBM_OPUS: Opus audio frames in a WebM container. * MP4_AAC: AAC audio frames in an MP4 container. * M4A_AAC: AAC audio frames in an M4A container. * MOV_AAC: AAC audio frames in an MOV container.",
                    "type": "object",
                    "properties": {}
                  },
                  "explicitDecodingConfig": {
                    "description": "Explicitly specified decoding parameters.",
                    "type": "object",
                    "properties": {
                      "encoding": {
                        "description": "Required. Encoding of the audio data sent for recognition.",
                        "type": "string",
                        "enum": [
                          "AUDIO_ENCODING_UNSPECIFIED",
                          "LINEAR16",
                          "MULAW",
                          "ALAW",
                          "AMR",
                          "AMR_WB",
                          "FLAC",
                          "MP3",
                          "OGG_OPUS",
                          "WEBM_OPUS",
                          "MP4_AAC",
                          "M4A_AAC",
                          "MOV_AAC"
                        ]
                      },
                      "sampleRateHertz": {
                        "description": "Optional. Sample rate in Hertz of the audio data sent for recognition. Valid values are: 8000-48000, and 16000 is optimal. For best results, set the sampling rate of the audio source to 16000 Hz. If that's not possible, use the native sample rate of the audio source (instead of resampling). Note that this field is marked as OPTIONAL for backward compatibility reasons. It is (and has always been) effectively REQUIRED.",
                        "type": "integer",
                        "format": "int32"
                      },
                      "audioChannelCount": {
                        "description": "Optional. Number of channels present in the audio data sent for recognition. Note that this field is marked as OPTIONAL for backward compatibility reasons. It is (and has always been) effectively REQUIRED. The maximum allowed value is 8.",
                        "type": "integer",
                        "format": "int32"
                      }
                    }
                  },
                  "model": {
                    "description": "Optional. Which model to use for recognition requests. Select the model best suited to your domain to get best results. Guidance for choosing which model to use can be found in the [Transcription Models Documentation](https://cloud.google.com/speech-to-text/v2/docs/transcription-model) and the models supported in each region can be found in the [Table Of Supported Models](https://cloud.google.com/speech-to-text/v2/docs/speech-to-text-supported-languages).",
                    "type": "string"
                  },
                  "languageCodes": {
                    "description": "Optional. The language of the supplied audio as a [BCP-47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt) language tag. Language tags are normalized to BCP-47 before they are used eg \"en-us\" becomes \"en-US\". Supported languages for each model are listed in the [Table of Supported Models](https://cloud.google.com/speech-to-text/v2/docs/speech-to-text-supported-languages). If additional languages are provided, recognition result will contain recognition in the most likely language detected. The recognition result will include the language tag of the language detected in the audio.",
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  },
                  "features": {
                    "description": "Available recognition features.",
                    "type": "object",
                    "properties": {
                      "profanityFilter": {
                        "description": "If set to `true`, the server will attempt to filter out profanities, replacing all but the initial character in each filtered word with asterisks, for instance, \"f***\". If set to `false` or omitted, profanities won't be filtered out.",
                        "type": "boolean"
                      },
                      "enableWordTimeOffsets": {
                        "description": "If `true`, the top result includes a list of words and the start and end time offsets (timestamps) for those words. If `false`, no word-level time offset information is returned. The default is `false`.",
                        "type": "boolean"
                      },
                      "enableWordConfidence": {
                        "description": "If `true`, the top result includes a list of words and the confidence for those words. If `false`, no word-level confidence information is returned. The default is `false`.",
                        "type": "boolean"
                      },
                      "enableAutomaticPunctuation": {
                        "description": "If `true`, adds punctuation to recognition result hypotheses. This feature is only available in select languages. The default `false` value does not add punctuation to result hypotheses.",
                        "type": "boolean"
                      },
                      "enableSpokenPunctuation": {
                        "description": "The spoken punctuation behavior for the call. If `true`, replaces spoken punctuation with the corresponding symbols in the request. For example, \"how are you question mark\" becomes \"how are you?\". See https://cloud.google.com/speech-to-text/docs/spoken-punctuation for support. If `false`, spoken punctuation is not replaced.",
                        "type": "boolean"
                      },
                      "enableSpokenEmojis": {
                        "description": "The spoken emoji behavior for the call. If `true`, adds spoken emoji formatting for the request. This will replace spoken emojis with the corresponding Unicode symbols in the final transcript. If `false`, spoken emojis are not replaced.",
                        "type": "boolean"
                      },
                      "multiChannelMode": {
                        "description": "Mode for recognizing multi-channel audio.",
                        "type": "string",
                        "enum": [
                          "MULTI_CHANNEL_MODE_UNSPECIFIED",
                          "SEPARATE_RECOGNITION_PER_CHANNEL"
                        ]
                      },
                      "diarizationConfig": {
                        "description": "Configuration to enable speaker diarization.",
                        "type": "object",
                        "properties": {
                          "minSpeakerCount": {
                            "description": "Optional. The system automatically determines the number of speakers. This value is not currently used.",
                            "type": "integer",
                            "format": "int32"
                          },
                          "maxSpeakerCount": {
                            "description": "Optional. The system automatically determines the number of speakers. This value is not currently used.",
                            "type": "integer",
                            "format": "int32"
                          }
                        }
                      },
                      "maxAlternatives": {
                        "description": "Maximum number of recognition hypotheses to be returned. The server may return fewer than `max_alternatives`. Valid values are `0`-`30`. A value of `0` or `1` will return a maximum of one. If omitted, will return a maximum of one.",
                        "type": "integer",
                        "format": "int32"
                      }
                    }
                  },
                  "adaptation": {
                    "description": "Provides \"hints\" to the speech recognizer to favor specific words and phrases in the results. PhraseSets can be specified as an inline resource, or a reference to an existing PhraseSet resource.",
                    "type": "object",
                    "properties": {
                      "phraseSets": {
                        "description": "A list of inline or referenced PhraseSets.",
                        "type": "array",
                        "items": {
                          "description": "A biasing PhraseSet, which can be either a string referencing the name of an existing PhraseSets resource, or an inline definition of a PhraseSet.",
                          "type": "object",
                          "properties": {
                            "phraseSet": {
                              "description": "The name of an existing PhraseSet resource. The user must have read access to the resource and it must not be deleted.",
                              "type": "string"
                            },
                            "inlinePhraseSet": {
                              "description": "PhraseSet for biasing in speech recognition. A PhraseSet is used to provide \"hints\" to the speech recognizer to favor specific words and phrases in the results.",
                              "type": "object",
                              "properties": {
                                "name": {
                                  "description": "Output only. Identifier. The resource name of the PhraseSet. Format: `projects/{project}/locations/{location}/phraseSets/{phrase_set}`.",
                                  "readOnly": true,
                                  "type": "string"
                                },
                                "uid": {
                                  "description": "Output only. System-assigned unique identifier for the PhraseSet.",
                                  "readOnly": true,
                                  "type": "string"
                                },
                                "phrases": {
                                  "description": "A list of word and phrases.",
                                  "type": "array",
                                  "items": {
                                    "description": "A Phrase contains words and phrase \"hints\" so that the speech recognition is more likely to recognize them. This can be used to improve the accuracy for specific words and phrases, for example, if specific commands are typically spoken by the user. This can also be used to add additional words to the vocabulary of the recognizer. List items can also include CustomClass references containing groups of words that represent common concepts that occur in natural language.",
                                    "type": "object",
                                    "properties": {
                                      "value": {
                                        "description": "The phrase itself.",
                                        "type": "string"
                                      },
                                      "boost": {
                                        "description": "Hint Boost. Overrides the boost set at the phrase set level. Positive value will increase the probability that a specific phrase will be recognized over other similar sounding phrases. The higher the boost, the higher the chance of false positive recognition as well. Negative boost values would correspond to anti-biasing. Anti-biasing is not enabled, so negative boost values will return an error. Boost values must be between 0 and 20. Any values outside that range will return an error. We recommend using a binary search approach to finding the optimal value for your use case as well as adding phrases both with and without boost to your requests.",
                                        "type": "number",
                                        "format": "float"
                                      }
                                    }
                                  }
                                },
                                "boost": {
                                  "description": "Hint Boost. Positive value will increase the probability that a specific phrase will be recognized over other similar sounding phrases. The higher the boost, the higher the chance of false positive recognition as well. Valid `boost` values are between 0 (exclusive) and 20. We recommend using a binary search approach to finding the optimal value for your use case as well as adding phrases both with and without boost to your requests.",
                                  "type": "number",
                                  "format": "float"
                                },
                                "displayName": {
                                  "description": "User-settable, human-readable name for the PhraseSet. Must be 63 characters or less.",
                                  "type": "string"
                                },
                                "state": {
                                  "description": "Output only. The PhraseSet lifecycle state.",
                                  "readOnly": true,
                                  "type": "string",
                                  "enum": [
                                    "STATE_UNSPECIFIED",
                                    "ACTIVE",
                                    "DELETED"
                                  ]
                                },
                                "createTime": {
                                  "description": "Output only. Creation time.",
                                  "readOnly": true,
                                  "type": "string",
                                  "format": "google-datetime"
                                },
                                "updateTime": {
                                  "description": "Output only. The most recent time this resource was modified.",
                                  "readOnly": true,
                                  "type": "string",
                                  "format": "google-datetime"
                                },
                                "deleteTime": {
                                  "description": "Output only. The time at which this resource was requested for deletion.",
                                  "readOnly": true,
                                  "type": "string",
                                  "format": "google-datetime"
                                },
                                "expireTime": {
                                  "description": "Output only. The time at which this resource will be purged.",
                                  "readOnly": true,
                                  "type": "string",
                                  "format": "google-datetime"
                                },
                                "annotations": {
                                  "description": "Allows users to store small amounts of arbitrary data. Both the key and the value must be 63 characters or less each. At most 100 annotations.",
                                  "type": "object",
                                  "additionalProperties": {
                                    "type": "string"
                                  }
                                },
                                "etag": {
                                  "description": "Output only. This checksum is computed by the server based on the value of other fields. This may be sent on update, undelete, and delete requests to ensure the client has an up-to-date value before proceeding.",
                                  "readOnly": true,
                                  "type": "string"
                                },
                                "reconciling": {
                                  "description": "Output only. Whether or not this PhraseSet is in the process of being updated.",
                                  "readOnly": true,
                                  "type": "boolean"
                                },
                                "kmsKeyName": {
                                  "description": "Output only. The [KMS key name](https://cloud.google.com/kms/docs/resource-hierarchy#keys) with which the PhraseSet is encrypted. The expected format is `projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}`.",
                                  "readOnly": true,
                                  "type": "string"
                                },
                                "kmsKeyVersionName": {
                                  "description": "Output only. The [KMS key version name](https://cloud.google.com/kms/docs/resource-hierarchy#key_versions) with which the PhraseSet is encrypted. The expected format is `projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}/cryptoKeyVersions/{crypto_key_version}`.",
                                  "readOnly": true,
                                  "type": "string"
                                }
                              }
                            }
                          }
                        }
                      },
                      "customClasses": {
                        "description": "A list of inline CustomClasses. Existing CustomClass resources can be referenced directly in a PhraseSet.",
                        "type": "array",
                        "items": {
                          "description": "CustomClass for biasing in speech recognition. Used to define a set of words or phrases that represents a common concept or theme likely to appear in your audio, for example a list of passenger ship names.",
                          "type": "object",
                          "properties": {
                            "name": {
                              "description": "Output only. Identifier. The resource name of the CustomClass. Format: `projects/{project}/locations/{location}/customClasses/{custom_class}`.",
                              "readOnly": true,
                              "type": "string"
                            },
                            "uid": {
                              "description": "Output only. System-assigned unique identifier for the CustomClass.",
                              "readOnly": true,
                              "type": "string"
                            },
                            "displayName": {
                              "description": "Optional. User-settable, human-readable name for the CustomClass. Must be 63 characters or less.",
                              "type": "string"
                            },
                            "items": {
                              "description": "A collection of class items.",
                              "type": "array",
                              "items": {
                                "description": "An item of the class.",
                                "type": "object",
                                "properties": {
                                  "value": {
                                    "description": "The class item's value.",
                                    "type": "string"
                                  }
                                }
                              }
                            },
                            "state": {
                              "description": "Output only. The CustomClass lifecycle state.",
                              "readOnly": true,
                              "type": "string",
                              "enum": [
                                "STATE_UNSPECIFIED",
                                "ACTIVE",
                                "DELETED"
                              ]
                            },
                            "createTime": {
                              "description": "Output only. Creation time.",
                              "readOnly": true,
                              "type": "string",
                              "format": "google-datetime"
                            },
                            "updateTime": {
                              "description": "Output only. The most recent time this resource was modified.",
                              "readOnly": true,
                              "type": "string",
                              "format": "google-datetime"
                            },
                            "deleteTime": {
                              "description": "Output only. The time at which this resource was requested for deletion.",
                              "readOnly": true,
                              "type": "string",
                              "format": "google-datetime"
                            },
                            "expireTime": {
                              "description": "Output only. The time at which this resource will be purged.",
                              "readOnly": true,
                              "type": "string",
                              "format": "google-datetime"
                            },
                            "annotations": {
                              "description": "Optional. Allows users to store small amounts of arbitrary data. Both the key and the value must be 63 characters or less each. At most 100 annotations.",
                              "type": "object",
                              "additionalProperties": {
                                "type": "string"
                              }
                            },
                            "etag": {
                              "description": "Output only. This checksum is computed by the server based on the value of other fields. This may be sent on update, undelete, and delete requests to ensure the client has an up-to-date value before proceeding.",
                              "readOnly": true,
                              "type": "string"
                            },
                            "reconciling": {
                              "description": "Output only. Whether or not this CustomClass is in the process of being updated.",
                              "readOnly": true,
                              "type": "boolean"
                            },
                            "kmsKeyName": {
                              "description": "Output only. The [KMS key name](https://cloud.google.com/kms/docs/resource-hierarchy#keys) with which the CustomClass is encrypted. The expected format is `projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}`.",
                              "readOnly": true,
                              "type": "string"
                            },
                            "kmsKeyVersionName": {
                              "description": "Output only. The [KMS key version name](https://cloud.google.com/kms/docs/resource-hierarchy#key_versions) with which the CustomClass is encrypted. The expected format is `projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}/cryptoKeyVersions/{crypto_key_version}`.",
                              "readOnly": true,
                              "type": "string"
                            }
                          }
                        }
                      }
                    }
                  },
                  "transcriptNormalization": {
                    "description": "Transcription normalization configuration. Use transcription normalization to automatically replace parts of the transcript with phrases of your choosing. For StreamingRecognize, this normalization only applies to stable partial transcripts (stability > 0.8) and final transcripts.",
                    "type": "object",
                    "properties": {
                      "entries": {
                        "description": "A list of replacement entries. We will perform replacement with one entry at a time. For example, the second entry in [\"cat\" => \"dog\", \"mountain cat\" => \"mountain dog\"] will never be applied because we will always process the first entry before it. At most 100 entries.",
                        "type": "array",
                        "items": {
                          "description": "A single replacement configuration.",
                          "type": "object",
                          "properties": {
                            "search": {
                              "description": "What to replace. Max length is 100 characters.",
                              "type": "string"
                            },
                            "replace": {
                              "description": "What to replace with. Max length is 100 characters.",
                              "type": "string"
                            },
                            "caseSensitive": {
                              "description": "Whether the search is case sensitive.",
                              "type": "boolean"
                            }
                          }
                        }
                      }
                    }
                  },
                  "translationConfig": {
                    "description": "Translation configuration. Use to translate the given audio into text for the desired language.",
                    "type": "object",
                    "properties": {
                      "targetLanguage": {
                        "description": "Required. The language code to translate to.",
                        "type": "string"
                      }
                    }
                  },
                  "denoiserConfig": {
                    "description": "Denoiser config. May not be supported for all models and may have no effect.",
                    "type": "object",
                    "properties": {
                      "denoiseAudio": {
                        "description": "Denoise audio before sending to the transcription model.",
                        "type": "boolean"
                      },
                      "snrThreshold": {
                        "description": "Signal-to-Noise Ratio (SNR) threshold for the denoiser. Here SNR means the loudness of the speech signal. Audio with an SNR below this threshold, meaning the speech is too quiet, will be prevented from being sent to the transcription model. If snr_threshold=0, no filtering will be applied.",
                        "type": "number",
                        "format": "float"
                      }
                    }
                  }
                }
              },
              "configMask": {
                "description": "The list of fields in config that override the values in the default_recognition_config of the recognizer during this recognition request. If no mask is provided, all given fields in config override the values in the recognizer for this recognition request. If a mask is provided, only the fields listed in the mask override the config in the recognizer for this recognition request. If a wildcard (`*`) is provided, config completely overrides and replaces the config in the recognizer for this recognition request.",
                "type": "string",
                "format": "google-fieldmask"
              }
            },
            "readOnly": true,
            "nullable": true,
            "title": "Google Cloud Speech To Text V2 transcription service"
          },
          "aws_transcribe_async": {
            "type": "object",
            "readOnly": true,
            "nullable": true,
            "title": "AWS Transcribe batch transcription service",
            "description": "Docs: https://docs.aws.amazon.com/transcribe/latest/APIReference/API_StartTranscriptionJob.html"
          },
          "elevenlabs_async": {
            "properties": {
              "model_id": {
                "type": "string",
                "enum": [
                  "scribe_v1",
                  "scribe_v2"
                ],
                "title": "Model Id",
                "description": "The ID of the model to use for transcription."
              },
              "language_code": {
                "anyOf": [
                  {
                    "type": "string"
                  },
                  {
                    "type": "string",
                    "nullable": true
                  }
                ],
                "title": "Language Code",
                "description": "An ISO-639-1 or ISO-639-3 language_code corresponding to the language of the audio file. Can sometimes improve transcription performance if known beforehand. Defaults to null, in this case the language is predicted automatically."
              },
              "tag_audio_events": {
                "type": "boolean",
                "title": "Tag Audio Events",
                "description": "Whether to tag audio events like (laughter), (footsteps), etc. in the transcription.",
                "default": true
              },
              "num_speakers": {
                "anyOf": [
                  {
                    "type": "integer",
                    "maximum": 32,
                    "minimum": 1
                  },
                  {
                    "type": "string",
                    "nullable": true
                  }
                ],
                "title": "Num Speakers",
                "description": "The maximum amount of speakers talking in the uploaded file. Can help with predicting who speaks when. The maximum amount of speakers that can be predicted is 32. Defaults to null, in this case the amount of speakers is set to the maximum value the model supports."
              },
              "diarize": {
                "type": "boolean",
                "title": "Diarize",
                "description": "Whether to annotate which speaker is currently talking in the uploaded file.",
                "default": false
              },
              "diarization_threshold": {
                "anyOf": [
                  {
                    "type": "number",
                    "maximum": 0.4,
                    "minimum": 0.1
                  },
                  {
                    "type": "string",
                    "nullable": true
                  }
                ],
                "title": "Diarization Threshold",
                "description": "Diarization threshold to apply during speaker diarization. A higher value means there will be a lower chance of one speaker being diarized as two different speakers but also a higher chance of two different speakers being diarized as one speaker (less total speakers predicted). A low value means there will be a higher chance of one speaker being diarized as two different speakers but also a lower chance of two different speakers being diarized as one speaker (more total speakers predicted). Can only be set when diarize=True and num_speakers=None. Defaults to None, in which case we will choose a threshold based on the model_id (0.22 usually)."
              },
              "additional_formats": {
                "items": {
                  "oneOf": [
                    {
                      "properties": {
                        "include_speakers": {
                          "type": "boolean",
                          "title": "Include Speakers",
                          "default": true
                        },
                        "include_timestamps": {
                          "type": "boolean",
                          "title": "Include Timestamps",
                          "default": true
                        },
                        "format": {
                          "type": "string",
                          "title": "Format",
                          "enum": [
                            "segmented_json"
                          ]
                        },
                        "segment_on_silence_longer_than_s": {
                          "anyOf": [
                            {
                              "type": "number"
                            },
                            {
                              "type": "string",
                              "nullable": true
                            }
                          ],
                          "title": "Segment On Silence Longer Than S"
                        },
                        "max_segment_duration_s": {
                          "anyOf": [
                            {
                              "type": "number"
                            },
                            {
                              "type": "string",
                              "nullable": true
                            }
                          ],
                          "title": "Max Segment Duration S"
                        },
                        "max_segment_chars": {
                          "anyOf": [
                            {
                              "type": "integer"
                            },
                            {
                              "type": "string",
                              "nullable": true
                            }
                          ],
                          "title": "Max Segment Chars"
                        }
                      },
                      "type": "object",
                      "required": [
                        "format"
                      ],
                      "title": "SegmentedJsonExportOptions"
                    },
                    {
                      "properties": {
                        "include_speakers": {
                          "type": "boolean",
                          "title": "Include Speakers",
                          "default": true
                        },
                        "include_timestamps": {
                          "type": "boolean",
                          "title": "Include Timestamps",
                          "default": true
                        },
                        "format": {
                          "type": "string",
                          "title": "Format",
                          "enum": [
                            "docx"
                          ]
                        },
                        "segment_on_silence_longer_than_s": {
                          "anyOf": [
                            {
                              "type": "number"
                            },
                            {
                              "type": "string",
                              "nullable": true
                            }
                          ],
                          "title": "Segment On Silence Longer Than S"
                        },
                        "max_segment_duration_s": {
                          "anyOf": [
                            {
                              "type": "number"
                            },
                            {
                              "type": "string",
                              "nullable": true
                            }
                          ],
                          "title": "Max Segment Duration S"
                        },
                        "max_segment_chars": {
                          "anyOf": [
                            {
                              "type": "integer"
                            },
                            {
                              "type": "string",
                              "nullable": true
                            }
                          ],
                          "title": "Max Segment Chars"
                        }
                      },
                      "type": "object",
                      "required": [
                        "format"
                      ],
                      "title": "DocxExportOptions"
                    },
                    {
                      "properties": {
                        "include_speakers": {
                          "type": "boolean",
                          "title": "Include Speakers",
                          "default": true
                        },
                        "include_timestamps": {
                          "type": "boolean",
                          "title": "Include Timestamps",
                          "default": true
                        },
                        "format": {
                          "type": "string",
                          "title": "Format",
                          "enum": [
                            "pdf"
                          ]
                        },
                        "segment_on_silence_longer_than_s": {
                          "anyOf": [
                            {
                              "type": "number"
                            },
                            {
                              "type": "string",
                              "nullable": true
                            }
                          ],
                          "title": "Segment On Silence Longer Than S"
                        },
                        "max_segment_duration_s": {
                          "anyOf": [
                            {
                              "type": "number"
                            },
                            {
                              "type": "string",
                              "nullable": true
                            }
                          ],
                          "title": "Max Segment Duration S"
                        },
                        "max_segment_chars": {
                          "anyOf": [
                            {
                              "type": "integer"
                            },
                            {
                              "type": "string",
                              "nullable": true
                            }
                          ],
                          "title": "Max Segment Chars"
                        }
                      },
                      "type": "object",
                      "required": [
                        "format"
                      ],
                      "title": "PdfExportOptions"
                    },
                    {
                      "properties": {
                        "max_characters_per_line": {
                          "anyOf": [
                            {
                              "type": "integer"
                            },
                            {
                              "type": "string",
                              "nullable": true
                            }
                          ],
                          "title": "Max Characters Per Line",
                          "default": 100
                        },
                        "include_speakers": {
                          "type": "boolean",
                          "title": "Include Speakers",
                          "default": true
                        },
                        "include_timestamps": {
                          "type": "boolean",
                          "title": "Include Timestamps",
                          "default": true
                        },
                        "format": {
                          "type": "string",
                          "title": "Format",
                          "enum": [
                            "txt"
                          ]
                        },
                        "segment_on_silence_longer_than_s": {
                          "anyOf": [
                            {
                              "type": "number"
                            },
                            {
                              "type": "string",
                              "nullable": true
                            }
                          ],
                          "title": "Segment On Silence Longer Than S"
                        },
                        "max_segment_duration_s": {
                          "anyOf": [
                            {
                              "type": "number"
                            },
                            {
                              "type": "string",
                              "nullable": true
                            }
                          ],
                          "title": "Max Segment Duration S"
                        },
                        "max_segment_chars": {
                          "anyOf": [
                            {
                              "type": "integer"
                            },
                            {
                              "type": "string",
                              "nullable": true
                            }
                          ],
                          "title": "Max Segment Chars"
                        }
                      },
                      "type": "object",
                      "required": [
                        "format"
                      ],
                      "title": "TxtExportOptions"
                    },
                    {
                      "properties": {
                        "include_speakers": {
                          "type": "boolean",
                          "title": "Include Speakers",
                          "default": true
                        },
                        "include_timestamps": {
                          "type": "boolean",
                          "title": "Include Timestamps",
                          "default": true
                        },
                        "format": {
                          "type": "string",
                          "title": "Format",
                          "enum": [
                            "html"
                          ]
                        },
                        "segment_on_silence_longer_than_s": {
                          "anyOf": [
                            {
                              "type": "number"
                            },
                            {
                              "type": "string",
                              "nullable": true
                            }
                          ],
                          "title": "Segment On Silence Longer Than S"
                        },
                        "max_segment_duration_s": {
                          "anyOf": [
                            {
                              "type": "number"
                            },
                            {
                              "type": "string",
                              "nullable": true
                            }
                          ],
                          "title": "Max Segment Duration S"
                        },
                        "max_segment_chars": {
                          "anyOf": [
                            {
                              "type": "integer"
                            },
                            {
                              "type": "string",
                              "nullable": true
                            }
                          ],
                          "title": "Max Segment Chars"
                        }
                      },
                      "type": "object",
                      "required": [
                        "format"
                      ],
                      "title": "HtmlExportOptions"
                    },
                    {
                      "properties": {
                        "max_characters_per_line": {
                          "anyOf": [
                            {
                              "type": "integer"
                            },
                            {
                              "type": "string",
                              "nullable": true
                            }
                          ],
                          "title": "Max Characters Per Line",
                          "default": 42
                        },
                        "include_speakers": {
                          "type": "boolean",
                          "title": "Include Speakers",
                          "default": false
                        },
                        "include_timestamps": {
                          "type": "boolean",
                          "title": "Include Timestamps",
                          "default": true
                        },
                        "format": {
                          "type": "string",
                          "title": "Format",
                          "enum": [
                            "srt"
                          ]
                        },
                        "segment_on_silence_longer_than_s": {
                          "anyOf": [
                            {
                              "type": "number"
                            },
                            {
                              "type": "string",
                              "nullable": true
                            }
                          ],
                          "title": "Segment On Silence Longer Than S",
                          "default": 0.8
                        },
                        "max_segment_duration_s": {
                          "anyOf": [
                            {
                              "type": "number"
                            },
                            {
                              "type": "string",
                              "nullable": true
                            }
                          ],
                          "title": "Max Segment Duration S",
                          "default": 4
                        },
                        "max_segment_chars": {
                          "anyOf": [
                            {
                              "type": "integer"
                            },
                            {
                              "type": "string",
                              "nullable": true
                            }
                          ],
                          "title": "Max Segment Chars",
                          "default": 84
                        }
                      },
                      "type": "object",
                      "required": [
                        "format"
                      ],
                      "title": "SrtExportOptions"
                    }
                  ],
                  "title": "ExportOptions",
                  "discriminator": {
                    "propertyName": "format"
                  }
                },
                "type": "array",
                "maxItems": 10,
                "title": "AdditionalFormats"
              },
              "webhook_id": {
                "anyOf": [
                  {
                    "type": "string"
                  },
                  {
                    "type": "string",
                    "nullable": true
                  }
                ],
                "title": "Webhook Id",
                "description": "Optional specific webhook ID to send the transcription result to. Only valid when webhook is set to true. If not provided, transcription will be sent to all configured speech-to-text webhooks."
              },
              "temperature": {
                "anyOf": [
                  {
                    "type": "number",
                    "maximum": 2,
                    "minimum": 0
                  },
                  {
                    "type": "string",
                    "nullable": true
                  }
                ],
                "title": "Temperature",
                "description": "Controls the randomness of the transcription output. Accepts values between 0.0 and 2.0, where higher values result in more diverse and less deterministic results. If omitted, we will use a temperature based on the model you selected which is usually 0."
              },
              "seed": {
                "anyOf": [
                  {
                    "type": "integer",
                    "maximum": 2147483647,
                    "minimum": 0
                  },
                  {
                    "type": "string",
                    "nullable": true
                  }
                ],
                "title": "Seed",
                "description": "If specified, our system will make a best effort to sample deterministically, such that repeated requests with the same seed and parameters should return the same result. Determinism is not guaranteed. Must be an integer between 0 and 2147483647."
              },
              "webhook_metadata": {
                "anyOf": [
                  {
                    "type": "string"
                  },
                  {
                    "type": "object"
                  },
                  {
                    "type": "string",
                    "nullable": true
                  }
                ],
                "title": "Webhook Metadata",
                "description": "Optional metadata to be included in the webhook response. This should be a JSON string representing an object with a maximum depth of 2 levels and maximum size of 16KB. Useful for tracking internal IDs, job references, or other contextual information."
              },
              "entity_detection": {
                "anyOf": [
                  {
                    "type": "string"
                  },
                  {
                    "items": {
                      "type": "string"
                    },
                    "type": "array"
                  },
                  {
                    "type": "string",
                    "nullable": true
                  }
                ],
                "title": "Entity Detection",
                "description": "Detect entities in the transcript. Can be 'all' to detect all entities, a single entity type or category string, or a list of entity types/categories. Categories include 'pii', 'phi', 'pci', 'other', 'offensive_language'. When enabled, detected entities will be returned in the 'entities' field with their text, type, and character positions."
              },
              "keyterms": {
                "items": {
                  "type": "string"
                },
                "type": "array",
                "title": "Keyterms",
                "description": "A list of keyterms to bias the transcription towards.           The keyterms are words or phrases you want the model to recognise more accurately.           The number of keyterms cannot exceed 100.           The length of each keyterm must be less than 50 characters.           Keyterms can contain at most 5 words (after normalisation).           For example [\"hello\", \"world\", \"technical term\"]",
                "default": []
              }
            },
            "type": "object",
            "required": [
              "model_id"
            ],
            "title": "Eleven Labs batch transcription service",
            "readOnly": true,
            "nullable": true,
            "description": "Docs: https://elevenlabs.io/docs/api-reference/speech-to-text"
          },
          "assembly_ai_async_chunked": {
            "properties": {
              "audio_end_at": {
                "x-label": "Audio end at",
                "description": "The point in time, in milliseconds, to stop transcribing in your media file. See [Set the start and end of the transcript](https://www.assemblyai.com/docs/pre-recorded-audio/set-the-start-and-end-of-the-transcript) for more details.",
                "type": "integer"
              },
              "audio_start_from": {
                "x-label": "Audio start from",
                "description": "The point in time, in milliseconds, to begin transcribing in your media file. See [Set the start and end of the transcript](https://www.assemblyai.com/docs/pre-recorded-audio/set-the-start-and-end-of-the-transcript) for more details.",
                "type": "integer"
              },
              "auto_chapters": {
                "x-label": "Auto chapters",
                "description": "Enable [Auto Chapters](https://www.assemblyai.com/docs/speech-understanding/auto-chapters), can be true or false",
                "type": "boolean",
                "default": false
              },
              "auto_highlights": {
                "x-label": "Key phrases",
                "description": "Enable [Key Phrases](https://www.assemblyai.com/docs/speech-understanding/key-phrases), either true or false",
                "type": "boolean",
                "default": false
              },
              "content_safety": {
                "x-label": "Content Moderation",
                "description": "Enable [Content Moderation](https://www.assemblyai.com/docs/content-moderation), can be true or false",
                "type": "boolean",
                "default": false
              },
              "content_safety_confidence": {
                "x-label": "Content Moderation confidence",
                "description": "The confidence threshold for the [Content Moderation](https://www.assemblyai.com/docs/content-moderation) model. Values must be between 25 and 100.",
                "type": "integer",
                "default": 50,
                "minimum": 25,
                "maximum": 100
              },
              "custom_spelling": {
                "x-label": "Custom spellings",
                "description": "Customize how words are spelled and formatted using to and from values. See [Custom Spelling](https://www.assemblyai.com/docs/pre-recorded-audio/custom-spelling) for more details.",
                "type": "array",
                "items": {
                  "x-label": "Custom spelling",
                  "description": "Object containing words or phrases to replace, and the word or phrase to replace with",
                  "x-fern-sdk-group-name": "transcripts",
                  "type": "object",
                  "additionalProperties": false,
                  "properties": {
                    "from": {
                      "x-label": "From",
                      "description": "Words or phrases to replace",
                      "type": "array",
                      "items": {
                        "x-label": "Word or phrase",
                        "description": "Word or phrase to replace",
                        "type": "string"
                      }
                    },
                    "to": {
                      "x-label": "To",
                      "description": "Word to replace with",
                      "type": "string"
                    }
                  },
                  "required": [
                    "from",
                    "to"
                  ],
                  "example": {
                    "from": [
                      "dicarlo"
                    ],
                    "to": "Decarlo"
                  }
                }
              },
              "disfluencies": {
                "x-label": "Disfluencies",
                "description": "Transcribe [Filler Words](https://www.assemblyai.com/docs/pre-recorded-audio/filler-words), like \"umm\", in your media file; can be true or false",
                "type": "boolean",
                "default": false
              },
              "entity_detection": {
                "x-label": "Entity Detection",
                "description": "Enable [Entity Detection](https://www.assemblyai.com/docs/speech-understanding/entity-detection), can be true or false",
                "type": "boolean",
                "default": false
              },
              "filter_profanity": {
                "x-label": "Filter profanity",
                "description": "Filter profanity from the transcribed text, can be true or false. See [Profanity Filtering](https://www.assemblyai.com/docs/profanity-filtering) for more details.",
                "type": "boolean",
                "default": false
              },
              "format_text": {
                "x-label": "Format text",
                "description": "Enable [Text Formatting](https://www.assemblyai.com/docs/pre-recorded-audio), can be true or false",
                "type": "boolean",
                "default": true
              },
              "iab_categories": {
                "x-label": "Topic Detection",
                "description": "Enable [Topic Detection](https://www.assemblyai.com/docs/speech-understanding/topic-detection), can be true or false",
                "type": "boolean",
                "default": false
              },
              "keyterms_prompt": {
                "x-label": "Keyterms prompt",
                "description": "Improve accuracy with up to 200 (for Universal-2) or 1000 (for Universal-3-Pro) domain-specific words or phrases (maximum 6 words per phrase). See [Keyterms Prompting](https://www.assemblyai.com/docs/pre-recorded-audio/keyterms-prompting) for more details.\n",
                "type": "array",
                "items": {
                  "x-label": "Keyterm",
                  "type": "string"
                }
              },
              "language_code": {
                "x-label": "Language code",
                "description": "The language of your audio file. Possible values are found in [Supported Languages](https://www.assemblyai.com/docs/pre-recorded-audio/supported-languages).\nThe default value is 'en_us'.\n",
                "oneOf": [
                  {
                    "anyOf": [
                      {
                        "x-label": "Language code",
                        "type": "string",
                        "description": "The language of your audio file. Possible values are found in [Supported Languages](https://www.assemblyai.com/docs/pre-recorded-audio/supported-languages).\nThe default value is 'en_us'.\n",
                        "x-fern-sdk-group-name": "transcripts",
                        "enum": [
                          "en",
                          "en_au",
                          "en_uk",
                          "en_us",
                          "es",
                          "fr",
                          "de",
                          "it",
                          "pt",
                          "nl",
                          "af",
                          "sq",
                          "am",
                          "ar",
                          "hy",
                          "as",
                          "az",
                          "ba",
                          "eu",
                          "be",
                          "bn",
                          "bs",
                          "br",
                          "bg",
                          "my",
                          "ca",
                          "zh",
                          "hr",
                          "cs",
                          "da",
                          "et",
                          "fo",
                          "fi",
                          "gl",
                          "ka",
                          "el",
                          "gu",
                          "ht",
                          "ha",
                          "haw",
                          "he",
                          "hi",
                          "hu",
                          "is",
                          "id",
                          "ja",
                          "jw",
                          "kn",
                          "kk",
                          "km",
                          "ko",
                          "lo",
                          "la",
                          "lv",
                          "ln",
                          "lt",
                          "lb",
                          "mk",
                          "mg",
                          "ms",
                          "ml",
                          "mt",
                          "mi",
                          "mr",
                          "mn",
                          "ne",
                          "no",
                          "nn",
                          "oc",
                          "pa",
                          "ps",
                          "fa",
                          "pl",
                          "ro",
                          "ru",
                          "sa",
                          "sr",
                          "sn",
                          "sd",
                          "si",
                          "sk",
                          "sl",
                          "so",
                          "su",
                          "sw",
                          "sv",
                          "tl",
                          "tg",
                          "ta",
                          "tt",
                          "te",
                          "th",
                          "bo",
                          "tr",
                          "tk",
                          "uk",
                          "ur",
                          "uz",
                          "vi",
                          "cy",
                          "yi",
                          "yo"
                        ],
                        "x-aai-enum": {
                          "en": {
                            "label": "English (global)"
                          },
                          "en_au": {
                            "label": "English (Australian)"
                          },
                          "en_uk": {
                            "label": "English (British)"
                          },
                          "en_us": {
                            "label": "English (US)"
                          },
                          "es": {
                            "label": "Spanish"
                          },
                          "fr": {
                            "label": "French"
                          },
                          "de": {
                            "label": "German"
                          },
                          "it": {
                            "label": "Italian"
                          },
                          "pt": {
                            "label": "Portuguese"
                          },
                          "nl": {
                            "label": "Dutch"
                          },
                          "af": {
                            "label": "Afrikaans"
                          },
                          "sq": {
                            "label": "Albanian"
                          },
                          "am": {
                            "label": "Amharic"
                          },
                          "ar": {
                            "label": "Arabic"
                          },
                          "hy": {
                            "label": "Armenian"
                          },
                          "as": {
                            "label": "Assamese"
                          },
                          "az": {
                            "label": "Azerbaijani"
                          },
                          "ba": {
                            "label": "Bashkir"
                          },
                          "eu": {
                            "label": "Basque"
                          },
                          "be": {
                            "label": "Belarusian"
                          },
                          "bn": {
                            "label": "Bengali"
                          },
                          "bs": {
                            "label": "Bosnian"
                          },
                          "br": {
                            "label": "Breton"
                          },
                          "bg": {
                            "label": "Bulgarian"
                          },
                          "my": {
                            "label": "Burmese"
                          },
                          "ca": {
                            "label": "Catalan"
                          },
                          "zh": {
                            "label": "Chinese"
                          },
                          "hr": {
                            "label": "Croatian"
                          },
                          "cs": {
                            "label": "Czech"
                          },
                          "da": {
                            "label": "Danish"
                          },
                          "et": {
                            "label": "Estonian"
                          },
                          "fo": {
                            "label": "Faroese"
                          },
                          "fi": {
                            "label": "Finnish"
                          },
                          "gl": {
                            "label": "Galician"
                          },
                          "ka": {
                            "label": "Georgian"
                          },
                          "el": {
                            "label": "Greek"
                          },
                          "gu": {
                            "label": "Gujarati"
                          },
                          "ht": {
                            "label": "Haitian"
                          },
                          "ha": {
                            "label": "Hausa"
                          },
                          "haw": {
                            "label": "Hawaiian"
                          },
                          "he": {
                            "label": "Hebrew"
                          },
                          "hi": {
                            "label": "Hindi"
                          },
                          "hu": {
                            "label": "Hungarian"
                          },
                          "is": {
                            "label": "Icelandic"
                          },
                          "id": {
                            "label": "Indonesian"
                          },
                          "ja": {
                            "label": "Japanese"
                          },
                          "jw": {
                            "label": "Javanese"
                          },
                          "kn": {
                            "label": "Kannada"
                          },
                          "kk": {
                            "label": "Kazakh"
                          },
                          "km": {
                            "label": "Khmer"
                          },
                          "ko": {
                            "label": "Korean"
                          },
                          "lo": {
                            "label": "Lao"
                          },
                          "la": {
                            "label": "Latin"
                          },
                          "lv": {
                            "label": "Latvian"
                          },
                          "ln": {
                            "label": "Lingala"
                          },
                          "lt": {
                            "label": "Lithuanian"
                          },
                          "lb": {
                            "label": "Luxembourgish"
                          },
                          "mk": {
                            "label": "Macedonian"
                          },
                          "mg": {
                            "label": "Malagasy"
                          },
                          "ms": {
                            "label": "Malay"
                          },
                          "ml": {
                            "label": "Malayalam"
                          },
                          "mt": {
                            "label": "Maltese"
                          },
                          "mi": {
                            "label": "Maori"
                          },
                          "mr": {
                            "label": "Marathi"
                          },
                          "mn": {
                            "label": "Mongolian"
                          },
                          "ne": {
                            "label": "Nepali"
                          },
                          "no": {
                            "label": "Norwegian"
                          },
                          "nn": {
                            "label": "Norwegian Nynorsk"
                          },
                          "oc": {
                            "label": "Occitan"
                          },
                          "pa": {
                            "label": "Panjabi"
                          },
                          "ps": {
                            "label": "Pashto"
                          },
                          "fa": {
                            "label": "Persian"
                          },
                          "pl": {
                            "label": "Polish"
                          },
                          "ro": {
                            "label": "Romanian"
                          },
                          "ru": {
                            "label": "Russian"
                          },
                          "sa": {
                            "label": "Sanskrit"
                          },
                          "sr": {
                            "label": "Serbian"
                          },
                          "sn": {
                            "label": "Shona"
                          },
                          "sd": {
                            "label": "Sindhi"
                          },
                          "si": {
                            "label": "Sinhala"
                          },
                          "sk": {
                            "label": "Slovak"
                          },
                          "sl": {
                            "label": "Slovenian"
                          },
                          "so": {
                            "label": "Somali"
                          },
                          "su": {
                            "label": "Sundanese"
                          },
                          "sw": {
                            "label": "Swahili"
                          },
                          "sv": {
                            "label": "Swedish"
                          },
                          "tl": {
                            "label": "Tagalog"
                          },
                          "tg": {
                            "label": "Tajik"
                          },
                          "ta": {
                            "label": "Tamil"
                          },
                          "tt": {
                            "label": "Tatar"
                          },
                          "te": {
                            "label": "Telugu"
                          },
                          "th": {
                            "label": "Thai"
                          },
                          "bo": {
                            "label": "Tibetan"
                          },
                          "tr": {
                            "label": "Turkish"
                          },
                          "tk": {
                            "label": "Turkmen"
                          },
                          "uk": {
                            "label": "Ukrainian"
                          },
                          "ur": {
                            "label": "Urdu"
                          },
                          "uz": {
                            "label": "Uzbek"
                          },
                          "vi": {
                            "label": "Vietnamese"
                          },
                          "cy": {
                            "label": "Welsh"
                          },
                          "yi": {
                            "label": "Yiddish"
                          },
                          "yo": {
                            "label": "Yoruba"
                          }
                        }
                      },
                      {
                        "type": "string"
                      }
                    ]
                  },
                  {
                    "type": "string",
                    "nullable": true
                  }
                ],
                "default": "en_us",
                "x-ts-type": "LiteralUnion<TranscriptLanguageCode, string> | null",
                "x-go-type": "TranscriptLanguageCode"
              },
              "language_codes": {
                "description": "The language codes of your audio file. Used for [Code switching](https://www.assemblyai.com/docs/speech-to-text/pre-recorded-audio/code-switching)\nOne of the values specified must be `en`.\n",
                "type": "array",
                "items": {
                  "x-label": "Language code",
                  "type": "string",
                  "description": "The language of your audio file. Possible values are found in [Supported Languages](https://www.assemblyai.com/docs/pre-recorded-audio/supported-languages).\nThe default value is 'en_us'.\n",
                  "x-fern-sdk-group-name": "transcripts",
                  "enum": [
                    "en",
                    "en_au",
                    "en_uk",
                    "en_us",
                    "es",
                    "fr",
                    "de",
                    "it",
                    "pt",
                    "nl",
                    "af",
                    "sq",
                    "am",
                    "ar",
                    "hy",
                    "as",
                    "az",
                    "ba",
                    "eu",
                    "be",
                    "bn",
                    "bs",
                    "br",
                    "bg",
                    "my",
                    "ca",
                    "zh",
                    "hr",
                    "cs",
                    "da",
                    "et",
                    "fo",
                    "fi",
                    "gl",
                    "ka",
                    "el",
                    "gu",
                    "ht",
                    "ha",
                    "haw",
                    "he",
                    "hi",
                    "hu",
                    "is",
                    "id",
                    "ja",
                    "jw",
                    "kn",
                    "kk",
                    "km",
                    "ko",
                    "lo",
                    "la",
                    "lv",
                    "ln",
                    "lt",
                    "lb",
                    "mk",
                    "mg",
                    "ms",
                    "ml",
                    "mt",
                    "mi",
                    "mr",
                    "mn",
                    "ne",
                    "no",
                    "nn",
                    "oc",
                    "pa",
                    "ps",
                    "fa",
                    "pl",
                    "ro",
                    "ru",
                    "sa",
                    "sr",
                    "sn",
                    "sd",
                    "si",
                    "sk",
                    "sl",
                    "so",
                    "su",
                    "sw",
                    "sv",
                    "tl",
                    "tg",
                    "ta",
                    "tt",
                    "te",
                    "th",
                    "bo",
                    "tr",
                    "tk",
                    "uk",
                    "ur",
                    "uz",
                    "vi",
                    "cy",
                    "yi",
                    "yo"
                  ],
                  "x-aai-enum": {
                    "en": {
                      "label": "English (global)"
                    },
                    "en_au": {
                      "label": "English (Australian)"
                    },
                    "en_uk": {
                      "label": "English (British)"
                    },
                    "en_us": {
                      "label": "English (US)"
                    },
                    "es": {
                      "label": "Spanish"
                    },
                    "fr": {
                      "label": "French"
                    },
                    "de": {
                      "label": "German"
                    },
                    "it": {
                      "label": "Italian"
                    },
                    "pt": {
                      "label": "Portuguese"
                    },
                    "nl": {
                      "label": "Dutch"
                    },
                    "af": {
                      "label": "Afrikaans"
                    },
                    "sq": {
                      "label": "Albanian"
                    },
                    "am": {
                      "label": "Amharic"
                    },
                    "ar": {
                      "label": "Arabic"
                    },
                    "hy": {
                      "label": "Armenian"
                    },
                    "as": {
                      "label": "Assamese"
                    },
                    "az": {
                      "label": "Azerbaijani"
                    },
                    "ba": {
                      "label": "Bashkir"
                    },
                    "eu": {
                      "label": "Basque"
                    },
                    "be": {
                      "label": "Belarusian"
                    },
                    "bn": {
                      "label": "Bengali"
                    },
                    "bs": {
                      "label": "Bosnian"
                    },
                    "br": {
                      "label": "Breton"
                    },
                    "bg": {
                      "label": "Bulgarian"
                    },
                    "my": {
                      "label": "Burmese"
                    },
                    "ca": {
                      "label": "Catalan"
                    },
                    "zh": {
                      "label": "Chinese"
                    },
                    "hr": {
                      "label": "Croatian"
                    },
                    "cs": {
                      "label": "Czech"
                    },
                    "da": {
                      "label": "Danish"
                    },
                    "et": {
                      "label": "Estonian"
                    },
                    "fo": {
                      "label": "Faroese"
                    },
                    "fi": {
                      "label": "Finnish"
                    },
                    "gl": {
                      "label": "Galician"
                    },
                    "ka": {
                      "label": "Georgian"
                    },
                    "el": {
                      "label": "Greek"
                    },
                    "gu": {
                      "label": "Gujarati"
                    },
                    "ht": {
                      "label": "Haitian"
                    },
                    "ha": {
                      "label": "Hausa"
                    },
                    "haw": {
                      "label": "Hawaiian"
                    },
                    "he": {
                      "label": "Hebrew"
                    },
                    "hi": {
                      "label": "Hindi"
                    },
                    "hu": {
                      "label": "Hungarian"
                    },
                    "is": {
                      "label": "Icelandic"
                    },
                    "id": {
                      "label": "Indonesian"
                    },
                    "ja": {
                      "label": "Japanese"
                    },
                    "jw": {
                      "label": "Javanese"
                    },
                    "kn": {
                      "label": "Kannada"
                    },
                    "kk": {
                      "label": "Kazakh"
                    },
                    "km": {
                      "label": "Khmer"
                    },
                    "ko": {
                      "label": "Korean"
                    },
                    "lo": {
                      "label": "Lao"
                    },
                    "la": {
                      "label": "Latin"
                    },
                    "lv": {
                      "label": "Latvian"
                    },
                    "ln": {
                      "label": "Lingala"
                    },
                    "lt": {
                      "label": "Lithuanian"
                    },
                    "lb": {
                      "label": "Luxembourgish"
                    },
                    "mk": {
                      "label": "Macedonian"
                    },
                    "mg": {
                      "label": "Malagasy"
                    },
                    "ms": {
                      "label": "Malay"
                    },
                    "ml": {
                      "label": "Malayalam"
                    },
                    "mt": {
                      "label": "Maltese"
                    },
                    "mi": {
                      "label": "Maori"
                    },
                    "mr": {
                      "label": "Marathi"
                    },
                    "mn": {
                      "label": "Mongolian"
                    },
                    "ne": {
                      "label": "Nepali"
                    },
                    "no": {
                      "label": "Norwegian"
                    },
                    "nn": {
                      "label": "Norwegian Nynorsk"
                    },
                    "oc": {
                      "label": "Occitan"
                    },
                    "pa": {
                      "label": "Panjabi"
                    },
                    "ps": {
                      "label": "Pashto"
                    },
                    "fa": {
                      "label": "Persian"
                    },
                    "pl": {
                      "label": "Polish"
                    },
                    "ro": {
                      "label": "Romanian"
                    },
                    "ru": {
                      "label": "Russian"
                    },
                    "sa": {
                      "label": "Sanskrit"
                    },
                    "sr": {
                      "label": "Serbian"
                    },
                    "sn": {
                      "label": "Shona"
                    },
                    "sd": {
                      "label": "Sindhi"
                    },
                    "si": {
                      "label": "Sinhala"
                    },
                    "sk": {
                      "label": "Slovak"
                    },
                    "sl": {
                      "label": "Slovenian"
                    },
                    "so": {
                      "label": "Somali"
                    },
                    "su": {
                      "label": "Sundanese"
                    },
                    "sw": {
                      "label": "Swahili"
                    },
                    "sv": {
                      "label": "Swedish"
                    },
                    "tl": {
                      "label": "Tagalog"
                    },
                    "tg": {
                      "label": "Tajik"
                    },
                    "ta": {
                      "label": "Tamil"
                    },
                    "tt": {
                      "label": "Tatar"
                    },
                    "te": {
                      "label": "Telugu"
                    },
                    "th": {
                      "label": "Thai"
                    },
                    "bo": {
                      "label": "Tibetan"
                    },
                    "tr": {
                      "label": "Turkish"
                    },
                    "tk": {
                      "label": "Turkmen"
                    },
                    "uk": {
                      "label": "Ukrainian"
                    },
                    "ur": {
                      "label": "Urdu"
                    },
                    "uz": {
                      "label": "Uzbek"
                    },
                    "vi": {
                      "label": "Vietnamese"
                    },
                    "cy": {
                      "label": "Welsh"
                    },
                    "yi": {
                      "label": "Yiddish"
                    },
                    "yo": {
                      "label": "Yoruba"
                    }
                  }
                },
                "nullable": true
              },
              "language_confidence_threshold": {
                "x-label": "Language confidence threshold",
                "description": "The confidence threshold for the automatically detected language.\nAn error will be returned if the language confidence is below this threshold.\nDefaults to 0. See [Automatic Language Detection](https://www.assemblyai.com/docs/pre-recorded-audio/language-detection) for more details.\n",
                "type": "number",
                "format": "float",
                "minimum": 0,
                "maximum": 1,
                "default": 0
              },
              "language_detection": {
                "x-label": "Language detection",
                "description": "Enable [Automatic language detection](https://www.assemblyai.com/docs/pre-recorded-audio/language-detection), either true or false.",
                "type": "boolean",
                "default": false
              },
              "language_detection_options": {
                "x-label": "Specify options for Automatic Language Detection.",
                "description": "Specify options for [Automatic Language Detection](https://www.assemblyai.com/docs/pre-recorded-audio/language-detection).",
                "type": "object",
                "additionalProperties": false,
                "properties": {
                  "expected_languages": {
                    "x-label": "Expected languages",
                    "description": "List of languages expected in the audio file. Defaults to `[\"all\"]` when unspecified. See [Automatic Language Detection](https://www.assemblyai.com/docs/pre-recorded-audio/language-detection) for more details.",
                    "type": "array",
                    "items": {
                      "x-label": "language",
                      "type": "string"
                    }
                  },
                  "fallback_language": {
                    "x-label": "Fallback language",
                    "description": "If the detected language of the audio file is not in the list of expected languages, the `fallback_language` is used. Specify `[\"auto\"]` to let our model choose the fallback language from `expected_languages` with the highest confidence score. See [Automatic Language Detection](https://www.assemblyai.com/docs/pre-recorded-audio/language-detection) for more details.\n",
                    "type": "string",
                    "default": "auto"
                  },
                  "code_switching": {
                    "x-label": "Code switching",
                    "description": "Whether [code switching](https://www.assemblyai.com/docs/speech-to-text/pre-recorded-audio/code-switching) should be detected.\n",
                    "type": "boolean",
                    "default": false
                  },
                  "code_switching_confidence_threshold": {
                    "x-label": "Code switching confidence threshold",
                    "description": "The confidence threshold for [code switching](https://www.assemblyai.com/docs/speech-to-text/pre-recorded-audio/code-switching) detection. If the code switching confidence is below this threshold, the transcript will be processed in the language with the highest `language_detection_confidence` score.\n",
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1,
                    "default": 0.3
                  }
                }
              },
              "multichannel": {
                "x-label": "Multichannel",
                "description": "Enable [Multichannel](https://www.assemblyai.com/docs/pre-recorded-audio/multichannel) transcription, can be true or false.",
                "type": "boolean",
                "default": false
              },
              "prompt": {
                "x-label": "Prompt",
                "description": "Provide natural language prompting of up to 1,500 words of contextual information to the model. See the [Prompting Guide](https://www.assemblyai.com/docs/pre-recorded-audio/prompting) for best practices.\n\nNote: This parameter is only supported for the Universal-3-Pro model.\n",
                "type": "string"
              },
              "punctuate": {
                "x-label": "Punctuate",
                "description": "Enable [Automatic Punctuation](https://www.assemblyai.com/docs/pre-recorded-audio), can be true or false",
                "type": "boolean",
                "default": true
              },
              "redact_pii": {
                "x-label": "Redact PII",
                "description": "Redact PII from the transcribed text using the Redact PII model, can be true or false. See [PII Redaction](https://www.assemblyai.com/docs/pii-redaction) for more details.",
                "type": "boolean",
                "default": false
              },
              "redact_pii_audio": {
                "x-label": "Redact PII audio",
                "description": "Generate a copy of the original media file with spoken PII \"beeped\" out, can be true or false. See [PII redaction](https://www.assemblyai.com/docs/pii-redaction#request-for-redacted-audio) for more details.",
                "type": "boolean",
                "default": false
              },
              "redact_pii_audio_options": {
                "x-label": "Specify options for PII redacted audio files.",
                "description": "Specify options for [PII redacted audio](https://www.assemblyai.com/docs/pii-redaction#request-for-redacted-audio) files.",
                "type": "object",
                "additionalProperties": false,
                "properties": {
                  "return_redacted_no_speech_audio": {
                    "x-label": "Return redacted no speech audio",
                    "description": "By default, audio redaction provides redacted audio URLs only when speech is detected. However, if your use-case specifically requires redacted audio files even for silent audio files without any dialogue, you can opt to receive these URLs by setting this parameter to `true`.",
                    "type": "boolean",
                    "default": false
                  }
                }
              },
              "redact_pii_audio_quality": {
                "x-label": "Redact PII audio quality",
                "type": "string",
                "description": "Controls the filetype of the audio created by redact_pii_audio. Currently supports mp3 (default) and wav. See [PII redaction](https://www.assemblyai.com/docs/pii-redaction#request-for-redacted-audio) for more details.",
                "x-fern-sdk-group-name": "transcripts",
                "enum": [
                  "mp3",
                  "wav"
                ],
                "x-fern-enum": {
                  "mp3": {
                    "description": "MP3 audio format is lower quality and lower size than WAV.",
                    "casing": {
                      "camel": "mp3",
                      "snake": "mp3",
                      "pascal": "Mp3",
                      "screamingSnake": "MP3"
                    }
                  },
                  "wav": {
                    "description": "WAV audio format is the highest quality (no compression) and larger size than MP3."
                  }
                },
                "x-aai-enum": {
                  "mp3": {
                    "label": "MP3"
                  },
                  "wav": {
                    "label": "WAV"
                  }
                },
                "example": "mp3"
              },
              "redact_pii_policies": {
                "x-label": "Redact PII policies",
                "description": "The list of PII Redaction policies to enable. See [PII redaction](https://www.assemblyai.com/docs/pii-redaction) for more details.",
                "type": "array",
                "items": {
                  "x-label": "PII policy",
                  "description": "The type of PII to redact",
                  "x-fern-sdk-group-name": "transcripts",
                  "type": "string",
                  "enum": [
                    "account_number",
                    "banking_information",
                    "blood_type",
                    "credit_card_cvv",
                    "credit_card_expiration",
                    "credit_card_number",
                    "date",
                    "date_interval",
                    "date_of_birth",
                    "drivers_license",
                    "drug",
                    "duration",
                    "email_address",
                    "event",
                    "filename",
                    "gender_sexuality",
                    "healthcare_number",
                    "injury",
                    "ip_address",
                    "language",
                    "location",
                    "marital_status",
                    "medical_condition",
                    "medical_process",
                    "money_amount",
                    "nationality",
                    "number_sequence",
                    "occupation",
                    "organization",
                    "passport_number",
                    "password",
                    "person_age",
                    "person_name",
                    "phone_number",
                    "physical_attribute",
                    "political_affiliation",
                    "religion",
                    "statistics",
                    "time",
                    "url",
                    "us_social_security_number",
                    "username",
                    "vehicle_id",
                    "zodiac_sign"
                  ],
                  "x-fern-enum": {
                    "account_number": {
                      "description": "Customer account or membership identification number (e.g., Policy No. 10042992, Member ID: HZ-5235-001)"
                    },
                    "banking_information": {
                      "description": "Banking information, including account and routing numbers"
                    },
                    "blood_type": {
                      "description": "Blood type (e.g., O-, AB positive)"
                    },
                    "credit_card_cvv": {
                      "description": "Credit card verification code (e.g., CVV: 080)"
                    },
                    "credit_card_expiration": {
                      "description": "Expiration date of a credit card"
                    },
                    "credit_card_number": {
                      "description": "Credit card number"
                    },
                    "date": {
                      "description": "Specific calendar date (e.g., December 18)"
                    },
                    "date_interval": {
                      "description": "Broader time periods, including date ranges, months, seasons, years, and decades (e.g., 2020-2021, 5-9 May, January 1984)"
                    },
                    "date_of_birth": {
                      "description": "Date of birth (e.g., Date of Birth: March 7,1961)"
                    },
                    "drivers_license": {
                      "description": "Driver's license number. (e.g., DL# 356933-540)"
                    },
                    "drug": {
                      "description": "Medications, vitamins, or supplements (e.g., Advil, Acetaminophen, Panadol)"
                    },
                    "duration": {
                      "description": "Periods of time, specified as a number and a unit of time (e.g., 8 months, 2 years)"
                    },
                    "email_address": {
                      "description": "Email address (e.g., support@assemblyai.com)"
                    },
                    "event": {
                      "description": "Name of an event or holiday (e.g., Olympics, Yom Kippur)"
                    },
                    "filename": {
                      "description": "Names of computer files, including the extension or filepath (e.g., Taxes/2012/brad-tax-returns.pdf)"
                    },
                    "gender_sexuality": {
                      "description": "Terms indicating gender identity or sexual orientation, including slang terms (e.g., female, bisexual, trans)"
                    },
                    "healthcare_number": {
                      "description": "Healthcare numbers and health plan beneficiary numbers (e.g., Policy No.: 5584-486-674-YM)"
                    },
                    "injury": {
                      "description": "Bodily injury (e.g., I broke my arm, I have a sprained wrist)"
                    },
                    "ip_address": {
                      "description": "Internet IP address, including IPv4 and IPv6 formats (e.g., 192.168.0.1)"
                    },
                    "language": {
                      "description": "Name of a natural language (e.g., Spanish, French)"
                    },
                    "location": {
                      "description": "Any Location reference including mailing address, postal code, city, state, province, country, or coordinates. (e.g., Lake Victoria, 145 Windsor St., 90210)"
                    },
                    "marital_status": {
                      "description": "Terms indicating marital status (e.g., Single, common-law, ex-wife, married)"
                    },
                    "medical_condition": {
                      "description": "Name of a medical condition, disease, syndrome, deficit, or disorder (e.g., chronic fatigue syndrome, arrhythmia, depression)"
                    },
                    "medical_process": {
                      "description": "Medical process, including treatments, procedures, and tests (e.g., heart surgery, CT scan)"
                    },
                    "money_amount": {
                      "description": "Name and/or amount of currency (e.g., 15 pesos, $94.50)"
                    },
                    "nationality": {
                      "description": "Terms indicating nationality, ethnicity, or race (e.g., American, Asian, Caucasian)"
                    },
                    "number_sequence": {
                      "description": "Numerical PII (including alphanumeric strings) that doesn't fall under other categories"
                    },
                    "occupation": {
                      "description": "Job title or profession (e.g., professor, actors, engineer, CPA)"
                    },
                    "organization": {
                      "description": "Name of an organization (e.g., CNN, McDonalds, University of Alaska, Northwest General Hospital)"
                    },
                    "passport_number": {
                      "description": "Passport numbers, issued by any country (e.g., PA4568332, NU3C6L86S12)"
                    },
                    "password": {
                      "description": "Account passwords, PINs, access keys, or verification answers (e.g., 27%alfalfa, temp1234, My mother's maiden name is Smith)"
                    },
                    "person_age": {
                      "description": "Number associated with an age (e.g., 27, 75)"
                    },
                    "person_name": {
                      "description": "Name of a person (e.g., Bob, Doug Jones, Dr. Kay Martinez, MD)"
                    },
                    "phone_number": {
                      "description": "Telephone or fax number"
                    },
                    "physical_attribute": {
                      "description": "Distinctive bodily attributes, including terms indicating race (e.g., I'm 190cm tall, He belongs to the Black students' association)"
                    },
                    "political_affiliation": {
                      "description": "Terms referring to a political party, movement, or ideology (e.g., Republican, Liberal)"
                    },
                    "religion": {
                      "description": "Terms indicating religious affiliation (e.g., Hindu, Catholic)"
                    },
                    "statistics": {
                      "description": "Medical statistics (e.g., 18%, 18 percent)"
                    },
                    "time": {
                      "description": "Expressions indicating clock times (e.g., 19:37:28, 10pm EST)"
                    },
                    "url": {
                      "description": "Internet addresses (e.g., https://www.assemblyai.com/)"
                    },
                    "us_social_security_number": {
                      "description": "Social Security Number or equivalent"
                    },
                    "username": {
                      "description": "Usernames, login names, or handles (e.g., @AssemblyAI)"
                    },
                    "vehicle_id": {
                      "description": "Vehicle identification numbers (VINs), vehicle serial numbers, and license plate numbers (e.g., 5FNRL38918B111818, BIF7547)"
                    },
                    "zodiac_sign": {
                      "description": "Names of Zodiac signs (e.g., Aries, Taurus)"
                    }
                  },
                  "x-aai-enum": {
                    "account_number": {
                      "label": "Account number"
                    },
                    "banking_information": {
                      "label": "Banking information"
                    },
                    "blood_type": {
                      "label": "Blood type"
                    },
                    "credit_card_cvv": {
                      "label": "Credit card CVV"
                    },
                    "credit_card_expiration": {
                      "label": "Credit card expiration"
                    },
                    "credit_card_number": {
                      "label": "Credit card number"
                    },
                    "date": {
                      "label": "Date"
                    },
                    "date_interval": {
                      "label": "Date interval"
                    },
                    "date_of_birth": {
                      "label": "Date of birth"
                    },
                    "drivers_license": {
                      "label": "Driver's license"
                    },
                    "drug": {
                      "label": "Drug"
                    },
                    "duration": {
                      "label": "Duration"
                    },
                    "email_address": {
                      "label": "Email address"
                    },
                    "event": {
                      "label": "Event"
                    },
                    "filename": {
                      "label": "Filename"
                    },
                    "gender_sexuality": {
                      "label": "Gender sexuality"
                    },
                    "healthcare_number": {
                      "label": "Healthcare number"
                    },
                    "injury": {
                      "label": "Injury"
                    },
                    "ip_address": {
                      "label": "IP address"
                    },
                    "language": {
                      "label": "Language"
                    },
                    "location": {
                      "label": "Location"
                    },
                    "marital_status": {
                      "label": "Marital status"
                    },
                    "medical_condition": {
                      "label": "Medical condition"
                    },
                    "medical_process": {
                      "label": "Medical process"
                    },
                    "money_amount": {
                      "label": "Money amount"
                    },
                    "nationality": {
                      "label": "Nationality"
                    },
                    "number_sequence": {
                      "label": "Number sequence"
                    },
                    "occupation": {
                      "label": "Occupation"
                    },
                    "organization": {
                      "label": "Organization"
                    },
                    "passport_number": {
                      "label": "Passport number"
                    },
                    "password": {
                      "label": "Password"
                    },
                    "person_age": {
                      "label": "Person age"
                    },
                    "person_name": {
                      "label": "Person name"
                    },
                    "phone_number": {
                      "label": "Phone number"
                    },
                    "physical_attribute": {
                      "label": "Physical attribute"
                    },
                    "political_affiliation": {
                      "label": "Political affiliation"
                    },
                    "religion": {
                      "label": "Religion"
                    },
                    "statistics": {
                      "label": "Statistics"
                    },
                    "time": {
                      "label": "Time"
                    },
                    "url": {
                      "label": "URL"
                    },
                    "us_social_security_number": {
                      "label": "US Social Security Number"
                    },
                    "username": {
                      "label": "Username"
                    },
                    "vehicle_id": {
                      "label": "Vehicle ID"
                    },
                    "zodiac_sign": {
                      "label": "Zodiac sign"
                    }
                  }
                }
              },
              "redact_pii_sub": {
                "x-label": "Redact PII substitution",
                "description": "The replacement logic for detected PII, can be `entity_type` or `hash`. See [PII redaction](https://www.assemblyai.com/docs/pii-redaction) for more details.",
                "oneOf": [
                  {
                    "x-label": "Redact PII substitution",
                    "type": "string",
                    "x-fern-sdk-group-name": "transcripts",
                    "description": "The replacement logic for detected PII, can be `entity_name` or `hash`. See [PII redaction](https://www.assemblyai.com/docs/pii-redaction) for more details.",
                    "enum": [
                      "entity_name",
                      "hash"
                    ],
                    "x-aai-enum": {
                      "entity_name": {
                        "label": "Entity name"
                      },
                      "hash": {
                        "label": "Hash"
                      }
                    }
                  },
                  {
                    "type": "string",
                    "nullable": true
                  }
                ],
                "default": "hash"
              },
              "sentiment_analysis": {
                "x-label": "Sentiment Analysis",
                "description": "Enable [Sentiment Analysis](https://www.assemblyai.com/docs/speech-understanding/sentiment-analysis), can be true or false",
                "type": "boolean",
                "default": false
              },
              "speaker_labels": {
                "x-label": "Speaker labels",
                "description": "Enable [Speaker diarization](https://www.assemblyai.com/docs/pre-recorded-audio/speaker-diarization), can be true or false",
                "type": "boolean",
                "default": false
              },
              "speaker_options": {
                "x-label": "Specify options for speaker diarization.",
                "description": "Specify options for [Speaker diarization](https://www.assemblyai.com/docs/pre-recorded-audio/speaker-diarization#set-a-range-of-possible-speakers). Use this to set a range of possible speakers.",
                "type": "object",
                "additionalProperties": false,
                "properties": {
                  "min_speakers_expected": {
                    "x-label": "Minimum speakers expected",
                    "description": "The minimum number of speakers expected in the audio file. See [Set a range of possible speakers](https://www.assemblyai.com/docs/pre-recorded-audio/speaker-diarization#set-a-range-of-possible-speakers) for more details.",
                    "type": "integer",
                    "default": 1
                  },
                  "max_speakers_expected": {
                    "x-label": "Maximum speakers expected",
                    "description": "<Warning>Setting this parameter too high may hurt model accuracy</Warning>\nThe maximum number of speakers expected in the audio file. See [Set a range of possible speakers](https://www.assemblyai.com/docs/pre-recorded-audio/speaker-diarization#set-a-range-of-possible-speakers) for more details.\n",
                    "type": "integer",
                    "default": 10
                  }
                }
              },
              "speakers_expected": {
                "x-label": "Speakers expected",
                "description": "Tells the speaker label model how many speakers it should attempt to identify. See [Set number of speakers expected](https://www.assemblyai.com/docs/pre-recorded-audio/speaker-diarization#set-number-of-speakers-expected) for more details.",
                "type": "integer",
                "default": null,
                "nullable": true
              },
              "speech_models": {
                "x-label": "Speech models",
                "description": "List multiple speech models in priority order, allowing our system to automatically route your audio to the best available option. See [Model Selection](https://www.assemblyai.com/docs/pre-recorded-audio/select-the-speech-model) for available models and routing behavior.\n",
                "type": "array",
                "items": {
                  "x-label": "Speech model",
                  "type": "string",
                  "description": "The speech model to use for the transcription. See [Model Selection](https://www.assemblyai.com/docs/pre-recorded-audio/select-the-speech-model) for available models.",
                  "x-fern-sdk-group-name": "transcripts"
                }
              },
              "speech_threshold": {
                "x-label": "Speech threshold",
                "description": "Reject audio files that contain less than this fraction of speech.\nValid values are in the range [0, 1] inclusive. See [Speech Threshold](https://www.assemblyai.com/docs/speech-threshold) for more details.\n",
                "type": "number",
                "format": "float",
                "minimum": 0,
                "maximum": 1,
                "default": 0,
                "nullable": true
              },
              "speech_understanding": {
                "x-label": "Speech Understanding",
                "description": "Enable speech understanding tasks like [Translation](https://www.assemblyai.com/docs/speech-understanding/translation), [Speaker Identification](https://www.assemblyai.com/docs/speech-understanding/speaker-identification), and [Custom Formatting](https://www.assemblyai.com/docs/speech-understanding/custom-formatting). See the task-specific docs for available options and configuration.\n",
                "type": "object",
                "properties": {
                  "request": {
                    "oneOf": [
                      {
                        "x-label": "Translation request body",
                        "description": "Request body for [Translation](https://www.assemblyai.com/docs/speech-understanding/translation).",
                        "type": "object",
                        "properties": {
                          "translation": {
                            "type": "object",
                            "properties": {
                              "target_languages": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "List of target language codes (e.g., `[\"es\", \"de\"]`). See [Translation](https://www.assemblyai.com/docs/speech-understanding/translation) for supported languages."
                              },
                              "formal": {
                                "type": "boolean",
                                "description": "Use formal language style. See [Translation](https://www.assemblyai.com/docs/speech-understanding/translation) for more details.",
                                "default": true
                              },
                              "match_original_utterance": {
                                "type": "boolean",
                                "description": "When enabled with Speaker Labels, returns translated text in the utterances array. Each utterance will include a `translated_texts` key containing translations for each target language.",
                                "default": false
                              }
                            },
                            "required": [
                              "target_languages"
                            ]
                          }
                        },
                        "required": [
                          "translation"
                        ]
                      },
                      {
                        "type": "object",
                        "description": "Request body for [Speaker Identification](https://www.assemblyai.com/docs/speech-understanding/speaker-identification).",
                        "properties": {
                          "speaker_identification": {
                            "type": "object",
                            "properties": {
                              "speaker_type": {
                                "type": "string",
                                "enum": [
                                  "role",
                                  "name"
                                ],
                                "description": "Type of speaker identification. See [Speaker Identification](https://www.assemblyai.com/docs/speech-understanding/speaker-identification) for details on each type."
                              },
                              "known_values": {
                                "type": "array",
                                "items": {
                                  "type": "string"
                                },
                                "description": "Required if speaker_type is \"role\". Each value must be 35 characters or less."
                              },
                              "speakers": {
                                "type": "array",
                                "description": "An array of speaker objects with metadata to improve identification accuracy. Each object should include a `role` or `name` (depending on `speaker_type`) and an optional `description` to help the model identify the speaker. You can also include any additional custom properties (e.g., `company`, `title`) to provide more context. Use this as an alternative to `known_values` when you want to provide additional context about each speaker.",
                                "items": {
                                  "type": "object",
                                  "properties": {
                                    "role": {
                                      "type": "string",
                                      "description": "The role of the speaker. Required when `speaker_type` is \"role\"."
                                    },
                                    "name": {
                                      "type": "string",
                                      "description": "The name of the speaker. Required when `speaker_type` is \"name\"."
                                    },
                                    "description": {
                                      "type": "string",
                                      "description": "A description of the speaker to help the model identify them based on conversational context."
                                    }
                                  },
                                  "additionalProperties": true
                                }
                              }
                            },
                            "required": [
                              "speaker_type"
                            ]
                          }
                        },
                        "required": [
                          "speaker_identification"
                        ]
                      },
                      {
                        "type": "object",
                        "description": "Request body for [Custom Formatting](https://www.assemblyai.com/docs/speech-understanding/custom-formatting).",
                        "properties": {
                          "custom_formatting": {
                            "type": "object",
                            "properties": {
                              "date": {
                                "type": "string",
                                "description": "Date format pattern (e.g., `\"mm/dd/yyyy\"`). See [Custom Formatting](https://www.assemblyai.com/docs/speech-understanding/custom-formatting) for more details."
                              },
                              "phone_number": {
                                "type": "string",
                                "description": "Phone number format pattern (e.g., `\"(xxx)xxx-xxxx\"`). See [Custom Formatting](https://www.assemblyai.com/docs/speech-understanding/custom-formatting) for more details."
                              },
                              "email": {
                                "type": "string",
                                "description": "Email format pattern (e.g., `\"username@domain.com\"`). See [Custom Formatting](https://www.assemblyai.com/docs/speech-understanding/custom-formatting) for more details."
                              }
                            }
                          }
                        },
                        "required": [
                          "custom_formatting"
                        ]
                      }
                    ]
                  }
                },
                "required": [
                  "request"
                ]
              },
              "summarization": {
                "x-label": "Enable Summarization",
                "description": "Enable [Summarization](https://www.assemblyai.com/docs/speech-understanding/summarization), can be true or false",
                "type": "boolean",
                "default": false
              },
              "summary_model": {
                "type": "string",
                "x-label": "Summary model",
                "description": "The model to summarize the transcript",
                "x-fern-sdk-group-name": "transcripts",
                "enum": [
                  "informative",
                  "conversational",
                  "catchy"
                ],
                "x-aai-enum": {
                  "informative": {
                    "label": "Informative"
                  },
                  "conversational": {
                    "label": "Conversational"
                  },
                  "catchy": {
                    "label": "Catchy"
                  }
                }
              },
              "summary_type": {
                "type": "string",
                "x-label": "Summary type",
                "description": "The type of summary",
                "x-fern-sdk-group-name": "transcripts",
                "enum": [
                  "bullets",
                  "bullets_verbose",
                  "gist",
                  "headline",
                  "paragraph"
                ],
                "x-aai-enum": {
                  "bullets": {
                    "label": "Bullets"
                  },
                  "bullets_verbose": {
                    "label": "Bullets verbose"
                  },
                  "gist": {
                    "label": "Gist"
                  },
                  "headline": {
                    "label": "Headline"
                  },
                  "paragraph": {
                    "label": "Paragraph"
                  }
                }
              },
              "temperature": {
                "x-label": "Temperature",
                "description": "Control the amount of randomness injected into the model's response. See the [Prompting Guide](https://www.assemblyai.com/docs/pre-recorded-audio/prompting) for more details.\n\nNote: This parameter can only be used with the Universal-3-Pro model.\n",
                "type": "number",
                "minimum": 0,
                "maximum": 1,
                "default": 0
              },
              "custom_topics": {
                "x-label": "Enable custom topics",
                "description": "This parameter does not currently have any functionality attached to it.",
                "type": "boolean",
                "default": false,
                "deprecated": true
              },
              "speech_model": {
                "x-label": "Speech model",
                "description": "This parameter has been replaced with the `speech_models` parameter, learn more about the `speech_models` parameter [here](https://www.assemblyai.com/docs/pre-recorded-audio/select-the-speech-model).\n",
                "oneOf": [
                  {
                    "x-label": "Speech model",
                    "type": "string",
                    "description": "The speech model to use for the transcription. See [Model Selection](https://www.assemblyai.com/docs/pre-recorded-audio/select-the-speech-model) for available models.",
                    "x-fern-sdk-group-name": "transcripts"
                  },
                  {
                    "type": "string",
                    "nullable": true
                  }
                ],
                "deprecated": true
              },
              "topics": {
                "x-label": "Custom topics",
                "description": "This parameter does not currently have any functionality attached to it.",
                "type": "array",
                "items": {
                  "x-label": "Topic",
                  "type": "string"
                },
                "deprecated": true
              }
            },
            "type": "object",
            "additionalProperties": false,
            "x-label": "Optional transcript parameters",
            "description": "Docs: https://www.assemblyai.com/docs/api-reference/transcripts/submit",
            "x-fern-sdk-group-name": "transcripts",
            "example": {
              "speech_model": null,
              "language_code": "en_us",
              "language_detection": true,
              "language_confidence_threshold": 0.7,
              "punctuate": true,
              "format_text": true,
              "multichannel": true,
              "webhook_url": "https://your-webhook-url.tld/path",
              "webhook_auth_header_name": "webhook-secret",
              "webhook_auth_header_value": "webhook-secret-value",
              "auto_highlights": true,
              "audio_start_from": 10,
              "audio_end_at": 280,
              "filter_profanity": true,
              "redact_pii": true,
              "redact_pii_audio": true,
              "redact_pii_audio_quality": "mp3",
              "redact_pii_policies": [
                "us_social_security_number",
                "credit_card_number"
              ],
              "redact_pii_sub": "hash",
              "speaker_labels": true,
              "speakers_expected": 2,
              "content_safety": true,
              "iab_categories": true,
              "custom_spelling": [],
              "disfluencies": false,
              "sentiment_analysis": true,
              "auto_chapters": true,
              "entity_detection": true,
              "speech_threshold": 0.5,
              "summarization": true,
              "summary_model": "informative",
              "summary_type": "bullets",
              "custom_topics": true,
              "topics": [],
              "speech_understanding": {
                "request": {
                  "translation": {
                    "target_languages": [
                      "es",
                      "de"
                    ],
                    "formal": true,
                    "match_original_utterance": true
                  }
                }
              }
            },
            "title": "AssemblyAi async chunked transcription Settings"
          },
          "assembly_ai_v3_streaming": {
            "type": "object",
            "properties": {
              "speech_model": {
                "description": "The speech model used for your Streaming session.",
                "enum": [
                  "universal-streaming-english",
                  "universal-streaming-multilingual",
                  "whisper-rt",
                  "u3-rt-pro",
                  "universal-3-5-pro"
                ]
              },
              "format_turns": {
                "description": "Whether to return formatted final transcripts.",
                "default": false,
                "type": "boolean"
              },
              "inactivity_timeout": {
                "description": "Optional time in seconds of inactivity before session is terminated. If not set, no inactivity timeout is applied.",
                "default": "None",
                "format": "s",
                "type": "integer",
                "minimum": 5,
                "maximum": 3600
              },
              "keyterms_prompt": {
                "description": "A list of words and phrases to improve recognition accuracy for. See [Keyterms Prompting](https://www.assemblyai.com/docs/streaming/keyterms-prompting) for more details.",
                "type": "array",
                "items": {
                  "x-label": "Word",
                  "type": "string"
                }
              },
              "language_detection": {
                "description": "Whether to detect the language and return language metadata on utterances and final turns. Only available for the multilingual model.",
                "enum": [
                  "true",
                  "false",
                  true,
                  false
                ],
                "default": "false"
              },
              "max_turn_silence": {
                "description": "The maximum amount of silence in milliseconds allowed in a turn before end of turn is triggered. See [Turn Detection](https://www.assemblyai.com/docs/streaming/universal-streaming/turn-detection) for configuration details.",
                "type": "integer",
                "default": 1280
              },
              "min_turn_silence": {
                "description": "The minimum amount of silence in milliseconds required to detect end of turn when confident. See [Turn Detection](https://www.assemblyai.com/docs/streaming/universal-streaming/turn-detection) for configuration details.",
                "type": "integer",
                "default": 400
              },
              "vad_threshold": {
                "description": "The confidence threshold (0.0 to 1.0) for classifying audio frames as silence. Frames with VAD confidence below this value are considered silent. Increase for noisy environments to reduce false speech detection.",
                "default": 0.4,
                "type": "number"
              },
              "end_of_turn_confidence_threshold": {
                "description": "The confidence threshold (0.0 to 1.0) to use when determining if the end of a turn has been reached. See [Turn Detection](https://www.assemblyai.com/docs/streaming/universal-streaming/turn-detection) for configuration details.",
                "deprecated": true,
                "type": "number",
                "default": 0.4
              },
              "language": {
                "description": "The language of your audio stream.",
                "enum": [
                  "en",
                  "multi"
                ],
                "default": "en",
                "deprecated": true
              }
            },
            "title": "AssemblyAi Real-time Transcription Settings",
            "description": "Docs: https://www.assemblyai.com/docs/api-reference/streaming-api/streaming-api"
          },
          "recallai_streaming": {
            "allOf": [
              {
                "$ref": "#/components/schemas/RecallaiStreamingTranscription"
              }
            ],
            "title": "Recall.ai Real-time Transcription Settings",
            "description": "Docs: https://docs.recall.ai/docs/recallai-transcription"
          },
          "deepgram_streaming": {
            "type": "object",
            "properties": {
              "diarize": {
                "description": "Defaults to `false`. Recognize speaker changes. Each word in the transcript will be assigned a speaker number starting at 0",
                "default": "false",
                "enum": [
                  "true",
                  "false",
                  true,
                  false
                ]
              },
              "dictation": {
                "description": "Identify and extract key entities from content in submitted audio",
                "default": "false",
                "enum": [
                  "true",
                  "false",
                  true,
                  false
                ]
              },
              "endpointing": {
                "description": "Indicates how long Deepgram will wait to detect whether a speaker has finished speaking or pauses for a significant period of time. When set to a value, the streaming endpoint immediately finalizes the transcription for the processed time range and returns the transcript with a speech_final parameter set to true. Can also be set to false to disable endpointing",
                "default": "10"
              },
              "extra": {
                "description": "Arbitrary key-value pairs that are attached to the API response for usage in downstream processing"
              },
              "filler_words": {
                "description": "Filler Words can help transcribe interruptions in your audio, like \"uh\" and \"um\"",
                "default": "false",
                "enum": [
                  "true",
                  "false",
                  true,
                  false
                ]
              },
              "interim_results": {
                "description": "Specifies whether the streaming endpoint should provide ongoing transcription updates as more audio is received. When set to true, the endpoint sends continuous updates, meaning transcription results may evolve over time",
                "default": "false",
                "enum": [
                  "true",
                  "false",
                  true,
                  false
                ]
              },
              "keyterm": {
                "description": "Key term prompting can boost or suppress specialized terminology and brands. Only compatible with Nova-3"
              },
              "keywords": {
                "description": "Keywords can boost or suppress specialized terminology and brands"
              },
              "language": {
                "description": "The [BCP-47 language tag](https://tools.ietf.org/html/bcp47) that hints at the primary spoken language. Depending on the Model you choose only certain languages are available",
                "default": "en",
                "enum": [
                  "bg",
                  "ca",
                  "cs",
                  "da",
                  "da-DK",
                  "de",
                  "de-CH",
                  "el",
                  "en",
                  "en-AU",
                  "en-GB",
                  "en-IN",
                  "en-NZ",
                  "en-US",
                  "es",
                  "es-419",
                  "es-LATAM",
                  "et",
                  "fi",
                  "fr",
                  "fr-CA",
                  "hi",
                  "hi-Latn",
                  "hu",
                  "id",
                  "it",
                  "ja",
                  "ko",
                  "ko-KR",
                  "lt",
                  "lv",
                  "ms",
                  "multi",
                  "nl",
                  "nl-BE",
                  "no",
                  "pl",
                  "pt",
                  "pt-BR",
                  "pt-PT",
                  "ro",
                  "ru",
                  "sk",
                  "sv",
                  "sv-SE",
                  "taq",
                  "th",
                  "th-TH",
                  "tr",
                  "uk",
                  "vi",
                  "zh",
                  "zh-CN",
                  "zh-HK",
                  "zh-Hans",
                  "zh-Hant",
                  "zh-TW"
                ]
              },
              "mip_opt_out": {
                "description": "Opts out requests from the Deepgram Model Improvement Program. Refer to our Docs for pricing impacts before setting this to true. https://dpgr.am/deepgram-mip",
                "default": "false"
              },
              "model": {
                "description": "AI model to use for the transcription",
                "enum": [
                  "nova-3",
                  "nova-3-general",
                  "nova-3-medical",
                  "nova-2",
                  "nova-2-general",
                  "nova-2-meeting",
                  "nova-2-finance",
                  "nova-2-conversationalai",
                  "nova-2-voicemail",
                  "nova-2-video",
                  "nova-2-medical",
                  "nova-2-drivethru",
                  "nova-2-automotive",
                  "nova",
                  "nova-general",
                  "nova-phonecall",
                  "nova-medical",
                  "enhanced",
                  "enhanced-general",
                  "enhanced-meeting",
                  "enhanced-phonecall",
                  "enhanced-finance",
                  "base",
                  "meeting",
                  "phonecall",
                  "finance",
                  "conversationalai",
                  "voicemail",
                  "video",
                  "custom"
                ]
              },
              "multichannel": {
                "description": "Transcribe each audio channel independently",
                "default": "false",
                "enum": [
                  "true",
                  "false",
                  true,
                  false
                ]
              },
              "numerals": {
                "description": "Convert numbers from written format to numerical format",
                "default": "false",
                "enum": [
                  "true",
                  "false",
                  true,
                  false
                ]
              },
              "profanity_filter": {
                "description": "Profanity Filter looks for recognized profanity and converts it to the nearest recognized non-profane word or removes it from the transcript completely",
                "default": "false",
                "enum": [
                  "true",
                  "false",
                  true,
                  false
                ]
              },
              "punctuate": {
                "description": "Add punctuation and capitalization to the transcript",
                "default": "false",
                "enum": [
                  "true",
                  "false",
                  true,
                  false
                ]
              },
              "redact": {
                "description": "Redaction removes sensitive information from your transcripts",
                "default": "false",
                "oneOf": [
                  {
                    "type": "string"
                  },
                  {
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  }
                ]
              },
              "replace": {
                "description": "Search for terms or phrases in submitted audio and replaces them"
              },
              "search": {
                "description": "Search for terms or phrases in submitted audio"
              },
              "smart_format": {
                "description": "Apply formatting to transcript output. When set to true, additional formatting will be applied to transcripts to improve readability",
                "default": "false",
                "enum": [
                  "true",
                  "false",
                  true,
                  false
                ]
              },
              "tag": {
                "description": "Label your requests for the purpose of identification during usage reporting"
              },
              "utterance_end_ms": {
                "description": "Indicates how long Deepgram will wait to send an UtteranceEnd message after a word has been transcribed. Use with interim_results"
              },
              "vad_events": {
                "description": "Indicates that speech has started. You'll begin receiving Speech Started messages upon speech starting",
                "default": "false",
                "enum": [
                  "true",
                  "false",
                  true,
                  false
                ]
              },
              "version": {
                "description": "Version of an AI model to use",
                "default": "latest"
              }
            },
            "title": "Deepgram Real-time Transcription Settings",
            "description": "Docs: https://developers.deepgram.com/reference/streaming"
          },
          "gladia_v2_streaming": {
            "type": "object",
            "properties": {
              "custom_metadata": {
                "type": "object",
                "description": "Custom metadata you can attach to this live transcription",
                "example": {
                  "user": "John Doe"
                }
              },
              "model": {
                "type": "string",
                "description": "The model used to process the audio. \"solaria-1\" is used by default.",
                "default": "solaria-1",
                "enum": [
                  "solaria-1"
                ]
              },
              "endpointing": {
                "type": "number",
                "description": "The endpointing duration in seconds. Endpointing is the duration of silence which will cause an utterance to be considered as finished",
                "default": 0.05,
                "minimum": 0.01,
                "maximum": 10
              },
              "maximum_duration_without_endpointing": {
                "type": "number",
                "description": "The maximum duration in seconds without endpointing. If endpointing is not detected after this duration, current utterance will be considered as finished",
                "default": 5,
                "minimum": 5,
                "maximum": 60
              },
              "language_config": {
                "properties": {
                  "languages": {
                    "type": "array",
                    "description": "If one language is set, it will be used for the transcription. Otherwise, language will be auto-detected by the model.",
                    "default": [],
                    "items": {
                      "type": "string",
                      "enum": [
                        "af",
                        "sq",
                        "am",
                        "ar",
                        "hy",
                        "as",
                        "az",
                        "ba",
                        "eu",
                        "be",
                        "bn",
                        "bs",
                        "br",
                        "bg",
                        "ca",
                        "zh",
                        "hr",
                        "cs",
                        "da",
                        "nl",
                        "en",
                        "et",
                        "fo",
                        "fi",
                        "fr",
                        "gl",
                        "ka",
                        "de",
                        "el",
                        "gu",
                        "ht",
                        "ha",
                        "haw",
                        "he",
                        "hi",
                        "hu",
                        "is",
                        "id",
                        "it",
                        "ja",
                        "jv",
                        "kn",
                        "kk",
                        "km",
                        "ko",
                        "lo",
                        "la",
                        "lv",
                        "ln",
                        "lt",
                        "lb",
                        "mk",
                        "mg",
                        "ms",
                        "ml",
                        "mt",
                        "mi",
                        "mr",
                        "mn",
                        "mymr",
                        "ne",
                        "no",
                        "nn",
                        "oc",
                        "ps",
                        "fa",
                        "pl",
                        "pt",
                        "pa",
                        "ro",
                        "ru",
                        "sa",
                        "sr",
                        "sn",
                        "sd",
                        "si",
                        "sk",
                        "sl",
                        "so",
                        "es",
                        "su",
                        "sw",
                        "sv",
                        "tl",
                        "tg",
                        "ta",
                        "tt",
                        "te",
                        "th",
                        "bo",
                        "tr",
                        "tk",
                        "uk",
                        "ur",
                        "uz",
                        "vi",
                        "cy",
                        "yi",
                        "yo",
                        "jp"
                      ]
                    }
                  },
                  "code_switching": {
                    "type": "boolean",
                    "description": "If true, language will be auto-detected on each utterance. Otherwise, language will be auto-detected on first utterance and then used for the rest of the transcription. If one language is set, this option will be ignored.",
                    "default": false
                  }
                },
                "type": "object",
                "description": "Specify the language configuration"
              },
              "pre_processing": {
                "properties": {
                  "audio_enhancer": {
                    "type": "boolean",
                    "description": "If true, apply pre-processing to the audio stream to enhance the quality.",
                    "default": false
                  },
                  "speech_threshold": {
                    "type": "number",
                    "description": "Sensitivity configuration for Speech Threshold. A value close to 1 will apply stricter thresholds, making it less likely to detect background sounds as speech.",
                    "default": 0.6,
                    "minimum": 0,
                    "maximum": 1
                  }
                },
                "type": "object",
                "description": "Specify the pre-processing configuration"
              },
              "realtime_processing": {
                "properties": {
                  "custom_vocabulary": {
                    "type": "boolean",
                    "description": "If true, enable custom vocabulary for the transcription.",
                    "default": false
                  },
                  "custom_vocabulary_config": {
                    "properties": {
                      "vocabulary": {
                        "description": "Specific vocabulary list to feed the transcription model with. Each item can be a string or an object with the following properties: value, intensity, pronunciations, language.",
                        "example": [
                          "Westeros",
                          {
                            "value": "Stark"
                          },
                          {
                            "value": "Night's Watch",
                            "pronunciations": [
                              "Nightz Watch"
                            ],
                            "intensity": 0.4,
                            "language": "en"
                          }
                        ],
                        "type": "array",
                        "items": {
                          "oneOf": [
                            {
                              "type": "object",
                              "properties": {
                                "value": {
                                  "type": "string",
                                  "description": "The text used to replace in the transcription.",
                                  "example": "Gladia"
                                },
                                "intensity": {
                                  "type": "number",
                                  "description": "The global intensity of the feature.",
                                  "example": 0.5,
                                  "minimum": 0,
                                  "maximum": 1
                                },
                                "pronunciations": {
                                  "description": "The pronunciations used in the transcription.",
                                  "type": "array",
                                  "items": {
                                    "type": "string"
                                  }
                                },
                                "language": {
                                  "type": "string",
                                  "description": "Specify the language in which it will be pronounced when sound comparison occurs. Default to transcription language.",
                                  "example": "en"
                                }
                              },
                              "required": [
                                "value"
                              ]
                            },
                            {
                              "type": "string"
                            }
                          ]
                        }
                      },
                      "default_intensity": {
                        "type": "number",
                        "description": "Default intensity for the custom vocabulary",
                        "example": 0.5,
                        "minimum": 0,
                        "maximum": 1
                      }
                    },
                    "required": [
                      "vocabulary"
                    ],
                    "type": "object",
                    "description": "Custom vocabulary configuration, if `custom_vocabulary` is enabled"
                  },
                  "custom_spelling": {
                    "type": "boolean",
                    "description": "If true, enable custom spelling for the transcription.",
                    "default": false
                  },
                  "custom_spelling_config": {
                    "properties": {
                      "spelling_dictionary": {
                        "type": "object",
                        "description": "The list of spelling applied on the audio transcription",
                        "example": {
                          "Gettleman": [
                            "gettleman"
                          ],
                          "SQL": [
                            "Sequel"
                          ]
                        }
                      }
                    },
                    "required": [
                      "spelling_dictionary"
                    ],
                    "type": "object",
                    "description": "Custom spelling configuration, if `custom_spelling` is enabled"
                  },
                  "translation": {
                    "type": "boolean",
                    "description": "If true, enable translation for the transcription",
                    "default": false
                  },
                  "translation_config": {
                    "properties": {
                      "target_languages": {
                        "type": "array",
                        "example": [
                          "en"
                        ],
                        "minItems": 1,
                        "items": {
                          "type": "string",
                          "description": "The target language in `iso639-1` format",
                          "enum": [
                            "af",
                            "sq",
                            "am",
                            "ar",
                            "hy",
                            "as",
                            "ast",
                            "az",
                            "ba",
                            "eu",
                            "be",
                            "bn",
                            "bs",
                            "br",
                            "bg",
                            "my",
                            "ca",
                            "ceb",
                            "zh",
                            "hr",
                            "cs",
                            "da",
                            "nl",
                            "en",
                            "et",
                            "fo",
                            "fi",
                            "nl",
                            "fr",
                            "fy",
                            "ff",
                            "gd",
                            "gl",
                            "lg",
                            "ka",
                            "de",
                            "el",
                            "gu",
                            "ht",
                            "ha",
                            "haw",
                            "he",
                            "hi",
                            "hu",
                            "is",
                            "ig",
                            "ilo",
                            "id",
                            "ga",
                            "it",
                            "ja",
                            "jp",
                            "jv",
                            "kn",
                            "kk",
                            "km",
                            "ko",
                            "lo",
                            "la",
                            "lv",
                            "ln",
                            "lt",
                            "lb",
                            "mk",
                            "mg",
                            "ms",
                            "ml",
                            "mt",
                            "mi",
                            "mr",
                            "mo",
                            "mn",
                            "mymr",
                            "ne",
                            "no",
                            "nn",
                            "oc",
                            "or",
                            "pa",
                            "ps",
                            "fa",
                            "pl",
                            "pt",
                            "pa",
                            "ro",
                            "ru",
                            "sa",
                            "sr",
                            "sn",
                            "sd",
                            "si",
                            "sk",
                            "sl",
                            "so",
                            "es",
                            "su",
                            "sw",
                            "ss",
                            "sv",
                            "tl",
                            "tg",
                            "ta",
                            "tt",
                            "te",
                            "th",
                            "bo",
                            "tn",
                            "tr",
                            "tk",
                            "uk",
                            "ur",
                            "uz",
                            "vi",
                            "cy",
                            "wo",
                            "xh",
                            "yi",
                            "yo",
                            "zu"
                          ]
                        }
                      },
                      "model": {
                        "type": "string",
                        "description": "Model you want the translation model to use to translate",
                        "default": "base",
                        "enum": [
                          "base",
                          "enhanced"
                        ]
                      },
                      "match_original_utterances": {
                        "type": "boolean",
                        "description": "Align translated utterances with the original ones",
                        "default": true
                      },
                      "lipsync": {
                        "type": "boolean",
                        "description": "Whether to apply lipsync to the translated transcription. ",
                        "default": true
                      },
                      "context_adaptation": {
                        "type": "boolean",
                        "description": "Enables or disables context-aware translation features that allow the model to adapt translations based on provided context.",
                        "default": true
                      },
                      "context": {
                        "type": "string",
                        "description": "Context information to improve translation accuracy"
                      },
                      "informal": {
                        "type": "boolean",
                        "description": "Forces the translation to use informal language forms when available in the target language.",
                        "default": false
                      }
                    },
                    "required": [
                      "target_languages"
                    ],
                    "type": "object",
                    "description": "Translation configuration, if `translation` is enabled"
                  },
                  "named_entity_recognition": {
                    "type": "boolean",
                    "description": "If true, enable named entity recognition for the transcription.",
                    "default": false
                  },
                  "sentiment_analysis": {
                    "type": "boolean",
                    "description": "If true, enable sentiment analysis for the transcription.",
                    "default": false
                  }
                },
                "type": "object",
                "description": "Specify the realtime processing configuration"
              },
              "post_processing": {
                "properties": {
                  "summarization": {
                    "type": "boolean",
                    "description": "If true, generates summarization for the whole transcription.",
                    "default": false
                  },
                  "summarization_config": {
                    "properties": {
                      "type": {
                        "type": "string",
                        "description": "The type of summarization to apply",
                        "default": "general",
                        "enum": [
                          "general",
                          "bullet_points",
                          "concise"
                        ]
                      }
                    },
                    "type": "object",
                    "description": "Summarization configuration, if `summarization` is enabled"
                  },
                  "chapterization": {
                    "type": "boolean",
                    "description": "If true, generates chapters for the whole transcription.",
                    "default": false
                  }
                },
                "type": "object",
                "description": "Specify the post-processing configuration"
              },
              "messages_config": {
                "properties": {
                  "receive_final_transcripts": {
                    "type": "boolean",
                    "description": "If true, final utterance will be sent to websocket.",
                    "default": true
                  },
                  "receive_speech_events": {
                    "type": "boolean",
                    "description": "If true, begin and end speech events will be sent to websocket.",
                    "default": true
                  },
                  "receive_pre_processing_events": {
                    "type": "boolean",
                    "description": "If true, pre-processing events will be sent to websocket.",
                    "default": true
                  },
                  "receive_realtime_processing_events": {
                    "type": "boolean",
                    "description": "If true, realtime processing events will be sent to websocket.",
                    "default": true
                  },
                  "receive_post_processing_events": {
                    "type": "boolean",
                    "description": "If true, post-processing events will be sent to websocket.",
                    "default": true
                  },
                  "receive_acknowledgments": {
                    "type": "boolean",
                    "description": "If true, acknowledgments will be sent to websocket.",
                    "default": true
                  },
                  "receive_errors": {
                    "type": "boolean",
                    "description": "If true, errors will be sent to websocket.",
                    "default": true
                  },
                  "receive_lifecycle_events": {
                    "type": "boolean",
                    "description": "If true, lifecycle events will be sent to websocket.",
                    "default": false
                  }
                },
                "type": "object",
                "description": "Specify the websocket messages configuration"
              },
              "callback": {
                "type": "boolean",
                "description": "If true, messages will be sent to configured url.",
                "default": false
              },
              "callback_config": {
                "properties": {
                  "url": {
                    "type": "string",
                    "description": "URL on which we will do a `POST` request with configured messages",
                    "example": "https://callback.example",
                    "format": "uri"
                  },
                  "receive_final_transcripts": {
                    "type": "boolean",
                    "description": "If true, final utterance will be sent to the defined callback.",
                    "default": true
                  },
                  "receive_speech_events": {
                    "type": "boolean",
                    "description": "If true, begin and end speech events will be sent to the defined callback.",
                    "default": false
                  },
                  "receive_pre_processing_events": {
                    "type": "boolean",
                    "description": "If true, pre-processing events will be sent to the defined callback.",
                    "default": true
                  },
                  "receive_realtime_processing_events": {
                    "type": "boolean",
                    "description": "If true, realtime processing events will be sent to the defined callback.",
                    "default": true
                  },
                  "receive_post_processing_events": {
                    "type": "boolean",
                    "description": "If true, post-processing events will be sent to the defined callback.",
                    "default": true
                  },
                  "receive_acknowledgments": {
                    "type": "boolean",
                    "description": "If true, acknowledgments will be sent to the defined callback.",
                    "default": false
                  },
                  "receive_errors": {
                    "type": "boolean",
                    "description": "If true, errors will be sent to the defined callback.",
                    "default": false
                  },
                  "receive_lifecycle_events": {
                    "type": "boolean",
                    "description": "If true, lifecycle events will be sent to the defined callback.",
                    "default": true
                  }
                },
                "type": "object",
                "description": "Specify the callback configuration"
              }
            },
            "title": "GladiaV2 Real-time Transcription Settings",
            "description": "Docs: https://docs.gladia.io/api-reference/v2/live/init"
          },
          "rev_streaming": {
            "type": "object",
            "properties": {
              "obscure_expletives": {
                "type": "boolean"
              },
              "delete_after": {
                "type": "string",
                "format": "date-span"
              },
              "audio_options._content_type": {
                "type": "string"
              },
              "audio_options._layout": {
                "type": "string"
              },
              "audio_options._rate": {
                "type": "integer",
                "format": "int32"
              },
              "audio_options._format": {
                "type": "string"
              },
              "audio_options._channels": {
                "type": "integer",
                "format": "int32"
              },
              "transcriber": {
                "enum": [
                  0,
                  1
                ],
                "type": "integer",
                "format": "int32"
              },
              "language": {
                "type": "string"
              },
              "metadata": {
                "maxLength": 512,
                "minLength": 0,
                "type": "string"
              },
              "filter_profanity": {
                "type": "boolean"
              },
              "remove_disfluencies": {
                "type": "boolean"
              },
              "detailed_partials": {
                "type": "boolean"
              },
              "custom_vocabulary_id": {
                "type": "string"
              },
              "delete_after_seconds": {
                "type": "integer",
                "format": "int32"
              },
              "max_segment_duration_seconds": {
                "maximum": 30,
                "minimum": 5,
                "type": "integer",
                "format": "int32"
              },
              "max_connection_wait_seconds": {
                "maximum": 600,
                "minimum": 60,
                "type": "integer",
                "format": "int32"
              },
              "allow_interruption": {
                "type": "boolean"
              },
              "enable_speaker_switch": {
                "type": "boolean"
              },
              "start_ts": {
                "type": "string",
                "format": "date-span"
              },
              "skip_postprocessing": {
                "type": "boolean"
              },
              "priority": {
                "enum": [
                  0,
                  1
                ],
                "type": "integer",
                "format": "int32"
              },
              "user_agent": {
                "type": "string"
              }
            },
            "title": "Rev Real-time Transcription Settings",
            "description": "Docs: https://docs.rev.ai/api/streaming/requests/"
          },
          "aws_transcribe_streaming": {
            "type": "object",
            "description": "You must specify either:\n- `language_code`(e.g `en-US`) OR\n- Set `language_identification` to `true` AND specify `language_options`(e.g `en-US,fr-FR,es-US,de-DE,it-IT`).\n\nDocs: https://docs.aws.amazon.com/transcribe/latest/APIReference/API_streaming_StartStreamTranscription.html",
            "properties": {
              "language_code": {
                "type": "string",
                "description": "Specify the language code that represents the language spoken. If you're unsure of the language spoken in your audio, consider using IdentifyLanguage to enable automatic language identification."
              },
              "vocabulary_filter_method": {
                "type": "string",
                "description": "Specify how you want your vocabulary filter applied to your transcript. To replace words with ***, choose mask. To delete words, choose remove. To flag words without changing them, choose tag."
              },
              "vocabulary_filter_name": {
                "type": "string",
                "description": "Specify the name of the custom vocabulary filter that you want to use when processing your transcription. Note that vocabulary filter names are case sensitive.  If you use Amazon Transcribe in multiple Regions, the vocabulary filter must be available in Amazon Transcribe in each Region. If you include IdentifyLanguage and want to use one or more vocabulary filters with your transcription, use the VocabularyFilterNames parameter instead."
              },
              "vocabulary_name": {
                "type": "string",
                "description": "Specify the name of the custom vocabulary that you want to use when processing your transcription. Note that vocabulary names are case sensitive. If you use Amazon Transcribe multiple Regions, the vocabulary must be available in Amazon Transcribe in each Region. If you include IdentifyLanguage and want to use one or more custom vocabularies with your transcription, use the VocabularyNames parameter instead."
              },
              "region": {
                "type": "string",
                "description": "The Amazon Web Services Region in which to use Amazon Transcribe. If you don't specify a Region, then the MediaRegion of the meeting is used. However, if Amazon Transcribe is not available in the MediaRegion, then a TranscriptFailed event is sent. Use auto to use Amazon Transcribe in a Region near the meeting’s MediaRegion. For more information, refer to Choosing a transcription Region in the Amazon Chime SDK Developer Guide."
              },
              "enable_partial_results_stabilization": {
                "type": "boolean",
                "description": "Enables partial result stabilization for your transcription. Partial result stabilization can reduce latency in your output, but may impact accuracy."
              },
              "partial_results_stability": {
                "type": "string",
                "description": "Specify the level of stability to use when you enable partial results stabilization (EnablePartialResultsStabilization). Low stability provides the highest accuracy. High stability transcribes faster, but with slightly lower accuracy."
              },
              "content_identification_type": {
                "type": "string",
                "description": "Labels all personally identifiable information (PII) identified in your transcript. If you don't include PiiEntityTypes, all PII is identified.  You can’t set ContentIdentificationType and ContentRedactionType. "
              },
              "content_redaction_type": {
                "type": "string",
                "description": "Content redaction is performed at the segment level. If you don't include PiiEntityTypes, all PII is redacted.  You can’t set ContentRedactionType and ContentIdentificationType. "
              },
              "pii_entity_types": {
                "type": "string",
                "description": "Specify which types of personally identifiable information (PII) you want to redact in your transcript. You can include as many types as you'd like, or you can select ALL. Values must be comma-separated and can include: ADDRESS, BANK_ACCOUNT_NUMBER, BANK_ROUTING, CREDIT_DEBIT_CVV, CREDIT_DEBIT_EXPIRY CREDIT_DEBIT_NUMBER, EMAIL,NAME, PHONE, PIN, SSN, or ALL. Note that if you include PiiEntityTypes, you must also include ContentIdentificationType or ContentRedactionType. If you include ContentRedactionType or ContentIdentificationType, but do not include PiiEntityTypes, all PII is redacted or identified."
              },
              "language_model_name": {
                "type": "string",
                "description": "Specify the name of the custom language model that you want to use when processing your transcription. Note that language model names are case sensitive. The language of the specified language model must match the language code. If the languages don't match, the custom language model isn't applied. There are no errors or warnings associated with a language mismatch. If you use Amazon Transcribe in multiple Regions, the custom language model must be available in Amazon Transcribe in each Region."
              },
              "identify_language": {
                "type": "boolean",
                "description": "Enables automatic language identification for your transcription. If you include IdentifyLanguage, you can optionally use LanguageOptions to include a list of language codes that you think may be present in your audio stream. Including language options can improve transcription accuracy. You can also use PreferredLanguage to include a preferred language. Doing so can help Amazon Transcribe identify the language faster. You must include either LanguageCode or IdentifyLanguage. Language identification can't be combined with custom language models or redaction."
              },
              "language_options": {
                "type": "string",
                "description": "Specify two or more language codes that represent the languages you think may be present in your media; including more than five is not recommended. If you're unsure what languages are present, do not include this parameter. Including language options can improve the accuracy of language identification. If you include LanguageOptions, you must also include IdentifyLanguage.  You can only include one language dialect per language. For example, you cannot include en-US and en-AU. "
              },
              "preferred_language": {
                "type": "string",
                "description": "Specify a preferred language from the subset of languages codes you specified in LanguageOptions. You can only use this parameter if you include IdentifyLanguage and LanguageOptions."
              },
              "vocabulary_names": {
                "type": "string",
                "description": "Specify the names of the custom vocabularies that you want to use when processing your transcription. Note that vocabulary names are case sensitive. If you use Amazon Transcribe in multiple Regions, the vocabulary must be available in Amazon Transcribe in each Region. If you don't include IdentifyLanguage and want to use a custom vocabulary with your transcription, use the VocabularyName parameter instead."
              },
              "vocabulary_filter_names": {
                "type": "string",
                "description": "Specify the names of the custom vocabulary filters that you want to use when processing your transcription. Note that vocabulary filter names are case sensitive. If you use Amazon Transcribe in multiple Regions, the vocabulary filter must be available in Amazon Transcribe in each Region.  If you're not including IdentifyLanguage and want to use a custom vocabulary filter with your transcription, use the VocabularyFilterName parameter instead."
              }
            },
            "oneOf": [
              {
                "required": [
                  "language_code"
                ]
              },
              {
                "required": [
                  "identify_language",
                  "language_options"
                ],
                "properties": {
                  "identify_language": {
                    "type": "boolean",
                    "enum": [
                      true
                    ]
                  }
                }
              }
            ],
            "title": "AWS Transcribe Streaming Transcription Settings"
          },
          "speechmatics_streaming": {
            "type": "object",
            "properties": {
              "language": {
                "type": "string"
              },
              "domain": {
                "type": "string",
                "description": "Request a specialized model based on 'language' but optimized for a particular field, e.g. \"finance\" or \"medical\"."
              },
              "output_locale": {
                "type": "string",
                "minLength": 1
              },
              "additional_vocab": {
                "type": "array",
                "items": {
                  "type": "object",
                  "oneOf": [
                    {
                      "type": "string",
                      "minLength": 1
                    },
                    {
                      "type": "object",
                      "properties": {
                        "content": {
                          "type": "string",
                          "minLength": 1
                        },
                        "sounds_like": {
                          "type": "array",
                          "items": {
                            "type": "string",
                            "minLength": 1
                          },
                          "minItems": 1
                        }
                      },
                      "required": [
                        "content"
                      ]
                    }
                  ]
                }
              },
              "diarization": {
                "type": "string",
                "enum": [
                  "none",
                  "speaker"
                ]
              },
              "max_delay": {
                "type": "number",
                "minimum": 0
              },
              "max_delay_mode": {
                "type": "string",
                "enum": [
                  "flexible",
                  "fixed"
                ]
              },
              "speaker_diarization_config": {
                "type": "object",
                "properties": {
                  "max_speakers": {
                    "type": "number",
                    "format": "integer",
                    "minimum": 2,
                    "maximum": 100
                  },
                  "prefer_current_speaker": {
                    "type": "boolean"
                  },
                  "speaker_sensitivity": {
                    "type": "number",
                    "format": "float",
                    "minimum": 0,
                    "maximum": 1
                  },
                  "get_speakers": {
                    "type": "boolean"
                  },
                  "speakers": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "label": {
                          "type": "string",
                          "minLength": 1
                        },
                        "speaker_identifiers": {
                          "type": "array",
                          "items": {
                            "type": "string",
                            "format": "byte"
                          },
                          "minItems": 1
                        }
                      },
                      "required": [
                        "label",
                        "speaker_identifiers"
                      ]
                    },
                    "maxItems": 50
                  }
                }
              },
              "audio_filtering_config": {
                "type": "object",
                "properties": {
                  "volume_threshold": {
                    "type": "number",
                    "format": "float",
                    "minimum": 0,
                    "maximum": 100
                  }
                }
              },
              "transcript_filtering_config": {
                "type": "object",
                "properties": {
                  "remove_disfluencies": {
                    "type": "boolean"
                  },
                  "replacements": {
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "from": {
                          "type": "string"
                        },
                        "to": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "from",
                        "to"
                      ]
                    }
                  }
                }
              },
              "enable_partials": {
                "type": "boolean",
                "default": false
              },
              "enable_entities": {
                "type": "boolean",
                "default": true
              },
              "operating_point": {
                "type": "string",
                "enum": [
                  "standard",
                  "enhanced"
                ]
              },
              "punctuation_overrides": {
                "type": "object",
                "properties": {
                  "permitted_marks": {
                    "type": "array",
                    "description": "The punctuation marks which the client is prepared to accept in transcription output, or the special value 'all' (the default). Unsupported marks are ignored. This value is used to guide the transcription process.",
                    "items": {
                      "pattern": "^(.|all)$",
                      "type": "string"
                    }
                  },
                  "sensitivity": {
                    "type": "number",
                    "description": "Ranges between zero and one. Higher values will produce more punctuation. The default is 0.5.",
                    "format": "float",
                    "maximum": 1,
                    "minimum": 0
                  }
                }
              },
              "conversation_config": {
                "type": "object",
                "properties": {
                  "end_of_utterance_silence_trigger": {
                    "type": "number",
                    "format": "float",
                    "minimum": 0,
                    "maximum": 2,
                    "default": 0
                  }
                },
                "description": "This mode will detect when a speaker has stopped talking. The end_of_utterance_silence_trigger is the time in seconds after which the server will assume that the speaker has finished speaking, and will emit an EndOfUtterance message. A value of 0 disables the feature."
              }
            },
            "required": [
              "language"
            ],
            "title": "Speechmatics Real-time Transcription Settings",
            "description": "You must specify `language` (e.g `en`)\n\nDocs: https://docs.speechmatics.com/rt-api-ref#transcription-config"
          },
          "elevenlabs_streaming": {
            "type": "object",
            "properties": {
              "model_id": {
                "description": "The model to use for transcription.",
                "type": "string",
                "default": "eleven_whisper_v2_realtime"
              },
              "language_code": {
                "description": "ISO 639-1 two-letter language code. When not specified, the model auto-detects the language.",
                "type": "string"
              },
              "previous_text": {
                "description": "Text from a previous transcription session to provide context for the model. Sent in the first message to the WebSocket.",
                "type": "string"
              }
            },
            "title": "ElevenLabs Real-time Transcription Settings",
            "description": "Docs: https://elevenlabs.io/docs/api-reference/speech-to-text"
          },
          "meeting_captions": {
            "type": "object",
            "properties": {
              "language_code": {
                "enum": [
                  "cs",
                  "de",
                  "en",
                  "es",
                  "fil",
                  "fr",
                  "he",
                  "hi",
                  "it",
                  "ja",
                  "ko",
                  "nl",
                  "pl",
                  "pt",
                  "pt-BR",
                  "ro",
                  "ru",
                  "sv",
                  "th",
                  "tr",
                  "uk",
                  "vi",
                  "zh",
                  null
                ],
                "type": "string",
                "description": "* `cs` - Czech\n* `de` - German\n* `en` - English\n* `es` - Spanish\n* `fil` - Filipino\n* `fr` - French\n* `he` - Hebrew\n* `hi` - Hindi\n* `it` - Italian\n* `ja` - Japanese\n* `ko` - Korean\n* `nl` - Dutch\n* `pl` - Polish\n* `pt` - Portuguese\n* `pt-BR` - Portuguese (Brazil)\n* `ro` - Romanian\n* `ru` - Russian\n* `sv` - Swedish\n* `th` - Thai\n* `tr` - Turkish\n* `uk` - Ukrainian\n* `vi` - Vietnamese\n* `zh` - Chinese",
                "nullable": true,
                "title": "Language for captions. If not specified, the selection is meeting platform-specific."
              }
            }
          },
          "zoom_rtms": {
            "type": "object",
            "title": "Zoom Real-Time Media Streams Transcription"
          }
        },
        "required": [
          "assembly_ai_async",
          "aws_transcribe_async",
          "deepgram_async",
          "elevenlabs_async",
          "gladia_v2_async",
          "google_speech_v2_async",
          "recallai_async",
          "rev_async",
          "speechmatics_async"
        ]
      },
      "TranscriptArtifactShortcut": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "readOnly": true
          },
          "created_at": {
            "type": "string",
            "format": "date-time",
            "readOnly": true
          },
          "status": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ArtifactStatus"
              }
            ],
            "readOnly": true
          },
          "metadata": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            }
          },
          "data": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TranscriptArtifactData"
              }
            ],
            "readOnly": true
          },
          "diarization": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TranscriptArtifactDiarization"
              }
            ],
            "readOnly": true,
            "nullable": true
          },
          "provider": {
            "allOf": [
              {
                "$ref": "#/components/schemas/TranscriptArtifactProvider"
              }
            ],
            "readOnly": true
          }
        },
        "required": [
          "created_at",
          "data",
          "diarization",
          "id",
          "metadata",
          "provider",
          "status"
        ]
      },
      "VideoMixedArtifactData": {
        "type": "object",
        "properties": {
          "download_url": {
            "type": "string",
            "format": "uri",
            "readOnly": true,
            "nullable": true
          }
        },
        "required": [
          "download_url"
        ]
      },
      "VideoMixedArtifactShortcut": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "format": "uuid",
            "readOnly": true
          },
          "created_at": {
            "type": "string",
            "format": "date-time",
            "readOnly": true
          },
          "status": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ArtifactStatus"
              }
            ],
            "readOnly": true
          },
          "metadata": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            }
          },
          "data": {
            "allOf": [
              {
                "$ref": "#/components/schemas/VideoMixedArtifactData"
              }
            ],
            "readOnly": true
          },
          "format": {
            "allOf": [
              {
                "$ref": "#/components/schemas/Format3b3Enum"
              }
            ],
            "readOnly": true,
            "description": "Format of the mixed video file\n\n* `mp4` - Mp4"
          }
        },
        "required": [
          "created_at",
          "data",
          "format",
          "id",
          "metadata",
          "status"
        ]
      },
      "VideoMixedLayoutEnum": {
        "enum": [
          "speaker_view",
          "gallery_view",
          "gallery_view_v2",
          "audio_only"
        ],
        "type": "string",
        "description": "* `speaker_view` - speaker_view\n* `gallery_view` - gallery_view\n* `gallery_view_v2` - gallery_view_v2\n* `audio_only` - audio_only"
      },
      "VideoMixedParticipantVideoWhenScreenshareEnum": {
        "enum": [
          "hide",
          "beside",
          "overlap"
        ],
        "type": "string",
        "description": "* `hide` - hide\n* `beside` - beside\n* `overlap` - overlap"
      },
      "VideoOutput": {
        "type": "object",
        "properties": {
          "kind": {
            "allOf": [
              {
                "$ref": "#/components/schemas/VideoOutputKindEnum"
              }
            ],
            "description": "The kind of data encoded in b64_data\n\n* `jpeg` - jpeg"
          }
        },
        "required": [
          "kind"
        ]
      },
      "VideoOutputKindEnum": {
        "enum": [
          "jpeg"
        ],
        "type": "string",
        "description": "* `jpeg` - jpeg"
      },
      "Webex": {
        "type": "object",
        "properties": {
          "login_group_name": {
            "type": "string",
            "default": "Default",
            "description": "The name of the Webex login group to use for this meeting."
          }
        }
      },
      "WebexEnum": {
        "enum": [
          "web",
          "web_4_core",
          "web_gpu"
        ],
        "type": "string",
        "description": "* `web` - web\n* `web_4_core` - web_4_core\n* `web_gpu` - web_gpu"
      },
      "WebexMeetingInvite": {
        "type": "object",
        "properties": {
          "platform": {
            "$ref": "#/components/schemas/WebexMeetingInvitePlatformEnum"
          },
          "meeting_subdomain": {
            "type": "string"
          },
          "meeting_personal_room_id": {
            "type": "string",
            "description": "Required for personal room meetings."
          },
          "meeting_mtid": {
            "type": "string",
            "description": "Required for scheduled/spaces meetings."
          },
          "meeting_path": {
            "type": "string",
            "description": "Required for scheduled/spaces meetings."
          }
        },
        "required": [
          "meeting_subdomain",
          "platform"
        ]
      },
      "WebexMeetingInvitePlatformEnum": {
        "enum": [
          "webex"
        ],
        "type": "string",
        "description": "* `webex` - webex"
      },
      "Zoom": {
        "type": "object",
        "properties": {
          "join_token_url": {
            "type": "string",
            "format": "uri",
            "description": "A URL which Recall will make a GET request to, in order to retrieve the Zoom Join Token for Local Recording, which the Zoom bot uses to automatically record. This token can be generated through the Zoom API. Docs: https://marketplace.zoom.us/docs/api-reference/zoom-api/methods/#operation/meetingLocalRecordingJoinToken"
          },
          "zak_url": {
            "type": "string",
            "format": "uri",
            "description": "A URL which Recall will make  GET request to, in order to retrieve the ZAK. The V1 Zoom bot uses this to join meetings that require authentication to join.This token can be generated through the Zoom API. Docs: https://marketplace.zoom.us/docs/api-reference/zoom-api/methods/#operation/userZak"
          },
          "obf_token_url": {
            "type": "string",
            "format": "uri",
            "description": "A URL which Recall will make a GET request to, in order to retrieve the OBF (On Behalf Of) token. The bot uses this to join on behalf of another Zoom user. The response can contain up to 50 newline-delimited tokens, tried in order on each retry within the existing waiting room timeout. This token can be generated through the Zoom API. Docs: https://developers.zoom.us/docs/api/rest/reference/user/methods/#operation/userToken"
          },
          "user_email": {
            "type": "string",
            "format": "email",
            "description": "This is only required for registration-required webinars. This should be the email address registered for the webinar."
          }
        }
      },
      "ZoomEnum": {
        "type": "string",
        "enum": [
          "web",
          "web_4_core",
          "web_gpu"
        ]
      },
      "ZoomMeetingInviteMeetingLink": {
        "type": "object",
        "properties": {
          "platform": {
            "$ref": "#/components/schemas/ZoomMeetingInviteMeetingLinkPlatformEnum"
          },
          "meeting_id": {
            "type": "string"
          },
          "meeting_password": {
            "type": "string",
            "nullable": true
          },
          "tk": {
            "type": "string",
            "nullable": true
          },
          "zak": {
            "type": "string",
            "nullable": true
          }
        },
        "required": [
          "meeting_id",
          "platform"
        ]
      },
      "ZoomMeetingInviteMeetingLinkPlatformEnum": {
        "enum": [
          "zoom"
        ],
        "type": "string",
        "description": "* `zoom` - zoom"
      },
      "_BreakoutRoomSchema": {
        "type": "object",
        "properties": {
          "mode": {
            "$ref": "#/components/schemas/_BreakoutRoomSchemaModeEnum"
          },
          "room_id": {
            "type": "string",
            "format": "uuid",
            "description": "Required when mode='join_specific_room'."
          }
        },
        "required": [
          "mode"
        ]
      },
      "_BreakoutRoomSchemaModeEnum": {
        "enum": [
          "join_main_room",
          "join_specific_room",
          "auto_accept_all_invites"
        ],
        "type": "string",
        "description": "* `join_main_room` - join_main_room\n* `join_specific_room` - join_specific_room\n* `auto_accept_all_invites` - auto_accept_all_invites"
      }
    },
    "securitySchemes": {
      "tokenAuth": {
        "type": "apiKey",
        "in": "header",
        "name": "Authorization",
        "description": "Token-based authentication with required prefix \"Token\""
      }
    }
  },
  "servers": [
    {
      "url": "https://us-east-1.recall.ai",
      "description": "Recall.ai API"
    },
    {
      "url": "https://eu-central-1.recall.ai",
      "description": "European Recall.ai API"
    },
    {
      "url": "https://ap-northeast-1.recall.ai",
      "description": "Asia Recall.ai API"
    },
    {
      "url": "https://us-west-2.recall.ai",
      "description": "Pay-as-you-go Recall.ai API"
    }
  ]
}
```