Build in the console
Describe the job, choose a voice, add knowledge and test your agent.
Build with the API
Create a saved profile with POST /v1/agents, then connect to /v1/omni.
Sandbox keys never bill. Live calls require available credit, and managed
telephony is metered separately. See Pricing and metering
for the current runtime and managed Agents rates.
Console workflow
1
Open the Agent builder
Go to Launch an Agent.
Sign up or sign in. The path is preserved through authentication.
2
Describe the job
Choose a template or start blank. Set the agent’s persona, greeting,
language, voice, and the rules it must follow.
3
Connect knowledge and tools
Add the information the agent should answer from. Bind tools when the agent
needs to look up data or take an action. Keep sensitive credentials in
server-side tool configuration.
4
Test before going live
Run the browser greeting test. Confirm that the opening line, voice, and
first response match your instructions. Confirm consent behavior when
recording is enabled. Browser tests have no phone leg and cannot prove
transfer, DTMF, hold, collect, or hangup behavior.
5
Put it on your website
Open Website & phone. The wizard drafts a Call Now snippet and
publishes it when you added a public site URL (localhost is always
included so you can preview). Add any remaining origins, publish if
needed, and paste the script tag. Guide:
Add your Agent to a website.
6
Connect a phone number
Assign an available managed number or connect a supported carrier route.
Availability and regulatory onboarding vary by country. Live calls consume
Agents usage at 0.01/min when PyAI
carries the phone leg.
Move between the console and API
The Agents workspace has Your agents, Realtime playground and Build with API. A saved agent’s API integration tab provides read, update and realtime connection examples for that agent. You can share the editor URL, including its selected tab, with a teammate who has access to the same organization and project. Use a key from your console project when creating an agent through the API. The profile then appears under Your agents in that project. Edits through either interface update the same profile; new sessions load the latest saved configuration. Inlineconfigure fields can override saved settings for one call.
For direct application connections, use
wss://api.pyai.com/v1/omni?format=pcm16&rate=24000&session_label=<agent_id>.
Saved profiles remain optional: omit session_label and send inline configuration
when you want to manage each session entirely in code. Existing Omni clients
keep their current endpoint, scope and wire protocol.
Need implementation help?
Talk to AtomsAI, our AI services business, for white-glove setup, bespoke integrations and ongoing agent improvement. Services are optional, scoped and quoted separately from PyAI usage.Next steps
Website widget
Publish a Call Now button with one script tag.
Create agents via API
The same profile, from code.
Knowledge bases
Hosted files, URLs, and pasted text.
Omni tools
Hosted, server, or client tools.