deepgram/deepgram-rust-sdk · Archived

deepgram-rust-management-api

Use when implementing Deepgram project, key, member, scope, billing, invitation, or usage operations from the Rust SDK, including manage feature flags and the real Deepgram::projects/keys/members/scopes/billing/usage APIs.

First seen May 31, 2026

Installation

$ npx skills add deepgram/deepgram-rust-sdk --skill deepgram-rust-management-api

Stronger alternatives

This repository is archived — consider an actively maintained alternative.

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

Also in this package

Other skills from deepgram/deepgram-rust-sdk.

npx skills add deepgram/deepgram-rust-sdk

Browse all from deepgram/deepgram-rust-sdk

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Repository health

Stars 66
License LICENSE
Default branch main
Open issues 14
Status Archived

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 4,705 B
  • docs SUMMARY.md 258 B

History

  1. First seen on skills.sh
  2. First recorded snapshot · 7 installs

SKILL.md

Using Deepgram Management API (Rust SDK)

Use this skill for project/account administration against Deepgram's Manage APIs.

When to use this product

  • Listing or updating projects.
  • Managing project API keys, members, scopes, invitations, balances, and usage.
  • Explaining which admin surfaces are available in the current crate.

Authentication

For a management-only install:

[dependencies]
deepgram = { version = "0.10.0", default-features = false, features = ["manage"] }
tokio = { version = "1", features = ["full"] }
let dg = deepgram::Deepgram::new(std::env::var("DEEPGRAM_API_KEY")?)?;
  • Manage APIs require a regular API key with Token auth.
  • Temporary auth tokens created via auth().grant(...) do not work for Manage APIs.

Quick start

Quick start: projects + usage

use deepgram::{
    manage::{projects::options::Options as ProjectOptions, usage::get_usage_options},
    Deepgram,
};

#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
    let api_key = std::env::var("DEEPGRAM_API_KEY")?;
    let project_id = std::env::var("DEEPGRAM_PROJECT_ID")?;
    let dg = Deepgram::new(&api_key)?;

    let projects = dg.projects().list().await?;
    println!("{projects:#?}");

    let project = dg.projects().get(&project_id).await?;
    println!("{project:#?}");

    let update = ProjectOptions::builder()
        .name("The Transcribinator")
        .company("Doofenshmirtz Evil Incorporated")
        .build();
    let message = dg.projects().update(&project_id, &update).await?;
    println!("{}", message.message);

    let usage_options = get_usage_options::Options::builder().build();
    let usage = dg.usage().get_usage(&project_id, &usage_options).await?;
    println!("{usage:#?}");

    Ok(())
}

Key parameters

  • Project APIs: projects().list(), get(projectid), update(projectid, &options), delete(project_id).
  • Key APIs: keys().list(projectid), get(projectid, keyid), create(projectid, &options), delete(projectid, keyid).
  • Member APIs: members().listmembers(projectid), removemember(projectid, member_id).
  • Scope APIs: scopes().getscope(projectid, memberid), updatescope(projectid, memberid, scope).
  • Billing APIs: billing().listbalance(projectid), getbalance(projectid, balance_id).
  • Usage APIs: usage().listrequests(...), getrequest(...), getusage(...), getfields(...).
  • Invitation API: invitations().leaveproject(projectid).

API reference (layered)

  1. In-repo

- src/manage/projects.rs - src/manage/keys.rs - src/manage/members.rs - src/manage/scopes.rs - src/manage/billing.rs - src/manage/usage.rs - src/manage/invitations.rs - examples/manage/*.rs

  1. OpenAPI

- Raw spec: https://developers.deepgram.com/openapi.yaml - Examples: https://developers.deepgram.com/reference/manage/usage/get, https://developers.deepgram.com/reference/manage/keys/list

  1. AsyncAPI

- Not applicable for the Rust crate's current management surface

  1. Context7

- /llmstxt/developersdeepgramllms_txt

  1. Product docs

- https://developers.deepgram.com/reference/ - https://developers.deepgram.com/docs/create-additional-api-keys

Gotchas

  1. Use API keys, not temp tokens. auth().grant(...) explicitly does not authorize Manage APIs.
  2. Examples in examples/manage/ are useful, but source files are the source of truth. Prefer src/manage/*.rs when you need exact method names and return types.
  3. Admin traffic stays on hosted Deepgram. Even with withbaseurl(...), billing/usage/key-management still target https://api.deepgram.com.

Example files in this repo

  • examples/manage/projects.rs
  • examples/manage/keys.rs
  • examples/manage/members.rs
  • examples/manage/scopes.rs
  • examples/manage/billing.rs
  • examples/manage/usage.rs
  • examples/manage/invitations.rs

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