发送推送消息
向指定设备发送一个或多个推送消息。
此操作允许您在单个 HTTP 请求中发送具有不同属性(例如文本、媒体附件等)的消息。 每个请求可以包含最多 250,000 台设备,这些设备将收到消息。
备注
我们建议使用此操作,而不是已弃用的POST /push/v1/send.
请求格式
POST https://push.api.appmetrica.yandex.net/push/v1/send-batch
Request body
{
"push_batch_request": {
"group_id": 1,
"client_transfer_id": long,
"tag": "string",
"batch": [
{
"messages": {
"android": {
"silent": false,
"content": {
"title": "string",
"text": "string",
"icon": "string",
"icon_background": "#AARRGGBB",
"image": "https://example.com/picture.jpg",
"banner": "https://example.com/picture.jpg",
"data": "string",
"channel_id": "string",
"priority": -2,
"collapse_key": 2001,
"vibration": [0, 500],
"led_color": "#RRGGBB",
"led_interval": 50,
"led_pause_interval": 50,
"time_to_live": 180,
"visibility": "public",
"urgency": "high"
},
"open_action": {
"deeplink": "yandexmaps://?"
}
},
"iOS": {
"silent": false,
"content": {
"title": "string",
"text": "string",
"badge": 1,
"sound": "disable",
"thread_id": "string",
"category": "string",
"mutable_content": 1,
"expiration": 3600,
"data": "string",
"collapse_id": "string",
"attachments": [
{
"id": "string",
"file_url": "string",
"file_type": "string"
},
...
]
},
"open_action": {
"url": "https://ya.ru"
}
}
},
"devices": [
{
"id_type": "appmetrica_device_id",
"id_values": ["123456789", "42"]
},
{
"id_type": "ios_ifa",
"id_values": ["8A690667-6204-4A6A-9B38-85DE016....."]
},
{
"id_type": "google_aid",
"id_values": ["eb5f3ec8-2e3e-492f-b15b-d21860b....."]
},
{
"id_type": "android_push_token",
"id_values": ["eFfxdO7uCMw:APA91bF1tN3X3BAbiJXsQhk-..."]
},
{
"id_type": "ios_push_token",
"id_values": ["F6A79E9F844A24C5FBED5C58A4C71561C180F........."]
},
{
"id_type": "huawei_push_token",
"id_values": ["0866422030....."]
},
{
"id_type": "huawei_oaid",
"id_values": ["ecef47f7-fcce-ad....."]
}
]
},
{
"messages": {
...
}
}
]
}
}
|
|
批量推送消息请求 |
|
|
|
组 ID。 |
|
|
|
用户指定的发送 ID。 它用于检查发送状态。 注意
|
|
|
|
[发送标签](*发送标签) |
|
|
|
数组 |
|
|
|
Push 消息。 |
|
|
|
设备平台。 |
|
|
|
一个标志,表示静默推送发送。 可能的取值: |
false`. |
|
|
推送消息的内容。 |
|
|
|
推送消息的标题。 该值对于非静默推送消息是必填的。 |
|
|
|
消息文本。 该值对于非静默推送消息是必填的。 |
|
|
|
图标显示在通知栏中。 默认情况下,会显示标准的应用图标。 要更改图标,请在标准 |
|
|
|
消息图标的颜色。 它以十六进制代码格式的字符串形式指定 |
|
|
|
推送消息中显示在通知文本旁边的图片的URL。 |
|
|
|
推送消息中显示的图片的URL。 |
|
|
|
任意数据字符串。 您可以将任何需要的数据作为字符串值传递。 您可以使用适当的Analytics module Push SDK 方法来处理数据字符串。 |
|
|
|
通知通道的ID。 如果未指定 ID,将使用默认通道。 适用于 Android 8 或更高版本。 要了解有关通道的更多信息,请参阅Android 文档。 |
|
|
|
通知优先级。 可接受的值范围是 |
|
|
|
Notification ID. 默认值为 0。 如果当前应用程序没有显示推送通知,则忽略。 如果显示一个或多个通知,且新消息具有相同的通知 ID,则此通知的内容将被更新。 如果ID不同,会显示新消息。 |
|
|
|
消息到来时的震动模式。 Format: |
|
|
|
LED颜色。 它以十六进制代码格式的字符串形式指定 |
|
|
|
LED 指示灯亮起的持续时间(毫秒)。 |
|
|
|
LED指示灯亮起的暂停时间(以毫秒为单位)。 |
|
|
|
Firebase 在设备离线或不在范围内时存储推送消息的间隔时长(以秒为单位)。 |
|
|
|
在锁屏上显示推送消息。 在 Android 8 及更高版本(API 级别 26+)中被忽略,因为设置是在频道级别完成的。 可接受的值: |
|
|
|
推送消息送达的紧急程度(优先级)。 可接受的值: |
|
|
|
用户点击推送通知时要执行的操作。 如果字段为空,用户点击将打开应用程序。 |
|
|
|
深链,用于在用户点击推送消息后将其导向应用屏幕。 |
|
|
|
设备平台。 |
|
|
|
一个标志,表示静默推送发送。 可能的值: |
false`. |
|
|
推送消息的内容。 |
|
|
|
推送消息的标题。 该值对于非静默推送消息是必填的。 |
|
|
|
消息文本。 该值对于非静默推送消息是必填的。 |
|
|
|
消息到达时在应用图标上显示的徽章数字。 |
|
|
|
消息音效。 可能的值: |
disable` |
|
|
用于分组推送通知的ID。 该值指定在 threadIdentifier 属性中,属于 UNNotificationContent 对象。 |
|
|
|
Push 通知类别。 该值指定在 标识符 属性中,属于 |
|
|
|
表示通知服务扩展。 如果值是 要跟踪发送,请设置推送通知统计收集,并将 |
|
|
|
向用户设备继续尝试发送通知的时长。 值应以秒为单位指定。 如果此时间已过而设备仍不可用(例如没有网络连接),通知将无法送达。 默认情况下,时间没有限制。 |
|
|
|
一组任意的数据。 您可以将任何需要的数据作为字符串值传递。 您可以使用适当的Analytics module Push SDK 方法来处理数据字符串。 |
|
|
|
折叠 ID apns-collapse-id。 具有相同 ID 的多个通知会显示为单个通知。 |
|
|
|
要添加到推送消息中的附件数组。 详情请参阅文章 步骤 6.(可选)配置上传附件. |
|
|
|
推送消息内容的ID。 |
|
|
|
推送消息中文件的URL。 |
|
|
|
推送消息中附件文件的类型。 关于可接受的类型,请参见推送消息中的文件类型。 |
|
|
|
用户点击推送通知时要执行的操作。 如果字段为空,用户点击将打开应用程序。 |
|
|
|
点击推送消息时要跳转的 URL。 |
|
|
|
要发送推送通知的设备。 每次消息发送可包含最多 250,000 台设备。
设备按 |
|
|
|
ID 的类型。 可接受的值: 备注 当您使用推送令牌作为标识符时,Analytics module 在发送前会检查数据库中是否存在令牌和设备信息。 如果没有设备信息,推送消息不会发送。 这是为了控制向指定收件人发送消息以及在报告中显示信息。 |
|
|
|
要发送推送消息的设备列表。 注意 列表不能为空。 |
响应格式
{
"push_response": {
"transfer_id": 1,
"client_transfer_id": long
}
}
|
|
发送推送消息后的响应。 |
|
|
调度的ID。 它用于检查分发状态。 |
|
|
发送 ID,由用户在请求体中指定。 它用于检查分发状态。 备注 该字段仅在请求体中指定时才会返回。 |
如果您没有找到所需答案,可以通过反馈表单提交您的问题。 请尽可能详细地描述问题。 如果可能,请附上截图。
应用程序在后台处理的消息,不会显示给用户。 您可以通过静默推送消息向应用传输额外数据或检查通知的送达情况。