Skip to main content
Altcraft Docs LogoAltcraft Docs Logo
User guide iconUser guide
Developer guide iconDeveloper guide
Admin guide iconAdmin guide
English
  • Русский
  • English
Login
    User documentationGetting StartedFAQAltcraft glossary
      Profiles and databasesarrow
    • Subscription resourcesManaging databasesSubscriber profileProfiles import and data updateScheduled customer data importAutomatic data collectionBulk customers profiles updateDouble opt-in subscriptionSuppression listsProfile relationsProfile history exportProfile exportCreating a static segment based on import resultsHow to open a CSV fileMatchingTypes of fields in the databaseGlobal control groupsSubscription Manager
      Communication channelsarrow
      • Email channelarrow
      • Email: ISP interactions best practicesEmail: sending domain configurationEmail: setting up and using postmastersБыстрый старт
        Push channelarrow
        • Mobile Pusharrow
        • Settings & implementation
            Integrate your app with Altcraftarrow
          • Providers: push message structureProcessing and adding a subscriptionEvent registration
          Web pusharrow
        • Preliminary Settings
            Web browser push configurationarrow
          • Firebase Cloud messagingApple SafariMozilla Services
          Connecting Web Push to a WebsiteTransferring Data to the PlatformWeb Push SDK Methods
            Import of subscriptions from third-party push servicesarrow
          • Migrating push subscriptions from third-party servicesHow to transfer push subscriptions configured for Safari?Migration from OneSignal
      SMS channel
        Creating mailing from scratcharrow
      • EmailSMSWeb PushMobile PushWhatsAppViber*™Руководство: SMS-рассылка через VK NotifyMAX BotMAX GroupNotifyTelegram BotTelegram Group
      Communication Channels WorkflowРуководство: SMS-рассылка через УТШРуководство: push-рассылка через сервис от "Согласие"
      Segmentationarrow
    • Static SegmentsDynamic SegmentsUpdatable Segments
        Segmentation Conditionsarrow
      • Segmentation by Profile dataSegmentation by Interactions with EntitiesSegmentation by Activity of the channelSegmentation by external dataSegmentation by external SQL tablesSegmentation by Profile structure
      Best Send Time (BST)Logical operators "AND" and "OR"Recommendations for working with segments
      Message templatesarrow
      • Working with message templatesarrow
      • Working in the editorEmail-templateSMS templatePush templateMAX templateTelegram templateWhatsApp templateViber™ templateNotify template
        Visual editor for email-templatearrow
      • Visual editor interfaceAdding blocksElements and their settingsCustom blocksStyle managerLayer manager
      Template fragmentsImage galleryContent personalizationCreating tables based on array elementsBlock editor for email template
        Altcraft Variables and Functionsarrow
      • Logical expressions in messagesLoops in messagesMarket variables in templatesUsing the JSONPath functionality
        Dynamic content in messagesarrow
      • Dynamic HTML contentDynamic JSON contentContent from SQL database in templatesDynamic API content
      Importing and exporting a message templateImporting a template from a third-party serviceExporting a template from Pixcraft
      Mailingsarrow
    • Mailings calendarBroadcast mailingsRegular mailingTrigger mailingMultivariate testingMailing testingMailing schedulePlacement mailing
      Campaignsarrow
    • Working with CampaignsLocal control groups (LCG)Stratification Violation ErrorAudience expansionAudience building
      Automation scenariosarrow
    • Managing scenariosNodes of the scenarioClassic marketing scenariosStep-by-step welcome scenario guideScenario for automatic notification of the managerAbandoned cart scenario
      Marketarrow
    • Market settings
        Productsarrow
      • How to create a product manuallyHow to import a product from a fileScheduled product importProduct and SKU SegmentsPreparing the YML file
      OrdersMarket variables in message templateGuide: how to send an order confirmation email
      Loyalty programsarrow
    • Loyalty programsLoyalty integration with external systemsБыстрый стартBasic loyalty program use casesOrder SegmentsPromotion codes
      Reports and analyticsarrow
    • Channel reportTraffic report
        Summary reportarrow
      • Summary report metrics
      Cohorts reportLifetime reportFunnels reportGoals reportAudience growth reportClick map reportLoyalty programs reportBounces reportUndeliveries reportReport on global control groups
      Integrationsarrow
      • Action hooksarrow
      • Altcraft Action HooksAction hooks event typesAction Hook Message StructureJSON batch request (HTTP POST action hook)Message to RabbitMQ brokerMessage to RabbitMQ exchangerMessage to Kafka brokerTest event
        Integration of third-party services using Albatoarrow
      • Connecting Altcraft to Albato Launching the welcome scenario using AlbatoTransmitting event dataSetting app a trigger mailingEvent registrationGoogle Sheets and Altcraft integration AmoCRM and Altcraft integration
      Facebook Ads Manager™Google Ads AudiencesMAXYandex.Audience™VK Ads™Static segment synchronizationYandex AppMetrica™Tilda™Lpgenerator™WhatsAppViber*™ integrationIntegration scopeData Transmitted During SynchronizationNotify
      Weblayersarrow
      • Formsarrow
      • Create a formForm constructorAppearanceActions after form activationData analyticsBinding data channel and formsConditional logic in forms and surveysNPS testing
        Pixelsarrow
      • Goal customer actions and scoring
        Pop-upsarrow
      • Creating and publishing a pop-upSetting up a popup in the code editorManaging pop-ups manually via scriptPopup analyticsGuide: pop-up for push subscriptionsCase: Creating a pop-up with the "Wheel of Fortune" widgetBasic cases of placing a popup via the Tag Manager
        Tag Managerarrow
      • Configuring and installing Tag ManagerTrigger typesVariables typesLinking a pixel and the Tag manager
      Settingsarrow
    • Account settingsCustom linksVirtual sendersSending policiesAudit journalTags FAQ
        Users, groups and accessarrow
      • Two-Factor Authentication (2FA)
        Connectionsarrow
      • Connection to Facebook Ads ManagerConnection to Google AdsConnecting to Yandex.Audience™Connection to 360dialogConnection to EdnaConnection to Devino TelecomConnection to SMSTrafficConnection to VK Ads™Connection to MTS OmniChannelCustom Authentication ConnectionOAuth2 connectionBasic Authentication connectionToken Authentication connectionConnection to RapportoMAX connectionConnection to Notify
      Attribute settings
      API requests: where to startarrow
    • Import or update a profileTrigger mailing launchEngage profile in scenario
      Changelogarrow
    • v2026.1.76v2025.4.75v2025.4.74v2025.3.73v2025.2.72v2025.1.71v2024.4.70v2024.3.69v2024.2.68.2v2024.1.68
    Documentation archivelibrary
  • Integrations
  • Action hooks
  • Action Hook Message Structure

Action Hook Message Structure

General structure​

General hook message structure for most event types:

ParameterTypeRequiredExampleDescription
event_typestringYes"click"Event name as in the event types table
event_datestringYes"2018-03-04T13:13:19.034315796Z"Event timestamp in RFC 3339 format
profile_idstringNo"abcdefgh12345678"Recipient profile ID
_xxhstringNo"ad1850e0d1d9481e"Subscriber email hash used for identification in Altcraft
_md5stringNo"145bb30f7ddf1184cb560bc4b7705646"MD5 hash of the subscriber's email
list_idintNo111Database ID where the event occurred
account_idintYes23Account ID where the event occurred
sends_trying_numintNo2Number of message sending attempts (present only if the number of attempts is greater than 0)
is_testboolYesfalseWhether the event was triggered by a test send
is_staticboolNofalseWhether dynamic substitutions were used in the sent content
subscription_hash_idstringNo"0a4b910312345"Subscription hash
custom_dataJSON objectNo
{"alice@example.org"}
Subscriber data set configured in the Action Hook editing interface
event_dataJSON objectYes
{"browser": "Firefox"}
Data set that depends on the event type (there are two types: tracking events and events that occur during delivery)
subscriptionarrayNo
[
  {
    "resource_id": 123,
    "channel": "email",
    "email": "user@example.com",
    "phone": "+79991234567",
    "subscription_id": "abc123",
    "provider": "androidfirebase",
    "priority": 1,
    "status": "subscribed",
    "ccsub": {
      "custom_key": "custom_value"
    }
  }
]
Array with subscription details including information about the resource, communication channel, recipient, and subscription status. The structure is described below.
Note

When exporting historical events, message content is not transferred. Events are sent in the same format as in real time, and null is passed for deleted profiles.

event_data structure​

Tracking events​

For the following event types:

  • Email: uopen, open, uclick, click, confirm, confirmsub, unsub, read, glanced, skimmed
  • SMS: uclick_sms, click_sms, unsub_sms
  • Push: uopen_push, open_push, click_push, uclick_push
ParameterTypeExampleRequiredFor which channelDescription
message_idint17YesEmail, SMS, PushMessage ID in the Altcraft system
campaign_idint973YesEmail, SMS, PushCampaign ID in the Altcraft system
scampaign_idint973NoFor allScenario ID in the Altcraft system
segment_idint0NoEmail, SMS, PushSegment ID, if available
resource_idint3YesEmail, SMS, PushResource ID
ipstring"10.9.0.14"NoEmail, PushSubscriber IPv4 address
countrystring".us"
".ru"
NoEmail, PushCountry in TLD format
citystring"New York"
"Moscow"
NoEmail, PushSubscriber city
postal_codestring"101000"NoEmail, PushSubscriber postal code
regionstring"Ohio"
"Moskovskaya oblast"
NoEmail, PushSubscriber region
tzstring"Europe/Vaduz"NoEmail, PushSubscriber time zone
latfloat55.244075NoEmail, PushGeographic latitude
lonfloat55.244075NoEmail, PushGeographic longitude
user_agentstring"Mozilla/5.0 (X11; Linux x86_64; rv:59.0) Gecko/20100101 Firefox/59.0"NoEmail, PushUser-Agent header string
osstring"Linux x86_64"NoEmail, PushOperating system
browserstring"Firefox"NoEmail, PushBrowser and version
devicestring"web"NoEmail, PushDevice
link_urlstring"http://www.example.com"NoEmail, SMS, PushHTTP link the user was redirected to
launch_idstring"00000017000003cd5a9bf01a"YesEmail, SMS, PushLaunch ID
send_message_idstring"5a9bf01a17_3cd_11_6f_0_2.5a8c045fc1dde44cbf718f78"YesEmail, SMS, PushSent message ID
full_message_idstring"fQIQs4FgAAEBIcARADkxODlKR8-gA"YesEmail, SMS, PushFull SendMessageID
email_message_idstring"mzi5c1~+9vqekqmy63mh8xhgt2qjwfkad6lmiafbyn-0te1_uzckfqyi4ry"NoEmailEmail-safe SendMessageID
extra_uidstring"ew4Sgf41Qwjq8_2_2E_w_k___t.2SDvJv8bvBYQFtSDx_7bTV2f.2_2E_4Sgf41DXc7Z_D"NoPushExtra UID
providerstring"YandexAppMetricaDeviceIDAndroid"NoPushProvider
prev_stint1NoFor allGroup identifier: 1 - test, 2 - control

Messaging events​

For the following event types:

  • Email: send, deliv, suppress, complain
  • SMS: send_sms, deliv_sms
  • Push: send_push, deliv_push
ParameterTypeExampleRequiredFor which channelDescription
message_idint17YesEmail, SMS, PushMessage ID in the Altcraft system
campaign_idint973YesEmail, SMS, PushCampaign ID in the Altcraft system
segment_idint0NoEmail, SMS, PushSegment ID, if available
resource_idint3YesEmail, SMS, PushResource ID in the Altcraft system
launch_idstring"00000017000003cd5a9bf01a"YesEmail, SMS, PushLaunch ID
send_message_idstring"5a9bf01a17_3cd_11_6f_0_2.5a8c045fc1dde44cbf718f78"YesEmail, SMS, PushSent message ID
full_message_idstring"fQIQs4FgAAEBIcARADkxODlKR8-gA"YesEmail, SMS, PushFull SendMessageID
email_message_idstring"mzi5c1~+9vqekqmy63mh8xhgt2qjwfkad6lmiafbyn-0te1_uzckfqyi4ry"NoEmailEmail-safe SendMessageID
extra_uidstring"ew4Sgf41Qwjq8_2_2E_w_k___t.2SDvJv8bvBYQFtSDx_7bTV2f.2_2E_4Sgf41DXc7Z_D"NoPushExtra UID
providerstring"YandexAppMetricaDeviceIDAndroid"NoPushProvider

For events sbounce, hbounce, sbounce_push, hbounce_push, the following parameters are also passed:

ParameterTypeExampleRequiredFor which channelDescription
bounce_codeint500YesEmail, PushServer response code
bounce_messagestring"No such email"YesEmail, PushServer response

For events undeliv, undeliv_sms, undeliv_push, the following parameters are passed:

ParameterTypeExampleRequiredFor which channelDescription
undeliv_codeint400YesEmail, SMS, PushError code
undeliv_messagestring"Invalid Caller ID"YesEmail, SMS, PushError message

Pixel events​

For pixel_open events:

ParameterTypeExampleDescription
ipstring"10.9.0.14"Subscriber IPv4 address
countrystring".ru "Country in TLD format
citystring"Moscow"Subscriber city
pixel_idint41Pixel ID
postal_codestring"390000"Subscriber postal code
regionstring"Ryazanskaya obl"astSubscriber region
tzstring"Europe/Vaduz"Subscriber time zone
latfloat55.244075Geographic latitude
lonfloat55.244075Geographic longitude
user_agentstring"Mozilla/5.0 (X11; Linux x86_64; rv:59.0) Gecko/20100101 Firefox/59.0"User-Agent header string
osstring"Linux x86_64"Operating system
browserstring"Firefox"Browser and version
devicestring"web"Device

All parameters described above are required. The full list of possible parameters is available in this article.

Popup events​

For all popup_post, popup_click, popup_error, popup_bounce, popup_close, popup_open events:

ParameterTypeExampleDescription
popup_idint123Popup ID
refererstring"api.example.com"Referer request header
smidstring"fGmXiWU9Y4NSIpCwl4QQQQEQEAABCRA"Sent message identifier
utm_campaignstring"utm_campaign"Campaign UTM tag
utm_contentstring"utm_content"Content UTM tag
utm_sourcestring"utm_source"Source UTM tag

Some events have their own unique parameters:

ParameterTypeExampleDescription
popup_post
post_uidstring"7bc142b5-7f38-4272-bc7e-7539f70b25b1"Unique form submission identifier
popup_click
namestring"main_block"Name of the element that was clicked
urlstring"example.com/page"Value of the href attribute of the clicked element
popup_error, popup_bounce
errorstring"object_not_found"Error text
error_categoryint404Error number

Promocode events​

For promocode_attach, promocode_detach, promocode_activate events:

ParameterTypeExampleDescription
attachedstring"2020-10-25T13:28:52Z"Date and time the promocode was attached to the profile
detachedstring"2020-10-25T13:28:52Z"Date and time the promocode was detached
activatedstring"2020-10-25T13:28:52Z"Promocode activation date
codestring"TEST-XOUH-KBJM-J5K9-24I1"Promocode
db_idint123456Profile database ID
loyalty_idint9Loyalty program ID
profile_idstring"000000000000000000000000"Profile ID

All dates are specified in RFC 3339 format.

Segment creation events during import​

For segs_add, segs_remove events:

ParameterTypeExampleDescription
campaign_idint9Campaign ID in the Altcraft system
launch_idstring""Campaign launch ID
message_idint0Message ID in the Altcraft system
segment_idint80Segment ID, if available
send_message_idstring""Sent message ID
full_message_idstring"fQIQs4FgAAEBIcARADkxODlKR8-gA"Full SendMessageID

Events of merging multiple profiles or splitting one profile​

For profile_merge, profile_split events:

ParameterTypeExampleDescription
destinationarray
[
   {
      "custom_data": {
         "age": 25
      },
      "db_id": 94,
      "profile_id": "608a8960e3224a6be26a71df"
   }
]
If profile merging occurs, it contains the matching data of the profile that will result from the merge.


If profile splitting occurs, it contains the matching data of the profiles that will result from the split.
sourcearray
[
   {
      "custom_data": {
         "age": 25
      },
      "db_id": 94,
      "profile_id": "608a8960e3224a6be26a71df"
   }
]
When profiles are merged, it contains matching data about the profiles that must be merged.


When a profile is split, it contains matching data about the profile that must be split.

Channel events​

For events of the following channels:

  • Telegram: telegram_bot_send, telegram_bot_deliv, telegram_bot_click, telegram_bot_uclick, telegram_bot_undeliv, telegram_group_send, telegram_group_deliv, telegram_group_click, telegram_group_undeliv
  • MAX: max_bot_send, max_bot_deliv, max_bot_click, max_bot_uclick, max_bot_undeliv, max_group_send, max_group_deliv, max_group_click, max_group_undeliv
  • WhatsApp: whatsapp_deliv, whatsapp_undeliv, whatsapp_send, whatsapp_click, whatsapp_uclick, whatsapp_subscribe, whatsapp_read, whatsapp_unsub
  • Viber: viber_deliv, viber_undeliv, viber_send, viber_click, viber_uclick, viber_subscribe, viber_read, viber_unsub, viber_complain
  • Notify: notify_deliv, notify_undeliv, notify_send, notify_click, notify_uclick, notify_subscribe, notify_read, notify_unsub, notify_complain
ParameterTypeExampleRequiredDescription
campaign_idint9YesCampaign ID in the Altcraft system
launch_idstring""YesCampaign launch ID
message_idint0YesMessage ID in the Altcraft system
resource_idint3NoResource ID in the Altcraft system
segment_idint80YesSegment ID, if available
send_message_idstring""YesSent message ID
full_message_idstring"fQIQs4FgAAEBIcARADkxODlKR8-gA"YesFull SendMessageID
citystring"Moscow"NoSubscriber city
browserstring"Firefox"NoBrowser and version
countrystring".ru"NoCountry in TLD format
devicestring"web"NoDevice
ipstring"10.9.0.14"NoSubscriber IPv4 address
latfloat55.244075NoGeographic latitude
link_urlstring"http://www.example.com"NoHTTP link the user was redirected to
lonfloat55.244075NoGeographic longitude
osstring"Linux x86_64"NoOperating system
postal_codestring"390000"NoSubscriber postal code
regionstring"Ryazanskaya oblast"NoSubscriber region
tzstring"Europe/Vaduz"NoSubscriber time zone
undeliv_codeint500NoDelivery failure error code
undeliv_messagestring"Content is required"NoError information

Campaign error events​

For camp_error events:

ParameterTypeExampleDescription
campaign_idint9Campaign ID in the Altcraft system
error_codeint500Error code
error_textstring"LOG_INTERNAL_ERROR"Error text
launch_idstring""Launch ID
message_idint0Message ID in the Altcraft system
resource_idint3Resource ID in the Altcraft system
segment_idint80Segment ID, if available
send_message_idstring""Sent message ID
full_message_idstring"fQIQs4FgAAEBIcARADkxODlKR8-gA"Full SendMessageID

campaign_launch structure​

General campaign_launch structure:

ParameterTypeExampleDescription
event_typestring"campaign_launch"Event type
event_datestring"2018-03-25T13:13:19.034315796Z"Event date in RFC 3339 format
account_idint23Platform account ID
is_testboolfalseTest event sending flag
event_dataJSON object{}Object with campaign data

event_data structure for campaign_launch​

ParameterTypeExampleDescription
campaign_idint42Campaign identifier
campaign_typestring"broadcast"Campaign type
campaign_namestring"name"Campaign name
campaign_sub_idstring"x11"Statistics identifier
data_typestring"segment"Data source type
data_idint3Data source identifier
launch_idstring"00000017000003cd5a9bf01a"Launch ID
contentJSON object{}Information about campaign message templates

Campaign launch event example​

{
"event_type": "campaign_launch",
"event_date": "2016-12-09T10:11:24.934079204Z",
"is_test": false,
"account_id": 161,
"event_data": {
"campaign_id": 1472,
"campaign_type": "broadcast",
"campaign_name": "Campaugn Launch Hook",
"campaign_sub_id": "x11",
"data_type": "segment",
"data_id": 1221,
"launch_id": "000000a1000005c0584a834c",
"content": [
{
"message_name": "Hello",
"message_id": 1412,
"suppress_id": 271,
"replyto_email": "",
"replyto_name": "",
"text": "текстовая версия письма",
"html": "<html> html версия письма </html>",
"from_name": "",
"from_email": "",
"attach_links": [],
"subject": "Hello, {your_name}!"
},
{
"message_name": "Hi",
"message_id": 1413,
"suppress_id": 272,
"replyto_email": "monty@altcraft.com",
"replyto_name": "Monty",
"text": "текстовая версия письма",
"html": "<html> html версия письма </html>",
"from_name": "",
"from_email": "",
"attach_links": [
{
"name": "text_file.txt",
"url": "http://test.altcraft.com/api/attach/link/text_file.txt?token=eyJh..."
},
{
"name": "picture_file.png",
"url": "http://test.altcraft.com/api/attach/link/picture_file.png?token=eyJh..."
}
],
"subject": "Hi, {your_name}!"
}
]
}
}

Subscription structure​

This object contains information about the subscription to the resource through which the message was sent:

ParameterTypeExampleDescription
Common for all channels
resource_idint12Resource ID
channelstring"email"Communication channel
priorityint0Subscription priority
statusstring"subscribed"Subscription status
For the email channel
emailstring"john@example.com"Subscriber email
For the SMS channel
post_uidstring"+79991112233"Subscriber phone number
For the push channel
providerstring"YandexAppMetricaDeviceIDAndroid"Push provider
subscription_idstring"123ab667960efec47b1afe64b56bfa386a3"Provider subscription ID

content structure​

If the "Add messages content" option is enabled in the webhook settings, the content field is added to the general hook message structure.

Email​

{
"content": {
"amp": "<html amp4email></html>",
"from_email": "no-reply@altcraft.com",
"from_name": "Altcraft",
"html": "<html></html>",
"replyto_email": "example@example.com",
"replyto_name": "Altcraft",
"subject": "Weather alert",
"text": "Text version",
"to_email": "profile@example.com",
"to_name": "Fname Lname",
"webversion_email_html": "http://click.altkraft.com/0000/path.html",
"webversion_email_text": "http://click.altkraft.com/0000/path.txt"
},
}
ParameterTypeExampleDescription
ampstringAMP version of the email
from_emailstring"no-reply@altcraft.com"Sender email
from_namestring"Altcraft"Sender name
htmlstringHTML version of the email
replyto_emailstring"example@example.com"Reply-to email
replyto_namestring"Altcraft"Reply-to name
subjectstring"Weather alert"Email subject
textstring"Text version is important..."Text version of the email
to_emailstring"profile@example.com"Recipient profile email address
to_namestring"Fname Lname "Recipient profile name
webversion_email_htmlstringhttp://click.altkraft.comLink to the web version of the email
webversion_email_textstringhttp://click.altkraft.comLink to the text web version of the email

SMS​

{
"content": {
"fromnamesms": "abcdefghijklmnqrstuvwxyz",
"sms": "Hello, Aaron! See the new items for you: http://click.altkraft.com/s/path",
"webversion_sms_text": "http://click.altkraft.com/000000/path.txt"
}
}
ParameterTypeExampleDescription
fromnamesmsstring"abcdefghijklmnqrstuvwxyz"Caller ID
smsstring"Follow the link and claim your welcome bonus!"Message text
webversion_sms_textstringhttp://click.altkraft.comLink to the web version of the message

Push​

{
"content": {
"app_push_settings": {
"background_color": "#00CED1",
"badges": 0,
"banner": "",
"critical_push": false,
"deliver_prior": 0,
"expir_time": 604800,
"led": "",
"media": "",
"silent_push": false,
"sound": "",
"subtitle": "",
"vibro": false
},
"body": "See if our new items are fit to make you even more awesome!",
"click_url": "https://click.altkraft.com/0000000",
"custom_push_json": {},
"icon": "",
"result_content": {
"content_available": true,
"data": {
"hub_link": {
"ack": "https://pxl.altkraft.com/crypto_post_events?/bFOoNcxW7lpDA",
"open": "https://pxl.altkraft.com/crypto_post_events?/LbFOoNcxW7lpDA"
},
"image": "",
"launch_id": "2_3J_4Z2ZTRaQr7p",
"mediaUrl": "",
"message": "See if our new items are fit to make you even more awesome!",
"uid": "fATFSGbgLjinkRE59ZXDOSd0BcAABARnhIxDBBAAAEbAQowRH"
},
"mutable_content": true,
"notification": {
"body": "See if our new items are fit to make you even more awesome!",
"click_action": "https://click.altkraft.com/0000000/abcdefghijklmnqrstuvwxyz",
"color": "",
"icon": "",
"sound": "default"
},
"title": "Just look, Alex! These are awesome!",
"priority": "normal",
"time_to_live": 604800,
"to": "5dbDUxVXHV"
},
"title": "Just look, Alex! These are awesome!",
"webversion_push_body": "http://click.altkraft.com/000000/path.txt"
}
}
ParameterTypeDescription
bodystringPush message body
click_urlstringClick-through link
custom_push_jsonJSON objectCustom JSON of the message
iconstringPath to the push message icon
titlestringMessage title
result_contentJSON objectStores the structure of data sent to the push service
webversion_push_bodystringLink to the web version of the push message
app_push_settingsJSON objectAdvanced settings for mobile push notifications
web_push_settingsJSON objectAdvanced settings for browser push notifications

app_push_settings structure​

ParameterTypeExampleDescription
background_colorstring#00CED1Push notification background color
badgesint0Event indicator
bannerstringhttp://example.com/path.img"Path to the banner image
critical_pushboolfalseEnables critical mode in the push notification
deliver_priorint0,1Delivery priority
expir_timeint604800Push notification TTL in seconds
ledstring#00CED2LED indicator color
mediastringhttp://example.com/pathPath to a local file in the application
silent_pushboolfalseEnables or disables silent mode
soundstring/sound/sound.mp3Path to a local file in the application
subtitlestring"Just for you!"Message subtitle (for iOS)
vibrobooltrueVibration when the push notification is received
soundlessbooltrueIndicates whether the push message will be accompanied by sound (used by providers: android firebase, android huawei, android rustore)
actionsarray
[
   {
  "label": "Open",
  "action": "https://example.com"
}
]
Buttons in push notifications

web_push_settings structure​

ParameterTypeExampleDescription
actionsJSON object[]The array contains push buttons: click-through link (action) + button text (label)
button_labelstring"Sure"Action button text (the value is passed only for the Safari provider)
large_imagestring"https://.altkraft.com/284834790/1/664c6da207767c769a/image.png"Path to the banner image
expir_timestring604800Push notification TTL in seconds
large_imagestring"https://click.example.com"Path to the local banner image

**Meta, which owns Instagram, Facebook, and WhatsApp, has been recognized as an extremist organization and banned in the Russian Federation.*
**Viber is a trademark of Rakuten Group, Inc. Blocked in the Russian Federation.

Last updated on Apr 20, 2026
Previous
Action hooks event types
Next
JSON batch request (HTTP POST action hook)
  • General structure
  • event_data structure
    • Tracking events
    • Messaging events
    • Pixel events
    • Popup events
    • Promocode events
    • Segment creation events during import
    • Events of merging multiple profiles or splitting one profile
    • Channel events
    • Campaign error events
  • campaign_launch structure
    • event_data structure for campaign_launch
    • Campaign launch event example
  • Subscription structure
  • content structure
    • Email
    • SMS
    • Push
      • app_push_settings structure
      • web_push_settings structure
© 2015 - 2026 Altcraft, LLC. All rights reserved.