Webhook'и
Регистрируйте исходящие webhook-эндпоинты, получающие HMAC-подписанные доставки событий всякий раз, когда что-то интересное происходит в Вашей организации. Админ-страница обрабатывает CRUD эндпоинтов; подробный контракт доставки — каталог событий, верификация подписи, расписание повторных попыток — живёт в API → Webhook'и.
Где это находится
Боковая панель → Webhook'и в разделе Интеграции, по адресу /organization/webhooks.
Создание эндпоинта
Нажмите + Добавить эндпоинт. Диалог запрашивает:
- URL — публичный HTTPS-URL, который будет получать доставки. Туннели (cloudflared, ngrok) отлично работают для локальной разработки.
- Описание (опционально) — короткая заметка, например, «Slack #appsec notifier» или «Jira ticket creator».
- События — на какие типы событий подписаться. Четыре события, выпускаемых сегодня:
assignment.created,assignment.completed,sarif.ingestedиcertificate.issued.
При отправке диалог отображает подписывающий секрет (whsec_…) один раз. Скопируйте его в Ваш менеджер секретов немедленно. Он нужен Вам для верификации каждой входящей доставки; см. API → Webhook'и для кода верификации в Node, Python и Go.
Список эндпоинтов
Представление списка показывает каждый webhook-эндпоинт для Вашей организации. Каждая строка несёт URL, подписанные события, создателя и живой индикатор здоровья:
| Статус | Значение |
|---|---|
| Healthy | Последняя доставка вернула 2xx-ответ. |
| Failing | Последняя доставка вернула не-2xx-ответ или истекла по таймауту, но эндпоинт всё ещё повторяется. |
| Pending | Эндпоинт существует, но ещё не получил свою первую доставку. |
| Disabled | Эндпоинт исчерпал расписание повторов на недавней доставке и был автоматически отключён. Временная метка последней доставки сохраняется, чтобы Вы могли видеть, когда она не удалась. |
Редактирование и удаление
Нажмите Редактировать, чтобы обновить URL, описание или список подписок на события. Переключение Active в выключенное положение приостанавливает доставку без удаления эндпоинта; обратное переключение возобновляет доставку и очищает состояние авто-отключения. Нажмите Удалить, чтобы удалить эндпоинт полностью — ожидающие доставки к нему отменяются, и строка убирается из списка.
Просмотр недавних доставок
Кнопка ⟳ Доставки на каждой строке открывает выдвижную панель со списком 50 последних попыток доставки для этого эндпоинта. Каждая запись показывает тип события, id события, текущий статус (pending / delivered / failed / exhausted), число попыток, HTTP-код, возвращённый Вашим эндпоинтом, любое сообщение об ошибке и временные метки.
Используйте это представление для отладки плохо ведущего себя потребителя без необходимости инструментировать собственный приёмник — если приёмник возвращает 5xx, сообщение, которое Вы видите здесь, — это то же сообщение, которое логировало Ваше приложение.
Повторные попытки и авто-отключение
Неудачные доставки повторяются по расписанию 1м → 5м → 30м → 2ч на до пяти попыток всего. После пятой неудачи эндпоинт авто-отключается, и последняя доставка помечается как exhausted. Чтобы повторно включить, исправьте приёмник, затем либо нажмите Active в диалоге Редактировать, либо отправьте API PATCH /api/sch/org/webhooks/{id} с {"isActive": true}.
Программный доступ
Каждое действие на этой странице также достижимо из публичного API — см. API → Webhook'и для CRUD-поверхности и контракта доставки.