Вебхук — адрес, по которому можно прислать сообщение в канал без бота и без входа: уведомления CI, мониторинга, форм. Формат совместим с Discord и Slack — для большинства интеграций достаточно заменить адрес.
Создание
Настройки канала → «Интеграции» → «Новый вебхук» (нужно право «Управлять вебхуками»). Скопируйте адрес вида https://voice-chat.ru/api/webhooks/ID/TOKEN — токен в адресе и есть ключ доступа; если он утёк, пересоздайте его там же.
Отправка
curl -H "Content-Type: application/json" \
-d '{"content": "Сборка прошла ✅", "username": "CI"}' \
https://voice-chat.ru/api/webhooks/ID/TOKEN| Поле | Тип | Описание |
|---|---|---|
content | string | Текст до 2000 символов. |
username | string | Имя отправителя для этого сообщения (до 80 символов). |
avatar_url | string | Аватар для этого сообщения (http/https). |
embeds | Embed[] | До 10 карточек, формат как у ботов. |
Нужен content или хотя бы одна карточка. Тело можно прислать как JSON, form-urlencoded или multipart с полем payload_json; файлы вебхуки пока не принимают. По умолчанию ответ — 204; с ?wait=true возвращается созданное сообщение (с полями id, channel_id, как в Discord).
Формат Slack
На …/api/webhooks/ID/TOKEN/slack принимаются text и attachments (title, title_link, text, color, footer).
Правка и удаление
# Изменить сообщение вебхука (id — из ответа с ?wait=true)
curl -X PATCH -H "Content-Type: application/json" -d '{"content":"Сборка прошла ✅ (2 мин)"}' \
https://voice-chat.ru/api/webhooks/ID/TOKEN/messages/MESSAGE_ID
curl -X DELETE https://voice-chat.ru/api/webhooks/ID/TOKEN/messages/MESSAGE_ID