# Rev AI

Affordable, accurate, easy-to-use speech-to-text solutions powered by people and A.I working together. Rev offers transcripts, captions, subtitles, and more.

- **Category:** transcription
- **Auth:** API_KEY
- **Composio Managed App Available?** N/A
- **Tools:** 36
- **Triggers:** 0
- **Slug:** `REV`
- **Version:** 20260223_00

## Tools

### Create RTMP Stream

**Slug:** `REV_CREATE_RTMP_STREAM`

Tool to create an RTMP live stream session for real-time transcription of live audio/video streams. Use when you need to set up streaming transcription via RTMP protocol.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `language` | string | No | Language code for transcription in ISO 639-1 format (e.g., 'en', 'es', 'fr'). |
| `metadata` | string | No | Custom metadata string to associate with the stream for tracking purposes. |
| `priority` | string | No | Processing priority setting (e.g., 'accuracy', 'speed'). |
| `transcriber` | string | No | Transcriber type to use for processing (e.g., 'machine'). |
| `filter_profanity` | boolean | No | Whether to filter profanity from the transcription output. |
| `detailed_partials` | boolean | No | Whether to enable detailed partial transcription results during streaming. |
| `remove_disfluencies` | boolean | No | Whether to remove disfluencies (e.g., 'um', 'uh') from the transcription. |
| `skip_postprocessing` | boolean | No | Whether to skip post-processing phase of transcription. |
| `custom_vocabulary_id` | string | No | ID of a custom vocabulary to improve transcription accuracy for domain-specific terms. |
| `enable_speaker_switch` | boolean | No | Whether to enable speaker switching detection in the stream. |
| `max_segment_duration_seconds` | integer | No | Maximum duration in seconds for each transcription segment. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Alignment Job

**Slug:** `REV_DELETE_ALIGNMENT_JOB`

Tool to delete a forced alignment job and its associated data. Use when you need to permanently remove an alignment job after confirming it's no longer needed.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the forced alignment job to delete |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Custom Vocabulary

**Slug:** `REV_DELETE_CUSTOM_VOCABULARY`

Tool to delete a completed custom vocabulary and its data. Use when you need to remove an unused vocabulary after confirming it's no longer needed.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | Unique identifier of the custom vocabulary to delete |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Job By ID

**Slug:** `REV_DELETE_JOB_BY_ID`

Tool to delete a completed transcription job and its data. Use when you need to permanently remove a finished job after confirming it's no longer needed.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the job to delete |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Language ID Job

**Slug:** `REV_DELETE_LANGUAGE_ID_JOB`

Tool to delete a language identification job and its associated data. Use when you need to permanently remove a language ID job that is no longer needed.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the language identification job to delete |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Sentiment Analysis Job

**Slug:** `REV_DELETE_SENTIMENT_JOB`

Tool to delete a specific sentiment analysis job and its associated data. Use when you need to permanently remove a sentiment analysis job after confirming it's no longer needed.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the sentiment analysis job to delete |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Topic Extraction Job

**Slug:** `REV_DELETE_TOPIC_EXTRACTION_JOB`

Tool to delete a topic extraction job and its associated data. Use when you need to permanently remove a topic extraction job after confirming it's no longer needed.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the topic extraction job to delete |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Account

**Slug:** `REV_GET_ACCOUNT`

Retrieves Rev AI account information including email, credit balance (in hours), and HIPAA status. Returns current free, purchased, and total balance available for transcription services. No parameters required - uses authenticated credentials.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Alignment Job

**Slug:** `REV_GET_ALIGNMENT_JOB`

Tool to get details of a specific forced alignment job including its status. Use when checking the progress of alignment job processing.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | Unique identifier of the forced alignment job to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Alignment Transcript

**Slug:** `REV_GET_ALIGNMENT_TRANSCRIPT`

Tool to retrieve the aligned transcript with timestamps for a completed alignment job. Use after confirming the alignment job status is 'completed'.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | Unique identifier of the alignment job to retrieve the transcript for. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Captions

**Slug:** `REV_GET_CAPTIONS`

Tool to retrieve captions (SRT or VTT) for a completed Rev.ai transcription job. Use after confirming the job status is 'completed'.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `accept` | string ("application/x-subrip" | "text/vtt") | No | Caption format: SRT (application/x-subrip) or WebVTT (text/vtt). |
| `job_id` | string | Yes | The ID of the completed transcription job. |
| `channel_id` | integer | No | Optional audio channel number for multi-channel jobs. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Captions Translation

**Slug:** `REV_GET_CAPTIONS_TRANSLATION`

Tool to retrieve translated captions for a completed Rev.ai transcription job. Use after confirming the job has translation enabled and is complete.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The ID of the completed transcription job that was submitted with translation enabled. |
| `accept` | string ("application/x-subrip" | "text/vtt") | No | Caption format: SRT (application/x-subrip) or WebVTT (text/vtt). |
| `language_id` | string | Yes | The target language code for translation (e.g., 'es' for Spanish, 'fr' for French, 'de' for German). Must match one of the target languages specified in translation_config when the job was submitted. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Custom Vocabulary Details

**Slug:** `REV_GET_CUSTOM_VOCABULARY_DETAILS`

Tool to retrieve custom vocabulary processing details. Use when needing to fetch the status and submitted phrases for a specific custom vocabulary after creation.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | Unique identifier of the custom vocabulary to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Job by ID

**Slug:** `REV_GET_JOB_BY_ID`

Tool to fetch details of a transcription job by its ID. Use when confirming job status and metadata are accurate.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | Unique identifier of the transcription job to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Language ID Job

**Slug:** `REV_GET_LANGUAGE_ID_JOB`

Tool to fetch details of a language identification job by its ID. Use when checking job status and retrieving language identification results.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | Unique identifier of the language identification job to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Language Identification Result

**Slug:** `REV_GET_LANGUAGE_ID_RESULT`

Tool to retrieve language identification results for a completed job. Use when you need to get detected language and confidence scores for an audio file.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | Unique identifier of the language identification job. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get List of Jobs

**Slug:** `REV_GET_LIST_OF_JOBS`

Retrieves a list of transcription jobs from the past 30 days in reverse chronological order (newest first). Use this tool to: - View recent transcription jobs and their statuses - Monitor job progress (in_progress, transcribed, failed) - Check job details like duration, language, and submission options - Paginate through large result sets using cursor-based pagination - Find specific jobs for further operations (get transcript, get captions, delete) Note: Jobs older than 30 days are not returned. Supports pagination up to 1000 jobs per request.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum number of jobs to return per call. Defaults to 100 if not specified. Maximum allowed is 1000. |
| `ending_before` | string | No | Job ID for cursor-based pagination. Returns jobs created chronologically before (but not including) this job ID. Use to paginate backwards through results. |
| `starting_after` | string | No | Job ID for cursor-based pagination. Returns jobs created chronologically after (but not including) this job ID. Use the last job ID from a previous response to get the next page of results. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Sentiment Job

**Slug:** `REV_GET_SENTIMENT_JOB`

Tool to fetch details of a sentiment analysis job by its ID. Use when checking sentiment analysis job status and metadata.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | Unique identifier of the sentiment analysis job to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Sentiment Analysis Result

**Slug:** `REV_GET_SENTIMENT_RESULT`

Tool to retrieve sentiment analysis results for a completed Rev.ai sentiment job. Use when you need to get sentiment scores and labels for transcribed content. The job must be in 'completed' status before results can be retrieved.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | Unique identifier of the sentiment analysis job. The job must be in 'completed' status to retrieve results. |
| `filter_for` | string ("positive" | "negative" | "neutral") | No | Filter sentiment results by sentiment type. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Topic Extraction Result

**Slug:** `REV_GET_TOPIC_EXTRACTION_RESULT`

Tool to retrieve topic extraction results for a completed job. Use after confirming the topic extraction job is complete. Returns identified topics with relevance scores and supporting evidence from the content.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | Unique identifier of the topic extraction job to retrieve results for. |
| `threshold` | number | No | Optional threshold value to filter topics by score. Only topics with scores above this threshold will be returned. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Topic Job

**Slug:** `REV_GET_TOPIC_JOB`

Tool to fetch details of a topic extraction job by its ID. Use when you need to check the status of a topic extraction job or retrieve its metadata.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | Unique identifier of the topic extraction job to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Transcript by ID

**Slug:** `REV_GET_TRANSCRIPT_BY_ID`

Tool to retrieve the transcript of a completed Rev.ai job. Use after confirming job is complete. Supports JSON format (with timestamps and speaker info) or plain text format.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | Identifier for the transcription job. |
| `accept` | string ("application/vnd.rev.transcript.v1.0+json" | "text/plain") | No | Output format. Supported values: application/vnd.rev.transcript.v1.0+json (default) for JSON with timestamps and speaker info, or text/plain for plain text. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Transcript Summary

**Slug:** `REV_GET_TRANSCRIPT_SUMMARY`

Tool to retrieve a summary of the transcript for a completed transcription job. Use after confirming the job is complete and was submitted with summarization_config enabled.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | Identifier for the completed transcription job. |
| `accept` | string ("application/vnd.rev.transcript.v1.0+json" | "text/plain") | No | Output format. Supported values: text/plain (default) for plain text summary, or application/vnd.rev.transcript.v1.0+json for JSON format with metadata. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Transcript Translation

**Slug:** `REV_GET_TRANSCRIPT_TRANSLATION`

Tool to retrieve a translated version of the transcript for a completed Rev.ai job. Use after confirming job is complete and translation was requested when submitting the job.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The ID of the transcription job. |
| `accept` | string ("application/vnd.rev.transcript.v1.0+json" | "text/plain") | No | Output format. Supported values: application/vnd.rev.transcript.v1.0+json (default) for JSON with timestamps and speaker info, or text/plain for plain text. |
| `language_id` | string | Yes | The target language code for translation (e.g., 'es' for Spanish, 'fr' for French, 'de' for German). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Alignment Jobs

**Slug:** `REV_LIST_ALIGNMENT_JOBS`

Tool to retrieve a list of all forced alignment jobs for the account. Use when you need to view and monitor forced alignment job statuses, check job details, or paginate through alignment job results.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum number of alignment jobs to return per call. Defaults to 100. |
| `starting_after` | string | No | Job ID for cursor-based pagination. Returns jobs created chronologically after (but not including) this job ID. Use the last job ID from a previous response to get the next page of results. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Custom Vocabularies

**Slug:** `REV_LIST_CUSTOM_VOCABULARIES`

Tool to retrieve a list of all custom vocabularies for the account. Use when needing to view available custom vocabularies that can be used to improve transcription accuracy on domain-specific terminology.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum number of custom vocabularies to return. Defaults to 100 if not specified. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Language Identification Jobs

**Slug:** `REV_LIST_LANGUAGE_ID_JOBS`

Tool to retrieve a list of language identification jobs for the account. Use when you need to check the status of language identification jobs or monitor their progress.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum number of jobs to return per call. Defaults to 100. |
| `starting_after` | string | No | Job ID for cursor-based pagination. Returns jobs created chronologically after (but not including) this job ID. Use the last job ID from a previous response to get the next page of results. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Sentiment Analysis Jobs

**Slug:** `REV_LIST_SENTIMENT_JOBS`

Tool to retrieve a list of all sentiment analysis jobs for the account. Use when you need to view sentiment analysis job history, monitor job statuses, or find specific jobs for further operations.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum number of jobs to return per call. Defaults to 100 if not specified. Maximum allowed is 1000. |
| `starting_after` | string | No | Job ID for cursor-based pagination. Returns jobs created chronologically after (but not including) this job ID. Use the last job ID from a previous response to get the next page of results. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Topic Extraction Jobs

**Slug:** `REV_LIST_TOPIC_JOBS`

Tool to retrieve a list of all topic extraction jobs for the account. Use when you need to view topic extraction job history, monitor job statuses, or find specific jobs for further operations.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum number of jobs to return per call. Defaults to 100 if not specified. Maximum allowed is 1000. |
| `starting_after` | string | No | Job ID for cursor-based pagination. Returns jobs created chronologically after (but not including) this job ID. Use the last job ID from a previous response to get the next page of results. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Start Stream Transcription

**Slug:** `REV_START_STREAM_TRANSCRIPTION`

Tool to start a WebSocket transcription stream. Use when you need real-time speech-to-text streaming via Rev.ai.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `language` | string | No | Language code in ISO 639-1 format for transcription, default 'en'. |
| `metadata` | string | No | Optional user metadata string to associate with the stream. |
| `priority` | string ("speed" | "quality") | No | Priority of transcription processing: 'speed' or 'quality'. |
| `start_ts` | number | No | Initial timestamp (in seconds) from which to start transcription. |
| `transcriber` | string | No | Select a transcriber model, if multiple are available. |
| `content_type` | string | Yes | Audio MIME type and parameters (e.g., 'audio/x-raw;layout=interleaved;rate=16000;format=S16LE;channels=1', 'audio/x-wav', 'audio/x-flac'). |
| `filter_profanity` | boolean | No | Whether to filter profanity from transcripts. |
| `detailed_partials` | boolean | No | Whether to send detailed partial results. |
| `remove_disfluencies` | boolean | No | Whether to remove disfluencies (um, uh) from transcripts. |
| `skip_postprocessing` | boolean | No | Whether to skip post-processing phase. |
| `custom_vocabulary_id` | string | No | ID of a custom vocabulary to apply, if available. |
| `delete_after_seconds` | integer | No | If set, server will delete the stream results after given seconds. |
| `enable_speaker_switch` | boolean | No | Whether to enable speaker-switch detection. |
| `max_connection_wait_seconds` | integer | No | Maximum seconds to wait for WebSocket connection establishment. |
| `max_segment_duration_seconds` | integer | No | Maximum duration in seconds of each transcription segment. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Submit Alignment Job

**Slug:** `REV_SUBMIT_ALIGNMENT_JOB`

Tool to submit an audio file with existing transcript for forced alignment. Use when you need to add accurate timestamps to transcript text by aligning it with the corresponding audio file. Forced alignment is useful when you already have a transcript but need precise word-level or phrase-level timestamps. Both the audio file and transcript must be publicly accessible via HTTP(S) URLs.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `language` | string ("en" | "es" | "fr") | No | Language of the audio and transcript. Must be one of: en (English), es (Spanish), fr (French). Default is English (en) |
| `metadata` | string | No | Custom metadata string (up to 512 chars) stored with the alignment job. Useful for tracking job context, order IDs, user IDs, etc. |
| `source_config` | object | Yes | Configuration specifying the audio file URL to be aligned |
| `notification_config` | object | No | Optional webhook configuration for job completion notifications. |
| `delete_after_seconds` | integer | No | Automatically delete the completed alignment job and its data after this many seconds. Useful for managing storage and privacy. Set to 0 to delete immediately after completion |
| `source_transcript_config` | object | Yes | Configuration specifying the transcript text file URL to be aligned with the audio |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Submit Custom Vocabulary

**Slug:** `REV_SUBMIT_CUSTOM_VOCABULARY`

Submits a custom vocabulary to Rev.ai for improved speech recognition accuracy on domain-specific terms. The vocabulary is processed asynchronously and returns immediately with an 'in_progress' status. Use the returned vocabulary ID in transcription jobs to boost recognition of your custom phrases. Common use cases: brand names, technical jargon, medical terms, product names, industry acronyms. Rate limit: 150 requests per 2 minutes.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `phrases` | array | Yes | List of phrases or words to boost in speech recognition. Each phrase must: contain only ASCII letters and punctuation (U+0000-U+007F, no numbers or accented characters), have at least one letter, and be 34 characters or less per word. Best practice: use 500 or fewer short phrases (5 words or less each) for optimal accuracy. API limit: 6000 phrases for English, 1000 for other languages. |
| `metadata` | string | No | Optional user-defined metadata string to store additional context about the vocabulary (e.g., domain, version, purpose). This is returned with the vocabulary details for reference. |
| `custom_vocabulary_id` | string | No | Optional client-provided identifier for the custom vocabulary. If not provided, Rev.ai will auto-generate an ID. Use this to track vocabularies in your system. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Submit Language ID Job

**Slug:** `REV_SUBMIT_LANGUAGE_ID_JOB`

Tool to submit an audio file for language identification to detect the spoken language. Use when you need to identify which language is spoken in an audio recording.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `metadata` | string | No | Custom metadata string (up to 512 chars) stored with the job and returned in responses. Useful for tracking job context, order IDs, user IDs, etc. |
| `source_config` | object | Yes | Configuration specifying the audio source URL to analyze |
| `notification_config` | object | No | Configuration for webhook notifications when the job completes. |
| `delete_after_seconds` | integer | No | Automatically delete the completed job and its data after this many seconds. Useful for managing storage and privacy. Set to 0 to delete immediately after completion |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Submit Sentiment Analysis Job

**Slug:** `REV_SUBMIT_SENTIMENT_ANALYSIS_JOB`

Submit text for sentiment analysis to detect positive, negative, or neutral sentiments. Use when analyzing customer feedback, reviews, support tickets, or transcribed audio for emotional tone. Provide either plain text (text parameter) or a Rev AI transcript JSON (transcript_json parameter). The job processes asynchronously; use the returned job ID to retrieve results when complete.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `text` | string | No | Plain text content to analyze for sentiment. Use this when submitting raw text for analysis |
| `language` | string | No | Language code for the text content (e.g., 'en' for English, 'es' for Spanish). Required if using non-English text |
| `metadata` | string | No | Custom metadata string stored with the job and returned in responses. Useful for tracking job context, order IDs, user IDs, etc. |
| `transcript_json` | object | No | JSON transcript structure from Rev AI speech-to-text API. |
| `notification_config` | object | No | Webhook configuration for job completion notifications. |
| `delete_after_seconds` | integer | No | Time in seconds after which the job will be automatically deleted. Useful for managing storage and privacy |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Submit Topic Extraction Job

**Slug:** `REV_SUBMIT_TOPIC_EXTRACTION_JOB`

Tool to submit text or transcripts for topic extraction to identify key topics and themes. Use when analyzing conversation content, meeting transcripts, or text to extract main discussion points. Supports both plain text input (up to 14000 words) and structured JSON transcripts from Rev.ai's Speech-to-Text API. Results are processed asynchronously; use the returned job ID to check status and retrieve extracted topics when complete.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `json` | object | No | JSON transcript format from Rev.ai Speech-to-Text API. |
| `text` | string | No | Plain text content to analyze for topic extraction. Maximum 14000 words. Use this for simple text input |
| `language` | string | No | Language code for the content (e.g., 'en', 'es', 'fr'). If not specified, language may be auto-detected from the content |
| `metadata` | string | No | Custom metadata string (up to 512 chars) stored with the job and returned in responses. Useful for tracking job context, order IDs, user IDs, etc. |
| `notification_config` | object | No | Configuration for webhook notifications when job completes. |
| `delete_after_seconds` | integer | No | Automatically delete the completed job and its data after this many seconds. Useful for managing storage and privacy. Set to 0 to delete immediately after completion |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Submit Transcription Job

**Slug:** `REV_SUBMIT_TRANSCRIPTION_JOB`

Submit an audio or video file for asynchronous transcription using Rev.ai. Use this action to convert speech to text from media files. Provide either a publicly accessible URL (media_url) or upload file bytes directly. The job processes asynchronously; use the returned job ID to check status and retrieve the transcript when complete. Supports speaker diarization, punctuation, profanity filtering, custom vocabularies, and multiple languages.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `file` | string | No | Binary audio/video content to upload directly (use when media_url is not available). File size limit: 2GB for direct uploads |
| `language` | string | No | Language code for the audio (ISO 639-1 or BCP-47 format, lowercase). Supports English, Spanish, French, German, Portuguese, Italian, and 40+ others. Use 'auto' for automatic detection. Note: filter_profanity and skip_punctuation are only available for English transcription |
| `metadata` | string | No | Custom metadata string (up to 512 chars) stored with the job and returned in responses. Useful for tracking job context, order IDs, user IDs, etc. |
| `media_url` | string | No | Publicly accessible HTTP(S) URL of the audio/video file to transcribe. Supports formats like MP3, MP4, WAV, FLAC, Ogg, and others supported by FFmpeg. File size limit: 5TB via URL |
| `callback_url` | string | No | HTTPS URL where Rev.ai will POST a notification when transcription completes. Webhook receives the job object as JSON |
| `filter_profanity` | boolean | No | Set to true to replace profane words with asterisks in the transcript. Default false returns raw transcription without filtering |
| `skip_diarization` | boolean | No | Set to true to disable speaker diarization (identifying different speakers). Default false means speakers will be labeled as 'Speaker 1', 'Speaker 2', etc. |
| `skip_punctuation` | boolean | No | Set to true to disable automatic punctuation in the transcript. Default false adds periods, commas, question marks, etc. |
| `translation_config` | object | No | Configuration for automatic transcript translation into target languages. |
| `custom_vocabularies` | array | No | List of custom vocabulary IDs to improve transcription accuracy for domain-specific terms, proper nouns, technical jargon, or brand names. Submit vocabularies separately first |
| `delete_after_seconds` | integer | No | Automatically delete the completed job and its data after this many seconds. Useful for managing storage and privacy. Set to 0 to delete immediately after completion |
| `transcription_config` | object | No | Advanced settings for controlling transcription behavior and output format. |
| `speaker_channel_count` | integer | No | Number of audio channels to treat as separate speakers (for multi-channel audio files). Each channel will be transcribed separately and attributed to a different speaker. Use when you have recordings with isolated speaker tracks |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |
