openapi: 3.0.3 info: title: Gladia Control AudioToText Live V2 API description: Gladia AI audio infrastructure API for speech-to-text transcription via REST and WebSocket. Supports asynchronous pre-recorded audio processing and real-time live transcription with speaker diarization, automatic language detection across 100+ languages, and audio intelligence features. version: '1.0' contact: {} servers: - url: https://api.gladia.io/ description: Gladia API production URL tags: - name: Live V2 paths: /v2/live: post: operationId: StreamingController_initStreamingSession_v2 parameters: - name: region required: false in: query description: The region used to process the audio. schema: $ref: '#/components/schemas/StreamingSupportedRegions' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/StreamingRequest' responses: '201': description: The live job has been initiated content: application/json: schema: $ref: '#/components/schemas/InitStreamingResponse' '400': description: Something is wrong with the request content: application/json: schema: $ref: '#/components/schemas/BadRequestErrorResponse' '401': description: You don't have the permissions to initiate a new live job content: application/json: schema: $ref: '#/components/schemas/UnauthorizedErrorResponse' '422': description: The parameters you gave are incorrect content: application/json: schema: $ref: '#/components/schemas/UnprocessableEntityErrorResponse' security: - x_gladia_key: [] summary: Initiate a new live job tags: - Live V2 get: operationId: StreamingController_getStreamingJobs_v2 parameters: - name: offset required: false in: query description: The starting point for pagination. A value of 0 starts from the first item. schema: minimum: 0 default: 0 type: integer - name: limit required: false in: query description: The maximum number of items to return. Useful for pagination and controlling data payload size. schema: minimum: 1 default: 20 type: integer - name: date required: false in: query description: Filter items relevant to a specific date in ISO format (YYYY-MM-DD). schema: format: date-time example: '2026-06-12' type: string - name: before_date required: false in: query description: Include items that occurred before the specified date in ISO format. schema: format: date-time example: '2026-06-12T21:00:09.947Z' type: string - name: after_date required: false in: query description: Filter for items after the specified date. Use with `before_date` for a range. Date in ISO format. schema: format: date-time example: '2026-06-12T21:00:09.947Z' type: string - name: status required: false in: query description: Filter the list based on item status. Accepts multiple values from the predefined list. schema: example: - done type: array items: type: string enum: - queued - processing - done - error - name: custom_metadata required: false in: query schema: additionalProperties: true example: user: John Doe type: object responses: '200': description: A list of live jobs matching the parameters. content: application/json: schema: $ref: '#/components/schemas/ListStreamingResponse' '401': description: You don't have the permissions to access live jobs content: application/json: schema: $ref: '#/components/schemas/UnauthorizedErrorResponse' security: - x_gladia_key: [] summary: Get live jobs based on query parameters tags: - Live V2 /v2/live/{id}: get: operationId: StreamingController_getStreamingJob_v2 parameters: - name: id required: true in: path description: Id of the live job schema: example: 45463597-20b7-4af7-b3b3-f5fb778203ab type: string responses: '200': description: The live job's metadata content: application/json: schema: $ref: '#/components/schemas/StreamingResponse' '401': description: You don't have the permissions to access the live job content: application/json: schema: $ref: '#/components/schemas/UnauthorizedErrorResponse' '404': description: The live job doesn't exist or has been deleted content: application/json: schema: $ref: '#/components/schemas/NotFoundErrorResponse' security: - x_gladia_key: [] summary: Get the live job's metadata tags: - Live V2 delete: operationId: StreamingController_deleteStreamingJob_v2 parameters: - name: id required: true in: path description: Id of the live job schema: example: 45463597-20b7-4af7-b3b3-f5fb778203ab type: string responses: '202': description: The live job has been successfully deleted '401': description: You don't have the permissions to delete this live job content: application/json: schema: $ref: '#/components/schemas/UnauthorizedErrorResponse' '403': description: The live job is not in a deletable state content: application/json: schema: $ref: '#/components/schemas/ForbiddenErrorResponse' '404': description: The live job doesn't exist or has been deleted content: application/json: schema: $ref: '#/components/schemas/NotFoundErrorResponse' security: - x_gladia_key: [] summary: Delete the live job tags: - Live V2 patch: operationId: StreamingController_patchRequestParams_v2 parameters: - name: id required: true in: path description: Id of the live job schema: example: 45463597-20b7-4af7-b3b3-f5fb778203ab type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PatchRequestParamsDTO' responses: '204': description: Successfully patched the job '400': description: Something is wrong with the request content: application/json: schema: $ref: '#/components/schemas/BadRequestErrorResponse' '401': description: You don't have the permissions to update the job content: application/json: schema: $ref: '#/components/schemas/UnauthorizedErrorResponse' '404': description: The live job doesn't exist or has been deleted content: application/json: schema: $ref: '#/components/schemas/NotFoundErrorResponse' '413': description: The post_request_metadata parameter must be a json object no longer that 100kb content: application/json: schema: $ref: '#/components/schemas/PayloadTooLargeErrorResponse' security: - x_gladia_key: [] summary: For debugging purposes, send post session metadata in the request params of the job tags: - Live V2 /v2/live/{id}/file: get: operationId: StreamingController_getAudio_v2 parameters: - name: id required: true in: path description: Id of the live job schema: example: 45463597-20b7-4af7-b3b3-f5fb778203ab type: string responses: '200': description: The audio file used for this live job content: application/octet-stream: schema: type: string format: binary example: '401': description: You don't have the permissions to access this live job or its audio file content: application/json: schema: $ref: '#/components/schemas/UnauthorizedErrorResponse' '404': description: The live job or its audio file doesn't exist or has been deleted content: application/json: schema: $ref: '#/components/schemas/NotFoundErrorResponse' security: - x_gladia_key: [] summary: Download the audio file used for this live job tags: - Live V2 components: schemas: PostProcessingConfig: type: object properties: summarization: type: boolean description: If true, generates summarization for the whole transcription. default: false summarization_config: description: Summarization configuration, if `summarization` is enabled allOf: - $ref: '#/components/schemas/SummarizationConfigDTO' chapterization: type: boolean description: If true, generates chapters for the whole transcription. default: false StreamingSupportedBitDepthEnum: type: number enum: - 8 - 16 - 24 - 32 description: The bit depth of the audio stream NamedEntityRecognitionResult: type: object properties: entity_type: type: string text: type: string start: type: number end: type: number required: - entity_type - text - start - end NamedEntityRecognitionDTO: type: object properties: success: type: boolean description: The audio intelligence model succeeded to get a valid output is_empty: type: boolean description: The audio intelligence model returned an empty value exec_time: type: number description: Time audio intelligence model took to complete the task error: description: '`null` if `success` is `true`. Contains the error details of the failed model' nullable: true allOf: - $ref: '#/components/schemas/AddonErrorDTO' results: description: If `named_entity_recognition` has been enabled, the detected entities. nullable: true type: array items: $ref: '#/components/schemas/NamedEntityRecognitionResult' required: - success - is_empty - exec_time - error - results WordDTO: type: object properties: word: type: string description: Spoken word start: type: number description: Start timestamps in seconds of the spoken word end: type: number description: End timestamps in seconds of the spoken word confidence: type: number description: Confidence on the transcribed word (1 = 100% confident) required: - word - start - end - confidence SummarizationConfigDTO: type: object properties: type: description: The type of summarization to apply default: general allOf: - $ref: '#/components/schemas/SummaryTypesEnum' InitStreamingResponse: type: object properties: id: type: string description: Id of the job format: uuid example: 45463597-20b7-4af7-b3b3-f5fb778203ab created_at: type: string description: Creation date format: date-time example: '2023-12-28T09:04:17.210Z' url: type: string description: The websocket url to connect to for sending audio data. The url will contain the temporary token to authenticate the session. example: wss://api.gladia.io/v2/live?token=4a39145c-2844-4557-8f34-34883f7be7d9 format: uri required: - id - created_at - url PatchRequestParamsDTO: type: object properties: {} SummarizationDTO: type: object properties: success: type: boolean description: The audio intelligence model succeeded to get a valid output is_empty: type: boolean description: The audio intelligence model returned an empty value exec_time: type: number description: Time audio intelligence model took to complete the task error: description: '`null` if `success` is `true`. Contains the error details of the failed model' nullable: true allOf: - $ref: '#/components/schemas/AddonErrorDTO' results: type: string description: If `summarization` has been enabled, summary of the transcription nullable: true required: - success - is_empty - exec_time - error - results TranscriptionLanguageCodeEnum: type: string enum: - af - am - ar - as - az - ba - be - bg - bn - bo - br - bs - ca - cs - cy - da - de - el - en - es - et - eu - fa - fi - fo - fr - gl - gu - ha - haw - he - hi - hr - ht - hu - hy - id - is - it - ja - jw - ka - kk - km - kn - ko - la - lb - ln - lo - lt - lv - mg - mi - mk - ml - mn - mr - ms - mt - my - ne - nl - nn - 'no' - oc - pa - pl - ps - pt - ro - ru - sa - sd - si - sk - sl - sn - so - sq - sr - su - sv - sw - ta - te - tg - th - tk - tl - tr - tt - uk - ur - uz - vi - yi - yo - zh description: Specify the language in which it will be pronounced when sound comparison occurs. Default to transcription language. SentimentAnalysisDTO: type: object properties: success: type: boolean description: The audio intelligence model succeeded to get a valid output is_empty: type: boolean description: The audio intelligence model returned an empty value exec_time: type: number description: Time audio intelligence model took to complete the task error: description: '`null` if `success` is `true`. Contains the error details of the failed model' nullable: true allOf: - $ref: '#/components/schemas/AddonErrorDTO' results: type: string description: If `sentiment_analysis` has been enabled, Gladia will analyze the sentiments and emotions of the audio required: - success - is_empty - exec_time - error - results UnprocessableEntityErrorResponse: type: object properties: timestamp: type: string description: Date of when the error occurred example: '2023-12-28T09:04:17.210Z' path: type: string description: Path to the API endpoint example: /v2/transcription/45463597-20b7-4af7-b3b3-f5fb778203ab request_id: type: string description: Debug id example: G-821fe9df statusCode: type: number description: HTTP status code of the error example: 422 message: type: string description: Error message example: Invalid parameter required: - timestamp - path - request_id - statusCode - message FileResponse: type: object properties: id: type: string description: The file id filename: type: string nullable: true description: The name of the uploaded file source: type: string nullable: true description: The link used to download the file if audio_url was used audio_duration: type: number nullable: true description: Duration of the audio file example: 3600 number_of_channels: type: integer nullable: true description: Number of channels in the audio file minimum: 1 example: 1 required: - id - filename - source - audio_duration - number_of_channels NotFoundErrorResponse: type: object properties: timestamp: type: string description: Date of when the error occurred example: '2023-12-28T09:04:17.210Z' path: type: string description: Path to the API endpoint example: /v2/transcription/45463597-20b7-4af7-b3b3-f5fb778203ab request_id: type: string description: Debug id example: G-821fe9df statusCode: type: number description: HTTP status code of the error example: 404 message: type: string description: Error message example: Not found required: - timestamp - path - request_id - statusCode - message StreamingSupportedSampleRateEnum: type: number enum: - 8000 - 16000 - 32000 - 44100 - 48000 description: The sample rate of the audio stream StreamingSupportedRegions: type: string enum: - us-west - eu-west StreamingRequestParamsResponse: type: object properties: encoding: description: "The encoding format of the audio stream. Supported formats: \n- PCM: 8, 16, 24, and 32 bits \n- A-law: 8 bits \n- μ-law: 8 bits \n\nNote: No need to add WAV headers to raw audio as the API supports both formats." default: wav/pcm allOf: - $ref: '#/components/schemas/StreamingSupportedEncodingEnum' bit_depth: description: The bit depth of the audio stream default: 16 allOf: - $ref: '#/components/schemas/StreamingSupportedBitDepthEnum' sample_rate: description: The sample rate of the audio stream default: 16000 allOf: - $ref: '#/components/schemas/StreamingSupportedSampleRateEnum' channels: type: integer description: The number of channels of the audio stream default: 1 minimum: 1 maximum: 8 model: description: The model used to process the audio. "solaria-1" is used by default. default: solaria-1 allOf: - $ref: '#/components/schemas/StreamingSupportedModels' 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: description: Specify the language configuration allOf: - $ref: '#/components/schemas/LanguageConfig' pre_processing: description: Specify the pre-processing configuration allOf: - $ref: '#/components/schemas/PreProcessingConfig' realtime_processing: description: Specify the realtime processing configuration allOf: - $ref: '#/components/schemas/RealtimeProcessingConfig' post_processing: description: Specify the post-processing configuration allOf: - $ref: '#/components/schemas/PostProcessingConfig' messages_config: description: Specify the websocket messages configuration allOf: - $ref: '#/components/schemas/MessagesConfig' callback: type: boolean description: If true, messages will be sent to configured url. default: false callback_config: description: Specify the callback configuration allOf: - $ref: '#/components/schemas/CallbackConfig' StreamingSupportedEncodingEnum: type: string enum: - wav/pcm - wav/alaw - wav/ulaw description: "The encoding format of the audio stream. Supported formats: \n- PCM: 8, 16, 24, and 32 bits \n- A-law: 8 bits \n- μ-law: 8 bits \n\nNote: No need to add WAV headers to raw audio as the API supports both formats." BadRequestErrorResponse: type: object properties: timestamp: type: string description: Date of when the error occurred example: '2023-12-28T09:04:17.210Z' path: type: string description: Path to the API endpoint example: /v2/transcription/45463597-20b7-4af7-b3b3-f5fb778203ab request_id: type: string description: Debug id example: G-821fe9df statusCode: type: number description: HTTP status code of the error example: 400 message: type: string description: Error message example: Content-Type is missing Multipart Boundary. validation_errors: description: List of validation errors, if any example: - Field "language" must be a string - Field "min_speakers" must be a number type: array items: type: string required: - timestamp - path - request_id - statusCode - message RealtimeProcessingConfig: type: object properties: custom_vocabulary: type: boolean description: If true, enable custom vocabulary for the transcription. default: false custom_vocabulary_config: description: Custom vocabulary configuration, if `custom_vocabulary` is enabled allOf: - $ref: '#/components/schemas/CustomVocabularyConfigDTO' custom_spelling: type: boolean description: If true, enable custom spelling for the transcription. default: false custom_spelling_config: description: Custom spelling configuration, if `custom_spelling` is enabled allOf: - $ref: '#/components/schemas/CustomSpellingConfigDTO' translation: type: boolean description: If true, enable translation for the transcription default: false translation_config: description: Translation configuration, if `translation` is enabled allOf: - $ref: '#/components/schemas/TranslationConfigDTO' 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 UtteranceDTO: type: object properties: start: type: number description: Start timestamp in seconds of this utterance end: type: number description: End timestamp in seconds of this utterance confidence: type: number description: Confidence on the transcribed utterance (1 = 100% confident) channel: type: integer description: Audio channel of where this utterance has been transcribed from minimum: 0 speaker: type: integer description: If `diarization` enabled, speaker identification number minimum: 0 words: description: List of words of the utterance, split by timestamp type: array items: $ref: '#/components/schemas/WordDTO' text: type: string description: Transcription for this utterance language: description: Spoken language in this utterance example: en allOf: - $ref: '#/components/schemas/TranscriptionLanguageCodeEnum' required: - start - end - confidence - channel - words - text - language PreProcessingConfig: type: object 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 SubtitleDTO: type: object properties: format: description: Format of the current subtitle example: srt allOf: - $ref: '#/components/schemas/SubtitlesFormatEnum' subtitles: type: string description: Transcription on the asked subtitle format required: - format - subtitles TranscriptionDTO: type: object properties: full_transcript: type: string description: All transcription on text format without any other information languages: type: array description: All the detected languages in the audio sorted from the most detected to the less detected example: - en items: $ref: '#/components/schemas/TranscriptionLanguageCodeEnum' sentences: description: If `sentences` has been enabled, sentences results type: array items: $ref: '#/components/schemas/SentencesDTO' subtitles: description: If `subtitles` has been enabled, subtitles results type: array items: $ref: '#/components/schemas/SubtitleDTO' utterances: description: Transcribed speech utterances present in the audio type: array items: $ref: '#/components/schemas/UtteranceDTO' required: - full_transcript - languages - utterances CustomVocabularyConfigDTO: type: object properties: vocabulary: type: array 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 items: oneOf: - $ref: '#/components/schemas/CustomVocabularyEntryDTO' - type: string default_intensity: type: number description: Default intensity for the custom vocabulary example: 0.5 minimum: 0 maximum: 1 required: - vocabulary MessagesConfig: type: object properties: receive_partial_transcripts: type: boolean description: If true, partial transcript will be sent to websocket. default: false receive_final_transcripts: type: boolean description: If true, final transcript 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 StreamingResponse: type: object properties: id: type: string description: Id of the job format: uuid example: 45463597-20b7-4af7-b3b3-f5fb778203ab request_id: type: string description: Debug id example: G-45463597 version: type: integer description: API version example: 2 status: type: string description: '"queued": the job has been queued. "processing": the job is being processed. "done": the job has been processed and the result is available. "error": an error occurred during the job''s processing.' enum: - queued - processing - done - error created_at: type: string description: Creation date format: date-time example: '2023-12-28T09:04:17.210Z' completed_at: type: string description: Completion date when status is "done" or "error" format: date-time example: '2023-12-28T09:04:37.210Z' nullable: true custom_metadata: type: object description: Custom metadata given in the initial request example: user: John Doe additionalProperties: true error_code: type: integer description: HTTP status code of the error if status is "error" minimum: 400 maximum: 599 example: 500 nullable: true post_session_metadata: type: object description: For debugging purposes, send data that could help to identify issues kind: type: string enum: - live example: live default: live file: description: The file data you uploaded. Can be null if status is "error" nullable: true allOf: - $ref: '#/components/schemas/FileResponse' request_params: description: Parameters used for this live transcription. Can be null if status is "error" nullable: true allOf: - $ref: '#/components/schemas/StreamingRequestParamsResponse' result: description: Live transcription's result when status is "done" nullable: true allOf: - $ref: '#/components/schemas/StreamingTranscriptionResultWithMessagesDTO' required: - id - request_id - version - status - created_at - post_session_metadata - kind ListStreamingResponse: type: object properties: first: type: string description: URL to fetch the first page format: uri example: https://api.gladia.io/v2/transcription?status=done&offset=0&limit=20 current: type: string description: URL to fetch the current page format: uri example: https://api.gladia.io/v2/transcription?status=done&offset=0&limit=20 next: type: string description: URL to fetch the next page format: uri example: https://api.gladia.io/v2/transcription?status=done&offset=20&limit=20 nullable: true items: description: List of live transcriptions type: array items: $ref: '#/components/schemas/StreamingResponse' required: - first - current - next - items CustomVocabularyEntryDTO: 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: description: Specify the language in which it will be pronounced when sound comparison occurs. Default to transcription language. example: en allOf: - $ref: '#/components/schemas/TranscriptionLanguageCodeEnum' required: - value TranslationDTO: type: object properties: success: type: boolean description: The audio intelligence model succeeded to get a valid output is_empty: type: boolean description: The audio intelligence model returned an empty value exec_time: type: number description: Time audio intelligence model took to complete the task error: description: '`null` if `success` is `true`. Contains the error details of the failed model' nullable: true allOf: - $ref: '#/components/schemas/AddonErrorDTO' results: description: List of translated transcriptions, one for each `target_languages` nullable: true type: array items: $ref: '#/components/schemas/TranslationResultDTO' required: - success - is_empty - exec_time - error - results TranslationConfigDTO: type: object properties: target_languages: type: array description: Target language in `iso639-1` format you want the transcription translated to example: - en minItems: 1 items: $ref: '#/components/schemas/TranslationLanguageCodeEnum' model: description: Model you want the translation model to use to translate default: base allOf: - $ref: '#/components/schemas/TranslationModelEnum' 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 ChapterizationDTO: type: object properties: success: type: boolean description: The audio intelligence model succeeded to get a valid output is_empty: type: boolean description: The audio intelligence model returned an empty value exec_time: type: number description: Time audio intelligence model took to complete the task error: description: '`null` if `success` is `true`. Contains the error details of the failed model' nullable: true allOf: - $ref: '#/components/schemas/AddonErrorDTO' results: type: object description: If `chapterization` has been enabled, will generate chapters name for different parts of the given audio. additionalProperties: true required: - success - is_empty - exec_time - error - results PayloadTooLargeErrorResponse: type: object properties: timestamp: type: string description: Date of when the error occurred example: '2023-12-28T09:04:17.210Z' path: type: string description: Path to the API endpoint example: /v2/transcription/45463597-20b7-4af7-b3b3-f5fb778203ab request_id: type: string description: Debug id example: G-821fe9df statusCode: type: number description: HTTP status code of the error example: 413 message: type: string description: Payload too large example: payload too large required: - timestamp - path - request_id - statusCode - message AddonErrorDTO: type: object properties: status_code: type: integer description: Status code of the addon error example: 500 exception: type: string description: Reason of the addon error message: type: string description: Detailed message of the addon error required: - status_code - exception - message StreamingSupportedModels: type: string enum: - solaria-1 description: The model used to process the audio. "solaria-1" is used by default. SentencesDTO: type: object properties: success: type: boolean description: The audio intelligence model succeeded to get a valid output is_empty: type: boolean description: The audio intelligence model returned an empty value exec_time: type: number description: Time audio intelligence model took to complete the task error: description: '`null` if `success` is `true`. Contains the error details of the failed model' nullable: true allOf: - $ref: '#/components/schemas/AddonErrorDTO' results: description: If `sentences` has been enabled, transcription as sentences. nullable: true type: array items: type: string required: - success - is_empty - exec_time - error - results CallbackConfig: type: object properties: url: type: string description: URL on which we will do a `POST` request with configured messages example: https://callback.example format: uri receive_partial_transcripts: type: boolean description: If true, partial transcript will be sent to the defined callback. default: false receive_final_transcripts: type: boolean description: If true, final transcript 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 TranscriptionMetadataDTO: type: object properties: audio_duration: type: number description: Duration of the transcribed audio file example: 3600 number_of_distinct_channels: type: integer description: Number of distinct channels in the transcribed audio file minimum: 1 example: 1 billing_time: type: number description: Billed duration in seconds (audio_duration * number_of_distinct_channels) example: 3600 transcription_time: type: number description: Duration of the transcription in seconds example: 20 required: - audio_duration - number_of_distinct_channels - billing_time - transcription_time TranslationModelEnum: type: string enum: - base - enhanced description: Model you want the translation model to use to translate StreamingTranscriptionResultWithMessagesDTO: type: object properties: metadata: description: Metadata for the given transcription & audio file allOf: - $ref: '#/components/schemas/TranscriptionMetadataDTO' transcription: description: Transcription of the audio speech allOf: - $ref: '#/components/schemas/TranscriptionDTO' translation: description: If `translation` has been enabled, translation of the audio speech transcription allOf: - $ref: '#/components/schemas/TranslationDTO' summarization: description: If `summarization` has been enabled, summarization of the audio speech transcription allOf: - $ref: '#/components/schemas/SummarizationDTO' named_entity_recognition: description: If `named_entity_recognition` has been enabled, the detected entities allOf: - $ref: '#/components/schemas/NamedEntityRecognitionDTO' sentiment_analysis: description: If `sentiment_analysis` has been enabled, sentiment analysis of the audio speech transcription allOf: - $ref: '#/components/schemas/SentimentAnalysisDTO' chapterization: description: If `chapterization` has been enabled, will generate chapters name for different parts of the given audio. allOf: - $ref: '#/components/schemas/ChapterizationDTO' messages: description: Real-Time messages sent by the server during the live transcription type: array items: type: string required: - metadata ForbiddenErrorResponse: type: object properties: timestamp: type: string description: Date of when the error occurred example: '2023-12-28T09:04:17.210Z' path: type: string description: Path to the API endpoint example: /v2/transcription/45463597-20b7-4af7-b3b3-f5fb778203ab request_id: type: string description: Debug id example: G-821fe9df statusCode: type: number description: HTTP status code of the error example: 403 message: type: string description: Forbidden request example: Invalid parameter required: - timestamp - path - request_id - statusCode - message StreamingRequest: type: object properties: encoding: description: "The encoding format of the audio stream. Supported formats: \n- PCM: 8, 16, 24, and 32 bits \n- A-law: 8 bits \n- μ-law: 8 bits \n\nNote: No need to add WAV headers to raw audio as the API supports both formats." default: wav/pcm allOf: - $ref: '#/components/schemas/StreamingSupportedEncodingEnum' bit_depth: description: The bit depth of the audio stream default: 16 allOf: - $ref: '#/components/schemas/StreamingSupportedBitDepthEnum' sample_rate: description: The sample rate of the audio stream default: 16000 allOf: - $ref: '#/components/schemas/StreamingSupportedSampleRateEnum' channels: type: integer description: The number of channels of the audio stream default: 1 minimum: 1 maximum: 8 custom_metadata: type: object description: Custom metadata you can attach to this live transcription example: user: John Doe additionalProperties: true model: description: The model used to process the audio. "solaria-1" is used by default. default: solaria-1 allOf: - $ref: '#/components/schemas/StreamingSupportedModels' 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: description: Specify the language configuration allOf: - $ref: '#/components/schemas/LanguageConfig' pre_processing: description: Specify the pre-processing configuration allOf: - $ref: '#/components/schemas/PreProcessingConfig' realtime_processing: description: Specify the realtime processing configuration allOf: - $ref: '#/components/schemas/RealtimeProcessingConfig' post_processing: description: Specify the post-processing configuration allOf: - $ref: '#/components/schemas/PostProcessingConfig' messages_config: description: Specify the websocket messages configuration allOf: - $ref: '#/components/schemas/MessagesConfig' callback: type: boolean description: If true, messages will be sent to configured url. default: false callback_config: description: Specify the callback configuration allOf: - $ref: '#/components/schemas/CallbackConfig' LanguageConfig: type: object 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: $ref: '#/components/schemas/TranscriptionLanguageCodeEnum' 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 TranslationResultDTO: type: object properties: error: description: Contains the error details of the failed addon nullable: true allOf: - $ref: '#/components/schemas/AddonErrorDTO' full_transcript: type: string description: All transcription on text format without any other information languages: type: array description: All the detected languages in the audio sorted from the most detected to the less detected example: - en items: $ref: '#/components/schemas/TranslationLanguageCodeEnum' sentences: description: If `sentences` has been enabled, sentences results for this translation type: array items: $ref: '#/components/schemas/SentencesDTO' subtitles: description: If `subtitles` has been enabled, subtitles results for this translation type: array items: $ref: '#/components/schemas/SubtitleDTO' utterances: description: Transcribed speech utterances present in the audio type: array items: $ref: '#/components/schemas/UtteranceDTO' required: - error - full_transcript - languages - utterances UnauthorizedErrorResponse: type: object properties: timestamp: type: string description: Date of when the error occurred example: '2023-12-28T09:04:17.210Z' path: type: string description: Path to the API endpoint example: /v2/transcription/45463597-20b7-4af7-b3b3-f5fb778203ab request_id: type: string description: Debug id example: G-821fe9df statusCode: type: number description: HTTP status code of the error example: 401 message: type: string description: Error message example: gladia key not found required: - timestamp - path - request_id - statusCode - message CustomSpellingConfigDTO: type: object properties: spelling_dictionary: type: object description: The list of spelling applied on the audio transcription example: Gettleman: - gettleman SQL: - Sequel additionalProperties: type: array items: type: string required: - spelling_dictionary SummaryTypesEnum: type: string enum: - general - bullet_points - concise description: The type of summarization to apply TranslationLanguageCodeEnum: type: string enum: - af - am - ar - as - az - ba - be - bg - bn - bo - br - bs - ca - cs - cy - da - de - el - en - es - et - eu - fa - fi - fo - fr - gl - gu - ha - haw - he - hi - hr - ht - hu - hy - id - is - it - ja - jw - ka - kk - km - kn - ko - la - lb - ln - lo - lt - lv - mg - mi - mk - ml - mn - mr - ms - mt - my - ne - nl - nn - 'no' - oc - pa - pl - ps - pt - ro - ru - sa - sd - si - sk - sl - sn - so - sq - sr - su - sv - sw - ta - te - tg - th - tk - tl - tr - tt - uk - ur - uz - vi - wo - yi - yo - zh description: Target language in `iso639-1` format you want the transcription translated to SubtitlesFormatEnum: type: string enum: - srt - vtt description: Subtitles formats you want your transcription to be formatted to securitySchemes: x_gladia_key: type: apiKey in: header name: x-gladia-key description: Your personal Gladia API key