Create Push API
Last updated:2023-03-02

Create Push API

Push a notification or message to a single device or a device list.The pushed content can only be a push json object.

info This is the latest version of the Push API. The v4 version is improved as follows:

  • Use HTTP Basic Authentication for access authorization. In this way, the entire API request can be completed using common HTTP tools, such as curl, browser plug-ins, etc.
  • Push request Content-Type completely uses JSON format.

Request Authorization

For more information, see REST API overview authentication method description.

Push Url

POST https://push.api.engagelab.cc/v4/push

Request example

Request header

> POST /v4/push HTTP/1.1 > Authorization: Basic Yzk2ZjQyZTBkMmU2NjJlNDVkMDM1YWIxOmRmNGQ1OWU4NGVhYzJmOWQ1M2IzNmYxMg==
          > POST /v4/push HTTP/1.1
> Authorization: Basic Yzk2ZjQyZTBkMmU2NjJlNDVkMDM1YWIxOmRmNGQ1OWU4NGVhYzJmOWQ1M2IzNmYxMg==

        
This code block in the floating window

Request body

{ "from": "push", "to": "all", "body": { "platform": "all", "notification": { "android": { "alert": "Hi, Push!", "title": "Send to Android", "builder_id": 1, "extras": { "newsid": 321 } }, "ios": { "alert": "Hi, MTPush!", "sound": "default", "badge": "+1", "extras": { "newsid": 321 } } }, "message": { "msg_content": "Hi,MTPush", "content_type": "text", "title": "msg", "extras": { "key": "value" } }, "options": { "time_to_live": 60, "apns_production": false } }, "request_id": "12345678", "custom_args": "business info" }
          {
    "from": "push",
    "to": "all",
    "body": {
        "platform": "all",
        "notification": {
            "android": {
                "alert": "Hi, Push!",
                "title": "Send to Android",
                "builder_id": 1,
                "extras": {
                    "newsid": 321
                }
            },
            "ios": {
                "alert": "Hi, MTPush!",
                "sound": "default",
                "badge": "+1",
                "extras": {
                    "newsid": 321
                }
            }
        },
        "message": {
            "msg_content": "Hi,MTPush",
            "content_type": "text",
            "title": "msg",
            "extras": {
                "key": "value"
            }
        },
        "options": {
            "time_to_live": 60,
            "apns_production": false
        }
    },
    "request_id": "12345678",
    "custom_args": "business info"
}

        
This code block in the floating window

Request Parameters

The parameter structure of the push, as detailed in the following table.

key word type option description
from String optional the user who send the request
to String or JSON Object required target that user will send to
body JSON Object required request body
platform String or JSON Array required platform type: android, ios
notification JSON Object optional
  • content of push notification
  • The notification and the message must be one or the other, they cannot co-exist.
  • message JSON Object optional
  • content of push message
  • The notification and the message must be one or the other, they cannot co-exist.
  • options JSON Object optional push parameters
    request_id String optional Optional field customized by the customer, which is used by the customer to identify which request it is, and is returned when responding
    custom_args JSON Object optional Optional field customized by the customer, which is returned to the customer during callback

    from

    the user who send the request, String type, optional field.

    Request Example

    { "from":"push" }
              {
        "from":"push"
    }
    
            
    This code block in the floating window

    to

    The push device object indicates which device lists a push can be pushed to. To confirm the push device object, MTPush provides two methods: broadcast and registration ID

    Push target

    key word data format target type description notes
    all String broadcast Push to all the devices Push target is active devices within 30 days
    registration_id JSON Array registration ID Registration Id Array List. The OR relationship between multiple registration IDs is union. DeviceId, Up to 1000 at a time

    Request example

    • push to all targets(broadcast):
    { "to": "all", }
              {
      "to": "all",
    }
    
            
    This code block in the floating window
    • push to multiples registration_ids:
    { "to": { "registration_id": [ "4312kjklfds2", "8914afd2", "45fdsa31" ] } }
              {
      "to": {
        "registration_id": [
          "4312kjklfds2",
          "8914afd2",
          "45fdsa31"
        ]
      }
    }
    
            
    This code block in the floating window

    body

    request body, the fields like below:

    key word format option description
    platform String or JSON Array required platform type: android, ios
    notification JSON Object optional
  • content of push notification
  • The notification and the message must be one or the other, they cannot co-exist.
  • message JSON Object optional
  • content of push message
  • The notification and the message must be one or the other, they cannot co-exist.
  • options JSON Object optional push parameters

    platform

    MTPush support Android, iOS platform, the key words:"android" and "ios"

    info If the target platform is iOS, you need to use apns_production field in options to specify the push environment. True means to push the production environment, and false means to push the development environment; If not specified, it is the push production environment.

    push to all the platform:

    { "platform" : "all" }
              { "platform" : "all" }
    
            
    This code block in the floating window

    specify the platform:

    { "platform": [ "android", "ios" ] }
              {
      "platform": [
        "android",
        "ios"
      ]
    }
    
            
    This code block in the floating window

    notification

    The "notification" object is one of the pushed entity content objects (the other is "message"), which will be pushed to the device as a "notification"

    key word format option type description
    alert String or JSON Object required content The message/notification content. If no alert is specified under android and ios, it will take effect
    android JSON Object optional android platform android platform parameters,see android
    ios JSON Object optional ios platform ios platform parameters,see ios

    alert

    The "alert" attribute of this location (directly under the notification object) is a quick definition. If the alert information of each platform is the same, the alert under the platform does not need be defined. If each platform has a definition, the definition here will be overwritten

    { "notification" : { "alert" : "Hello, Push!" } }
              {
      "notification" : {
        "alert" : "Hello, Push!"
      }
    }
    
            
    This code block in the floating window

    The notification object defined above will be pushed to multiple platforms specified by "platform", and its notification alert information is the same

    android

    Notifications on the Android platform are displayed by the MTPush SDK in a certain notification bar style. The supported fields are as follows:

    key word format option type description
    alert String or JSON Object required notification content
  • When specified here, the alert information uniformly specified by the superior will be overwritten.
  • The content can be an empty string, indicating that it will not be displayed in the notification bar.
  • See Push Restrictions for the restrictions of each push channel on this field.
  • title String optional notification title
  • If specified, the title will be displayed where the original App name is displayed in the notice
  • See Push Restrictions for the restrictions of each push channel on this field
  • builder_id Int optional notification style id The Android SDK can set the style of the notification bar. Here, you can specify which style to use according to the style ID
    channel_id String optional Android notification channel ID No more than 1000 bytes, and the NotificationChannel can be configured from Android 8.0. Here, the notification bar display effect is specified according to the channel ID
    priority Int optional Notification bar display priority default 0,range -2~2。
    category String optional Notice bar filter and sort It completely depends on the processing strategy of the rom manufacturer for the category.
    style Int optional Notification bar style type Used to specify the notification bar style typedefault: 0
  • 1:bigText
  • 2:Inbox
  • 3:bigPicture
  • big_text String optional big document notification bar style
  • When style=1 is available, the content will be displayed in the notification bar in the form of large text
  • support rom with api 16 or above
  • inbox JSONObject optional document list notification bar style
  • Available when style=2, the value corresponding to each key of json will be displayed as a text item
  • support rom with api 16 or above
  • big_pic_path String optional Text entry notification bar style
  • Available when style=3, currently supports jpg and png images
  • Support the URL of network pictures and the path of local pictures. If it is an http/https URL, it will be automatically downloaded; If you want to specify the local image prepared by the developer, fill in the relative path of the sdcard.
  • support rom with api 16 or above
  • extras JSON Object optional additional fields Here, you can customize the key/value information in JSON format for business use
    intent JSON Object optional specify the click jump page url Use the intent url to specify the target page to jump to after clicking the notification bar.It is recommended to fill in the intent field, otherwise click the notice and there may be no jump action, there are two jump methods like below:
  • jump to the target page:
    intent:#Intent;action=action path;component= packageName/ActivityFullPath;end(OPPO and FCM must be config "action path", other manufacturer must config "ActivityFullPath", otherwise click the notice and there may be no jump action)
  • application index page: intent:#Intent;action=android.intent.action.MAIN;end (Fixed address)
  • large_icon String optional notification big icon
  • The icon size does not exceed 300k
  • Support the URL of network pictures and the path of local pictures. If it is an http/https URL, it will be automatically downloaded; If you want to specify the local image prepared by the developer, fill in the relative path of the sdcard.
  • small_icon String optional notification small icon
  • Notify small icons. The icon path can be a network image starting with http or https, and the size cannot exceed 300k
  • If the manufacturer is not filled in, small_ icon_ Uri, the small is used by default_ The icon field is displayed.
  • sound String optional sound
  • Fill in the ring tone file name under the/res/raw/path in the Android project, without the suffix of the file name.
  • Note: For Android 8.0 and above, when the channel is passed_ ID, this attribute does not take effect.
  • badge_add_num Int optional set the badge number accumulation value, and accumulate based on the original badge value
  • At present, this attribute is only effective for Huawei EMUI 8.0 and above, Xiaomi MIUI 6 and above, and vivo devices in the vendor channel.
  • If this field is not filled, it means that the subscript number will not be changed (the millet device is controlled by the system, regardless of whether it is pushed to the Engagelab channel or the manufacturer channel, even if it is not transferred, it still has the effect of+1 by default).
  • range:1-99,If the number in the value range is set, the next notification bar message will be configured with the_ add_ The num data will be added to the original subscript quantity. It is recommended to take the value of 1.
  • example:badge_add_num value is 1,badge value is 2,after send this badge_add_num filed, the badge value will be 3.
  • badge_class String optional The application entry activity class corresponding to the desktop icon, such as "com. test. badge. MainActivity"
  • Only effective when pushed by Huawei channel. If this value is filled in the non main activity class, the manufacturer's restriction logic shall prevail
  • If you need to realize the badge accumulation function, you need to cooperate with the Badge_ add_ Num is used. The two need to co-exist.
  • { "notification": { "android": { "alert": "hello, MTPush!", "title": "Push test", "builder_id": 3, "style": 1, "big_text": "big text content", "inbox":JSONObject, "big_pic_path": "picture url", "priority": 0, "category": "category str", "large_icon": "http://push.api.engagelab.cc/largeIcon.jpg", "small_icon": "http://www.small.com/small_icon.jpg", "intent": { "url": "intent:#Intent;component=push.api.engagelab.cc/com.example.mtpushdemo.SettingActivity;end" }, "extras": { "news_id": 134, "my_key": "a value" } } } }
              {
        "notification": {
            "android": {
                "alert": "hello, MTPush!",
                "title": "Push test",
                "builder_id": 3,
                "style": 1,
                "big_text": "big text content",
                "inbox":JSONObject,
                "big_pic_path": "picture url",
                "priority": 0,
                "category": "category str",
                "large_icon": "http://push.api.engagelab.cc/largeIcon.jpg",
                "small_icon": "http://www.small.com/small_icon.jpg",
                "intent": {
                    "url": "intent:#Intent;component=push.api.engagelab.cc/com.example.mtpushdemo.SettingActivity;end"
                },
                "extras": {
                    "news_id": 134,
                    "my_key": "a value"
                }
            }
        }
    }
    
            
    This code block in the floating window

    ios

    apns notification in iOS platform

    The content of this notification will be sent to the Apple APNs server by the MTPush agent and displayed on the iOS device in the system notification mode

    The notification content meets the specification of APNs, and the supported fields are as follows:

    key word format option type description
    alert String or JSON Object required content
  • When specified here, the alert information uniformly specified by the superior will be overwritten.
  • The content can be an empty string, indicating that it will not be displayed in the notification bar.
  • support string format ans also support apns's alert payload
  • include title and subtitle fields that apns official support
  • sound String or JSON Object optional sound
  • normal notification: String type。
  • If there is no such field, there is no sound prompt in this message
  • If this field is available, the specified sound will be played if it is found. Otherwise, the default sound will be played
  • If this field is an empty string, iOS 7 is the default sound, and iOS 8 and above systems are silent
  • Alarm notification: JSON Object , It supports the officially defined payload structure, which includes such officially supported keys as critical, name, and volume
  • badge Int or String optional application badge
  • badge can be set as N,+N, - N, and the value range of N is [0,99]. If the uploaded subscript value is 10, it means that the subscript will be set to N, 10+N, 10-N (when the value is less than 0, the subscript will be cleared by default).
  • If it is 0 or an empty string, it means the badge is cleared
  • If it is not filled, it means that the corner numbers will not be changed
  • The MTPush official API Library (SDK) will be filled with a "+1" value by default.
  • content-available Boolean optional push wake up When pushing, carry "content available": true indicates background remote notification. If this field is not carried, it is a normal remote notification. Reference for details:Background Remote Notification
    mutable-content Boolean optional Notification Extension The Notification Service Extension function added in iOS 10 is used to report the delivery status of each APN information. To use this function, the client needs to implement the Service Extension interface and use the mutable content field on the server to complete the settings
  • true:means support iOS 10 UNNotificationServiceExtension function。
  • if there is no this field,it is the Remote Notification,can't statistics arrived infos。
  • category String optional support until iOS 8 。set the category field in APNs payload
    extras JSON Object optional Extended Fields custom key/value fields
    thread-id String optional Notification grouping IOS remote notifications are grouped by this attribute. Notifications of the same thread id are grouped together
    interruption-level String optional Interruption levels for notification priority and delivery time The notification level of iOS 15 can only be one of active, critical, passive and timeSensitive,reference for details:UNNotificationInterruptionLevel

    info IOS notifies MTPush to forward to APNs server The length of Notification+Message in MTPush is limited to 4000 bytes MTPush uses utf-8 encoding when pushing, so a Chinese character takes up 3 bytes.

    server send example:

    { "notification": { "ios": { "alert": "hello, Push!", "sound": "sound.caf", "badge": 1, "extras": { "news_id": 134, "my_key": "a value" } } } }
              {
        "notification": {
            "ios": {
                "alert": "hello, Push!",
                "sound": "sound.caf",
                "badge": 1,
                "extras": {
                    "news_id": 134,
                    "my_key": "a value"
                }
            }
        }
    }
    
            
    This code block in the floating window

    client received message example:

    { "_j_msgid" = 813843507; aps = { alert = "hello,Push!"; badge = 1; sound = "sound.caf"; }; "my_key" = "a value"; "news_id" = 134; }
              {
      "_j_msgid" = 813843507;
      aps =     {
      alert = "hello,Push!";
      badge = 1;
      sound = "sound.caf";
    };
    "my_key" = "a value";
    "news_id" = 134;
    }
    
            
    This code block in the floating window

    message

    message in the application or called custom message, transparent message

    • This part of the content will not be displayed on the notice bar. The MTPush SDK will transmit the message content to the App after receiving it. App needs to handle by itself.
    • IOS obtains this part of content in the push app message channel (non APNS), and the app must be in the foreground.

    The supported fields are as follows:

    key word format option description
    msg_content String or JSON Object required message content
    title String optional message title
    content_type String optional message content type
    extras JSON Object optional JSON format optional parameters

    示例:

    { "message": { "msg_content": "Hi,Push", "content_type": "text", "title": "msg", "extras": { "key": "value" } } }
              {
      "message": {
        "msg_content": "Hi,Push",
        "content_type": "text",
        "title": "msg",
        "extras": {
          "key": "value"
        }
      }
    }
    
            
    This code block in the floating window

    options

    Push options. Currently, the following options are included:

    key word format option type description
    time_to_live Int or String optional offline message retention time (seconds)
  • If the user is not online during the push, the offline message with a specified duration can be reserved for the user so that they can push again when they are online
  • The default is 86400 (1 day), and the maximum is 15 days. If the maximum value supported by the manufacturer is less than the passed valid value, the maximum value of the manufacturer shall prevail.
  • Setting to 0 means that offline messages are not reserved, and only users who push the current online messages can receive them.
  • override_msg_id Long optional message ID will be overwrite If the current push wants to overwrite the previous push, fill in the msg of the previous push here_ ID will produce coverage effect:
  • the msg_id received offline by the msg is the overwritten content. Even if the msg_id android user has received it, if the notification bar has not been cleared, the new message content will overwrite the previous notification
  • The time limit for the overwrite function to work is 1 day. If the msg_id does not exist within the specified time limit for overwrite, an error of 7006 will be returned, indicating that it is not a valid message overwrite operation and that the current message will not be pushed.
  • This field is only valid for Android. It only supports Engagelab channel, Xiaomi channel, Meizu channel, OPPO channel, FCM channel and Huawei channel (EMUI10 and above).
  • apns_production Boolean optional APNs production environment This field is only valid for iOS Notification. If it is not specified, it will be pushed to the production environment. Notice:The MTPush official API LIBRARY (SDK) is set to push the "development environment" by default.
  • true: push to production environment
  • false:push to development environment
  • apns_collapse_id String optional Update the identifier of iOS notification
  • If the APNs new notification matches the notification with the same apns-collapse-id field in the current notification center, it will be updated with the new notification content and placed first in the notification center.
  • collapse id length cannot exceed 64 bytes.
  • big_push_duration Int optional Constant speed push duration (min)
  • Also known as slow push, it reduces the original push speed as fast as possible, and evenly pushes to the target users of this push within a given n minutes. max value:1440。
  • Up to 20 constant speed push can exist at the same time.
  • If it is not set, it is not fixed speed push.
  • third_party_channel JSON Object optional Android Manufacturer channel configuration information Only valid parameters for users configured with manufacturer channels,reference for details third_party_channel

    third_party_channel

    this field is used to fill in the personalized information of Android manufacturer channels. The key only supports seven Android manufacturer channels: xiaomi, huawei, meizu, oppo, vivo, honor and fcm. One or more of them can exist at the same time,key of each manufacturer type can currently include the following options:

    key word format option type description
    distribution_new String required When Engagelab and manufacturer channel coexist, set the priority of distribution The value cannot be an empty string.For fcm + domestic vendor combination type users:
  • mtpush: Indicates that the push is forced to be sent through the Engagelab channel.
  • pns_mtpush:Vendor channel first, if invalid, send via Engagelab channel.
  • mtpush_pns: The push will be sent to engagelab first, and then to the vendor channel if engagelab is not online, with the vendor as a secondary.
  • fcm_mtpush:FCM channel first, if invalid, send via Engagelab channel.
  • mtpush_fcm:The push will take the engagelab channel first, and then take the fcm channel when the engagelab is not online, and fcm is used as a secondary.Note: For the four policies pns_mtpush/fcm_mtpush/mtpush_pns/mtpush_fcm, If there is only one system push channel available to the device (FCM or mobile phone vendor), the forced priority will be ignored and the successfully integrated system channel will be used as the system channel.
  • channel_id String optional Notification bar message classification support OPPO private messageXiaomi's notification messageHuawei Message Classification ,The category ChannelID value needs to be applied by the developer to the manufacturer
    classification Int optional Notification bar message classification vivo Mobile phone manufacturer notification bar message classification, default: 0。
  • 0:Representative operation message
  • 1:Represents a system message
  • pushMode Int optional vivo push mode default: 0。Reference for details vivo pushMode,To use test push, you need to manually configure the ID of the test device in the vivo background
  • 0:Indicates official push
  • 1:Indicates a test push.
  • importance String optional Huawei/honor notification bar message intelligent classification In order to adapt to the intelligent classification of Huawei mobile phone manufacturers' notification bar messages, the corresponding import field of Huawei is not filled, and the default is "NORMAL",reference:Huawei notification message intelligent classification
  • LOW: normal message
  • NORMAL:important message
  • HIGH:very important message(Only for Huawei)
  • urgency String optional Huawei Manufacturer Customized Message Priority Adapt the priority of customized messages from Huawei mobile phone manufacturers
  • HIGH:very important message,When a HIGH message arrives on the user's mobile phone, the application process can be forced up.
  • NORMAL:important message
  • category String optional Huawei Manufacturer Customized Message Scenario ID In order to adapt Huawei mobile phone manufacturers' customized messages, identify special scenarios of high priority transparent messages, or identify message types to speed up the sending of specific types of messages,reference for details:category value description
    small_icon_uri String optional Small icon style of manufacturer message
  • only supports Xiaomi/Huawei manufacturers
  • The manufacturer field will be preferred. if the manufacturer field is not filled,then using small_icon in android field
  • xiaomi support xiaomi manufacturer big icon id,Huawei supports the media_id and local path of the manufacturer of Engagelab(In the future, Xiaomi officially no longer supports custom small icons. It is recommended that developers not continue to use Xiaomi's small icon related features).
  • small_icon_color String optional xiaomi manufacturer's small icon style and color
  • To adapt to the style and color of millet manufacturer's message icon,The default is gray without filling (In the future, Xiaomi officially does not support custom small icons. It is recommended that developers do not continue to use Xiaomi's small icon related features).
  • only_use_vendor_style Boolean optional Whether to use its own channel to set the style Whether to use only the style set in its own channel, not the style set in Android default is false,
  • true:use only styles set by their own channels
  • false:you can use the style set in Android.
  • request example:

    "third_party_channel": { "xiaomi": { "distribution_new": "mtpush", "channel_id": "*******", "small_icon_uri": "http://f6.market.xiaomi.com/download/MiPass/x/x.png", "small_icon_color": "#ABCDEF", }, "huawei": { "distribution_new": "mtpush_pns", "importance": "NORMAL", "small_icon_uri": "https://xx.com/xx.jpg", "only_use_vendor_style": true }, "meizu": { "distribution_new": "mtpush" }, "fcm": { "distribution_new": "mtpush" }, "oppo": { "distribution_new": "mtpush", "channel_id": "*******", "large_icon": "3653918_5f92b5739ae676f5745bcbf4", }, "vivo": { "distribution_new": "mtpush", "classification": 0, "pushMode": 0 } }
              "third_party_channel": {
        "xiaomi": {
            "distribution_new": "mtpush",
            "channel_id": "*******",
            "small_icon_uri": "http://f6.market.xiaomi.com/download/MiPass/x/x.png",
            "small_icon_color": "#ABCDEF",
        },
        "huawei": {
            "distribution_new": "mtpush_pns",
            "importance": "NORMAL",
            "small_icon_uri": "https://xx.com/xx.jpg",
            "only_use_vendor_style": true
        },
        "meizu": {
            "distribution_new": "mtpush"
        },
        "fcm": {
            "distribution_new": "mtpush"
        },
        "oppo": {
            "distribution_new": "mtpush",
            "channel_id": "*******",
            "large_icon": "3653918_5f92b5739ae676f5745bcbf4",
        },
        "vivo": {
            "distribution_new": "mtpush",
            "classification": 0,
            "pushMode": 0
        }
    }
    
            
    This code block in the floating window

    request_id

    developer can custom this optional field, used for identify the message request and return response

    request example

    { "request_id":"12345678" }
              {
          "request_id":"12345678"
    }
    
            
    This code block in the floating window

    response example

    { "msg_id": "1225764", "request_id": "12345678" }
              {
        "msg_id": "1225764",
        "request_id": "12345678"
    }
    
            
    This code block in the floating window

    custom_args

    Customer defined, optional field, not returned in response, returned in callback

    request example

    { "custom_args":"business info" }
              {
      "custom_args":"business info"
    }
    
            
    This code block in the floating window

    Response parameters

    Success response

    field type option description
    request_id String Optional The custom ID submitted on request, returned as is on response.
    message_id String Required The message ID to uniquely identify a message.
    < HTTP/1.1 200 OK < Content-Type: application/json {"request_id": "18", "msg_id": "1828256757"}
              < HTTP/1.1 200 OK
    < Content-Type: application/json
    {"request_id": "18", "msg_id": "1828256757"}
    
            
    This code block in the floating window

    Failure response

    The http status code is 4xx or 5xx and the response body contains the following fields.

    Field Type Option Description
    code int required the error code. For more information, see return-code description
    message String required error details
    { "code": 3002, "message": "Push.template field must be set correctly when type is template" }
              {
        "code": 3002,
        "message": "Push.template field must be set correctly when type is template"
    }
    
            
    This code block in the floating window

    Call and Rerturn

    HTTP status code

    Reference Documents:HTTP-Status-Code

    return code

    Code message description HTTP Status Code
    20101 push paramters invalid registration_id invalid or not belong this appkey 400
    21001 only support HTTP Post method not support Get method 405
    21002 A required parameter is missing Must be corrected 400
    21003 Illegal parameter value Must be corrected 400
    21004 Validation failed Must be corrected,Reference for details:Call validation 401
    21005 message body is too lang Must be corrected, Notification+Message length is limited to 2048 bytes 400
    21008 app_key invalid parameter Must be corrected,Please carefully compare whether the appkey you passed is consistent with the application information, and whether there are more spaces 400
    21009 System internal error Must be corrected 400
    21011 There are no push targets that meet the conditions please check 'to' field 400
    21015 Request parameter verification failed Unexpected parameter exists 400
    21016 Request parameter verification failed Wrong parameter type, or the parameter length exceeds the limit 400
    21030 Internal service timeout Try again later 503
    23006 Parameter error Constant speed pushbig_push_duration Maximum exceeded 1440 400
    27000 System memory error System memory error 500
    27001 Parameter error Try again later 401
    27008 Parameter error the distribution field in third_party_channel is not empty, but content of alert in notification is empty 401
    27009 Parameter error third_party_channel.distribution field format invalid or empty 401

    push limit

    Channel title length content length Sensitive words other description
    Engagelab Channel No limit, but limit the total message body size No limit, but limit the total message body size - the length of Notification and Message is limited to 4000 bytes.
    huawei Channel < 40 char < 1024 char It is prohibited to carry the government, leader's name, Taiwan independence and other relevant contents By default, the permission of [Marketing Notice] is silent notification. Silent push has no prompts such as sound and vibration.
    meizu Channel < 32 char < 100 char Prohibit special characters,such as: #
  • Both Chinese and English characters are counted as one character.
  • Some messages may be stored in the Meizu Message Box at the upper right corner of Meizu mobile phone.
  • xiaomi Channel < 50 char < 128 char Prohibit special characters,such as: # >>
  • Both Chinese and English characters are counted as one character.
  • Some messages may be stored in unimportant notices in the notice bar.
  • OPPO Channel < 32 char < 200 char -
  • Both Chinese and English characters are counted as one character.
  • The notification permission is turned off by default.
  • vivo Channel < 40 char < 100 char
  • Prohibit special characters,such as: # >>
  • Official messages are prohibited: pure numbers, pure English, pure symbols, symbols plus numbers, tests, tests, braces, brackets, etc
  • English is 1 character, Chinese is 2 characters.
  • The notification permission is turned off by default.
  • The number of push messages of the same equipment in one day cannot exceed 5.
  • Operation messages with the same content cannot be pushed repeatedly by the same device within one day.
  • APNS Channel < 20 char(40 english characters. )
  • The notification center and lock screen can display up to 110 characters and 55 Chinese characters.
  • The pop-up window at the top can display up to 62 characters and 31 Chinese characters, and ellipses will be displayed for those exceeding the limit.
  • - -
    在文档中心打开