Skip to main content

Quickstart

Step 1: Create an Account

Sign up at orbit.devotel.io/signup. The dashboard will route you to your locale-preferred URL automatically. No credit card required. Email verification creates your account, but it does not grant any credit. As of 2026-05-20 the 5trialcreditisadmingated:itisreleasedonlyafteryousubmityourKYCdocumentsunderSettings>KYCandanadminapprovesyourorganization.Untilthatapprovallandsyourbalanceis5 trial credit** is admin-gated: it is released only after you submit your KYC documents under **Settings > KYC** and an admin approves your organization. Until that approval lands your balance is **0, so a freshly verified account cannot send billable traffic on any channel — SMS (US or international), WhatsApp, and voice all draw on the same trial credit and therefore all require an approved KYC first. Submit your documents at Settings > KYC to unlock the trial credit. The 10DLC brand + campaign registration that US SMS requires is a further compliance step layered on top of KYC, not a substitute for it.

Step 2: Get Your API Key

Navigate to Settings > API Keys and create a new key. Live keys are prefixed with dv_live_sk_; test keys with dv_test_sk_. Keep these server-side only.

Step 3: Send Your First Message

The same /messages/<channel> endpoint shape works across SMS, WhatsApp, Email, RCS, and Voice — pick the channel you’re integrating first.

SMS

curl -X POST https://api.orbit.devotel.io/api/v1/messages/sms \
  -H "X-API-Key: $ORBIT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "to": "+14155552671",
    "from": "+14155551234",
    "body": "Hello from Orbit!"
  }'

WhatsApp

curl -X POST https://api.orbit.devotel.io/api/v1/messages/whatsapp \
  -H "X-API-Key: $ORBIT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "to": "+14155552671",
    "type": "template",
    "template": {
      "name": "hello_world",
      "language": { "code": "en" }
    }
  }'

Email

curl -X POST https://api.orbit.devotel.io/api/v1/messages/email \
  -H "X-API-Key: $ORBIT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "to": "user@example.com",
    "from": "hello@yourdomain.com",
    "subject": "Welcome",
    "html": "<h1>Welcome to Acme</h1>"
  }'

Voice

curl -X POST https://api.orbit.devotel.io/api/v1/voice/calls \
  -H "X-API-Key: $ORBIT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "to": "+14155552671",
    "from": "+14155551234",
    "agent_id": "agent_support_bot"
  }'
Starting from zero with voice? Walk through the dedicated Voice Quickstart — it covers provisioning a number, configuring an agent with a system prompt, browser-mic testing, and SSE event subscription, all in under 5 minutes.
Replace $ORBIT_API_KEY with the key from Step 2 (or export it in your shell). Don’t paste your key directly into shared snippets.

Step 4: Check the Response

{
  "data": {
    "id": "msg_abc123",
    "status": "queued",
    "channel": "sms"
  },
  "meta": {
    "request_id": "req_xyz789",
    "timestamp": "2026-03-08T00:00:00Z"
  }
}
Congratulations — you’ve sent your first message with Orbit. Hook a delivery webhook next: see Webhooks.