Skillshub deepgram-install-auth

install
source · Clone the upstream repo
git clone https://github.com/ComeOnOliver/skillshub
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/ComeOnOliver/skillshub "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/jeremylongshore/claude-code-plugins-plus-skills/deepgram-install-auth" ~/.claude/skills/comeonoliver-skillshub-deepgram-install-auth && rm -rf "$T"
manifest: skills/jeremylongshore/claude-code-plugins-plus-skills/deepgram-install-auth/SKILL.md
source content

Deepgram Install & Auth

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
  • API key from Console > Settings > API Keys

Instructions

Step 1: Install SDK

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

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

Python:

pip install deepgram-sdk

Step 2: Configure API Key

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

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:

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

Step 4: Initialize Client (Python)

from deepgram import DeepgramClient, PrerecordedOptions, LiveOptions
import os

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

Step 5: Verify Connection

// 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 — 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

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

ScopePermissionUse Case
member
Full accessDevelopment only
listen
STT transcriptionProduction transcription services
speak
TTS synthesisVoice generation services
manage
Project managementAdmin tools
usage
Usage dataMonitoring 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

ErrorCauseSolution
401 Unauthorized
Invalid or expired API keyRegenerate key in Console > API Keys
403 Forbidden
Key lacks required scopeCreate new key with correct scopes
MODULE_NOT_FOUND
SDK not installedRun
npm install @deepgram/sdk
ENOTFOUND api.deepgram.com
Network/DNS issueCheck internet, verify no proxy blocking
TypeError: createClient is not a function
SDK v5 installedUse
new DeepgramClient()
instead

Resources

Next Steps

Proceed to

deepgram-hello-world
for your first transcription.