# Deepgram

Deepgram provides AI-powered speech recognition and understanding services, offering APIs for real-time and pre-recorded audio transcription, text-to-speech, and audio intelligence.

- **Category:** artificial intelligence
- **Auth:** API_KEY
- **Composio Managed App Available?** N/A
- **Tools:** 11
- **Triggers:** 0
- **Slug:** `DEEPGRAM`
- **Version:** 20260316_00

## Tools

### Get Model by ID

**Slug:** `DEEPGRAM_GET_MODEL`

Retrieve metadata for a specific Deepgram model by its UUID. Returns detailed model information including name, architecture, supported languages, version, and capabilities. Works for both STT (speech-to-text) and TTS (text-to-speech) models.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `model_id` | string | Yes | The specific UUID of the model 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 Public Models

**Slug:** `DEEPGRAM_GET_MODELS`

Retrieve metadata on all public Deepgram models (speech-to-text and text-to-speech). Returns comprehensive model information including supported languages, architectures, versions, and capabilities. Set include_outdated to True to include deprecated versions.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `include_outdated` | boolean | No | If true, include all versions of every model; otherwise only the latest. |

#### 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 Deepgram Projects

**Slug:** `DEEPGRAM_GET_PROJECTS`

Tool to list all Deepgram projects. Use after authenticating with your API key.

#### 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 Project Usage Summary

**Slug:** `DEEPGRAM_GET_PROJECT_USAGE_SUMMARY`

Retrieves aggregated usage statistics for a Deepgram project including total audio duration, billable duration, number of requests, channels processed, and confidence/relevance scores. Returns both overall totals and breakdowns by model/accessor/tag. Use this to analyze API consumption, track costs, or monitor transcription quality metrics over time.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `end` | string | No | End date for the usage summary range. Accepts YYYY-MM-DD or ISO 8601 format (e.g., '2024-01-31' or '2024-01-31T23:59:59Z') |
| `tag` | string | No | Filter usage by request tag. Returns only usage from requests tagged with this value |
| `model` | string | No | Filter usage by Deepgram model name (e.g., 'nova-2', 'general', 'whisper'). Returns only usage from requests that used this model |
| `start` | string | No | Start date for the usage summary range. Accepts YYYY-MM-DD or ISO 8601 format (e.g., '2024-01-01' or '2024-01-01T00:00:00Z') |
| `project_id` | string | Yes | Unique identifier of the Deepgram project |
| `accessor_id` | string | No | Filter usage by API key or user accessor ID. Returns only usage attributed to this specific accessor |

#### 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 Project Scopes

**Slug:** `DEEPGRAM_LIST_PROJECT_SCOPES`

Tool to list all scopes for a specified Deepgram project. Use when you need to retrieve all permission scopes for a project.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `project_id` | string | Yes | Unique identifier of the Deepgram project to list scopes 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 |

### List Think Models

**Slug:** `DEEPGRAM_LIST_THINK_MODELS`

Tool to list available think models for AI agent processing and voice agent configuration. Use when you need to see which think models are available for voice agents.

#### 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 |

### Transcribe Pre-recorded Audio

**Slug:** `DEEPGRAM_SPEECH_TO_TEXT_PRE_RECORDED`

Tool to transcribe pre-recorded audio files into text. Use when converting a publicly accessible audio file URL to text. Primary transcript is at `results.channels[0].alternatives[0].transcript` in the response. Silent audio returns a valid empty transcript, not an error. Verify supported models and language codes via `DEEPGRAM_GET_MODELS` when uncertain.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `tier` | string | No | Enhanced tier for higher-accuracy recognition. |
| `model` | string | No | Deepgram model to use (e.g., 'general', 'phonecall'). |
| `diarize` | boolean | No | Enable speaker diarization if true. |
| `keyterm` | array | No | List of keyterms to boost in the transcript. Supported by Nova-3 and Flux models only. Use simple terms without intensifiers (e.g., 'invoice', 'payment terms'). For other models, use 'keywords' instead. |
| `version` | string | No | Specific model version to use. |
| `keywords` | array | No | List of keywords to boost in the transcript. Supported by Nova-2, Nova-1, Enhanced, and Base models. Format: 'keyword:intensifier' (e.g., 'invoice:5'). For Nova-3 or Flux models, use 'keyterm' instead. |
| `language` | string | No | Language code for transcription (e.g., 'en-US'). |
| `audio_url` | string | Yes | Public URL of the audio file to transcribe. Must be a direct, publicly downloadable media file URL — not a preview page, auth-gated link, or expiring/short-lived URL. |
| `punctuate` | boolean | No | Automatically punctuate transcript. |
| `alternatives` | integer | No | Number of alternative transcripts to return. |
| `content_type` | string ("audio/wav" | "audio/mp3" | "audio/mpeg" | "audio/flac" | "audio/webm") | Yes | MIME type of the audio file. |
| `smart_format` | boolean | No | Apply smart formatting (capitalization/punctuation). |
| `detect_language` | boolean | No | Automatically detect language if true. Prefer explicit `language` over this when the audio language is known; auto-detection reduces accuracy for non-English content. |
| `interim_results` | boolean | No | Return interim results if true. |

#### 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 |

### Text-to-Speech (REST)

**Slug:** `DEEPGRAM_TEXT_TO_SPEECH_REST`

Tool to convert text into natural-sounding speech. Use when you need TTS audio from text inputs.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `text` | string | Yes | The text to be synthesized into speech. |
| `model` | string | No | Deepgram TTS model to use (e.g., 'aura-asteria-en'). |
| `pitch` | number | No | Pitch adjustment multiplier (0.5–2.0). |
| `speed` | number | No | Speech rate multiplier (0.25–4.0). |
| `voice` | string | No | Desired voice within the selected model. |
| `version` | string | No | Model version identifier. |
| `encoding` | string | No | Audio encoding type (e.g., 'linear16', 'mp3'). |
| `language` | string | No | Language code for synthesis (e.g., 'en-US'). |
| `container` | string | No | Container format for audio (e.g., 'wav', 'mp3'). |
| `sample_rate` | integer | No | Desired sample rate for output audio in Hz (e.g., 16000). |

#### 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 |
