Global Channels
Reach your users anywhere in the world through SMS, Email, Voice, and WhatsApp. One API, unified delivery, global coverage.
140+ Countries
Local phone numbers and direct carrier connections worldwide.
Unified API
Send via any channel with consistent request/response format.
Intelligent Routing
Automatic carrier selection for optimal delivery and cost.
Available Channels
Unified Messaging API
Send messages through any channel using the same API structure. Just specify the channel and recipient - Canary handles the rest.
{
"channel": "sms",
"to": "+15551234567",
"content": {
"text": "Your order has shipped!"
}
}
// Or send via email
{
"channel": "email",
"to": "user@example.com",
"content": {
"subject": "Order Shipped",
"text": "Your order has shipped!",
"html": "<p>Your order has shipped!</p>"
}
}
// Or send via WhatsApp
{
"channel": "whatsapp",
"to": "+15551234567",
"content": {
"template": "order_shipped",
"parameters": ["ORD-12345"]
}
}Multi-Channel Delivery
Reach Users on Their Preferred Channel
Send the same message across multiple channels simultaneously, or configure intelligent fallbacks to maximize delivery rates.
{
"recipient": {
"phone": "+15551234567",
"email": "user@example.com"
},
"channels": ["sms", "email"],
"content": {
"text": "Your order #12345 has shipped!"
}
}
// Or with channel fallbacks
{
"recipient": {
"phone": "+15551234567"
},
"channels": ["whatsapp"],
"fallback_channels": ["sms", "voice"],
"fallback_delay": 60,
"content": {
"text": "Your verification code is 123456"
}
}Regional Coverage
Canary maintains direct carrier connections and local infrastructure across all major regions for reliable, low-latency delivery.
North America
Full coverageUnited States, Canada, Mexico
Europe
Full coverageUK, Germany, France, Spain, Italy, +30 more
Asia Pacific
Full coverageJapan, Australia, Singapore, India, +20 more
Latin America
Full coverageBrazil, Argentina, Chile, Colombia, +15 more
Middle East
Partial coverageUAE, Saudi Arabia, Israel, +10 more
Africa
Partial coverageSouth Africa, Nigeria, Kenya, Egypt, +20 more
Number Provisioning
Provision local phone numbers in any supported country directly through the API. Numbers are activated instantly and support SMS, MMS, and Voice capabilities.
Search Available Numbers
// Search for US numbers in the 415 area code
GET /v1/phone-numbers/available?country=US&area_code=415
// Response
{
"data": [
{
"phone_number": "+14155551234",
"country": "US",
"region": "CA",
"capabilities": ["sms", "mms", "voice"],
"monthly_cost": 1.00,
"setup_cost": 0.00
},
{
"phone_number": "+14155555678",
"country": "US",
"region": "CA",
"capabilities": ["sms", "mms", "voice"],
"monthly_cost": 1.00,
"setup_cost": 0.00
}
]
}Purchase a Number
{
"phone_number": "+14155551234",
"friendly_name": "Marketing SMS",
"sms_webhook_url": "https://yourapp.com/webhooks/sms",
"voice_webhook_url": "https://yourapp.com/webhooks/voice"
}Delivery Webhooks
Receive real-time delivery status updates for all channels via webhooks. All webhook payloads follow a consistent format regardless of channel.
// Webhook payload
{
"event": "message.delivered",
"message_id": "msg_abc123xyz",
"channel": "sms",
"to": "+15551234567",
"status": "delivered",
"delivered_at": "2024-01-01T12:00:30Z",
"metadata": {
"campaign_id": "camp_xyz"
}
}Channel Availability by Region
| Region | SMS | Voice | ||
|---|---|---|---|---|
| North America | ||||
| Europe | ||||
| Asia Pacific | ||||
| Latin America | ||||
| Middle East | ||||
| Africa |
Full coverage Partial coverage