What Is a Speech Pipe?
A Speech Pipe in Unpod ties together a voice profile (STT + TTS), telephony (phone numbers), and a pointer to your agent brain into a single deployable unit. When a call arrives on a number attached to the pipe, the orchestrator dispatches it to yourAgentRunner process.

Creating a Pipe
create() parameters
Listing Pipes
Pipe fields
Getting a Single Pipe
Updating a Pipe
Deleting a Pipe
How the Pipe Reaches Your Brain
The pipe never calls your brain over HTTP. On every call the orchestrator dispatches the session to a worker, and the worker connects to yourAgentRunner over a WebSocket bridge (text in / text out). There are two ways the pipe finds that runner:
- By
agent_id(preferred). Run anAgentRunnerwith the sameagent_idas the pipe. Under the defaultdial_outtransport the runner never listens - it registers, then dials out to a per-call bridge when a call is assigned. The orchestrator picks a registered, least-loaded runner per call, and you never expose a URL, a tunnel, or a webhook. See AgentRunner. - By
agent_endpoint(legacyservetransport only). Set the pipe’sagent_endpointto a fixedwss://...bridge URL that your runner serves. This applies only totransport="serve", which is deprecated - under the defaultdial_outtransport nothing listens on that URL. It is a WebSocket URL, not an HTTP endpoint.
agent_endpoint is not an HTTP webhook - the orchestrator does not POST to it. It is the WebSocket bridge URL your AgentRunner serves on.Bridging a Remote HTTP Brain
Already have a chatbot or API in any language? Run anAgentRunner whose dialog
brain is an HTTPAdapter. It POSTs each user turn to your endpoint from inside
the runner - text in, text out, not OpenAI-compatible. Your endpoint keeps all
LLM logic.
assist(), and error surfaces:
Adapters.
Pipe + Runner Pattern (Recommended)
The recommended pattern for production is a dedicatedAgentRunner process:
agent_id in AgentRunner must match the pipe’s agent_id in the platform. The orchestrator uses it to route dispatches to the correct runner worker.
Next Steps
AgentRunner & Sessions
Configure the AgentRunner for production and act on live calls -
say, transfer, end, record.