# Reference ## Agent V1 Settings Think Models
client.agent.v1.settings.think.models.list() -> Deepgram.AgentThinkModelsV1Response
#### πŸ“ Description
Retrieves the available think models that can be used for AI agent processing
#### πŸ”Œ Usage
```typescript await client.agent.v1.settings.think.models.list(); ```
#### βš™οΈ Parameters
**requestOptions:** `ModelsClient.RequestOptions`
## Auth V1 Tokens
client.auth.v1.tokens.grant({ ...params }) -> Deepgram.GrantV1Response
#### πŸ“ Description
Generates a temporary JSON Web Token (JWT) with a 30-second (by default) TTL and usage::write permission for core voice APIs, requiring an API key with Member or higher authorization. Tokens created with this endpoint will not work with the Manage APIs.
#### πŸ”Œ Usage
```typescript await client.auth.v1.tokens.grant(); ```
#### βš™οΈ Parameters
**request:** `Deepgram.auth.v1.GrantV1Request`
**requestOptions:** `TokensClient.RequestOptions`
## Listen V1 Media
client.listen.v1.media.transcribeUrl({ ...params }) -> Deepgram.MediaTranscribeResponse
#### πŸ“ Description
Transcribe audio and video using Deepgram's speech-to-text REST API
#### πŸ”Œ Usage
```typescript await client.listen.v1.media.transcribeUrl({ callback: "callback", callback_method: "POST", extra: "extra", sentiment: true, summarize: "v2", tag: "tag", topics: true, custom_topic: "custom_topic", custom_topic_mode: "extended", intents: true, custom_intent: "custom_intent", custom_intent_mode: "extended", detect_entities: true, detect_language: true, diarize: true, diarize_model: "latest", dictation: true, encoding: "linear16", filler_words: true, keyterm: ["keyterm"], keywords: "keywords", language: "language", measurements: true, model: "nova-3", multichannel: true, numerals: true, paragraphs: true, profanity_filter: true, punctuate: true, redact: "redact", replace: "replace", search: "search", smart_format: true, utterances: true, utt_split: 1.1, version: "latest", mip_opt_out: true, url: "https://dpgr.am/spacewalk.wav" }); ```
#### βš™οΈ Parameters
**request:** `Deepgram.listen.v1.ListenV1RequestUrl`
**requestOptions:** `MediaClient.RequestOptions`
client.listen.v1.media.transcribeFile(uploadable, { ...params }) -> Deepgram.MediaTranscribeResponse
#### πŸ“ Description
Transcribe audio and video using Deepgram's speech-to-text REST API
#### πŸ”Œ Usage
```typescript await client.listen.v1.media.transcribeFile(createReadStream("path/to/file"), {}); ```
#### βš™οΈ Parameters
**uploadable:** `core.file.Uploadable`
**request:** `Deepgram.listen.v1.MediaTranscribeRequestOctetStream`
**requestOptions:** `MediaClient.RequestOptions`
## Manage V1 Models
client.manage.v1.models.list({ ...params }) -> Deepgram.ListModelsV1Response
#### πŸ“ Description
Returns metadata on all the latest public models. To retrieve custom models, use Get Project Models.
#### πŸ”Œ Usage
```typescript await client.manage.v1.models.list({ include_outdated: true }); ```
#### βš™οΈ Parameters
**request:** `Deepgram.manage.v1.ModelsListRequest`
**requestOptions:** `ModelsClient.RequestOptions`
client.manage.v1.models.get(model_id) -> Deepgram.GetModelV1Response
#### πŸ“ Description
Returns metadata for a specific public model
#### πŸ”Œ Usage
```typescript await client.manage.v1.models.get("af6e9977-99f6-4d8f-b6f5-dfdf6fb6e291"); ```
#### βš™οΈ Parameters
**model_id:** `string` β€” The specific UUID of the model
**requestOptions:** `ModelsClient.RequestOptions`
## Manage V1 Projects
client.manage.v1.projects.list() -> Deepgram.ListProjectsV1Response
#### πŸ“ Description
Retrieves basic information about the projects associated with the API key
#### πŸ”Œ Usage
```typescript await client.manage.v1.projects.list(); ```
#### βš™οΈ Parameters
**requestOptions:** `ProjectsClient.RequestOptions`
client.manage.v1.projects.get(project_id, { ...params }) -> Deepgram.GetProjectV1Response
#### πŸ“ Description
Retrieves information about the specified project
#### πŸ”Œ Usage
```typescript await client.manage.v1.projects.get("123456-7890-1234-5678-901234", { limit: 1.1, page: 1.1 }); ```
#### βš™οΈ Parameters
**project_id:** `string` β€” The unique identifier of the project
**request:** `Deepgram.manage.v1.ProjectsGetRequest`
**requestOptions:** `ProjectsClient.RequestOptions`
client.manage.v1.projects.delete(project_id) -> Deepgram.DeleteProjectV1Response
#### πŸ“ Description
Deletes the specified project
#### πŸ”Œ Usage
```typescript await client.manage.v1.projects.delete("123456-7890-1234-5678-901234"); ```
#### βš™οΈ Parameters
**project_id:** `string` β€” The unique identifier of the project
**requestOptions:** `ProjectsClient.RequestOptions`
client.manage.v1.projects.update(project_id, { ...params }) -> Deepgram.UpdateProjectV1Response
#### πŸ“ Description
Updates the name or other properties of an existing project
#### πŸ”Œ Usage
```typescript await client.manage.v1.projects.update("123456-7890-1234-5678-901234"); ```
#### βš™οΈ Parameters
**project_id:** `string` β€” The unique identifier of the project
**request:** `Deepgram.manage.v1.UpdateProjectV1Request`
**requestOptions:** `ProjectsClient.RequestOptions`
client.manage.v1.projects.leave(project_id) -> Deepgram.LeaveProjectV1Response
#### πŸ“ Description
Removes the authenticated account from the specific project
#### πŸ”Œ Usage
```typescript await client.manage.v1.projects.leave("123456-7890-1234-5678-901234"); ```
#### βš™οΈ Parameters
**project_id:** `string` β€” The unique identifier of the project
**requestOptions:** `ProjectsClient.RequestOptions`
## Manage V1 Projects Keys
client.manage.v1.projects.keys.list(project_id, { ...params }) -> Deepgram.ListProjectKeysV1Response
#### πŸ“ Description
Retrieves all API keys associated with the specified project
#### πŸ”Œ Usage
```typescript await client.manage.v1.projects.keys.list("123456-7890-1234-5678-901234", { status: "active" }); ```
#### βš™οΈ Parameters
**project_id:** `string` β€” The unique identifier of the project
**request:** `Deepgram.manage.v1.projects.KeysListRequest`
**requestOptions:** `KeysClient.RequestOptions`
client.manage.v1.projects.keys.create(project_id, { ...params }) -> Deepgram.CreateKeyV1Response
#### πŸ“ Description
Creates a new API key with specified settings for the project
#### πŸ”Œ Usage
```typescript await client.manage.v1.projects.keys.create("project_id", { "key": "value" }); ```
#### βš™οΈ Parameters
**project_id:** `string` β€” The unique identifier of the project
**request:** `Deepgram.CreateKeyV1Request`
**requestOptions:** `KeysClient.RequestOptions`
client.manage.v1.projects.keys.get(project_id, key_id) -> Deepgram.GetProjectKeyV1Response
#### πŸ“ Description
Retrieves information about a specified API key
#### πŸ”Œ Usage
```typescript await client.manage.v1.projects.keys.get("123456-7890-1234-5678-901234", "123456789012345678901234"); ```
#### βš™οΈ Parameters
**project_id:** `string` β€” The unique identifier of the project
**key_id:** `string` β€” The unique identifier of the API key
**requestOptions:** `KeysClient.RequestOptions`
client.manage.v1.projects.keys.delete(project_id, key_id) -> Deepgram.DeleteProjectKeyV1Response
#### πŸ“ Description
Deletes an API key for a specific project
#### πŸ”Œ Usage
```typescript await client.manage.v1.projects.keys.delete("123456-7890-1234-5678-901234", "123456789012345678901234"); ```
#### βš™οΈ Parameters
**project_id:** `string` β€” The unique identifier of the project
**key_id:** `string` β€” The unique identifier of the API key
**requestOptions:** `KeysClient.RequestOptions`
## Manage V1 Projects Members
client.manage.v1.projects.members.list(project_id) -> Deepgram.ListProjectMembersV1Response
#### πŸ“ Description
Retrieves a list of members for a given project
#### πŸ”Œ Usage
```typescript await client.manage.v1.projects.members.list("123456-7890-1234-5678-901234"); ```
#### βš™οΈ Parameters
**project_id:** `string` β€” The unique identifier of the project
**requestOptions:** `MembersClient.RequestOptions`
client.manage.v1.projects.members.delete(project_id, member_id) -> Deepgram.DeleteProjectMemberV1Response
#### πŸ“ Description
Removes a member from the project using their unique member ID
#### πŸ”Œ Usage
```typescript await client.manage.v1.projects.members.delete("123456-7890-1234-5678-901234", "123456789012345678901234"); ```
#### βš™οΈ Parameters
**project_id:** `string` β€” The unique identifier of the project
**member_id:** `string` β€” The unique identifier of the Member
**requestOptions:** `MembersClient.RequestOptions`
## Manage V1 Projects Models
client.manage.v1.projects.models.list(project_id, { ...params }) -> Deepgram.ListModelsV1Response
#### πŸ“ Description
Returns metadata on all the latest models that a specific project has access to, including non-public models
#### πŸ”Œ Usage
```typescript await client.manage.v1.projects.models.list("123456-7890-1234-5678-901234", { include_outdated: true }); ```
#### βš™οΈ Parameters
**project_id:** `string` β€” The unique identifier of the project
**request:** `Deepgram.manage.v1.projects.ModelsListRequest`
**requestOptions:** `ModelsClient.RequestOptions`
client.manage.v1.projects.models.get(project_id, model_id) -> Deepgram.GetModelV1Response
#### πŸ“ Description
Returns metadata for a specific model
#### πŸ”Œ Usage
```typescript await client.manage.v1.projects.models.get("123456-7890-1234-5678-901234", "af6e9977-99f6-4d8f-b6f5-dfdf6fb6e291"); ```
#### βš™οΈ Parameters
**project_id:** `string` β€” The unique identifier of the project
**model_id:** `string` β€” The specific UUID of the model
**requestOptions:** `ModelsClient.RequestOptions`
## Manage V1 Projects Requests
client.manage.v1.projects.requests.list(project_id, { ...params }) -> Deepgram.ListProjectRequestsV1Response
#### πŸ“ Description
Generates a list of requests for a specific project
#### πŸ”Œ Usage
```typescript await client.manage.v1.projects.requests.list("123456-7890-1234-5678-901234", { start: "2024-01-15T09:30:00Z", end: "2024-01-15T09:30:00Z", limit: 1.1, page: 1.1, accessor: "12345678-1234-1234-1234-123456789012", request_id: "12345678-1234-1234-1234-123456789012", deployment: "hosted", endpoint: "listen", method: "sync", status: "succeeded" }); ```
#### βš™οΈ Parameters
**project_id:** `string` β€” The unique identifier of the project
**request:** `Deepgram.manage.v1.projects.RequestsListRequest`
**requestOptions:** `RequestsClient.RequestOptions`
client.manage.v1.projects.requests.get(project_id, request_id) -> Deepgram.GetProjectRequestV1Response
#### πŸ“ Description
Retrieves a specific request for a specific project
#### πŸ”Œ Usage
```typescript await client.manage.v1.projects.requests.get("123456-7890-1234-5678-901234", "123456-7890-1234-5678-901234"); ```
#### βš™οΈ Parameters
**project_id:** `string` β€” The unique identifier of the project
**request_id:** `string` β€” The unique identifier of the request
**requestOptions:** `RequestsClient.RequestOptions`
## Manage V1 Projects Usage
client.manage.v1.projects.usage.get(project_id, { ...params }) -> Deepgram.UsageV1Response
#### πŸ“ Description
Retrieves the usage for a specific project. Use Get Project Usage Breakdown for a more comprehensive usage summary.
#### πŸ”Œ Usage
```typescript await client.manage.v1.projects.usage.get("123456-7890-1234-5678-901234", { start: "start", end: "end", accessor: "12345678-1234-1234-1234-123456789012", alternatives: true, callback_method: true, callback: true, channels: true, custom_intent_mode: true, custom_intent: true, custom_topic_mode: true, custom_topic: true, deployment: "hosted", detect_entities: true, detect_language: true, diarize: true, dictation: true, encoding: true, endpoint: "listen", extra: true, filler_words: true, intents: true, keyterm: true, keywords: true, language: true, measurements: true, method: "sync", model: "6f548761-c9c0-429a-9315-11a1d28499c8", multichannel: true, numerals: true, paragraphs: true, profanity_filter: true, punctuate: true, redact: true, replace: true, sample_rate: true, search: true, sentiment: true, smart_format: true, summarize: true, tag: "tag1", topics: true, utt_split: true, utterances: true, version: true }); ```
#### βš™οΈ Parameters
**project_id:** `string` β€” The unique identifier of the project
**request:** `Deepgram.manage.v1.projects.UsageGetRequest`
**requestOptions:** `UsageClient.RequestOptions`
## Manage V1 Projects Billing Balances
client.manage.v1.projects.billing.balances.list(project_id) -> Deepgram.ListProjectBalancesV1Response
#### πŸ“ Description
Generates a list of outstanding balances for the specified project
#### πŸ”Œ Usage
```typescript await client.manage.v1.projects.billing.balances.list("123456-7890-1234-5678-901234"); ```
#### βš™οΈ Parameters
**project_id:** `string` β€” The unique identifier of the project
**requestOptions:** `BalancesClient.RequestOptions`
client.manage.v1.projects.billing.balances.get(project_id, balance_id) -> Deepgram.GetProjectBalanceV1Response
#### πŸ“ Description
Retrieves details about the specified balance
#### πŸ”Œ Usage
```typescript await client.manage.v1.projects.billing.balances.get("123456-7890-1234-5678-901234", "123456-7890-1234-5678-901234"); ```
#### βš™οΈ Parameters
**project_id:** `string` β€” The unique identifier of the project
**balance_id:** `string` β€” The unique identifier of the balance
**requestOptions:** `BalancesClient.RequestOptions`
## Manage V1 Projects Billing Breakdown
client.manage.v1.projects.billing.breakdown.list(project_id, { ...params }) -> Deepgram.BillingBreakdownV1Response
#### πŸ“ Description
Retrieves the billing summary for a specific project, with various filter options or by grouping options.
#### πŸ”Œ Usage
```typescript await client.manage.v1.projects.billing.breakdown.list("123456-7890-1234-5678-901234", { start: "start", end: "end", accessor: "12345678-1234-1234-1234-123456789012", deployment: "hosted", tag: "tag1", line_item: "streaming::nova-3", grouping: ["deployment", "line_item"] }); ```
#### βš™οΈ Parameters
**project_id:** `string` β€” The unique identifier of the project
**request:** `Deepgram.manage.v1.projects.billing.BreakdownListRequest`
**requestOptions:** `BreakdownClient.RequestOptions`
## Manage V1 Projects Billing Fields
client.manage.v1.projects.billing.fields.list(project_id, { ...params }) -> Deepgram.ListBillingFieldsV1Response
#### πŸ“ Description
Lists the accessors, deployment types, tags, and line items used for billing data in the specified time period. Use this endpoint if you want to filter your results from the Billing Breakdown endpoint and want to know what filters are available.
#### πŸ”Œ Usage
```typescript await client.manage.v1.projects.billing.fields.list("123456-7890-1234-5678-901234", { start: "start", end: "end" }); ```
#### βš™οΈ Parameters
**project_id:** `string` β€” The unique identifier of the project
**request:** `Deepgram.manage.v1.projects.billing.FieldsListRequest`
**requestOptions:** `FieldsClient.RequestOptions`
## Manage V1 Projects Billing Purchases
client.manage.v1.projects.billing.purchases.list(project_id, { ...params }) -> Deepgram.ListProjectPurchasesV1Response
#### πŸ“ Description
Returns the original purchased amount on an order transaction
#### πŸ”Œ Usage
```typescript await client.manage.v1.projects.billing.purchases.list("123456-7890-1234-5678-901234", { limit: 1.1 }); ```
#### βš™οΈ Parameters
**project_id:** `string` β€” The unique identifier of the project
**request:** `Deepgram.manage.v1.projects.billing.PurchasesListRequest`
**requestOptions:** `PurchasesClient.RequestOptions`
## Manage V1 Projects Members Invites
client.manage.v1.projects.members.invites.list(project_id) -> Deepgram.ListProjectInvitesV1Response
#### πŸ“ Description
Generates a list of invites for a specific project
#### πŸ”Œ Usage
```typescript await client.manage.v1.projects.members.invites.list("123456-7890-1234-5678-901234"); ```
#### βš™οΈ Parameters
**project_id:** `string` β€” The unique identifier of the project
**requestOptions:** `InvitesClient.RequestOptions`
client.manage.v1.projects.members.invites.create(project_id, { ...params }) -> Deepgram.CreateProjectInviteV1Response
#### πŸ“ Description
Generates an invite for a specific project
#### πŸ”Œ Usage
```typescript await client.manage.v1.projects.members.invites.create("123456-7890-1234-5678-901234", { email: "email", scope: "scope" }); ```
#### βš™οΈ Parameters
**project_id:** `string` β€” The unique identifier of the project
**request:** `Deepgram.manage.v1.projects.members.CreateProjectInviteV1Request`
**requestOptions:** `InvitesClient.RequestOptions`
client.manage.v1.projects.members.invites.delete(project_id, email) -> Deepgram.DeleteProjectInviteV1Response
#### πŸ“ Description
Deletes an invite for a specific project
#### πŸ”Œ Usage
```typescript await client.manage.v1.projects.members.invites.delete("123456-7890-1234-5678-901234", "john.doe@example.com"); ```
#### βš™οΈ Parameters
**project_id:** `string` β€” The unique identifier of the project
**email:** `string` β€” The email address of the member
**requestOptions:** `InvitesClient.RequestOptions`
## Manage V1 Projects Members Scopes
client.manage.v1.projects.members.scopes.list(project_id, member_id) -> Deepgram.ListProjectMemberScopesV1Response
#### πŸ“ Description
Retrieves a list of scopes for a specific member
#### πŸ”Œ Usage
```typescript await client.manage.v1.projects.members.scopes.list("123456-7890-1234-5678-901234", "123456789012345678901234"); ```
#### βš™οΈ Parameters
**project_id:** `string` β€” The unique identifier of the project
**member_id:** `string` β€” The unique identifier of the Member
**requestOptions:** `ScopesClient.RequestOptions`
client.manage.v1.projects.members.scopes.update(project_id, member_id, { ...params }) -> Deepgram.UpdateProjectMemberScopesV1Response
#### πŸ“ Description
Updates the scopes for a specific member
#### πŸ”Œ Usage
```typescript await client.manage.v1.projects.members.scopes.update("123456-7890-1234-5678-901234", "123456789012345678901234", { scope: "admin" }); ```
#### βš™οΈ Parameters
**project_id:** `string` β€” The unique identifier of the project
**member_id:** `string` β€” The unique identifier of the Member
**request:** `Deepgram.manage.v1.projects.members.UpdateProjectMemberScopesV1Request`
**requestOptions:** `ScopesClient.RequestOptions`
## Manage V1 Projects Usage Breakdown
client.manage.v1.projects.usage.breakdown.get(project_id, { ...params }) -> Deepgram.UsageBreakdownV1Response
#### πŸ“ Description
Retrieves the usage breakdown for a specific project, with various filter options by API feature or by groupings. Setting a feature (e.g. diarize) to true includes requests that used that feature, while false excludes requests that used it. Multiple true filters are combined with OR logic, while false filters use AND logic.
#### πŸ”Œ Usage
```typescript await client.manage.v1.projects.usage.breakdown.get("123456-7890-1234-5678-901234", { start: "start", end: "end", grouping: "accessor", accessor: "12345678-1234-1234-1234-123456789012", alternatives: true, callback_method: true, callback: true, channels: true, custom_intent_mode: true, custom_intent: true, custom_topic_mode: true, custom_topic: true, deployment: "hosted", detect_entities: true, detect_language: true, diarize: true, dictation: true, encoding: true, endpoint: "listen", extra: true, filler_words: true, intents: true, keyterm: true, keywords: true, language: true, measurements: true, method: "sync", model: "6f548761-c9c0-429a-9315-11a1d28499c8", multichannel: true, numerals: true, paragraphs: true, profanity_filter: true, punctuate: true, redact: true, replace: true, sample_rate: true, search: true, sentiment: true, smart_format: true, summarize: true, tag: "tag1", topics: true, utt_split: true, utterances: true, version: true }); ```
#### βš™οΈ Parameters
**project_id:** `string` β€” The unique identifier of the project
**request:** `Deepgram.manage.v1.projects.usage.BreakdownGetRequest`
**requestOptions:** `BreakdownClient.RequestOptions`
## Manage V1 Projects Usage Fields
client.manage.v1.projects.usage.fields.list(project_id, { ...params }) -> Deepgram.UsageFieldsV1Response
#### πŸ“ Description
Lists the features, models, tags, languages, and processing method used for requests in the specified project
#### πŸ”Œ Usage
```typescript await client.manage.v1.projects.usage.fields.list("123456-7890-1234-5678-901234", { start: "start", end: "end" }); ```
#### βš™οΈ Parameters
**project_id:** `string` β€” The unique identifier of the project
**request:** `Deepgram.manage.v1.projects.usage.FieldsListRequest`
**requestOptions:** `FieldsClient.RequestOptions`
## Read V1 Text
client.read.v1.text.analyze({ ...params }) -> Deepgram.ReadV1Response
#### πŸ“ Description
Analyze text content using Deepgrams text analysis API
#### πŸ”Œ Usage
```typescript await client.read.v1.text.analyze({ callback: "callback", callback_method: "POST", sentiment: true, summarize: "v2", tag: "tag", topics: true, custom_topic: "custom_topic", custom_topic_mode: "extended", intents: true, custom_intent: "custom_intent", custom_intent_mode: "extended", language: "language", body: { url: "url" } }); ```
#### βš™οΈ Parameters
**request:** `Deepgram.read.v1.TextAnalyzeRequest`
**requestOptions:** `TextClient.RequestOptions`
## SelfHosted V1 DistributionCredentials
client.selfHosted.v1.distributionCredentials.list(project_id) -> Deepgram.ListProjectDistributionCredentialsV1Response
#### πŸ“ Description
Lists sets of distribution credentials for the specified project
#### πŸ”Œ Usage
```typescript await client.selfHosted.v1.distributionCredentials.list("123456-7890-1234-5678-901234"); ```
#### βš™οΈ Parameters
**project_id:** `string` β€” The unique identifier of the project
**requestOptions:** `DistributionCredentialsClient.RequestOptions`
client.selfHosted.v1.distributionCredentials.create(project_id, { ...params }) -> Deepgram.CreateProjectDistributionCredentialsV1Response
#### πŸ“ Description
Creates a set of distribution credentials for the specified project
#### πŸ”Œ Usage
```typescript await client.selfHosted.v1.distributionCredentials.create("123456-7890-1234-5678-901234", { scopes: ["self-hosted:products"], provider: "quay" }); ```
#### βš™οΈ Parameters
**project_id:** `string` β€” The unique identifier of the project
**request:** `Deepgram.selfHosted.v1.CreateProjectDistributionCredentialsV1Request`
**requestOptions:** `DistributionCredentialsClient.RequestOptions`
client.selfHosted.v1.distributionCredentials.get(project_id, distribution_credentials_id) -> Deepgram.GetProjectDistributionCredentialsV1Response
#### πŸ“ Description
Returns a set of distribution credentials for the specified project
#### πŸ”Œ Usage
```typescript await client.selfHosted.v1.distributionCredentials.get("123456-7890-1234-5678-901234", "8b36cfd0-472f-4a21-833f-2d6343c3a2f3"); ```
#### βš™οΈ Parameters
**project_id:** `string` β€” The unique identifier of the project
**distribution_credentials_id:** `string` β€” The UUID of the distribution credentials
**requestOptions:** `DistributionCredentialsClient.RequestOptions`
client.selfHosted.v1.distributionCredentials.delete(project_id, distribution_credentials_id) -> Deepgram.GetProjectDistributionCredentialsV1Response
#### πŸ“ Description
Deletes a set of distribution credentials for the specified project
#### πŸ”Œ Usage
```typescript await client.selfHosted.v1.distributionCredentials.delete("123456-7890-1234-5678-901234", "8b36cfd0-472f-4a21-833f-2d6343c3a2f3"); ```
#### βš™οΈ Parameters
**project_id:** `string` β€” The unique identifier of the project
**distribution_credentials_id:** `string` β€” The UUID of the distribution credentials
**requestOptions:** `DistributionCredentialsClient.RequestOptions`
## Speak V1 Audio
client.speak.v1.audio.generate({ ...params }) -> core.BinaryResponse
#### πŸ“ Description
Convert text into natural-sounding speech using Deepgram's TTS REST API
#### πŸ”Œ Usage
```typescript await client.speak.v1.audio.generate({ text: "text" }); ```
#### βš™οΈ Parameters
**request:** `Deepgram.speak.v1.SpeakV1Request`
**requestOptions:** `AudioClient.RequestOptions`
## Speak V2 Audio
client.speak.v2.audio.generate({ ...params }) -> core.BinaryResponse
#### πŸ“ Description
Synthesize a complete block of text into a single audio response using Deepgram's Flux TTS batch (REST) API. Use this for pre-rendering fixed audio (IVR prompts, notifications, narration) where the whole text is known up front and you don't need incremental playback or interruption.
#### πŸ”Œ Usage
```typescript await client.speak.v2.audio.generate({ model: "model", text: "text" }); ```
#### βš™οΈ Parameters
**request:** `Deepgram.speak.v2.SpeakV2Request`
**requestOptions:** `AudioClient.RequestOptions`
## VoiceAgent Configurations
client.voiceAgent.configurations.list(project_id) -> Deepgram.ListAgentConfigurationsV1Response
#### πŸ“ Description
Returns all agent configurations for the specified project. Configurations are returned in their uninterpolated formβ€”template variable placeholders appear as-is rather than with their substituted values.
#### πŸ”Œ Usage
```typescript await client.voiceAgent.configurations.list("123456-7890-1234-5678-901234"); ```
#### βš™οΈ Parameters
**project_id:** `string` β€” The unique identifier of the project
**requestOptions:** `ConfigurationsClient.RequestOptions`
client.voiceAgent.configurations.create(project_id, { ...params }) -> Deepgram.CreateAgentConfigurationV1Response
#### πŸ“ Description
Creates a new reusable agent configuration. The `config` field must be a valid JSON string representing the `agent` block of a Settings message. The returned `agent_id` can be passed in place of the full `agent` object in future Settings messages.
#### πŸ”Œ Usage
```typescript await client.voiceAgent.configurations.create("123456-7890-1234-5678-901234", { config: "config" }); ```
#### βš™οΈ Parameters
**project_id:** `string` β€” The unique identifier of the project
**request:** `Deepgram.voiceAgent.CreateAgentConfigurationV1Request`
**requestOptions:** `ConfigurationsClient.RequestOptions`
client.voiceAgent.configurations.get(project_id, agent_id) -> Deepgram.AgentConfigurationV1
#### πŸ“ Description
Returns the specified agent configuration in its uninterpolated form
#### πŸ”Œ Usage
```typescript await client.voiceAgent.configurations.get("123456-7890-1234-5678-901234", "a1b2c3d4-e5f6-7890-abcd-ef1234567890"); ```
#### βš™οΈ Parameters
**project_id:** `string` β€” The unique identifier of the project
**agent_id:** `string` β€” The unique identifier of the agent configuration
**requestOptions:** `ConfigurationsClient.RequestOptions`
client.voiceAgent.configurations.update(project_id, agent_id, { ...params }) -> Deepgram.AgentConfigurationV1
#### πŸ“ Description
Updates the metadata associated with an agent configuration. The config itself is immutableβ€”to change the configuration, delete the existing agent and create a new one.
#### πŸ”Œ Usage
```typescript await client.voiceAgent.configurations.update("123456-7890-1234-5678-901234", "a1b2c3d4-e5f6-7890-abcd-ef1234567890", { metadata: { "key": "value" } }); ```
#### βš™οΈ Parameters
**project_id:** `string` β€” The unique identifier of the project
**agent_id:** `string` β€” The unique identifier of the agent configuration
**request:** `Deepgram.voiceAgent.UpdateAgentMetadataV1Request`
**requestOptions:** `ConfigurationsClient.RequestOptions`
client.voiceAgent.configurations.delete(project_id, agent_id) -> Deepgram.DeleteAgentConfigurationV1Response
#### πŸ“ Description
Deletes the specified agent configuration. Deleting an agent configuration can cause a production outage if your service references this agent UUID. Migrate all active sessions to a new configuration before deleting.
#### πŸ”Œ Usage
```typescript await client.voiceAgent.configurations.delete("123456-7890-1234-5678-901234", "a1b2c3d4-e5f6-7890-abcd-ef1234567890"); ```
#### βš™οΈ Parameters
**project_id:** `string` β€” The unique identifier of the project
**agent_id:** `string` β€” The unique identifier of the agent configuration
**requestOptions:** `ConfigurationsClient.RequestOptions`
## VoiceAgent Variables
client.voiceAgent.variables.list(project_id) -> Deepgram.ListAgentVariablesV1Response
#### πŸ“ Description
Returns all template variables for the specified project
#### πŸ”Œ Usage
```typescript await client.voiceAgent.variables.list("123456-7890-1234-5678-901234"); ```
#### βš™οΈ Parameters
**project_id:** `string` β€” The unique identifier of the project
**requestOptions:** `VariablesClient.RequestOptions`
client.voiceAgent.variables.create(project_id, { ...params }) -> Deepgram.AgentVariableV1
#### πŸ“ Description
Creates a new template variable. Variables follow the `DG_` naming format and can substitute any JSON value in an agent configuration.
#### πŸ”Œ Usage
```typescript await client.voiceAgent.variables.create("project_id", { key: "key", value: { "key": "value" } }); ```
#### βš™οΈ Parameters
**project_id:** `string` β€” The unique identifier of the project
**request:** `Deepgram.voiceAgent.CreateAgentVariableV1Request`
**requestOptions:** `VariablesClient.RequestOptions`
client.voiceAgent.variables.get(project_id, variable_id) -> Deepgram.AgentVariableV1
#### πŸ“ Description
Returns the specified template variable
#### πŸ”Œ Usage
```typescript await client.voiceAgent.variables.get("123456-7890-1234-5678-901234", "v1a2b3c4-d5e6-7890-abcd-ef1234567890"); ```
#### βš™οΈ Parameters
**project_id:** `string` β€” The unique identifier of the project
**variable_id:** `string` β€” The unique identifier of the agent variable
**requestOptions:** `VariablesClient.RequestOptions`
client.voiceAgent.variables.delete(project_id, variable_id) -> Deepgram.DeleteAgentVariableV1Response
#### πŸ“ Description
Deletes the specified template variable
#### πŸ”Œ Usage
```typescript await client.voiceAgent.variables.delete("123456-7890-1234-5678-901234", "v1a2b3c4-d5e6-7890-abcd-ef1234567890"); ```
#### βš™οΈ Parameters
**project_id:** `string` β€” The unique identifier of the project
**variable_id:** `string` β€” The unique identifier of the agent variable
**requestOptions:** `VariablesClient.RequestOptions`
client.voiceAgent.variables.update(project_id, variable_id, { ...params }) -> Deepgram.AgentVariableV1
#### πŸ“ Description
Updates the value of an existing template variable
#### πŸ”Œ Usage
```typescript await client.voiceAgent.variables.update("project_id", "variable_id", { value: { "key": "value" } }); ```
#### βš™οΈ Parameters
**project_id:** `string` β€” The unique identifier of the project
**variable_id:** `string` β€” The unique identifier of the agent variable
**request:** `Deepgram.voiceAgent.UpdateAgentVariableV1Request`
**requestOptions:** `VariablesClient.RequestOptions`