Перейти к основному содержимому

Трансляция web пуш-сообщений

Базовый адрес API https://api.multipushed.ru

Попробуйте в Swagger

Трансляция web пуш-сообщений (broadcast)

Массовая отправка web пуш-сообщений.

Формат запроса

POST https://pub.multipushed.ru/v2/publish-broadcast-web-push

Тело запроса

{
"title": "Broadcast Notification",
"url": "https://multipushed.ru/",
"body": "Сообщение для всех",
"image": "https://example.com/image.png",
"groupid": "66d199c1885e451134479574",
"geoLocationInfo": {
"region": "Moscow"
}
}

Параметры тела запроса

titleЗаголовокОбязательное поле
urlURL открывающийся при нажатииНеобязательное поле
bodyТекстОбязательное поле
imageИзображениеНеобязательное поле
groupidИдентификатор группы, если не указано, рассылка осуществляется на все привязанные токеныНеобязательное поле
geoLocationInfoРегион, для которого будет совершена отправкаНеобязательное поле

Пример запроса

curl --request POST \
--url https://pub.multipushed.ru/v2/publish-broadcast-web-push \
--header 'Authorization: YOUR_TOKEN' \
--header 'Content-Type: application/json' \
--data '{
"title": "Broadcast Notification",
"url": "https://multipushed.ru/",
"body": "Сообщение для всех",
"image": "https://example.com/image.png",
"groupid": "66d199c1885e451134479574"
}'

Пример ответа

{
"success": true/false,
"errCode": int/null,
"message": string/null
}
successрезультат выполнения запроса
errCodeкод ошибки, будет заполнено в случае ошибки
messageтекстовое описание ошибки, будет заполнено в случае ошибки

Отправка по расписанию

Тело запроса

{
"name": "your_broadcast_name",
"groupId": "groupId",
"startDate": "2025-03-27T10:00:00Z", //UTC
"endDate": "2025-03-27T18:00:00Z", //UTC
"startTime": "10:00:00",
"endTime": "15:00:00",
"payload": "my payload"
}

Параметры тела запроса

nameИмя (Если не указано, будет задано по умолчанию)Необязательное поле
groupIdID группы, для которой производится рассылкаНеобязательное поле
startDateДата и время отправкиНеобязательное поле
endDateДата и время окончания отправки, если заполнено, рассылка будет происходить равномерн ос интервалами 5 минутНеобязательное поле
startTimeНачало временного интервала, в который будет происходить отправка в течении дняНеобязательное поле
endTimeОкончание временного интервала, в который будет происходить отправка в течении дняНеобязательное поле

Примеры использования

Далее перечислены различные сценарии отправки по расписанию:

  1. Если заполнена только дата начала startDate, то отправка будет в эти дату и время.
{
"name": "region_broadcast",
"groupId": "groupId",
"startDate": "2025-03-27T10:00:00Z", //UTC
//"endDate": "2025-03-27T18:00:00Z", //UTC
//"startTime": "10:00:00",
//"endTime": "15:00:00",
"payload": "my payload"
}
  1. Если заполнена дата начала startDate и дата окончания endDate, то отправка будет происходить равномерно между этими датам с 5-ти минутными интервалами.

Пример: 2025-03-27T10:00:00Z - 2025-03-27T11:00:00Z в рамках одного дня в течении часа в 10:00:00, 10:05:00, 10:10:00 - ... - 11:00:00

{
"name": "region_broadcast",
"groupId": "groupId",
"startDate": "2025-03-27T10:00:00Z", //UTC
"endDate": "2025-03-27T18:00:00Z", //UTC
//"startTime": "10:00:00",
//"endTime": "15:00:00",
"payload": "my payload"
}
  1. Если заполнены все поля: startDate, endDate, startTime, endTime. Отправка будет происходить в те дни, которые указаны в startDate и endDate, но в периоды с startTime по endTime

Пример: 2025-03-27T00:00:00Z - 2025-03-29T00:00:00Z 10:00:00 - 11:00:00

отправка будет в течении 3х дней, каждый день с 10 до 11 утра

{
"name": "region_broadcast",
"groupId": "groupId",
"startDate": "2025-03-27T10:00:00Z", //UTC
"endDate": "2025-03-27T18:00:00Z", //UTC
"startTime": "10:00:00",
"endTime": "15:00:00",
"payload": "my payload"
}