Вернуться к документации

Основные понятия Adal

Два направления HTTP-доставки, сущности Inbound и Outbound и границы ответственности сервиса.

Открыть как Markdown
На этой странице

Два направления

Adal принимает входящие вебхуки и исполняет исходящие HTTP-запросы. Для обоих направлений доступны журнал и результаты попыток; трафик списывается с общего баланса аккаунта.

  • Inbound: внешний отправитель обращается к публичному URL вашего Сервера. Adal принимает запрос и доставляет его подключённым получателям.

  • Outbound: ваше приложение передаёт HTTP-задание через API с API-токеном. Входящий Сервер для этого не нужен.

Как связаны сущности

Inbound: Отправитель → Сервер → Запрос → Маршрутизатор → Канал → Ендпоинты Outbound: Приложение → API + регион → Задание → HTTP-получатель

Схема Inbound показывает связи настройки. Маршрутизатор выбирает Каналы, а не изменяет HTTP-содержимое запроса. Несколько получателей имеют независимый прогресс доставки.

Сервер

Сервер даёт публичный региональный URL приёма вебхуков и определяет правила приёма и ответа отправителю. Регион и адрес выбираются при создании и затем не меняются. Настройки — в Серверах.

Запрос

В Inbound это запись о принятом или отклонённом обращении. У принятого запроса можно просмотреть HTTP-данные, пока они доступны, и историю доставки. Отклонённый запрос не исполняется у получателей. У Outbound отправка имеет собственный идентификатор и журнал; её приём API ещё не означает выполнение HTTP-вызова.

Канал, Ендпоинт и Маршрутизатор

Канал объединяет Ендпоинты и выбирает способ доставки: Direct доставляет запрос размещённому получателю, CLI — через Adal CLI на вашем компьютере. Ендпоинт задаёт URL конкретного получателя и параметры его доставки. Маршрутизатор связывает один или несколько Серверов с одним или несколькими Каналами.

Получатель не является отдельной настройкой, принадлежащей только одному Серверу. Канал может участвовать в нескольких связях. См. Каналы и Ендпоинты.

Доставка и попытка

Доставка — работа по передаче запроса получателю. Попытка — один HTTP-вызов в рамках этой работы. В Inbound общий статус учитывает всех получателей: успех одного не означает успех остальных. Запрос без получателей может оставаться received.

В Outbound ответ API 202 подтверждает приём задания, а не успех получателя. HTTP-успех означает успешный ответ получателя по правилам исполнения; он не доказывает завершение бизнес-операции в чужой системе.

Повтор и повторная отправка

Автоматический повтор продолжает существующую доставку после неудачной попытки. Повторный вызов API вашим приложением — новая операция постановки, для которой нужен ключ идемпотентности, если вы хотите защититься от дубля задания.

Отдельное ручное действие replay или ручной перезапуск доставки в текущем кабинете не предоставляется. Не путайте автоматические попытки с созданием нового запроса. Подробнее — Повторы и идемпотентность.

Регион и срок хранения

Регион задаёт место исполнения и хранения HTTP-данных. Срок доступности содержимого ограничен; история и минимальные метаданные могут оставаться после удаления тел. Выбор региона не означает автоматического переноса или переключения в другой регион. См. Регионы и Хранение.

Безопасность и ответственность

Проверяйте подпись отправителя, валидируйте входные данные и защищайте обработчики от повторных эффектов. Секреты API, CLI и провайдеров не размещайте в URL, скриншотах или обычных логах. Adal не подменяет аутентификацию отправителя и бизнес-проверки вашего приложения.

Когда использовать Adal

Приём вебхуков на стабильный URL, доставка в локальное приложение через CLI, передача события нескольким приложениям, исходящие HTTP-вызовы с автоматическими попытками и разбор неудачной доставки.

Границы применения

Сервис не заменяет постоянный архив, собственную БД, транзакции приложения или резервное копирование. Не рассчитывайте на однократность внешнего эффекта, строгий глобальный порядок, фиксированную задержку либо гарантированную доступность.

Краткий словарь

Термин Значение
Inbound Приём вебхука на Сервер и доставка получателям
Outbound Самостоятельная отправка HTTP-задания через API
Канал / Ендпоинт Способ доставки / конкретный получатель Inbound
Маршрутизатор Связи между Серверами и Каналами
Попытка Один HTTP-вызов получателя
API-токен / CLI-токен Доступ внешнего приложения к API / подключение CLI к Каналу

Связанная документация