Python starter
Python 3.9+, standard library only.
JavaScript starter
Node 18+, no dependencies.
Step 1: Clone
Step 2: Add your key
Paste your API key into.env:
.env
Step 3: Publish the starter agent
Step 4: Talk to it
http://localhost:3000 in Chrome or Edge and start talking.
Put it on a phone number
Twilio passes calls to AssemblyAI over SIP, so there’s no media server or webhook to run. Buy a Twilio number, then add your credentials and a trunk domain you invent:.env
Next steps
Write your own agent
Write your own agent
Every file in Copy the closest file to start your own (
agents/ is the request body for POST /v1/agents, sent unchanged. The starter agent is four fields:agents/minimal.jsonc
cp agents/http-tools.jsonc agents/my-agent.jsonc). Every field is commented. Publish again and both the browser tab and the phone number pick up the change on the next call.Publish one of the other agents
Publish one of the other agents
Nine agents ship with each starter. Set
AGENT= to pick one:Give an agent your API keys
Give an agent your API keys
Values written as
${VAR} in an agent file are substituted at publish time from .env, or from agents/<name>.env for credentials only one agent uses. Both are gitignored, so the JSON is safe to commit.Put the browser app online
Put the browser app online
Deploy the Python or JavaScript starter to Render. It prompts for
ASSEMBLYAI_API_KEY and nothing else.Anyone with the URL can start sessions billed to that key.1. Create
Create a reusable agent with one REST call, then update, list, and delete it.
2. Configure
Shape how it sounds and behaves: prompt, voice, greeting, audio, turn detection, keyterms, tools.
3. Deploy
Connect by
agent_id over the API, from a browser, or to a phone number with Twilio.- Add tools: server-side HTTP tools and client-side function tools
- Connect your own LLM: point the agent at an OpenAI-compatible model
- Manage agents (REST): every endpoint, field, and validation rule
- Browser integration: mint tokens and build your own client
- Phone agents over SIP: the phone step above in full, including a Twilio CLI path
- Events reference: every WebSocket event with full payloads
- Build with AI coding tools: point Claude Code, Cursor, or v0 at these docs
- Troubleshooting: symptom-to-fix table and support logging