{"$schema":"https://json-schema.org/draft/2020-12/schema","additionalProperties":false,"properties":{"audio_end_at":{"description":"Timestamp (in milliseconds) to end transcription at.","maximum":9007199254740991,"minimum":0,"type":"integer"},"audio_start_from":{"description":"Timestamp (in milliseconds) to start transcription from.","maximum":9007199254740991,"minimum":0,"type":"integer"},"audio_url":{"description":"The URL of the audio file to transcribe. Can be a publicly accessible URL or a data URI (data:audio/...;base64,...). For data URIs, the audio will be uploaded to AssemblyAI automatically. Required for pre-recorded transcription (when stream is false or not set).","type":"string"},"auto_chapters":{"description":"Enable automatic chapter detection.","type":"boolean"},"auto_highlights":{"description":"Enable automatic extraction of key phrases and highlights.","type":"boolean"},"boost_param":{"description":"How much to boost the words in word_boost.","enum":["low","default","high"],"type":"string"},"content_safety":{"description":"Enable content safety detection for sensitive content.","type":"boolean"},"custom_spelling":{"description":"Custom spelling rules to replace specific words or phrases in the transcription output.","items":{"additionalProperties":false,"properties":{"from":{"items":{"type":"string"},"type":"array"},"to":{"type":"string"}},"required":["from","to"],"type":"object"},"type":"array"},"disfluencies":{"description":"Include filler words like \"um\", \"uh\", etc. in the transcript.","type":"boolean"},"domain":{"description":"Domain-specific transcription mode. \"medical-v1\" enables medical terminology optimization.","enum":["medical-v1"],"type":"string"},"dual_channel":{"description":"Process audio as dual-channel (stereo) for better accuracy.","type":"boolean"},"entity_detection":{"description":"Enable detection of entities like names, organizations, and locations.","type":"boolean"},"filter_profanity":{"description":"Filter profanity from the transcription.","type":"boolean"},"iab_categories":{"description":"Enable IAB (Interactive Advertising Bureau) content taxonomy classification.","type":"boolean"},"keyterms_prompt":{"description":"An array of up to 1,000 words or phrases (max 6 words per phrase) to improve transcription accuracy. Cannot be used with the prompt parameter.","items":{"type":"string"},"type":"array"},"language_code":{"description":"The language code for the audio file (e.g., \"en\", \"es\", \"fr\"). Defaults to automatic language detection.","type":"string"},"language_detection":{"description":"Enable automatic language detection. When enabled with speech_models, the system will automatically select the best model for the detected language.","type":"boolean"},"multichannel":{"description":"Process each audio channel separately for multi-channel audio files.","type":"boolean"},"prompt":{"description":"A custom prompt to guide transcription style, formatting, and output characteristics. Maximum 1,500 words.","type":"string"},"redact_pii":{"description":"Redact personally identifiable information.","type":"boolean"},"redact_pii_audio":{"description":"Generate a redacted audio file with PII removed.","type":"boolean"},"redact_pii_policies":{"description":"Specific PII policies to apply for redaction.","items":{"type":"string"},"type":"array"},"redact_pii_sub":{"description":"Strategy for substituting redacted PII.","enum":["entity_name","hash"],"type":"string"},"sentiment_analysis":{"description":"Enable sentiment analysis for each sentence.","type":"boolean"},"speaker_labels":{"description":"Enable speaker diarization to identify different speakers in the audio.","type":"boolean"},"speakers_expected":{"description":"Expected number of speakers for speaker diarization.","maximum":9007199254740991,"minimum":1,"type":"integer"},"speech_threshold":{"description":"Confidence threshold for speech detection.","maximum":1,"minimum":0,"type":"number"},"temperature":{"description":"Controls randomness in model output (0.0-1.0). Lower values make output more deterministic. Default is 0.0.","maximum":1,"minimum":0,"type":"number"},"webhook_url":{"description":"URL to receive webhook notifications when transcription is complete.","format":"uri","type":"string"},"websocket":{"description":"Enable real-time WebSocket streaming for live audio transcription. When true, a WebSocket connection is established instead of submitting a pre-recorded transcription job. Cannot be used with audio_url.","type":"boolean"},"word_boost":{"description":"Array of words to boost recognition accuracy (legacy - use keyterms_prompt instead).","items":{"type":"string"},"type":"array"}},"type":"object"}