Skip to content
Back to skills

Deepgram Install Auth

BSecurity

'Install and configure Deepgram SDK authentication.

  • 2,719 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 21, 2026
ai-agentsjavascripttypescriptpythonjavabashnodegitapi

Works with

  • claude code
  • cli
  • api

Security analysis

B88/100
  • mediumInstalls packages at runtime which could introduce malicious dependencies
  • mediumInstalls packages at runtime which could introduce malicious dependencies
  • mediumInstalls packages at runtime which could introduce malicious dependencies

Pro shows the line behind each finding and how to fix it

Scanned September 21, 2026

npx -y skills add jeremylongshore/claude-code-plugins-plus --skill deepgram-install-auth --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Deepgram Install Auth?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Deepgram Install Auth
[![Security: B — Skills Directory](https://www.skillsdirectory.com/api/skills/jeremylongshore-deepgram-install-auth-b35d1bfc/badge)](https://www.skillsdirectory.com/skills/jeremylongshore-deepgram-install-auth-b35d1bfc)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: deepgram-install-auth
description: 'Install and configure Deepgram SDK authentication.

  Use when setting up a new Deepgram integration, configuring API keys,

  or initializing Deepgram in your project.

  Trigger: "install deepgram", "setup deepgram", "deepgram auth",

  "configure deepgram API key", "deepgram credentials".

  '
allowed-tools: Read, Write, Edit, Bash(npm:*), Bash(pip:*), Grep
version: 1.13.0
license: MIT
author: Jeremy Longshore <jeremy@intentsolutions.io>
tags:
- saas
- deepgram
- api
- authentication
- setup
compatibility: Designed for Claude Code
---
# Deepgram Install & Auth

## Examples

Load a development API key from the approved secret manager and send a short, non-sensitive audio fixture to the intended Deepgram project. Record only the project/environment and result. If the key appears in a repository, log, or support ticket, revoke it immediately and issue a replacement before investigating further.

## Current State

!`npm list @deepgram/sdk 2>/dev/null || echo '@deepgram/sdk not installed'`
!`pip show deepgram-sdk 2>/dev/null | grep Version || echo 'deepgram-sdk (Python) not installed'`

## Overview

Install the Deepgram SDK and configure API key authentication. Deepgram provides speech-to-text (Nova-3, Nova-2), text-to-speech (Aura-2), and audio intelligence APIs. The JS SDK uses `createClient()` (v3/v4) or `new DeepgramClient()` (v5+).

## Prerequisites

- Node.js 18+ or Python 3.10+
- Deepgram account at [console.deepgram.com](https://console.deepgram.com)
- API key from Console > Settings > API Keys

## Instructions

### Step 1: Install SDK

**Node.js (v3/v4 — current stable):**

```bash
npm install @deepgram/sdk
# or
pnpm add @deepgram/sdk
```

**Python:**

```bash
pip install deepgram-sdk
```

### Step 2: Configure API Key

```bash
# Option A: Environment variable (recommended)
export DEEPGRAM_API_KEY="your-api-key-here"

# Option B: .env file (add .env to .gitignore)
echo 'DEEPGRAM_API_KEY=your-api-key-here' >> .env
```

**Never hardcode keys.** Use `dotenv` for local dev, secret managers in production.

### Step 3: Initialize Client (TypeScript)

```typescript
import { createClient } from '@deepgram/sdk';

// Reads DEEPGRAM_API_KEY from env automatically
const deepgram = createClient(process.env.DEEPGRAM_API_KEY!);
```

**SDK v5+ uses a different constructor:**

```typescript
import { DeepgramClient } from '@deepgram/sdk';
const deepgram = new DeepgramClient({ apiKey: process.env.DEEPGRAM_API_KEY });
```

### Step 4: Initialize Client (Python)

```python
from deepgram import DeepgramClient, PrerecordedOptions, LiveOptions
import os

client = DeepgramClient(os.environ["DEEPGRAM_API_KEY"])
```

### Step 5: Verify Connection

```typescript
// TypeScript — list projects to verify key is valid
async function verify() {
  const deepgram = createClient(process.env.DEEPGRAM_API_KEY!);
  const { result, error } = await deepgram.manage.getProjects();
  if (error) {
    console.error('Auth failed:', error.message);
    process.exit(1);
  }
  console.log(`Connected. Projects: ${result.projects.length}`);
  result.projects.forEach(p => console.log(`  - ${p.name} (${p.project_id})`));
}
verify();
```

```python
# Python — verify connection
from deepgram import DeepgramClient
import os

client = DeepgramClient(os.environ["DEEPGRAM_API_KEY"])
response = client.manage.v("1").get_projects()
print(f"Connected. Projects: {len(response.projects)}")
for p in response.projects:
    print(f"  - {p.name} ({p.project_id})")
```

### Step 6: Configure for Production

```typescript
// Singleton client with custom options
import { createClient, DeepgramClient } from '@deepgram/sdk';

let client: DeepgramClient | null = null;

export function getDeepgramClient(): DeepgramClient {
  if (!client) {
    const apiKey = process.env.DEEPGRAM_API_KEY;
    if (!apiKey) throw new Error('DEEPGRAM_API_KEY is required');
    client = createClient(apiKey);
  }
  return client;
}
```

## API Key Scopes

| Scope | Permission | Use Case |
|-------|-----------|----------|
| `member` | Full access | Development only |
| `listen` | STT transcription | Production transcription services |
| `speak` | TTS synthesis | Voice generation services |
| `manage` | Project management | Admin tools |
| `usage` | Usage data | Monitoring dashboards |

Create scoped keys in Console > Settings > API Keys > Create Key.

## Output

- Installed `@deepgram/sdk` (Node.js) or `deepgram-sdk` (Python)
- API key configured via environment variable or `.env`
- Verified connection with project listing
- Singleton client pattern for production use

## Error Handling

| Error | Cause | Solution |
|-------|-------|----------|
| `401 Unauthorized` | Invalid or expired API key | Regenerate key in Console > API Keys |
| `403 Forbidden` | Key lacks required scope | Create new key with correct scopes |
| `MODULE_NOT_FOUND` | SDK not installed | Run `npm install @deepgram/sdk` |
| `ENOTFOUND api.deepgram.com` | Network/DNS issue | Check internet, verify no proxy blocking |
| `TypeError: createClient is not a function` | SDK v5 installed | Use `new DeepgramClient()` instead |

## Resources

- [Deepgram Console](https://console.deepgram.com)
- [JavaScript SDK](https://developers.deepgram.com/docs/js-sdk)
- [Python SDK](https://developers.deepgram.com/docs/node-sdk)
- API Key Management
- [SDK Feature Matrix](https://developers.deepgram.com/sdks/sdk-features)

## Next Steps

Proceed to `deepgram-hello-world` for your first transcription.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.