universal-3-5-pro
universal-3-5-pro is a speech to text tool from AssemblyAI that runs in the background and returns structured JSON. Pay as you go from $0.000003612 per second, with one API key.
Pricing
$0.273 per hour of audio. Optional features add, per hour: speaker labels $0.026, key terms $0.065, translation $0.078, speaker identification $0.026, custom formatting $0.039, action items $0.026, summaries $0.026 ($0.091 at medium effort), entity detection $0.104, sentiment $0.026, key phrases $0.013, topic detection $0.195, content moderation $0.195, profanity filter $0.013, PII redaction $0.104, audio redaction $0.065, medical mode $0.195, custom prompt $0.065. Measured from the input file, for each audio channel with multichannel on. The final charge comes from usage.
Limits
- Runs
- In the background
- Returns
- json
- Longest queue wait
- 3600s
- Run deadline
- 1800s
- Largest inline input
- 1024 KB
- Largest input file
- 500 MB
- Largest output
- 4768 MB
- Outputs per run
- 16
Input
| Field | Kind | Default | Description |
|---|---|---|---|
audio_url required | URL or file | — | The URL of the audio or video file to transcribe. |
domain | one of medical-v1 | — | Enable domain-specific transcription models to improve accuracy for specialized terminology. |
prompt | text | — | Provide natural language prompting of up to 1,500 words of contextual information to the model. |
topics | list | — | This parameter does not currently have any functionality attached to it. |
punctuate | true or false | true | Enable [Automatic Punctuation](https://www.assemblyai.com/docs/pre-recorded-audio), can be true or false |
redact_pii | true or false | false | Redact PII from the transcribed text using the Redact PII model, can be true or false. |
format_text | true or false | true | Enable [Text Formatting](https://www.assemblyai.com/docs/pre-recorded-audio), can be true or false |
temperature | number 0 to 1 | — | Control the amount of randomness injected into the model's response. |
audio_end_at | number (whole) | — | The point in time, in milliseconds, to stop transcribing in your media file. |
disfluencies | true or false | false | Transcribe [Filler Words](https://www.assemblyai.com/docs/pre-recorded-audio/include-filler-words), like "umm", in your media file; can be true or false. |
multichannel | true or false | false | Enable [Multichannel](https://www.assemblyai.com/docs/pre-recorded-audio/transcribe-multiple-audio-channels) transcription, can be true or false. |
custom_topics | true or false | — | This parameter does not currently have any functionality attached to it. |
language_code | JSON | — | The language of your audio file. |
content_safety | true or false | false | Enable [Content Moderation](https://www.assemblyai.com/docs/content-moderation), can be true or false |
iab_categories | true or false | false | Enable [Topic Detection](https://www.assemblyai.com/docs/speech-understanding/topic-detection), can be true or false |
language_codes | list | — | The language codes of your audio file. Used for [Code switching](/speech-to-text/pre-recorded-audio/code-switching) One of the values specified must be `en`. |
redact_pii_sub | one of entity_name, hash | — | 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. |
speaker_labels | true or false | false | Enable [Speaker diarization](https://www.assemblyai.com/docs/pre-recorded-audio/label-speakers), can be true or false. Requires `punctuate` to be `true`. |
auto_highlights | true or false | false | Enable [Key Phrases](https://www.assemblyai.com/docs/speech-understanding/key-phrases), either true or false |
custom_spelling | JSON | — | Customize how words are spelled and formatted using to and from values. |
keyterms_prompt | list | — | Improve accuracy with up to 200 (for Universal-2) or 1000 (for Universal-3.5 Pro) domain-specific words or phrases (maximum 6 words per phrase). |
speaker_options | JSON | — | Specify options for [Speaker diarization](https://www.assemblyai.com/docs/pre-recorded-audio/label-speakers#set-a-range-of-possible-speakers). |
audio_start_from | number (whole) | — | The point in time, in milliseconds, to begin transcribing in your media file. |
entity_detection | true or false | false | Enable [Entity Detection](https://www.assemblyai.com/docs/speech-understanding/entity-detection), can be true or false |
filter_profanity | true or false | false | Filter profanity from the transcribed text, can be true or false. |
redact_pii_audio | true or false | false | Generate a copy of the original media file with spoken PII "beeped" out, can be true or false. |
speech_threshold | number 0 to 1 | — | Reject audio files that contain less than this fraction of speech. |
remove_audio_tags | one of all, speaker | — | Universal-3.5 Pro generates rich transcripts that can include inline annotations such as audio event markers and speaker cues. |
speakers_expected | number (whole) | — | Tells the speaker label model how many speakers it should attempt to identify. |
language_detection | true or false | — | [Automatic language detection](https://www.assemblyai.com/docs/pre-recorded-audio/language-detection) identifies the spoken language and routes the request to the best model. |
sentiment_analysis | true or false | false | Enable [Sentiment Analysis](https://www.assemblyai.com/docs/speech-understanding/sentiment-analysis), can be true or false. Requires `punctuate` to be `true`. |
redact_pii_policies | list | — | The list of PII Redaction policies to enable. See [PII redaction](https://www.assemblyai.com/docs/pii-redaction) for more details. |
speech_understanding | JSON | — | 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). |
redact_static_entities | JSON | — | A map of user-defined terms to redact, where each key is a redaction label and each value is a list of exact terms to match (e.g. `{ "INTERNAL_TOOL": ["Bearclaw", "Cubclaw"] }`). |
redact_pii_audio_options | JSON | — | Specify options for [PII redacted audio](https://www.assemblyai.com/docs/pii-redaction#request-for-redacted-audio) files. |
redact_pii_audio_quality | one of mp3, wav | — | Controls the filetype of the audio created by redact_pii_audio. |
content_safety_confidence | number (whole) 25 to 100 | — | The confidence threshold for the [Content Moderation](https://www.assemblyai.com/docs/content-moderation) model. |
language_detection_options | JSON | — | Specify options for [Automatic Language Detection](https://www.assemblyai.com/docs/pre-recorded-audio/language-detection). |
redact_pii_return_unredacted | true or false | — | When set to `true`, returns the original unredacted transcript alongside the redacted one in the same response. |
language_confidence_threshold | number 0 to 1 | — | The confidence threshold for the automatically detected language. |
Same request in code
curl https://api.spiral.ai/v1/runs \
-H "Authorization: Bearer $SPIRAL_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $(uuidgen)" \
-d '{
"provider": "assemblyai",
"model": "universal-3-5-pro",
"input": {
"audio_url": "<audio_url>"
}
}'