Base URL:https://api.omnireach.ca

API Reference

One key. Five channels. Email, Voice, SMS, Video, and AI Agents all from a single unified API.

🔑 Authentication

All requests require a Bearer token. One key covers all channels.

bash— Header
Authorization: Bearer or_live_your_api_key_here
Never expose API keys client-side. Use server-side requests only.

📧 Email API

Send transactional and marketing emails. 48+ AI features included.

POST/email/send
javascript— Send Email
const res = await fetch('https://api.omnireach.ca/email/send', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer or_live_xxxxx',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    from: '[email protected]',
    to: '[email protected]',
    subject: 'Welcome to OmniReach 🚀',
    html: '<h1>You are in!</h1>',
    ai: { improve: true, tone: 'friendly' }
  })
});
// { id: "em_abc123", status: "sent", latency_ms: 187 }
javascript— AI Compose
const email = await fetch('https://api.omnireach.ca/email/ai/compose', {
  method: 'POST',
  headers: { 'Authorization': 'Bearer or_live_xxxxx', 'Content-Type': 'application/json' },
  body: JSON.stringify({
    prompt: 'Follow up on the partnership proposal from last week',
    tone: 'professional',
    length: 'medium'
  })
});
// { subject: "Following Up: Partnership Proposal", body: "Dear ...", model: "gpt-4o-mini" }

🎙️ Voice Agents

Deploy AI voice agents that make and receive calls. Natural voice, branching scripts, CRM sync.

POST/voice/deploy
POST/voice/call
GET/voice/call/:id
GET/voice/agents
javascript— Deploy Voice Agent
const agent = await fetch('https://api.omnireach.ca/voice/deploy', {
  method: 'POST',
  headers: { 'Authorization': 'Bearer or_live_xxxxx', 'Content-Type': 'application/json' },
  body: JSON.stringify({
    name: 'Support Bot',
    phone: '+1-800-555-0100',
    persona: 'friendly_professional',
    voice: 'alloy',        // alloy, echo, shimmer, nova
    language: 'en-CA',
    script: {
      greeting: 'Hi! This is Alex from OmniReach. How can I help?',
      intents: ['appointment_booking', 'billing_inquiry', 'technical_support'],
      escalation_email: '[email protected]'
    },
    fallback_channel: 'sms'  // Send SMS if call fails
  })
});
// { agent_id: "va_xyz789", phone: "+1-800-555-0100", status: "active" }
javascript— Outbound Call
const call = await fetch('https://api.omnireach.ca/voice/call', {
  method: 'POST',
  headers: { 'Authorization': 'Bearer or_live_xxxxx', 'Content-Type': 'application/json' },
  body: JSON.stringify({
    agent_id: 'va_xyz789',
    to: '+1-416-555-0199',
    context: { name: 'John', reason: 'appointment_reminder', date: 'April 30' }
  })
});
// { call_id: "ca_111", status: "ringing" }

💬 SMS API

Bulk campaigns, transactional SMS, and two-way AI conversations.

javascript— Send SMS
// Single SMS
await fetch('https://api.omnireach.ca/sms/send', {
  method: 'POST',
  headers: { 'Authorization': 'Bearer or_live_xxxxx', 'Content-Type': 'application/json' },
  body: JSON.stringify({
    to: '+1-416-555-0199',
    message: 'Your order #1234 ships today! Track: omnireach.ca/t/xxx',
    ai_personalize: true   // AI customizes tone per recipient
  })
});

// Bulk SMS Campaign
await fetch('https://api.omnireach.ca/sms/campaign', {
  method: 'POST',
  headers: { 'Authorization': 'Bearer or_live_xxxxx', 'Content-Type': 'application/json' },
  body: JSON.stringify({
    name: 'Summer Sale',
    list: 'subscribers',
    template: 'Hey {{first_name}}, summer sale is LIVE! Use code OMNI30.',
    schedule: '2026-06-01T09:00:00-04:00'
  })
});

📹 Video Calls

Embeddable video calls with AI transcription, sentiment analysis, and automated follow-ups.

javascript— Create Meeting Room
const room = await fetch('https://api.omnireach.ca/video/rooms', {
  method: 'POST',
  headers: { 'Authorization': 'Bearer or_live_xxxxx', 'Content-Type': 'application/json' },
  body: JSON.stringify({
    name: 'Sales Call - Acme Corp',
    ai: {
      transcribe: true,         // Live transcription
      sentiment: true,          // Real-time mood analysis
      action_items: true,       // Extract tasks from conversation
      auto_followup_email: true // Send summary email after call
    },
    expires_in: 3600  // seconds
  })
});
// { room_id: "rm_aaa", url: "https://meet.omnireach.ca/rm_aaa", expires_at: "..." }

🤖 AI Agents

Dispatch autonomous agents across all channels. Dream Mode, Digital Twin, Negotiator, and more.

compose
reply
improve
translate
summarize
phishing
sentiment
priority
extract-tasks
negotiate
subject
twin
tone
categorize
dreammail
predict
javascript— Dream Mode
// Start overnight autonomous processing
await fetch('https://api.omnireach.ca/agents/dream', {
  method: 'POST',
  headers: { 'Authorization': 'Bearer or_live_xxxxx', 'Content-Type': 'application/json' },
  body: JSON.stringify({
    user_id: 'usr_123',
    permissions: {
      reply_routine: true,      // AI can reply to routine emails
      schedule_voice: true,     // AI can schedule voice callbacks
      send_sms_reminders: true, // AI can send SMS follow-ups
      max_actions: 50           // Safety limit
    },
    morning_briefing_email: '[email protected]'
  })
});
// { session_id: "dm_zzz", status: "running", started_at: "..." }
javascript— Negotiator AI
const negotiation = await fetch('https://api.omnireach.ca/agents/negotiate', {
  method: 'POST',
  headers: { 'Authorization': 'Bearer or_live_xxxxx', 'Content-Type': 'application/json' },
  body: JSON.stringify({
    item: 'Office Furniture',
    quantity: 200,
    budget: '$250/unit',
    stage: 'initial_inquiry', // initial_inquiry | counter_offer | follow_up | close_deal
    channels: ['email', 'sms']  // Multi-channel negotiation
  })
});
// { subject: "...", body: "...", sms_followup: "...", tip: "..." }

📡 Webhooks

Real-time events for all channels. Signed payloads for security.

email.sent
email.delivered
email.opened
sms.delivered
sms.reply
voice.call_started
voice.call_ended
voice.transcribed
video.meeting_ended
video.transcript_ready
agent.action_taken
agent.dream_complete
json— Webhook Payload
{
  "event": "voice.call_ended",
  "channel": "voice",
  "timestamp": "2026-04-28T14:33:00Z",
  "data": {
    "call_id": "ca_111",
    "agent_id": "va_xyz789",
    "duration_s": 187,
    "sentiment": "positive",
    "transcript_url": "https://api.omnireach.ca/voice/transcripts/ca_111",
    "action_items": ["Send follow-up email", "Schedule demo"],
    "followup_sent": true
  },
  "signature": "sha256=xxxx"
}

Rate Limits

PlanAPI Calls/minEmailVoiceSMS
Free60/min1K/mo50 mins/mo500/mo
Starter600/min25K/mo500 mins/mo5K/mo
Growth3K/min200K/mo2K mins/mo25K/mo
EnterpriseCustomUnlimitedUnlimitedUnlimited

Ready to Build?

Get your API key. All channels. Free plan available.

Get API Key