Page tree
Skip to end of metadata
Go to start of metadata

Top priority instantly launched trigger campaigns.

To launch a trigger at the precise time of a new profile import you can use Import+trigger request.

Version 1.1


Has several advantages compared with API V. 1.0

  • Requests can change campaign content for each launch.

  • Sends messages to an audience instead of single profiles.
  • Advanced audience matching - profile ID, custom fields, external database queries.

  • API token in message body for advanced security.

  • Static request URL /api/v1.1/campaigns/triggers/start/ as compared to a dynamically generated link bound to a certain profile database.

Request URL

Method: POST

Request parameters

tokenstring"abcdefghijklmnqrstuvwxyz"YesAPI token
idstring5511YesTrigger campaign ID
contentJSON object{}NoAdditional content for API content filter node
and template apicontent variables
attachJSON array


NoAttach file(s) to campaign messages
custom_dataJSON object{"x": "y"}NoData used for integration action hooks
Profile matching mode


No, if matched by email

Profile matching mode

By default  - email

emailstring"""matching":"email"Email address
phonestring"+79000000000""matching":"phone"Phone number
"matching":"profile_id"Profile ID


"matching":"custom"Custom profile data field name

Custom profile data field value.

Searching by combination of tags is available for tag type profile fields. Values are recorded as a string: "tag-1, tag-2".

Resource ID for email and
phone matching

custom_requestJSON object{}When no matching
Custom MongoDB database query
subscription_filterJSON object

Push example:

"subscription_filter": {
"subscription_id": "CAREFULWITHTHATAXE",
"provider": "Chrome",
"not_strict": true

Email example:

"subscription_filter": {
"email": "",
"not_strict": true

Sms example:

"subscription_filter": {
"phone": "+79106135133",
"not_strict": false

Selects a profile's subscription to send message

Not used if custom_request is set

not_strict determines what to do when a certain subscription is not found. IF "true" - another fitting subscription will be used instead.

Request example

This example triggers a campaign for a single subscriber.

    "token": "e00c3da0a53e4e54a795da58701f4d70", 
    "id": 5511, 
    "profile_id": "5a74876369d42613b31947b8"

Send messages to subscribers with Custom_IDs from a list ["IpHicQquekzYkufl", "xzFKLXeaJkCYHuMb", "SRNOwHVZiWFItJhr"].

    "token": "e00c3da0a53e4e54a795da58701f4d70", 
    "id": 5511, 
	"matching": "custom",
    "field_name": "Custom_ID",
	"field_value: ["IpHicQquekzYkufl", "xzFKLXeaJkCYHuMb", "SRNOwHVZiWFItJhr"]

Insert text "New videos on your favorite channels" to replace {apicontent.email_title}  message content variable..

Attach files "日本.txt" and US.txt".

    "attach": [
            "data": "data:text/csv;base64,5LuK5pel44GvCg==",
            "name": "日本.txt"
            "data": "data:text/csv;base64,SEVMTE8K",
            "name": "US.txt"
    "content": {
        "data_lines": [
            "Channel A",
            "Channel B"
        "email_title": "New videos on your favorite channels"
    "id": 5511,
    "token": "abcdefghijklmnqrstuvwxyz"

Response example

    "error": 0,
    "error_text": "Successful operation"

Version 1.0


Activates a trigger campaign one time for a single subscriber.

"email" является устаревшим параметром.

Request URL


Method: GET

Sends a message with no optional parameters.

Matches profiles by email, md5 hash or XX hash. XX hash profile matching example:

Method: POST

With POST method you have an option to attach JSON data to message body.

You can override database field values for a campaign message or even update database fields.

  "fields": [
      "name": "FirstName",
      "value": "Jason",
      "option": 0
      "name": "Order",
      "value": "123abc456-78",
      "option": 1

  • "name" - profile database field name. If no field matches this name - it won't be used.

  • "value" - profile database field value. Must match field data type.

  • "option" - ( 0 | 1 | 2 ) determines data usage options.

  • "option": 0 - if a database field is not empty - request data will be ignored.

  • "option": 1 - request field value will be used in the message, but will not rewrite database value.

  • "option": 2 - request field value will be used in the message and will rewrite database value.

  • No labels