关于 deepgram-js-management-api
面向 JavaScript/TypeScript 开发者的 Deepgram 管理 REST API 技能,可用于管理项目、凭据、成员、用量、账单及模型查询。
主要功能
- 01管理项目和 API 密钥
- 02管理成员与邀请
- 03查看用量和账单
- 04列出全局及项目模型
- 05查询 Voice Agent think 模型
适用场景
- 01检查项目成员和权限
- 02创建或删除 API 密钥与邀请
- 03跟踪项目用量和账单
- 04查找项目可用模型
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ deepgram/ deepgram-js-sdk --skill deepgram-js-management-api安装后在 Claude Code 中输入/deepgram-js-management-api确认已加载。
详细介绍
使用 Deepgram 管理 API(JavaScript / TypeScript SDK)
/v1/projects、/v1/models 及相关项目子资源下的管理型 REST 端点。
何时使用此产品
- 项目:列出、获取、更新、删除项目或退出项目。
- 密钥:列出、获取、创建和删除 API 密钥。
- 成员 + 邀请:查看成员、更新权限范围、创建和删除邀请。
- 用量 + 账单:查看请求、用量、用量明细、余额、购买记录和账单明细。
- 模型:列出全局模型和项目级模型。
- Agent 思考模型:发现 Voice Agent
think设置可用的模型提供方。
以下情况请使用其他技能:
- 想要运行实时 websocket Agent 会话 →
deepgram-js-voice-agent。 - 想要进行转录或合成调用,而不是项目/管理 API 调用 → 使用对应产品的技能。
身份验证
require("dotenv").config();
const { DeepgramClient } = require("@deepgram/sdk");
const deepgramClient = new DeepgramClient({
apiKey: process.env.DEEPGRAM_API_KEY,
});
大多数示例还依赖 process.env.DEEPGRAM_PROJECT_ID 进行项目级调用。
快速入门 — 项目 + 模型
摘自 examples/13-management-projects.ts、examples/19-management-models.ts 和 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 },
);
快速入门 — 密钥 / 成员 / 邀请 / 用量 / 账单
基于 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);
Voice Agent 思考模型发现:
await deepgramClient.agent.v1.settings.think.models.list();
关键参数 / API 接口
- 项目:
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和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和client.manage.v1.projects.models.list/get。
限制
当前的 JS SDK 不提供 Voice Agent 持久化配置的 CRUD 端点。仓库提供了 client.agent.v1.settings.think.models.list() 用于发现模型,但没有 voice_agent.configurations.* 这一类辅助方法。
API 参考(分层)
- 仓库内参考:
reference.md→Manage V1 Models、Manage V1 Projects、Manage V1 Projects Keys、Members、Models、Requests、Usage、Billing *,以及Agent V1 Settings Think Models。 - 规范 OpenAPI(REST):https://developers.deepgram.com/openapi.yaml
- 规范 AsyncAPI(WSS):https://developers.deepgram.com/asyncapi.yaml
- Context7:库 ID
/llmstxt/developers_deepgram_llms_txt - 产品文档:
- https://developers.deepgram.com/reference/manage/projects/list
- https://developers.deepgram.com/reference/manage/models/list
- https://developers.deepgram.com/reference/voice-agent/agent-configurations/list-agent-configurations
- https://developers.deepgram.com/reference/voice-agent/agent-configurations/create-agent-configuration
- https://developers.deepgram.com/reference/voice-agent/think-models
注意事项
- 命名空间深度很重要。 大多数管理调用位于
client.manage.v1.projects.*下,而不是根客户端上。 - 项目级模型与全局模型不同。
/v1/models返回公开模型;/v1/projects/{id}/models可能包含私有模型或自定义访问权限。 - 源码中将
projects.usage.get(...)标记为已弃用。 如需更丰富的报告,优先使用projects.usage.breakdown.list(...)。 - 破坏性操作确实会生效。
delete、leave、移除成员和删除密钥都不适合作为安全的示例调用。 - 管理 API 与区域 STT 路由并不相同。
examples/33-configuration-eu-endpoint.ts明确指出,管理操作仍使用默认的美国端点。 - 返回的 ID 可能嵌套在多个层级中。 示例中的密钥查询使用
keys.api_keys[0].api_key.api_key_id;硬编码路径前,请先检查实际响应结构。 - 没有用于持久化 Agent 配置的辅助工具。 如需对 Voice Agent 配置执行 CRUD 操作,目前请使用原始 HTTP。
此仓库中的示例文件
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.ts
中央产品技能
如需跨语言的 Deepgram 产品知识——整合后的 API 参考、文档查找器、可运行的专项示例、第三方集成示例和 MCP 设置——请安装中央技能:
npx skills add deepgram/skills
此 SDK 提供符合各语言习惯的代码技能;deepgram/skills 提供跨语言产品知识(参见 api、docs、recipes、examples、starters、setup-mcp)。
评论
支持 Markdown