RCSZilla Version 1.0

Messaging Channels

SMS, email, WhatsApp queues, and reply handling

RCSZilla supports three messaging channels: SMS, WhatsApp, and email. The public REST queue endpoint (queue_sms / queue_bulk) accepts all three — sms and whatsapp are delivered via the Android device or SMS provider, and email is delivered through your configured SMTP servers.

Channel Summary

Channel Where It Is Used Delivery Path
sms Direct API sending, campaigns, inbox replies, reminders Queued with queue_sms, then sent by the Android device or provider flow.
whatsapp WhatsApp queue items and reply automation Queued with queue_sms using "channel": "whatsapp", then fetched by the Android app through poll.
email Direct API sending and email campaigns Queued with queue_sms using "channel": "email" (requires subject), then sent through your configured SMTP servers.

Send SMS by API

Use queue_sms with "channel": "sms". The response returns the queued message ID.

JSONRequest Body
{
  "to": "+40700000000",
  "message": "Your SMS text",
  "channel": "sms"
}

Queue WhatsApp

Use the same endpoint with "channel": "whatsapp". The Android app receives WhatsApp queue items in the whatsapp array returned by poll.

JSONRequest Body
{
  "to": "+40700000000",
  "message": "Your WhatsApp message",
  "channel": "whatsapp"
}

WhatsApp Replies

Incoming replies are posted with submit_reply. If an auto-reply rule matches, the API returns reply and reply_queue_id so the app can send the response and mark it sent.

JSONsubmit_reply
{
  "from_phone": "+40700000000",
  "message": "Customer reply text",
  "channel": "whatsapp"
}

Send Email by API

Use queue_sms with "channel": "email". For email, to is an email address and subject is required; message is the body (HTML or plain text). If you omit smtp_server_id, RCSZilla auto-rotates across your configured SMTP servers (round-robin). Configure SMTP servers in the web panel under Email Servers first.

JSONRequest Body
{
  "to": "customer@example.com",
  "subject": "Your order has shipped",
  "message": "<p>Hi, your order is on its way!</p>",
  "channel": "email",
  "smtp_server_id": 3
}

smtp_server_id is optional. The response includes the resolved smtp_server_id that was used.

Scheduled Delivery

For API queued SMS, WhatsApp, or email messages, add scheduled_at to delay sending until a future date/time.

JSONScheduled SMS
{
  "to": "+40700000000",
  "message": "Scheduled reminder",
  "channel": "sms",
  "scheduled_at": "2026-05-02 15:30:00"
}