Skip to main content
Tell has two types of keys. Streaming keys authenticate SDKs and pipeline sources sending data over TCP, HTTP, or syslog. Programmatic API keys authenticate HTTP API calls for automation and integrations.

Streaming keys

Streaming keys are 32-character hex strings that map directly to a workspace:
You get your first streaming key when you run setup. SDKs and pipeline sources use this key to authenticate data ingestion.

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:
Format: {32_hex_chars}:{workspace_id}[:{optional_name}]. Lines starting with # are comments.

Using streaming keys

Configure your SDK with the key:
Pipeline sources (TCP, HTTP, syslog) validate the key on every connection.

Programmatic API keys

For automating HTTP API calls (querying metrics, managing boards, etc.), create programmatic API keys:
The response includes the full key — it’s only shown once:
Use it like a regular JWT token:

Key options

Managing API keys

Admins can view and revoke any key in their workspace:

Security

  • Streaming keys use constant-time comparison to prevent timing attacks
  • Programmatic API keys are stored as SHA-256 hashes — only the key_prefix is 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