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
| Data | Handling | Notes |
|---|---|---|
| Call audio | Processed in memory, frame by frame. Never written to disk or stored. | SDK: never leaves your process |
| Transcripts | Used during the call to confirm interruptions. Not stored. | Optional input |
| Call summaries | Quality metrics, turn counts, failure cause and processing stats per call. | Stored, scoped to your customer ID |
| License tokens | Returned 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.
| Severity | Area | Finding | Fix |
|---|---|---|---|
| Critical | Bridge agent access | Any license could reach any ElevenLabs agent through the bridge. | Licenses now carry a signed list of allowed agents, checked before any upstream call. |
| Critical | False barge-ins from long echo | Echo 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. |
| High | Mid-session revocation | Revoked or expired licenses kept running sessions alive. | Running sessions now end on revocation, expiry or maximum duration. |
| High | Offline license trust | The 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.