deepgram-go-management-api

द्वारा deepgram

इस रिपॉजिटरी में Go कोड लिखते या समीक्षा करते समय उपयोग करें जो प्रोजेक्ट्स, कीज़, सदस्यों, स्कोप्स, आमंत्रणों, उपयोग आदि के लिए Deepgram प्रबंधन एंडपॉइंट्स के साथ काम करता है।

npx skills add https://github.com/deepgram/deepgram-go-sdk --skill deepgram-go-management-api

Using Deepgram Management API from the Go SDK

When to use this product

Use this skill for admin and account operations in pkg/client/manage and pkg/api/manage/v1.

  • projects
  • API keys
  • members and scopes
  • invitations
  • usage and request history
  • balances
  • model discovery
  • reusable agent configurations and their template variables

Use a different skill when:

  • you need live voice sessions (deepgram-go-voice-agent)
  • you need SDK maintenance workflow (deepgram-go-maintaining-sdk)

Authentication

Set DEEPGRAM_API_KEY before constructing the management client.

export DEEPGRAM_API_KEY="your_api_key"

Quick start

package main

import (
	"context"
	"fmt"
	"log"

	api "github.com/deepgram/deepgram-go-sdk/v3/pkg/api/manage/v1"
	manage "github.com/deepgram/deepgram-go-sdk/v3/pkg/client/manage"
)

func main() {
	if err := run(); err != nil {
		log.Fatal(err)
	}
}

func run() error {
	ctx := context.Background()

	client := manage.NewWithDefaults()
	mg := api.New(client)

	projects, err := mg.ListProjects(ctx)
	if err != nil {
		return err
	}

	fmt.Println(projects)
	return nil
}

Key parameters

  • constructors
    • manage.NewWithDefaults()
    • manage.New(apiKey, options)
  • common API groups in pkg/api/manage/v1, usually via api.New(client)
    • projects: ListProjects, GetProject, UpdateProject, DeleteProject
    • keys: ListKeys, GetKey, CreateKey, DeleteKey
    • members: ListMembers, RemoveMember
    • scopes: GetMemberScopes, UpdateMemberScopes
    • invitations: ListInvitations, SendInvitation, DeleteInvitation, LeaveProject
    • usage: ListRequests, GetRequest, GetFields, GetUsage
    • balances: ListBalances, GetBalance
    • models: ListModels, GetModels, GetModel, ListProjectModels, GetProjectModels, GetProjectModel
  • low-level escape hatch
    • managev1.Client.APIRequest(...)

API reference (layered)

  1. In-repo reference
    • README.md
    • docs.go
    • pkg/client/manage/client.go
    • pkg/client/manage/v1/client.go
    • pkg/api/manage/v1/projects.go
    • pkg/api/manage/v1/keys.go
    • pkg/api/manage/v1/members.go
    • pkg/api/manage/v1/scopes.go
    • pkg/api/manage/v1/invitations.go
    • pkg/api/manage/v1/usage.go
    • pkg/api/manage/v1/balances.go
    • pkg/api/manage/v1/models.go
    • pkg/api/manage/v1/agents.go
    • pkg/api/manage/v1/agent-variables.go
  2. OpenAPI
    • https://developers.deepgram.com/openapi.yaml
    • Exception: for agents.go and agent-variables.go, the in-repo models are the source of truth, not the spec. The spec and the published API reference disagree with production on field names (agent_uuid / agent_variable_uuid, not agent_id / variable_id), on list responses (a bare JSON array, not {"agents": [...]}), and on the type of config (a JSON string, not an object). Agent metadata values are arbitrary JSON, so Metadata is map[string]interface{}, not map[string]string — narrowing it fails the decode of the entire response. The models here were captured from live responses; do not "correct" them back toward the spec.
  3. AsyncAPI
    • https://developers.deepgram.com/asyncapi.yaml
  4. Context7
    • /llmstxt/developers_deepgram_llms_txt
  5. Product docs
    • https://developers.deepgram.com/reference/manage/projects/list
    • https://developers.deepgram.com/reference/manage/models/list

Gotchas

  1. The management client is for account/admin APIs, not live Voice Agent runtime.
  2. The repo exposes management operations from pkg/api/manage/v1; use api.New(client) before calling helpers like ListProjects.
  3. For unsupported convenience helpers, fall back to APIRequest(...) rather than inventing a new transport layer.

Example files in this repo

  • examples/manage/projects/main.go
  • examples/manage/keys/main.go
  • examples/manage/models/main.go
  • examples/manage/usage/main.go
  • examples/manage/agents/main.go

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

deepgram की और Skills

deepclaw-voice
deepgram
OpenClaw पर Deepgram Voice Agent API का उपयोग करके फोन
apple-notes
deepgram
Manage Apple Notes via the `memo` CLI on macOS (create, view, edit, delete, search, move, and export notes). Use when a user asks OpenClaw to add a note, list…
bear-notes
deepgram
grizzly CLI के माध्यम से Bear नोट्स बनाएं, खोजें और प्रबंधित करें।
github
deepgram
Interact with GitHub using the `gh` CLI. Use `gh issue`, `gh pr`, `gh run`, and `gh api` for issues, PRs, CI runs, and advanced queries.
setup-mcp
deepgram
आप उपयोगकर्ता के लिए Deepgram MCP एकीकरण सेट कर रहे हैं। इन चरणों का पालन करें:
starters
deepgram
एक कार्यशील डेमो क्लोन करें और निर्माण शुरू करें। हर स्टार्टर एक न्यूनतम, चलाने योग्य ऐप है जिसे आप विस्तारित कर सकते हैं।
deepgram-js-audio-intelligence
deepgram
Use when writing or reviewing JavaScript/TypeScript in this repo that calls Deepgram audio analytics overlays on `/v1/listen` - summarize, topics, intents,…
apple-reminders
deepgram
Manage Apple Reminders via the `remindctl` CLI on macOS (list, add, edit, complete, delete). Supports lists, date filters, and JSON/plain output.