Frequently Asked Questions
General
What is Orbit?
Orbit is Devotel’s Communications Platform as a Service (CPaaS). It provides APIs for SMS, WhatsApp, RCS, Viber, Email, and Voice — plus AI-native features like autonomous agents, visual flow builders, and intelligent routing.What channels does Orbit support?
Orbit supports six communication channels:- SMS — Global coverage in 190+ countries
- WhatsApp — Business API with template and session messaging
- RCS — Rich messaging on Android devices
- Viber — Popular in Eastern Europe and Southeast Asia
- Email — Transactional and marketing email
- Voice — Outbound/inbound calls, SIP trunking, IVR, and AI voice agents
Where is Orbit hosted?
Orbit runs on Google Cloud Platform (GKE Autopilot) in theeurope-west1 region (Belgium). Data is stored in Cloud SQL PostgreSQL 16 with at-rest encryption.
Authentication
How do I get an API key?
- Sign up at orbit.devotel.io
- Navigate to Settings > API Keys
- Click Create Key
- Copy and securely store the key — it’s only shown once
What’s the difference between live and test keys?
| Key Type | Prefix | Environment | Real Messages |
|---|---|---|---|
| Live Secret | dv_live_sk_ | Production | Yes |
| Test Secret | dv_test_sk_ | Sandbox | No (simulated) |
| Public | dv_live_pk_ | Client-side | Limited read-only |
Can I use the same key across multiple applications?
Yes, but we recommend creating separate keys for each application or service for better security and audit tracing. You can create unlimited API keys.Messaging
What phone number format does Orbit use?
All phone numbers must be in E.164 format:+[country code][number]. Examples:
- US:
+14155552671 - UK:
+447911123456 - Turkey:
+905551234567
How are SMS messages billed?
SMS messages are billed per segment:- GSM-7 encoding (standard characters): 160 chars per segment, 153 for multi-part
- Unicode (emoji, non-Latin scripts): 70 chars per segment, 67 for multi-part
What happens if a message fails?
Failed messages can be retried usingPOST /v1/messages/{id}/retry. The original message parameters are reused. Orbit also supports automatic retry through campaign settings.
Do I need 10DLC registration for US SMS?
Yes. All Application-to-Person (A2P) SMS to US numbers requires 10DLC registration through The Campaign Registry. See our 10DLC guide for step-by-step instructions.What is the maximum message size?
| Channel | Limit |
|---|---|
| SMS | 1,600 characters (multi-segment) |
| 4,096 characters | |
| RCS | 8,000 characters |
| 25 MB (including attachments) |
Voice
What codecs does Orbit support?
Orbit supports OPUS, PCMU (G.711 mu-law), and PCMA (G.711 A-law). OPUS is recommended for the best quality at lower bandwidth.Can I bring my own SIP trunk?
Yes. Connect your existing carrier via SIP trunking. Orbit supports TLS/SRTP encryption and standard SIP authentication. See the Voice API documentation.How do AI voice agents work?
Orbit’s voice agents combine:- STT (Deepgram Nova-3) — converts caller speech to text
- LLM (via Portkey gateway) — generates a response
- TTS (Cartesia Sonic Turbo) — speaks the response back
AI Agents
What LLM models can I use?
Orbit supports any model available through the Portkey LLM gateway, including:- OpenAI: GPT-4o, GPT-4o-mini
- Anthropic: Claude Sonnet 4, Claude Haiku
- Google: Gemini 2.0 Flash, Gemini 2.0 Pro
Can agents use external tools?
Yes. Define custom tools with JSON Schema parameters. The agent will invoke tools during conversations to look up data, take actions, or fetch information from your systems.What are guardrails?
Guardrails are rules that validate AI agent outputs before they reach end users. Powered by Portkey, they can enforce:- No PII exposure
- No profanity or harmful content
- Brand voice consistency
- Factual accuracy checks
Billing
What plans are available?
| Plan | Price | SMS Included | AI Conversations |
|---|---|---|---|
| Starter | Free | 100 | 25 |
| Growth | $99/mo | 5,000 | 500 |
| Business | $499/mo | 25,000 | 5,000 |
| Enterprise | Custom | Unlimited | Unlimited |
What happens if I exceed my plan limits?
Usage beyond plan limits is charged at per-unit overage rates. You can also use prepaid credits for predictable pay-as-you-go pricing. Configure auto-reload to prevent service interruption.How do prepaid credits work?
Credits are purchased in advance and consumed for messages, voice minutes, and agent invocations beyond your plan’s included usage. Credits never expire and can be topped up via API or dashboard.Webhooks
How do I verify webhook signatures?
Every webhook includes anX-Devotel-Signature header containing an HMAC-SHA256 signature. Verify it by computing the HMAC of the raw request body using your webhook secret. See the Security guide for code examples.
What happens if my webhook endpoint is down?
Orbit retries failed webhook deliveries on an exponential schedule: 1m, 5m, 30m, 2h, 8h, 24h. After all retries are exhausted, the event is sent to a dead letter queue. You can review failed deliveries in the dashboard.Can I subscribe to specific event types?
Yes. When creating a webhook, specify the events you want to receive:["*"] to subscribe to all events.
SDKs
Which SDKs are available?
| Language | Package | Status |
|---|---|---|
| Node.js/TypeScript | @devotel/sdk | GA |
| Python | orbit-python | GA |
| Go | orbit-go | GA |
| Java | orbit-java | GA |
| PHP | orbit-php | GA |
| Ruby | orbit-ruby | GA |
| C# / .NET | Devotel.Orbit | GA |
Do I need an SDK to use Orbit?
No. The Orbit API is a standard REST API. SDKs are optional convenience wrappers. You can usecurl, fetch, httpx, or any HTTP client.
Support
How do I contact support?
- Email: support@devotel.io
- Dashboard: In-app chat via the help widget
- Enterprise: Dedicated Slack channel and account manager