Отправка сообщений
Как уже было указано во Введении, вам нужен канал для отправки сообщений в Notifly. Только пользователь, создавший канал, может видеть его сообщения. Канал можно добавить через
- WebUI: откройте раздел «Каналы» в боковом меню и нажмите «Создать канал» в админке app.notifly.ru
- REST API:
curl -u admin:admin https://notifly.ru/application -F "name=test" -F "description=tutorial"(путьapplicationсохранён для совместимости с протоколом Gotify). См. Документацию API
Чтобы отправлять сообщения в канал, нужен app-токен этого канала (префикс A).
Токен возвращается в REST-запросе и виден в WebUI.
Теперь вы можете просто использовать curl, HTTPie или любой другой установленный HTTP-клиент для отправки сообщений. App-токен передаётся либо заголовком X-Notifly-Key, либо параметром token в URL.
$ curl https://notifly.ru/message -H "X-Notifly-Key: <apptoken>" -F "title=my title" -F "message=my message" -F "priority=5"$ http -f POST https://notifly.ru/message X-Notifly-Key:"<apptoken>" title="my title" message="my message" priority="5"В Microsoft PowerShell вы можете использовать встроенные командлеты Invoke-RestMethod или Invoke-WebRequest.
PS> Invoke-RestMethod -Uri "https://notifly.ru/message" -Method POST -Headers @{"X-Notifly-Key"="<apptoken>"} -Body @{title="my title"; message="my message"; priority=5} # результат автоматически разбирается в объект PowerShellPS> Invoke-WebRequest -Uri "https://notifly.ru/message" -Method POST -Headers @{"X-Notifly-Key"="<apptoken>"} -Body @{title="my title"; message="my message"; priority=5} # результат как необработанный ответAPI сообщения принимает свойство
extras, которое передаёт дополнительную информацию с сообщением и описывает, как клиенты ведут себя относительно этого сообщения. См. дополнительные поля сообщения для получения дополнительной информации.
Обязателен только параметр message. Остальные поля (title, priority, extras) необязательны. Если priority не задан, используется приоритет канала по умолчанию.
Не только односторонние сообщения: помимо обычных push-уведомлений в канал можно отправлять интерактивные вопросы с вариантами ответа и получать ответ обратно. См. интерактивные вопросы.
Здесь ещё много примеров отправки сообщений на различных языках.
Совет: для интеграций из браузера, фронтенда и простых скриптов удобнее использовать форму с параметром
tokenв URL — без заголовков и без CORS-preflight.
Вы также можете использовать Notifly CLI для отправки сообщений. CLI сохраняет URL и токен в файле конфигурации.
$ notifly push -t "my title" -p 10 "my message"$ echo my message | notifly pushREST API
Заголовок раздела «REST API»| Метод и путь | Назначение | Аутентификация |
|---|---|---|
POST /message | Отправить сообщение в канал | App-токен (X-Notifly-Key или ?token=) |
POST /application | Создать канал | Client-токен / Basic Auth |
GET /application | Список каналов | Client-токен / Basic Auth |
Поля запроса POST /message: message (обязательно), title, priority (если не задан — defaultPriority канала), extras (см. дополнительные поля сообщения).