Skip to main content
Altcraft Docs LogoAltcraft Docs Logo
User guideDeveloper guideAdmin guide
Company siteHelp center
English
  • Русский
  • English
v74
  • v74
  • v73
  • v72
Login
  • User documentation
  • FAQ
  • Altcraft glossary
  • Profiles and databases
  • Communication channels
    • Email channel
    • Push channel
      • Mobile Push
        • Settings & implementation
        • Integrate your app with Altcraft
          • Providers: push message structure
          • Processing and adding a subscription
          • Event registration
      • Web push
    • SMS channel
    • Creating mailing from scratch
    • Communication Channels Workflow
    • Руководство: SMS-рассылка через УТШ
    • Руководство: push-рассылка через сервис от "Согласие"
  • Segmentation
  • Message templates
  • Mailings
  • Campaigns
  • Automation scenarios
  • Market
  • Loyalty programs
  • Reports and analytics
  • Integrations
  • Weblayers
  • Settings
  • API requests: where to start
  • Changelog
  • library
  • Communication channels
  • Push channel
  • Mobile Push
  • Integrate your app with Altcraft
  • Providers: push message structure
Documentation for version v74

Providers: push message structure

Altcraft Platform supports the following services for sending mobile push messages:

  • Google Firebase Cloud Messaging — for Android and iOS apps.
  • Apple Push Notification Service — for iOS apps only.
  • Yandex.AppMetrica — for Android and iOS apps.
  • Huawei Mobile Services — for Android and iOS apps.
  • RuStore — for Android apps only.
info

You need Connection of the corresponding SDKs in the app.

caution

Yandex.AppMetrica uses Google Firebase SDK to deliver messages. You will need to implement it in your app.

Integration with Yandex.AppMetrica is available in Altcraft Platform for importing customer profiles, registering their actions and value (cost).

At first, it is necessary to verify that the application supports the structure of push notifications in Altcraft Platform. If the format is not supported, Altcraft can adjust the message structure from its side.

Android Firebase (legacy)​

info

It's possible to edit the JSON object (on request).

Adding additional data to the "data" object is supported. This can be done for each sending individually in the Altcraft MP message settings.

{
"to": "SubscriptionID",
"priority": "Priority",
"time_to_live": 0-86400,
"content_available": true,
"mutable_content": true,
"data": {
"uid": "UID",
"message": "Body",
"mediaUrl": "Icon",
"image": "Image",
"launch_id": "LaunchID",
"hub_link": {
"open": "URLOpenEvent",
"ack": "URLDelivEvent"
}
},
"notification": {
"title": "Title",
"body": "Body",
"icon": "Icon",
"color": "ImageBackgroundColor",
"click_action": "ClickURL",
"sound": "Sound"
}
}
tip

uid — the internal send ID, unique for each message.
launch_id — the internal send ID, unique within the mailing.

Android Firebase (api v1)​

info

It's possible to edit the JSON object (on request).

Adding additional data to the "data" object is supported. This can be done for each sending individually in the Altcraft MP message settings.

{
"message": {
"token": "SubscriptionID",
"android": {
"priority": "Priority",
"ttl": TTL,
"data": {
"uid": "UID",
"launch_id": "LaunchID",
"hub_link": "{\"open\": \"URLOpenEvent\", \"ack\": \"URLDelivEvent\"}"
},
"notification": {
"title": "Title",
"body": "Body",
"icon": "Icon",
"click_action": "ClickURL",
"sound": "Sound",
"color": "ImageBackgroundColor",
"light_settings": {
"color": {
"red": 0-1,
"green": 0-1,
"blue": 0-1,
"alpha": 0/1
},
"light_on_duration": "LEDOnDuration",
"light_off_duration": "LEDOffDuration"
},
"image": "Image",
"default_vibrate_timings": true/false,
"notification_count": 0-999
}
}
}
}
tip

uid — the internal send ID, unique for each message.
launch_id — the internal send ID, unique within the mailing.

iOS Firebase (legacy)​

info

It's possible to edit the JSON object (on request).

Adding additional data to the "data" object is supported. This can be done for each sending individually in the Altcraft MP message settings.

{
"to": "SubscriptionID",
"priority": "Priority",
"time_to_live": 0-86400,
"content_available": true,
"mutable_content": true,
"data": {
"uid": "UID",
"message": "Body",
"mediaUrl": "Icon",
"media": "Media",
"launch_id": "LaunchID",
"hub_link": {
"open": "URLOpenEvent",
"ack": "URLDelivEvent"
}
},
"notification": {
"title": "Title",
"body": "Body",
"icon": "Icon",
"color": "ImageBackgroundColor",
"click_action": "ClickURL",
"sound": "Sound"
}
}
tip

uid — the internal send ID, unique for each message.
launch_id — the internal send ID, unique within the mailing.

iOS Firebase (api v1)​

info

It's possible to edit the JSON object (on request).

Adding additional data to the "data" object is supported. This can be done for each sending individually in the Altcraft MP message settings.

{
"message": {
"token": "SubscriptionID",
"apns": {
"headers": {
"apns-expiration": "TTL"
},
"payload": {
"aps": {
"badge": 0-999,
"sound": "Sound",
"mutable_content": 1,
"alert": {
"title": "Title",
"subtitle": "SubTitle",
"body": "Body"
}
},
"click-url": "ClickURL",
"uid": "UID",
"launch_id": "LaunchID",
"hub_link": "{\"open\": \"URLOpenEvent\", \"ack\": \"URLDelivEvent\"}",
"media": "Media",
"mediaUrl": "Icon"
},
"fcm_options": {
"image": "Media"
}
}
}
}
tip

uid — the internal send ID, unique for each message.
launch_id — the internal send ID, unique within the mailing.

iOS Apns​

info

It's possible to edit the JSON object (on request).

Adding additional data to the "data" object is supported. This can be done for each sending individually in the Altcraft MP message settings.

{
"aps": {
"badge": 0-999,
"sound": "Sound",
"mutable_content": 1,
"alert": {
"title": "Title",
"subtitle": "SubTitle",
"body": "Body"
}
},
"click-url": "ClickURL",
"icon": "Icon",
"media": "Media",
"hub_link": {
"open": "URLOpenEvent",
"ack": "URLDelivEvent"
}
}

Appmetrica iOS​

info

It's possible to edit the JSON object (on request).

Adding additional data to the "data" object is supported. This can be done for each sending individually in the Altcraft MP message settings.

{
"push_batch_request": {
"group_id": 97737,
"tag": "tag",
"batch": [
{
"messages": {
"iOS": {
"silent": true/false,
"content": {
"title": "Title",
"text": "Body",
"badge": 0-999,
"expiration": 0,
"data": "{\"hub_link\":{\"ack\":\"URLDelivEvent\",\"open\":\"URLOpenEvent\"},\"icon\":\"Icon\",\"media\":\"Media\"}"
},
"open_action": {
"url": "URL"
"deeplink": "Deeplink"
}
}
},
"devices": [
{
"id_values": ["SubscriptionID"],
"id_type": "ios_push_token"
}
]
}
]
}
}

Appmetrica android​

info

It's possible to edit the JSON object (on request).

Adding additional data to the "data" object is supported. This can be done for each sending individually in the Altcraft MP message settings.

{
"push_batch_request": {
"group_id": 97737,
"tag": "tag",
"batch": [
{
"messages": {
"android": {
"silent": true/false,
"content": {
"title": "Title",
"text": "Body",
"time_to_live": 0,
"image": "Icon",
"icon_background": "IconBackground",
"banner": "Banner",
"led_color": "LEDColor",
"data": "{\"hub_link\":{\"ack\":\"URLDelivEvent\",\"open\":\"URLOpenEvent\"}}"
},
"open_action": {
"url": "URL"
"deeplink": "Deeplink"
}
}
},
"devices": [
{
"id_values": ["SubscriptionID"],
"id_type": "google_aid"
}
]
}
]
}
}

HMS Android​

info

It's possible to edit the JSON object (on request).

Adding additional data to the "data" object is supported. This can be done for each sending individually in the Altcraft MP message settings.

{
"message":{
"android":{
"notification":{
"badges":{
"set_num":2
},
"body":"Dear user, we offer you our new product, productName!",
"click_action":{
"intent":"#Intent;compo=com.example/app2;S.W=U;end",
"type":1
},
"color":"#cdc167",
"icon":"https://i.postimg.cc/2yVZyQMn/demo-Push-Icon.jpg",
"importance":"NORMAL",
"light_settings":{
"color":{
"alpha":1,
"blue":0.70980394,
"green":0.78039217,
"red":0.5686275
},
"light_off_duration":"1.5s",
"light_on_duration":"1.5s"
},
"sound":"tadaam.ogg",
"title":"Title of push message"
},
"params":{
"hub_link": "{\"open\": \"URLOpenEvent\", \"ack\": \"URLDelivEvent\"}",
"launch_id":"2_6j_4LxYQQ8VECT",
"uid":"w4LxYQQsznE1_2_6j_i_o___4.2Pzr5NNonCwUWQwvJ_4u71jH"
},
"ttl":"604800s"
},
"token":[
"AGIwonWCgyDXGEG-airg4cUbVxeq0RFDfTuDM2hPWRrxfMociyvLNmn-GWdd4I6ZDrXIee46IrWSjC-cPDauP3ciS74bVi8wJ7T3PwHhvEY38VdYSu5zeHRXQzBRDgTnxA"
]
}
}
tip

launch_id — internal send ID, unique within the mailing.

HMS iOS​

info

It's possible to edit the JSON object (on request).

Adding additional data to the "data" object is supported. This can be done for each sending individually in the Altcraft MP message settings.

{
"message":{
"apns":{
"headers":{
"apns-expiration":"3600"
},
"hms_options":{
"target_user_type":1
},
"payload":{
"apple":"red",
"aps":{
"alert":{
"body":"Dear user, we offer you our new product, productName!",
"subtitle":"sub title",
"title":"Title of push message"
},
"badge":0,
"mutable_content":1,
"sound":"default"
},
"click-url":"",
"hub_link": "{\"open\": \"URLOpenEvent\", \"ack\": \"URLDelivEvent\"}",
"launch_id":"2_6j_4LxYKovmDvu",
"mediaUrl":"https://i.postimg.cc/2yVZyQMn/demo-Push-Icon.jpg",
"uid":"w4LxYKq9nBMc_2_6j_i_o___4.2Pzr5NNonCwUWQwvJ_aDfVX"
}
},
"token":[
"IQAAAACy0huaAQwLF6BO92GYzCAnfqZgaxhD1f7wLWGmOxQ6bFKCQYQQYtTi2-1hXHlsXAnCzLQdX3m4RTCCEI-KYu-XcaBJYovDZANg2eRTvPv7qA"
]
}
}

RuStore Android​

info

It's possible to edit the JSON object (on request).

Adding additional data to the "data" object is supported. This can be done for each sending individually in the Altcraft MP message settings.

{
"validate_only": false,
"message": {
"token": "{{.SubscriptionID}}",
"data": {
"uid": "{{.UID}}",
"message": "{{.Body}}",
"mediaUrl": "{{.Icon}}",
"image": "{{.Image}}",
"launch_id": "{{.LaunchID}}",
"hub_link": "{\"open\": \"{{.URLOpenEvent}}\", \"ack\": \"{{.URLDelivEvent}}\"}"
},
"android": {
"priority": "{{.Priority}}",
"notification": {
"title": "{{.Title}}",
"body": "{{.Body}}",
"icon": "{{.Icon}}",
"color": "{{.ImageBackgroundColor}}",
"image": "{{.Image}}",
"click_action": "{{.ClickURL}}",
"sound": "{{.Sound}}",
"channel_id": "{{.ChannelID}}",
{{if ne .LEDColorHex ""}}
"light_settings": {
"color": {
"red": {{.LEDColorSRGBA.R}},
"green": {{.LEDColorSRGBA.G}},
"blue": {{.LEDColorSRGBA.B}},
"alpha": {{.LEDColorSRGBA.A}}
},
"light_on_duration": "{{.LEDOnDuration}}",
"light_off_duration": "{{.LEDOffDuration}}"
},
{{end}}
"notification_count": {{.Badges}}
},
"ttl": {{.TTL}}
}
}
}
tip

uid — the internal send ID, unique for each message.
launch_id — the internal send ID, unique within the mailing.

Last updated on Jul 27, 2023
Previous
Integrate your app with Altcraft
Next
Processing and adding a subscription
  • Android Firebase (legacy)
  • Android Firebase (api v1)
  • iOS Firebase (legacy)
  • iOS Firebase (api v1)
  • iOS Apns
  • Appmetrica iOS
  • Appmetrica android
  • HMS Android
  • HMS iOS
  • RuStore Android
© 2015 - 2025 Altcraft, LLC. All rights reserved.