Skip to main content
Rejected promises throw a RingeeError carrying a stable code, a human-readable message, and a retryable flag.
The bundled UIs already translate these codes into actionable messages. In Headless, that mapping is yours.

Installation

Something is wrong with the key or the origin. These are configuration problems, not runtime ones — fail loudly during development. See Publishable keys.

Authentication

Permissions

These are decided server-side, on every call. A publishable key never grants calling rights on its own.

Calls

Browser and network

Retry policy

retryable is true for known transient failures — rate limits, timeouts, network failures and provider connection failures. Every other code in this page reports No.
Never auto-retry permission, credit, Do Not Call or authentication errors. Retrying INSUFFICIENT_CREDIT or DNC_BLOCKED cannot succeed, and retrying auth errors can lock the agent out of the challenge.

Where errors surface

Subscribe before initialize() so errors raised during startup are not missed.

Next steps

Troubleshooting

Symptom-first fixes for the common cases

Security

CSP, microphone and iframe requirements