Widget delivered from cdn.speechify.ai; ‘flow_budget_exhausted’ call end reason documented
Widget delivered from cdn.speechify.ai; ‘flow_budget_exhausted’ call end reason documented
The voice-agent widget now ships from cdn.speechify.ai
New widget embeds load the bundle from cdn.speechify.ai:
That URL tracks the current release and is cached for five minutes, so a correction reaches a returning visitor quickly. It is what the docs and console snippets now hand you.
If your change-control process needs a bundle that never moves, request an
exact version instead - https://cdn.speechify.ai/widget/v<MAJOR>.<MINOR>.<PATCH>/agents.js
is immutable, cached for a year, and safe to protect with integrity=. Pin the
version you actually tested: a pin never receives later fixes, and a version we
do not serve returns 404 rather than falling back to a different build. The
embed guide
has the current release.
The existing https://api.speechify.ai/v1/widget/agents.js URL keeps working.
Both hosts serve the same features: immutable versioned builds, subresource
integrity, source maps, and a build stamp at
window.__SPEECHIFY_WIDGET_VERSION__.
For strict content-security policies, add cdn.speechify.ai to the
script-src directive.
flow_budget_exhausted added to end_reason
Every conversation carries an end_reason field on the Conversation resource.
One of the existing values, flow_budget_exhausted, is now documented in the
Conversation schema:
The agent’s flow ran for longer than the total per-call flow-execution budget and was ended by the runtime. A backstop above every call-duration ceiling; a call that reaches it has been looping rather than conversing.
This is a runtime safety net, not a call-duration policy. The per-call duration
limit on your plan (or the agent-level max_call_duration_seconds) is the
primary cap; flow_budget_exhausted catches calls where the flow runtime
itself exceeds its execution budget - typically a loop the duration watchdog
couldn’t intercept. If you see this reason on a conversation, check the
agent’s flow definition for a node that may be running unbounded iterations.