Security

Your callers' audio is not our data.

Tenms processes audio in memory and keeps only per-call quality summaries. Run the SDK in-process and the audio never leaves your infrastructure.

What we keep

DataHandlingNotes
Call audioProcessed in memory, frame by frame. Never written to disk or stored.SDK: never leaves your process
TranscriptsUsed during the call to confirm interruptions. Not stored.Optional input
Call summariesQuality metrics, turn counts, failure cause and processing stats per call.Stored, scoped to your customer ID
License tokensReturned once when issued. Never stored by the control plane.Ed25519-signed

Controls

Licensing

  • Licenses are Ed25519-signed and scoped to a customer, a set of modules, session limits and, for the bridge, named ElevenLabs agents.
  • The SDK verifies licenses offline, against vendor keys compiled into the binary, using the system clock.
  • Browsers never hold a license. Your backend exchanges it for a session token that must be used within 5 minutes.

Revocation and limits

  • Revoking a license ends its running Edge sessions, including those opened with derived session tokens. Measured at about 90 s.
  • Per-license caps on concurrent sessions and connection rate, plus a maximum session duration.
  • Audio uploaded faster than real time is paced. A client that stops reading is disconnected.

Transport and secrets

  • TLS on every public endpoint. Edge refuses to send summaries to a control plane over plain HTTP.
  • Tokens, keys and database credentials are redacted from logs and error messages.
  • Shared secrets are compared in constant time.

Isolation

  • Every read and write on the control plane is scoped to the license's customer.
  • Call IDs are deduplicated per customer, so tenants cannot collide or overwrite each other.
  • Bounded queues, message sizes and query timeouts keep one tenant from exhausting shared capacity.

Independent review

Reviewed from the outside. Fixed in the open.

An independent reviewer audited the engine, Edge, control plane and Python SDK. It found 2 critical and 7 high-severity issues. All of them are fixed, and each fix has a regression test.

SeverityAreaFindingFix
CriticalBridge agent accessAny license could reach any ElevenLabs agent through the bridge.Licenses now carry a signed list of allowed agents, checked before any upstream call.
CriticalFalse barge-ins from long echoEcho delayed by more than 350 ms could be mistaken for the caller.Online echo-delay estimation from 0 to 1,000 ms; Turn holds until the delay is known.
HighMid-session revocationRevoked or expired licenses kept running sessions alive.Running sessions now end on revocation, expiry or maximum duration.
HighOffline license trustThe SDK host supplied the verifying key and clock.Verification against pinned vendor keys and the system clock.

Selected findings. The full list, with test names and commits, is available on request.

Send us your security questionnaire.

We will answer it, walk your team through the architecture and share the full review findings.