Send one or multiple messages over WhatsApp, Viber, Voice, VKontakte, Line, SMS or Push, with automatic failover to another channel according to the specific scenario.
Scenario key that uniquely identifies the scenario which will be used when sending message. If this field is not set, the default scenario will be used.
bulkId
string
The ID which uniquely identifies the request. Bulk ID will be received only when you send a message to more than one destination address.
destinations
Array of objects
Destinations to which you are sending a message, such as phone number, email address, or unique ID.
Array
messageId
string
The ID that uniquely identifies the message sent.
to
object
The message destination address.
phoneNumber
string
Destination phone number. Phone numbers must be in international format (example: 41793026727).
emailAddress
string
Destination email address.
pushRegistrationId
string
Unique ID for push registration.
sms
object
SMS-specific data used if the message is sent through an SMS channel.
text
string [ 1 .. 2147483647 ] characters
Text of the message that will be sent.
validityPeriod
integer <int32>
The message validity period. Unless specified differently in validityPeriodTimeUnit, it is expressed in minutes. When the period expires, the message will be automatically sent using the next OMNI step. Validity period longer than 48h is not supported (in this case, it will be automatically set to 48h). Additionally, period should be longer than 30 seconds.
Conversion of a message text from one script to another.
language
object
By setting the languageCode parameter you can send your language specific characters
languageCode
string
Enum:"NONE""TR""ES""PT""AUTODETECT"
Code for language character set of a message text.
regional
object
Region specific parameters, often specified by local laws. Use this if country or region that you are sending SMS to requires some extra parameters.
indiaDlt
object
Distributed Ledger Technology (DLT) specific parameters required for sending SMS to phone numbers registered in India.
contentTemplateId
string
Id of your registered DTL content template that matches this message's text.
principalEntityId
required
string
Your assigned DTL principal entity id.
telemarketerId
string
Your assigned Telemarketer ID. (required for Aggregators)
korea
object
Specific parameters required for sending SMS to phone numbers registered in Korea.
title
string [ 0 .. 66 ] characters
Title of the message that will be sent.
whatsApp
object
WhatsApp-specific data used if the message is sent through a WhatsApp channel.
text
required
string
Text of the message that will be sent.
validityPeriod
integer <int32>
The message validity period. Unless specified differently in validityPeriodTimeUnit, it is expressed in minutes. When the period expires, the message will be automatically sent using the next OMNI step. Validity period longer than 48h is not supported (in this case, it will be automatically set to 48h). Additionally, period should be longer than 30 seconds.
The message validity period time unit, allowing finer time granulation.
templateNamespace
string
Template namespace
templateName
string
Template name
templateData
Array of strings
Template parameters values ordered as registered in template
mediaTemplateData
required
object
Media template definitions
header
object
Media template header. Required for media templates which contain headers
textPlaceholder
required
string
Text placeholder. Required for templates that contain a text header.
documentUrl
required
string
Document URL. Required for templates that contain a document header.Supported document types are PDF, DOC(X), PPT(X), XLS(X). Maximum document size is 100MB.
documentFilename
required
string
Document name. Required for templates that contain a document header.
imageUrl
required
string
Image URL. Required for templates that contain an image header. Supported image types: JPG, JPEG, PNG. Maximum image size is 5MB.
videoUrl
required
string
Video URL. Required for templates that contain a video header. Supported video types are MP4, 3GPP. Maximum video size is 16MB.
latitude
required
number <double> [ -90 .. 90 ]
Location latitude. The value must be between -90 and 90. Required for templates that contain a location header.
longitude
required
number <double> [ -180 .. 180 ]
Location longitude. The value must be between -180 and 180. Required for templates that contain a location header.
body
required
object
Media template body
placeholders
required
Array of strings
Media template body placeholders. The value must not be null, but can be an empty array. Values within the array must not be null or empty.
buttons
Array of objects
Media template buttons
Array
urlPlaceholder
string [ 0 .. 1500 ] characters
URL placeholder. Required for URL buttons that have a parameterized URL.
quickReplyPayload
string [ 0 .. 128 ] characters
QuickReply payload. Required for quick reply buttons.
language
string
The code of the language or locale to use. Needs to be exactly the code with which the template was registered.
fileUrl
string [ 0 .. 2048 ] characters
URL of the file sent in the WhatsApp message. Max 2048 characters. Supported file types are PDF, DOC(X), PPT(X), XLS(X). Maximum file size is 100MB.
imageUrl
string [ 0 .. 2048 ] characters
URL of the image sent in the WhatsApp message. Max 2048 characters. Supported image types: JPG, JPEG, PNG. Maximum image size is 5MB.
audioUrl
string [ 0 .. 2048 ] characters
URL of the audio file sent in the WhatsApp message. Max 2048 characters. Supported audio types are AAC, AMR, MP3, OPUS. Maximum audio size is 16MB.
videoUrl
string [ 0 .. 2048 ] characters
URL of the video sent in the WhatsApp message. Max 2048 characters. Supported video types are MP4, 3GPP. Maximum video size is 16MB.
locationName
string [ 0 .. 1000 ] characters
Name of the location. Optional value.
address
string [ 0 .. 1000 ] characters
Address location. Optional value.
longitude
number <double> [ -180 .. 180 ]
Longitude of a coordinate. The value must be between -180 and 180
latitude
number <double> [ -90 .. 90 ]
Latitude of a coordinate. The value must be between -90 and 90.
previewUrl
boolean
Options: false (default), true Specifying previewUrl in the request is optional when not including a URL in your message. To include a URL preview, set previewUrl to true in the message body and make sure that URL begins with http:// or https:/
Contains information about the name and last of a contact.
firstName
required
string
First name of a contact. Mandatory value.
lastName
string
Last name of a contact.
middleName
string
Middle name of a contact.
nameSuffix
string
Name suffix of a contact.
namePrefix
string
Name prefix of a contact.
formattedName
required
string
Full name as it normally appears. Mandatory value.
org
object
Company information.
company
string
Company name.
department
string
Department name.
title
string
Title value
phones
Array of objects
Phone information.
Array
phone
string
Phone of contact.
type
string
Type of a phone. Can be CELL, MAIN, IPHONE, HOME, WORK.
waId
string
WhatsApp ID.
urls
Array of objects
Url information.
Array
url
string
Url of a contact.
type
string
Type of a url. Can be HOME, WORK.
viber
object
Viber-specific data used if the message is sent through a Viber channel. Must be one of: text, image, file, text with button or text with image and button.
text
string
Text of the message that will be sent.
validityPeriod
integer <int32>
The message validity period. Unless specified differently in validityPeriodTimeUnit, it is expressed in minutes. When the period expires, the message will be automatically sent using the next OMNI step. Validity period longer than 14 days is not supported. Additionally, period should be longer than 35 seconds.
The message validity period time unit, allowing finer time granulation.
imageURL
string [ 0 .. 1000 ] characters
URL of the image sent in the Viber message.
fileName
string [ 0 .. 25 ] characters
File name of the file sent in the Viber message.
fileType
string
File type (extension) of the file sent in the Viber message. Has to be one of: doc, docx, rtf, dot, dotx, odt ,odf, fodt, txt, info, pdf, xps, pdax, eps, xls, xlsx, ods, fods, csv, xlsm, xltx
Viber Button Call To Action. Should contain URL or telephone number to call. Format for telephone number is tel:.
trackingData
string [ 0 .. 100 ] characters
Viber tracking data. Enables tracking messages, sent tracking_data value will be passed back with user's reply
isPromotional
boolean
Indicates if content is of promotional character.
forcePrimaryDevice
boolean
Defines if Text message will be sent only to the users primary device (smartphone).
voice
object
Voice-specific data used if the message is sent through a voice channel.
text
string [ 1 .. 2147483647 ] characters
Text of the message that will be sent.
validityPeriod
integer <int32>
The message validity period. Unless specified differently in validityPeriodTimeUnit, it is expressed in minutes. When the period expires, the message will be automatically sent using the next OMNI step. Validity period longer than 48h is not supported (in this case, it will be automatically set to 48h). Additionally, period should be longer than 30 seconds.
The message validity period time unit, allowing finer time granulation.
language
string
Supported languages for Voice messages. List of supported languages can be found here
email
object
Email-specific data used if the message is sent through an email channel.
text
string [ 1 .. 2147483647 ] characters
Text of the message that will be sent.
validityPeriod
integer <int32>
The message validity period. Unless specified differently in validityPeriodTimeUnit, it is expressed in minutes. When the period expires, the message will be automatically sent using the next OMNI step. Validity period longer than 48h is not supported (in this case, it will be automatically set to 48h). Additionally, period should be longer than 30 seconds.
The message validity period time unit, allowing finer time granulation.
subject
string
Message subject.
push
object
Push-specific data used if the message is sent through a Push channel.
text
string [ 1 .. 2000 ] characters
Text of the message that will be sent.
validityPeriod
integer <int32>
The message validity period. Unless specified differently in validityPeriodTimeUnit, it is expressed in minutes. When the period expires, the message will be automatically sent using the next OMNI step. Validity period longer than 48h is not supported (in this case, it will be automatically set to 48h). Additionally, period should be longer than 30 seconds.
The message validity period time unit, allowing finer time granulation.
customPayload
object
Additional custom data delivered with the Push message.
property name*
object
Additional custom data delivered with the Push message.
notificationOptions
object
Options on how to alert the user when the Push message is received.
vibrationEnabled
boolean
Notification vibration (Android only).
soundEnabled
boolean
Sound when notification arrives on a device.
soundName
string
Name of the custom sound played when notification arrives on a device. File should be located in the app with max 30 seconds length. File extension is required for iOS and optional for Android. For custom sound to be played soundEnabled shouldn’t be false (Example: notification_sound.wav). Check Android and iOS usage details.
badge
integer <int32>
Badge counter (iOS only).
contentUrl
string
URL of the image displayed in the notification. Rich push notifications are available on devices with iOS 10 and Android 4.1.+. Supported on iOS since MM SDK version 2.5.8. Supported on Android since MM SDK version 1.6.4.
category
string
Category id for actionable notification. Supported on Android since MM SDK version 1.6.16. Supported on iOS since MM SDK version 2.6.9. Predefined category ids: mm_accept_decline - Accept & Decline button actions.
inAppStyle
string
Enum:"BANNER""MODAL"
Set to MODAL to use in app dialog for actionable message, or BANNER to show a standard banner view. MODAL is supported on iOS from 3.6.0, on Android from 1.13.0 and on Cordova from 0.7.0. BANNER is supported from iOS 5.0.0, Android 2.0.0 and Cordova 1.0.0
title
string
Notification title displayed within notification. Requires iOS 10+ or Android 4.1+ (may depend on Android custom firmware)
isSilent
boolean
Set to true to send silent push message. Such messages are not displayed on device lock screen and in the notification center. Silent messages can be used to deliver custom data to your mobile application or to trigger an in-app notification.
webViewUrl
string
URL to open external web page within the mobile app (web view).
inboxTopic
string
A case sensitive topic name to save a message to an inbox. If the topic name does not exist for a specified account, message sending will be rejected.
targetOnlyPrimaryDevices
boolean
Set to true to only send messages to push devices which are marked as primary devices. By default, messages will be sent to all targeted devices, including both primary and non-primary.
includeNotificationsDisabledDevices
boolean
Flag which shows if devices with disabled notifications are included.
personSubscriptions
Array of strings
Key set of custom attributes on person for additional filtering.
deviceSubscriptions
Array of strings
Key set of custom attributes on device for additional filtering.
line
object
Line-specific data used if the message is sent through a Line channel.
text
string
Text of the message that will be sent.
validityPeriod
integer <int32>
The message validity period. Unless specified differently in validityPeriodTimeUnit, it is expressed in minutes. When the period expires, the message will be automatically sent using the next OMNI step. Validity period longer than 48h is not supported (in this case, it will be automatically set to 48h). Additionally, period should be longer than 30 seconds.
Kakao ChinguTalk-specific data used if the message is sent through a Kakao ChinguTalk channel.
text
required
string
Text of the message that will be sent.
validityPeriod
integer <int32>
The message validity period. Unless specified differently in validityPeriodTimeUnit, it is expressed in minutes. When the period expires, the message will be automatically sent using the next OMNI step. Validity period longer than 48h is not supported (in this case, it will be automatically set to 48h). Additionally, period should be longer than 30 seconds.
The message validity period time unit, allowing finer time granulation.
buttons
Array of objects [ 1 .. 5 ] items
Buttons to include in the message. Optional value. Max 5 buttons.
Array
buttonText
required
string [ 1 .. 28 ] characters
Text of the button. Max 28 characters.
type
string
APP_LINK
androidScheme
required
string [ 1 .. 500 ] characters
Scheme to use on Android devices.
iosScheme
required
string [ 1 .. 500 ] characters
Scheme to use on iOS devices.
imageUrl
required
string [ 1 .. 250 ] characters
URL of the image sent in the message. Optional value. Max 250 characters.
imageLink
string [ 1 .. 250 ] characters
Link of the image sent in the message. Optional value. Max 250 characters.
isPromotional
boolean
Flag that defines the message as promotional or not. Optional value.
kakaoAlim
object
Kakao AlimTalk-specific data used if the message is sent through a Kakao AlimTalk channel.
text
string [ 1 .. 1000 ] characters
Text of the message.
validityPeriod
integer <int32>
The message validity period. Unless specified differently in validityPeriodTimeUnit, it is expressed in minutes. When the period expires, the message will be automatically sent using the next OMNI step. Validity period longer than 48h is not supported (in this case, it will be automatically set to 48h). Additionally, period should be longer than 30 seconds.
The message validity period time unit, allowing finer time granulation.
templateCode
string [ 1 .. 30 ] characters
Code of the template. Max 30 characters.
buttons
Array of objects [ 1 .. 5 ] items
Buttons to include in the message. Optional value. Max 5 buttons.
Array
buttonText
required
string [ 1 .. 28 ] characters
Text of the button. Max 28 characters.
type
string
APP_LINK
androidScheme
string [ 1 .. 500 ] characters
Scheme to use on Android devices. At least two parameters among schemeIos, schemeAndroid, and urlMobile must be set. Max 500 characters.
iosScheme
string [ 1 .. 500 ] characters
Scheme to use on iOS devices. At least two parameters among schemeIos, schemeAndroid, and urlMobile must be set. Max 500 characters.
buttonUrlMobile
string [ 1 .. 500 ] characters
URL for mobile devices to open upon button press. At least two parameters among schemeIos, schemeAndroid, and urlMobile must be set. Max 500 characters.
buttonUrlPc
string [ 1 .. 500 ] characters
URL for PCs to open upon button press. Max 500 characters.
title
string [ 0 .. 50 ] characters
Title of the message.
groupKey
string
Group key of the profile. Required if the template was created using it.
notify
boolean
Notify enables you to specify your preferences for receiving DLRs. If set to false, no DLR will be sent. Note: When no webhook is specified in the request and notify is set to 'true' or not defined, your Subscription settings will apply.
intermediateReport
boolean
The real-time intermediate delivery report containing GSM error codes, messages status, pricing, network and country codes, etc., which will be sent on your callback server. Defaults to false.
notifyUrl
string
The URL on your call back server where a delivery report will be sent. If your URL becomes unavailable then the retry cycle uses the following formula: 1min + (1min * retryNumber * retryNumber).
notifyContentType
string
Preferred delivery report content type, application/json or application/xml.
callbackData
string [ 0 .. 4000 ] characters
Additional data that can be used for identifying, managing, or monitoring a message. Data included here will also be automatically included in the message Delivery Report. The maximum value is 4000 characters.
sendAt
string <date-time>
Date and time when the message is to be sent. Used for scheduled OMNI messaging (first message in the OMNI flow not sent immediately, but at scheduled time). Has the following format: yyyy-MM-dd'T'HH:mm:ss.SSSZ. Must be sooner than 180 days from now.
vKontakte
object
VKontakte-specific data used if the message is sent through a VKontakte channel.
text
string
Text of the message that will be sent.
validityPeriod
integer <int32>
The message validity period. Unless specified differently in validityPeriodTimeUnit, it is expressed in minutes. When the period expires, the message will be automatically sent using the next OMNI step. Validity period longer than 48h is not supported (in this case, it will be automatically set to 48h). Additionally, period should be longer than 30 seconds.