Перейти к содержанию

Webhooks

Webhook — это механизм для передачи некоторой внешней системе изменения, которое произошло в InfraVision. Например, вы можете захотеть уведомить систему мониторинга всякий раз, когда статус устройства обновляется в InfraVision. Это можно сделать, создав webhook для модели устройства в InfraVision и идентифицировав получателя webhook. Когда InfraVision обнаруживает изменение устройства, HTTP-запрос, содержащий детали изменения и того, кто его сделал, будет отправлен указанному получателю.

См. документацию по webhooks для получения дополнительной информации.

Поля

Name

Уникальное понятное имя.

Content Types

Тип(ы) объекта в InfraVision, которые запустят webhook.

Enabled

Если не выбрано, webhook будет неактивен.

Events

События, которые запустят webhook. Должен быть выбран хотя бы один тип события.

Name Description
Creations Был создан новый объект
Updates Существующий объект был изменен
Deletions Объект был удален
Job starts Задание для объекта запускается
Job ends Задание для объекта завершается

URL

URL, на который будет сделан HTTP-запрос webhook.

HTTP Method

Тип HTTP-запроса для отправки. Опции:

  • GET
  • POST
  • PUT
  • PATCH
  • DELETE

HTTP Content Type

Тип контента для указания в заголовке исходящего HTTP-запроса. См. этот список известных типов для справки.

Additional Headers

Любой дополнительный заголовок для включения в исходящий HTTP-запрос. Они должны быть определены в формате Name: Value, с каждым заголовком на отдельной строке. Для этого поля поддерживается шаблонизация Jinja2.

Body Template

Шаблон Jinja2 для пользовательского тела запроса, если желательно. Если не определен, InfraVision заполнит тело запроса необработанным дампом контекста webhook.

Secret

Секретная строка, используемая для подтверждения подлинности запроса (необязательно). Это добавит заголовок X-Hook-Signature к запросу, состоящий из HMAC (SHA-512) шестнадцатеричного дайджеста тела запроса с использованием секрета в качестве ключа.

Conditions

Набор предписанных условий, против которых будет оцениваться запускающий объект. Если условия определены, но не соблюдены объектом, webhook не будет отправлен. Webhook, который не определяет никаких условий, будет всегда запускаться.

SSL Verification

Управляет тем, обеспечивается ли проверка SSL-сертификата получателя при использовании HTTPS.

Внимание

Отключение этого может подвергнуть ваши webhooks атакам типа "человек посередине".

CA File Path

Путь к файлу конкретного файла центра сертификации (CA) для использования при проверке SSL-сертификата получателя (если не используются системные настройки по умолчанию).

Контекстные данные

Следующие контекстные переменные доступны в текстовых шаблонах и шаблонах ссылок.

Variable Description
event Тип события (create, update или delete)
timestamp Время, в которое произошло событие
model Тип затронутого объекта
username Имя пользователя, связанного с изменением
request_id Уникальный идентификатор запроса
data Полное сериализованное представление объекта
snapshots Снимки объекта до и после изменения