Your calls ring on your browser, never a stranger's

Browser calling identities are scoped to the account and minted on the account that owns the line, with a one-hour token.

What it is

The access token that lets a browser place and receive calls. Identity is org__user rather than a bare user id, and the token is minted on the Twilio account that actually owns the caller ID being presented. The agency's own calls are a separate, capability-gated identity.

Also called: someone else's call rang on my screen · call security · wrong account got the call

See it
Your calls ring on your browser, never a stranger's
🔒ridgelinepostframe.com/project/voice-394
30×40 Garage
Framing · on schedule
Diagram rather than a screen: browser → token endpoint → the builder's own Twilio subaccount, with a second tenant's box clearly separate. Sample data — no customer information appears here.
How it works
  1. 1Identity is built as `${orgId}__${userId}` with a double underscore, because Clerk ids contain single ones
  2. 2The JWT is signed with node crypto rather than pulling a ~10MB SDK server-side for one signature
  3. 3TTL is one hour; the client refreshes on tokenWillExpire
  4. 4Agency scope requires the tenants.impersonate platform capability, never a query string
Why we built it

Browser calling identities are global to the carrier account, so an unscoped one could collide between two businesses — and the worst version of that is one builder's incoming call ringing on another builder's screen. There was a second failure underneath it: a calling identity minted on the wrong account can only present caller IDs that account owns, so outbound calls from a builder's own number died every time. Identities are now scoped per account and minted on the account that owns the line, with a one-hour lifetime.

The problem
  • Cross-tenant call collisions
  • Outbound calls rejected because the caller ID isn't owned by the token's account
  • Tokens expiring mid-shift
Sound familiar?
What you get
Hard isolation between accounts
Dial out as your own business number
The phone stays registered all day

See it on your own jobs

Twenty minutes, your numbers, no slide deck. We’ll build one of your real buildings in front of you and send you the estimate link at the end — yours to keep either way.

or keep browsing features →