Руководства

Вебхуки

Вебхук — адрес, по которому можно прислать сообщение в канал без бота и без входа: уведомления 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
ПолеТипОписание
contentstringТекст до 2000 символов.
usernamestringИмя отправителя для этого сообщения (до 80 символов).
avatar_urlstringАватар для этого сообщения (http/https).
embedsEmbed[]До 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
Лимит — 30 сообщений в минуту на вебхук. При превышении — 429 с Retry-After и retry_after в теле.