Skip to content

Token broker

Example: examples/token-broker

Terminal window
# put upstream provider keys in the environment
bun run examples/token-broker/server.ts

Request:

POST /api/voice/token
Content-Type: application/json
{
"provider": "deepgram",
"purpose": "asr",
"sessionId": "optional"
}

Response:

{
"token": "short-lived-token",
"url": "wss://optional-signed-endpoint",
"expiresAt": 1784000000000
}

Client providers:

createDeepgramASR({
tokenBrokerUrl: 'https://your.app/api/voice/token',
});

Gateways should enforce auth, allowlists, quotas, rate limits, payload limits, timeouts, and audit IDs. Do not log raw audio, full transcripts, or upstream credentials by default. See the security guide.