Надсилати події Slen у ваш сервіс

Додайте адресу вашого сервісу, виберіть події, які він чує, збережіть секрет підпису, а пізніше вимкніть або видаліть вебхук.

4 хв читання

Вебхук надсилає події Slen — узятий холд, майже витрачений бюджет, виклик, що закінчився, погодження, яке чекає рішення, — на адресу вашого сервісу в міру того, як вони стаються. Ця сторінка — про сторінку вебхуків у консолі.

Де розташовані вебхуки

Відкрийте Налаштування, потім Вебхуки. Рядок показує адресу, стан вебхука — Активний або Вимкнений, — які проєкти він чує, останні чотири символи його секрету і на скільки подій він підписаний.

Сторінка відкривається тому, хто має дозвіл management:read. Для додавання й зміни вебхука потрібен management:write. Вебхук усіх проєктів додає й змінює лише учасник, якому доступний кожен проєкт.

Додати вебхук

1. Почніть новий вебхук

Натисніть Новий вебхук.

2. Виберіть проєкти

У полі Проєкт виберіть Усі проєкти або один проєкт. Вебхук одного проєкту чує події цього проєкту.

3. Вкажіть адресу

Заповніть URL: адресу https на порту 443, з іменем хоста й без логіна та пароля. Адреса, на яку сервіс не може доставити події, — наприклад, та, що веде в приватну мережу, — відхиляється з кодом webhook_url_not_allowed.

4. Виберіть події

У розділі Події позначте події, які треба надсилати. Потрібна хоча б одна.

5. Створіть вебхук

Натисніть Створити вебхук.

6. Збережіть секрет

Вікно, яке відкриється, один раз показує Секрет підпису. Скопіюйте його й збережіть у вашому сервісі: кожну доставку підписано ним, і ваш сервіс перевіряє підпис, щоб знати, що доставка прийшла від Slen. Секрет більше не показується.

Події форми

Форма групує події за тим, про що вони.

ГрупаПро що повідомляють її події
РезервуванняХолд узято, списано, звільнено або він сплив, а також виклик коштував більше за свій холд
Бюджетиbudget.threshold_reached — холд довів використання бюджету до 50 % або 80 % його ліміту; budget.exceeded — до всього ліміту
ОпераціїВиклик авторизовано або відхилено, він починається й закінчується: operation.completed, operation.failed або operation.uncertain
Погодженняapproval.requested — виконання чекає рішення; approval.decided — його схвалили, відхилили або строк сплив
  • operation.failed означає, що виклику не було і його холд повернувся. Є один виняток: виклик, який провайдер виконував у фоні і чий холд закрило інше списання, поки він чекав, закінчується operation.failed з причиною background_hold_expired, і нічого не повертається.

  • operation.uncertain означає, що ніхто не знає, чим закінчився виклик: відповідь вузла моделі загубилася, на старт фонового виклику не відповіли, або фоновий виклик перестали опитувати. Його холд стоїть, поки не спливе, і провайдерові, можливо, заплатили. Не повторюйте такий виклик так, ніби він не вдався.

  • Виклик, який флоу передає провайдерові на виконання у фоні, теж повідомляє про свій кінець однією з трьох подій вище. Один такий виклик не повідомляє нічого: виклик, який провайдер усе ще називає таким, що виконується, коли його виконання прочекало 72 години (за замовчуванням). Тоді виконання закривається як failed з parked_expired, а операція виклику залишається pending.

Slen надсилає більше подій, ніж пропонує форма, — про флоу, підключення, виконання, сповіщення. Вебхук чує їх, лише коли їх названо серед його подій через API.

Як надходять доставки

  • Доставка — це POST із подією в тілі, підписаний секретом вебхука.

  • Невдалу доставку надсилають знову пізніше, з дедалі довшими паузами.

  • Та сама подія може надійти більше одного разу. Розрізняйте події за їхнім ідентифікатором.

Вимкнути або видалити вебхук

У меню в рядку вебхука — Вимкнути (у вимкненого вебхука — Увімкнути) і Видалити. Вимкнений вебхук зберігає адресу, події та секрет, і нові події йому не надсилаються. Видалити видаляє його після підтвердження, і його адреса перестає отримувати події.

Вебхуки й повідомлення

Вебхук — для вашого сервісу: підписаний запит із подією в JSON про кожну подію, на яку він підписаний, який надсилається знову, поки ваш сервіс його не прийме. Повідомлення — для людей: звістка в пошті, Telegram, Slack, Microsoft Teams або Discord про сповіщення чи погодження, мовою читача, зі зведеннями й тихими годинами. Щоб повідомляти людям, налаштуйте Повідомлення. Вони не залежать від вебхуків, і подія доходить і туди, і туди.

Що читати далі

  • Сповіщення — сповіщення, чиї alert.opened і alert.resolved може нести вебхук.

  • Бюджети — коли бюджет надсилає свої події.

  • Журнал аудиту — хто додав, змінив або видалив вебхук.

  • Вебхуки — що несе доставка, як перевірити її підпис, і всі події.

  • Повідомлення — повідомляти людям про сповіщення й погодження.