deepgram-java-management-api
Sử dụng khi viết hoặc xem xét mã Java trong kho lưu trữ này gọi các API Quản lý Deepgram cho các dự án, mô hình dự án, khóa API, thành viên, lời mời, mức sử dụng, và…
npx skills add https://github.com/deepgram/deepgram-java-sdk --skill deepgram-java-management-apiUsing Deepgram Management API (Java SDK)
Administrative REST APIs for project metadata, project-scoped resources, and model discovery.
When to use this product
- List or inspect projects.
- Manage project keys, members, invites, usage, or billing.
- Discover public or project-scoped STT/TTS models.
Use a different skill when:
- You want to run a live agent session →
deepgram-java-voice-agent. - You want speech/text inference rather than project administration → use the product skills for STT, TTS, or Read.
Authentication
import com.deepgram.DeepgramClient;
DeepgramClient client = DeepgramClient.builder()
.apiKey(System.getenv("DEEPGRAM_API_KEY"))
.build();
Management endpoints require API-key auth. Temporary JWTs from auth().v1().tokens().grant() do not work for Manage APIs.
Quick start — projects
import com.deepgram.types.ListProjectsV1Response;
import com.deepgram.types.ListProjectsV1ResponseProjectsItem;
import java.util.Collections;
import java.util.List;
ListProjectsV1Response response = client.manage().v1().projects().list();
List<ListProjectsV1ResponseProjectsItem> projects = response.getProjects().orElse(Collections.emptyList());
for (ListProjectsV1ResponseProjectsItem project : projects) {
System.out.printf("%s (%s)%n",
project.getName().orElse("unnamed"),
project.getProjectId().orElse("unknown"));
}
Quick start — project models / keys
Pick a project from the list above. New accounts may have zero projects — guard against that before indexing.
if (projects.isEmpty()) {
throw new IllegalStateException("No Deepgram projects are visible to this API key.");
}
String projectId = projects.get(0).getProjectId().orElseThrow();
client.manage().v1().projects().models().list(projectId);
client.manage().v1().projects().keys().list(projectId);
client.manage().v1().projects().members().list(projectId);
client.manage().v1().projects().members().invites().list(projectId);
client.manage().v1().projects().usage().get(projectId);
client.manage().v1().projects().billing().balances().list(projectId);
Key parameters / API surface
- Top-level public models:
client.manage().v1().models().list()and.get(modelId) - Projects:
projects().list(),get(projectId),update(projectId, ...),delete(projectId),leave(projectId) - Keys:
projects().keys().list/create/get/delete - Members:
projects().members().list/delete - Invites:
projects().members().invites().list/create/delete - Project models:
projects().models().list(projectId) - Usage:
projects().usage().get(projectId) - Billing:
projects().billing().balances().list(projectId) - Requests:
projects().requests()subtree exists in the generated API surface - Agent think-model discovery:
client.agent().v1().settings().think().models().list() - Most clients expose
withRawResponse()alongside typed methods
API reference (layered)
- In-repo source of truth:
src/main/java/com/deepgram/resources/manage/v1/,src/main/java/com/deepgram/resources/agent/v1/settings/think/models/, andexamples/manage/. There is noreference.mdin this checkout. - Canonical OpenAPI: https://developers.deepgram.com/openapi.yaml
- Context7:
/llmstxt/developers_deepgram_llms_txt - Product docs:
Gotchas
- Use an API key, not a temporary JWT, for Manage APIs. The token-grant endpoint explicitly says those JWTs do not work here.
- Some example files are intentionally excluded from Gradle
compileExamples.manage/ListModels.java,manage/MemberPermissions.java, andmanage/UsageBreakdown.javaare currently excluded inbuild.gradle. - Many manage examples are read-only by default. Create/delete snippets are commented out to avoid destructive calls.
- Project-scoped model discovery and global model discovery are different.
models().list()returns public models;projects().models().list(projectId)returns what a project can use. - This checkout does not expose the Python-style persisted voice-agent configuration client. Do not promise
voice_agent.configurations.*here. - The SDK is highly nested. For invites, the path is
projects().members().invites(), not a top-levelinvites()client.
Example files in this repo
examples/manage/ListProjects.javaexamples/manage/ProjectModels.javaexamples/manage/ManageKeys.javaexamples/manage/ManageMembers.javaexamples/manage/ManageInvites.javaexamples/manage/GetUsage.javaexamples/manage/Billing.javaexamples/agent/ListModels.java
Central product skills
For 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).