deepgram/deepgram-js-management-api
Use when writing or reviewing JavaScript/TypeScript in this repo that calls Deepgram Management APIs for projects, API keys, members, invites, requests, usage, billing, models, and agent think-model discovery. Covers `client.manage.v1.*` plus `client.agent.v1.settings.think.models.list()`. Use `deepgram-js-voice-agent` when you want to run an agent live rather than administer projects or inspect models. Triggers include "management API", "list projects", "API keys", "members", "invites", "usage stats", "billing", "list models", and "manage.v1".
npx skills add https://github.com/deepgram/deepgram-js-sdk --skill deepgram-js-management-api
Administrative REST endpoints under /v1/projects, /v1/models, and related project subresources.
think settings.Use a different skill when:
deepgram-js-voice-agent.require("dotenv").config();
const { DeepgramClient } = require("@deepgram/sdk");
const deepgramClient = new DeepgramClient({
apiKey: process.env.DEEPGRAM_API_KEY,
});
Most examples also rely on process.env.DEEPGRAM_PROJECT_ID for project-scoped calls.
From examples/13-management-projects.ts, examples/19-management-models.ts, and examples/32-management-project-models.ts:
const projectId = process.env.DEEPGRAM_PROJECT_ID;
const projects = await deepgramClient.manage.v1.projects.list();
console.log("Projects:", JSON.stringify(projects, null, 2));
const project = await deepgramClient.manage.v1.projects.get(projects.projects[0].project_id);
await deepgramClient.manage.v1.projects.update(project.project_id, {
name: "Naomi's Sandbox",
});
const models = await deepgramClient.manage.v1.models.list();
const projectModels = await deepgramClient.manage.v1.projects.models.list(
projectId,
{ include_outdated: false },
);
Based on examples/14-18:
const projectId = process.env.DEEPGRAM_PROJECT_ID;
await deepgramClient.manage.v1.projects.keys.list(projectId);
await deepgramClient.manage.v1.projects.members.list(projectId);
await deepgramClient.manage.v1.projects.members.invites.create(projectId, {
email: "[email protected]",
scope: "member",
});
await deepgramClient.manage.v1.projects.requests.list(projectId, {});
await deepgramClient.manage.v1.projects.usage.get(projectId, {});
await deepgramClient.manage.v1.projects.billing.balances.list(projectId);
Think-model discovery for Voice Agent:
await deepgramClient.agent.v1.settings.think.models.list();
client.manage.v1.projects.list/get/update/delete/leave.client.manage.v1.projects.keys.list/create/get/delete.client.manage.v1.projects.members.list/delete and members.scopes.list/update.client.manage.v1.projects.members.invites.list/create/delete.projects.requests.list/get, projects.usage.get, projects.usage.breakdown.list, projects.usage.fields.list.projects.billing.balances.*, projects.billing.breakdown.list, projects.billing.fields.list, projects.billing.purchases.list.client.manage.v1.models.list/get and client.manage.v1.projects.models.list/get.The current JS SDK does not expose persisted Voice Agent configuration CRUD endpoints. The repo surfaces client.agent.v1.settings.think.models.list() for discovery, but not voice_agent.configurations.*-style helpers.
reference.md → Manage V1 Models, Manage V1 Projects, Manage V1 Projects Keys, Members, Models, Requests, Usage, Billing *, plus Agent V1 Settings Think Models./llmstxt/developers_deepgram_llms_txtclient.manage.v1.projects.*, not on the root client./v1/models returns public models; /v1/projects/{id}/models can include private/custom access.projects.usage.get(...) is marked deprecated in source. Prefer projects.usage.breakdown.list(...) for richer reporting.delete, leave, member removal, and key deletion are not safe example calls.examples/33-configuration-eu-endpoint.ts explicitly notes management stays on the default US endpoint.keys.api_keys[0].api_key.api_key_id; inspect real response shape before hard-coding paths.examples/13-management-projects.tsexamples/14-management-keys.tsexamples/15-management-members.tsexamples/16-management-invites.tsexamples/17-management-usage.tsexamples/18-management-billing.tsexamples/19-management-models.tsexamples/29-management-usage-breakdown.tsexamples/30-management-billing-detailed.tsexamples/31-management-member-permissions.tsexamples/32-management-project-models.tsFor cross-language Deepgram product knowledge — the consolidated API reference, documentation finder, focused runnable recipes, third-party integration examples, and MCP setup — install the central skills:
npx skills add deepgram/skills
This SDK ships language-idiomatic code skills; deepgram/skills ships cross-language product knowledge (see api, docs, recipes, examples, starters, setup-mcp).
Take deepgram/deepgram-js-management-api from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.
The instructions reference npx.
Without those the skill loads but fails at the first command.