Migration
Migrate from Twilio to volai in an afternoon.
A smaller API, the same concepts. Twilio terms mapped to volai, code compared side by side, a ready prompt for your AI agent, and a checklist of everything to switch.
Does it make sense for you?
Yes, if you need
- Czech phone numbers (+420) and local call rates.
- A voice agent that works out of the box, not one built from audio streams and your own model.
- Billing in Czech crowns with no currency surprises on your card statement.
Stay with Twilio if you need
- Inbound SMS into an API - volai can only send for now.
- Phone numbers outside the Czech Republic.
- WhatsApp, video or other communication channels.
What maps to what
The Twilio SDK won't just point at volai by changing an address - it's a smaller, different API. The concepts map one to one, though.
| Twilio | volai |
|---|---|
| Account SID + Auth Token | vk_... API key |
| Messages resource | POST /v1/messages |
| Calls resource | POST /v1/calls |
| IncomingPhoneNumbers | GET and POST /v1/numbers |
| StatusCallback | webhook events |
| TwiML | voice agent (systemPrompt) |
| X-Twilio-Signature | Volai-Signature |
Code side by side
Sending an SMS - same idea, different API.
Twilio (Node.js SDK)
const twilio = require("twilio");
const client = twilio(accountSid, authToken);
await client.messages.create({
body: "Hi from Twilio!",
from: "+15017122661",
to: "+420777123456",
});volai (fetch)
await fetch("https://volai.cz/v1/messages", {
method: "POST",
headers: {
Authorization: "Bearer vk_YOUR_KEY",
"Content-Type": "application/json",
},
body: JSON.stringify({
to: "+420777123456",
body: "Hi from volai!",
}),
});Give it to your AI agent
Copy the prompt into Claude Code, Cursor or another AI editor and let it do the migration for you - SKILL.md gives it the full reference.
Read https://volai.cz/SKILL.md. Find the Twilio SDK calls for SMS and calls in my project (client.messages.create, client.calls.create) and rewrite them to the volai REST API: POST https://volai.cz/v1/messages for SMS, POST https://volai.cz/v1/calls for calls, header Authorization: Bearer vk_YOUR_KEY. Also update webhook handling to the format in SKILL.md, including verifying the Volai-Signature header.Switch checklist
Number
Buy a Czech number (POST /v1/numbers or in the portal) and set its routing - agent, forwarding, or SIP.
Key
Generate an API key in the portal, under API and MCP.
Webhook
Set the webhook (PUT /v1/webhook) to the same address your Twilio StatusCallback uses today, and update the handler for the new event shape.
Test
Before you switch live traffic, send yourself an SMS and place a test call to your own phone.
DNS and old contacts
You usually don't need to touch DNS - volai doesn't use your domain. Do check websites, email signatures and documentation for the old phone number written in by hand.
When to stay with Twilio
Migrating isn't for everyone - beyond the overview above, weigh this too:
- Outbound calls from volai only reach Czech and Slovak numbers (+420, +421) - you can't call abroad, even from a Czech number you own.
- You need more than 60 requests a minute - that's the shared rate limit on both the REST API and the MCP server.
Start migrating
Signing up takes a minute and your first 50 CZK in credit is on us - try the new API before you switch live traffic.