Migration from Twilio to Orbit
This guide walks you through migrating your SMS, voice, and messaging integration from Twilio to Orbit. Most Twilio concepts map directly to Orbit equivalents, and the migration can be completed incrementally.Concept Mapping
| Twilio Concept | Orbit Equivalent | Notes |
|---|---|---|
| Account SID + Auth Token | API Key (dv_live_sk_xxxx) | Single key, simpler auth |
| Phone Numbers | Numbers API | Same capabilities, lower cost |
| Messaging Service | Campaigns + Number pools | Built-in sender selection |
| TwiML | IVR API + Agents | Declarative IVR or AI agents |
| Studio Flows | Flows (visual builder) | Drag-and-drop flow builder |
| Programmable Voice | Voice API | Calls, SIP, conferences |
| Verify | Verify API | OTP/2FA |
| Conversations | Agent conversations | AI-native conversations |
| Webhooks | Webhooks | Same pattern, different headers |
| Status Callbacks | Webhook events | message.delivered, call.completed |
Step 1: Create Your Orbit Account
- Sign up at orbit.devotel.io/signup
- Generate an API key at Settings > API Keys
- Note your key prefix:
dv_live_sk_xxxx
Step 2: Port Your Numbers
You can port existing Twilio numbers to Orbit. The process takes 7–14 business days. Via API:Step 3: Update SMS Integration
Twilio (Before)
Orbit (After)
Key Differences
| Feature | Twilio | Orbit |
|---|---|---|
| Auth | Account SID + Token | Single API key in X-API-Key |
| Send endpoint | client.messages.create() | orbit.messages.send() |
| Channel selection | Implicit (number type) | Explicit channel field |
| From number | Required from field | Auto-selected or specified |
| Status webhook | statusCallback | webhookUrl or global webhooks |
Step 4: Update Webhook Handlers
Webhook Header Changes
| Twilio | Orbit |
|---|---|
X-Twilio-Signature (HMAC-SHA1) | X-Devotel-Signature (HMAC-SHA256) |
Payload Format Changes
Twilio (form-encoded):Update Signature Verification
Step 5: Migrate Voice (if applicable)
TwiML to Orbit IVR
Twilio TwiML:Upgrade to AI Agents
Instead of static IVR trees, consider deploying an AI voice agent:Step 6: Migrate Verify (OTP)
Twilio (Before)
Orbit (After)
Migration Checklist
- Create Orbit account and generate API keys
- Port numbers or purchase new ones
- Install Orbit SDK (
npm install @devotel/sdk) - Update message sending code
- Update webhook endpoint handlers
- Update webhook signature verification
- Migrate voice/IVR flows (if applicable)
- Migrate Verify/OTP (if applicable)
- Update monitoring and alerting
- Run parallel testing (send via both Twilio and Orbit)
- Decommission Twilio integration
- Cancel Twilio account
Parallel Running Strategy
We recommend running Twilio and Orbit in parallel during migration:- Phase 1 (Week 1–2): Send 10% of traffic through Orbit, 90% through Twilio
- Phase 2 (Week 3–4): Split 50/50 and compare delivery rates
- Phase 3 (Week 5): Route 100% through Orbit, keep Twilio as fallback
- Phase 4 (Week 6+): Decommission Twilio