Each of the three cascade slots takes an optional fallback — a second provider and model the agent switches to mid-call when the primary starts failing. It is off by default, and it is not free to set up: the fallback needs its own provider key before the agent will publish, and a call that fails over is billed to both providers for the parts each one served. Leave it unset unless redundancy is the point. Most agents do not need one.

What a failover actually is

Both models are built when the session starts, side by side. Traffic goes to the primary; the fallback takes over only once the primary returns errors, and it keeps the call rather than recovering it — the turn that triggered the switch is the turn that was already going wrong. Two consequences worth knowing before you add one:
  • A missing fallback key breaks the whole session, not only the failover. Because both models are built up front, an agent whose fallback provider has no key fails at the start of every call, including calls the primary would have served perfectly. This is why publish demands the key.
  • There is no failover for a realtime model. A speech-to-speech model is not a language model, a transcriber or a voice, so there is nothing to wrap. avatar, noise_cancellation and the post-call analysis model have no fallback either.

Setting one

A fallback is a provider and model, plus whatever settings belong to that stage — a text-to-speech fallback carries its own voice and speed, a language model fallback its own thinking effort, priority lane and provider tools. Nothing is inherited from the primary.
Remove one by setting fallback to null. In the dashboard, each stage of the Models card has an Add a fallback button that opens the same provider and model pair below the primary, with a Remove link.

The rules

Everything here is checked on every write except the provider key, which is checked when you publish. Errors block the write; warnings come back on POST /v1/agents/{agent_id}/validate and do not.
A fallback that offers fewer provider tools than the primary — or none — is allowed on purpose. Losing web search for the rest of a call is a much better outcome than losing the call.

What a failover costs

Provider spend is split by what each model actually served. Usage is metered per model, so a call that failed over halfway produces a line for the primary covering the first half and a line for the fallback covering the second. Both land on your own provider accounts, at each provider’s own rate. The priority lane is recorded per model too, from what that model was asked for — a fallback does not inherit the primary’s lane. The platform fee does not change. It is per minute of the call, whichever models ran it. The dashboard’s per-minute estimate prices the primary only. It has no way to know how much of a call a failover would serve, so treat the estimate as the no-failover case.

When to set one

Set a fallback when the agent is answering a phone number you cannot let go dark, and you already hold a key for a second provider. A pair that shares a language and a register is what makes the switch inaudible. Do not set one to hedge on quality. A fallback is chosen at the moment a provider is erroring, which is not the moment to be switching to a model whose voice or reasoning is noticeably different — and it costs a second key, a second set of settings, and a publish that now fails if either provider is unconfigured.

Next

Models

Every model with its channels, languages, flags and price.

Validation

Errors against warnings, and the common refusals.

Costs

Reading provider spend and the platform fee for a call.