Отправляет сотрудникам уведомление: запись в списке уведомлений Polygram и пуш на их устройства. В уведомлении только получатели и текст.
POST /public/notifications
Тело запроса
| Поле | Тип | Обязательное | Описание |
|---|---|---|---|
user_ids |
массив строк | да | ID сотрудников, от 1 до 100. Повторы отбрасываются |
title |
строка | нет | Заголовок, до 120 символов. Если его нет, в пуше будет заголовок Уведомление |
body |
строка | да | Текст, 1–2000 символов |
link |
строка | нет | Куда ведёт нажатие на уведомление, до 500 символов |
Чтобы узнать ID сотрудника, откройте Настройки, раздел Пользователи, и нажмите Скопировать ID под именем сотрудника.
Чтобы уведомление открывало диалог, передайте link вида /inbox?conversation=<ID диалога>. ID диалога возвращают методы Написать клиенту и Запустить workflow. В вебе нажатие открывает любой link, в мобильном приложении только ссылку на диалог.
{
"user_ids": ["cmf8k2l3m0000xy12ab34cd56"],
"title": "Оплата получена",
"body": "Клиент оплатил заказ 1042"
}
Ответ
201 Created.
{
"sent": 1,
"skipped": 0
}
| Поле | Описание |
|---|---|
sent |
Скольким сотрудникам создано уведомление |
skipped |
Сколько ID отброшено, потому что сотрудник отключён или не из этой компании |
Ошибки
| Код | Когда |
|---|---|
| 400 | Поля не прошли проверку |
| 401 | Ключ доступа не передан или неверный |
| 403 | Ни один ID не подошёл: все сотрудники отключены или не из этой компании |
Что происходит в Polygram
- Уведомление появляется в списке уведомлений сотрудника с подписью Внешняя система. На открытых экранах оно появляется сразу.
- Пуш уходит на устройства сотрудника, если он не выключил пуши и у него сейчас не тихие часы.
- Ответ приходит раньше, чем доставлен пуш. Если пуш не дошёл, уведомление всё равно будет в списке.
Каждый повтор запроса создаёт новое уведомление.
Пример
curl -X POST https://api.polygram.chat/api/public/notifications \
-H "X-Api-Key: ak_..." \
-H "Content-Type: application/json" \
-d '{
"user_ids": ["cmf8k2l3m0000xy12ab34cd56"],
"title": "Оплата получена",
"body": "Клиент оплатил заказ 1042",
"link": "/inbox?conversation=cmg1x2y3z0001ab12cd34ef56"
}'