Streaming keys
Streaming keys are 32-character hex strings that map directly to a workspace:Managing streaming keys
Use the CLI to create, list, and delete streaming keys:Key file format
Streaming keys are stored in a key file with one key per line:{32_hex_chars}:{workspace_id}[:{optional_name}]. Lines starting with # are comments.
Using streaming keys
Configure your SDK with the key:Programmatic API keys
For automating HTTP API calls (querying metrics, managing boards, etc.), create programmatic API keys:Key options
| Field | Required | Description |
|---|---|---|
name | Yes | Display name (1-100 characters) |
description | No | Optional description (max 500 characters) |
workspace_id | No | Scope to a workspace (empty = user-level key) |
permissions | No | Specific permissions (empty = inherit from your role) |
expires_at | No | Expiration date (max 1 year from now, never expires if omitted) |
Managing API keys
Security
- Streaming keys use constant-time comparison to prevent timing attacks
- Programmatic API keys are stored as SHA-256 hashes — only the
key_prefixis visible after creation - Programmatic API keys inherit the creator’s role — they can’t do more than you can
- Passwords are hashed with Argon2id
- Revoked tokens are blacklisted and cannot be reused even if the JWT hasn’t expired
- All key creation and revocation events are audit logged