Omnix

Channels

A channel is a configured communication provider that Omnix uses to send and receive messages. Channels must be set up by an admin in the Omnix workspace before your integration can use them.


Supported Channel Types

channelTypeProtocolSetup requiredsmsTwilio (SMS/MMS)Twilio account + phone numberemailGmail OAuth or Microsoft/Outlook OAuthOAuth authorization by adminwhatsappWhatsApp Business APIWhatsApp Business account + approved templatesvoiceSIP (via Twilio or TelephonyManager)SIP trunk + extension assignment


Channel Readiness Check

Before sending to a specific channel, the channel must be configured and active in the workspace. Attempting to send on a channel that isn't set up returns CHANNEL_NOT_CONFIGURED.

To check what channels are active for a subscription, use ChannelManagerRpc.getData (internal/admin use — not available via API key auth by default).

Best practice: Your integration should handle CHANNEL_NOT_CONFIGURED gracefully and fall back to an alternative channel if available.


WhatsApp Constraints

WhatsApp enforces the strictest constraints of all channels:

ScenarioRequirementSending to a contact who has messaged you within 24hAny messageSending to a contact outside the 24h windowApproved template requiredSending to a new contact (outbound cold)Approved template required

Always use sendTemplatedMessage with an approved WhatsApp template for new contacts and cold outbound. The templateName must exactly match an approved template in your workspace.


SMS Constraints

  • Phone numbers must be in E.164 format (+15551234567).

  • Message length: standard SMS is 160 characters. Longer messages are split into segments automatically.

  • The sending number is determined by your Twilio configuration — it is not specified per API call.


Email Constraints

  • subject is supported in sendSystemMessage for email conversations.

  • HTML and plain-text message bodies are accepted.

  • Attachments are not currently supported via the Gateway API.


Voice

Voice conversations are primarily managed through the Omnix UI and the telephony control endpoints (assignExtension, getSipCredentials, controlCall). See Telephony Integration for the integration guide.