Ресурси · Интеграционни модели
REST API и оркестрация с webhooks
Системите си казват за промени с подписани webhooks, а оркестраторът извиква API идемпотентно.
Статус на интеграцията: Документиран модел
Описан модел. Този продукт не изпълнява интеграции с webhooks към външни системи.
Описание
Източникът изпраща подписан webhook при събитие; оркестраторът проверява подписа, записва събитието и извиква целевите API с идемпотентен ключ и повторни опити с изчакване.
Предпоставки
- Тайна за подписите при двете страни.
- Идемпотентни операции или ключове.
- Таблица за обработените събития.
Кога да се използва
- Системите имат стабилни API и поддържат webhooks.
- Обемите са умерени.
- Нужна е бърза реакция на събития.
Кога да не се използва
- Много високи обеми или нужда от подредба — използвайте събития.
- Източникът не поддържа подписи.
- Нужна е пълна синхронизация на големи масиви.
Референтна схема
Илюстрация на компонентите и потока — не е работеща система.
01Източник
- Събитие
- Подписан webhook
02Оркестратор
- Проверка на подписа
- Запис и дедупликация
- Повторни опити
03Цели
- REST API
- Опашка за неуспешни
Схемата като списък
| Етап | Компоненти |
|---|---|
| Източник | Събитие, Подписан webhook |
| Оркестратор | Проверка на подписа, Запис и дедупликация, Повторни опити |
| Цели | REST API, Опашка за неуспешни |
Контроли за сигурност
- Проверка на HMAC подписа и времевия печат.
- Само HTTPS и ограничен списък с адреси.
- Ключове с минимални права за целевите API.
Наблюдаемост
- Брой събития и закъснение до обработка.
- Дял на неуспешните и опашка за неуспешни.
- Трасиране с идентификатора на събитието.
Типични откази
| Отказ | Ограничаване |
|---|---|
| Повторно доставен webhook | Дедупликация по идентификатор на събитието. |
| Целевият API не отговаря | Повторни опити с изчакване и опашка за неуспешни. |
| Подправена заявка | Отказ при невалиден подпис. |
