Настройка Webhook в KeyCRM

Рассказываем как настроить отправку вебхуков из KeyCRM в стороннюю систему.
Автор Богдан Починок
Обновлено 7 месяцев назад

Вебхук — это специальный механизм отправки данных, с помощью которого вы можете эффективнее автоматизировать ваши бизнес-процессы.

Использование вебхуков позволяет уведомлять внешние системы о различных событиях, которые произошли в KeyCRM. Например, вы можете автоматически уведомлять об изменениях статуса заказа.

Для работы с вебхуками в системе используется триггерная автоматизация. Вы можете настроить срабатывание триггеров по разным условиям под разные потребности.

Подробно как работают триггеры и как их правильно настроить описано в инструкции: Автоматизация в KeyCRM. В данной статье мы рассмотрим именно действие отправки вебхуков.

Обратите внимание! В KeyCRM доступны только исходящие вебхуки, из системы можно только отправлять данные на нужные URL.

Настройка действия по отправке Webhook

Чтобы настроить отправку вебхука, вам нужно выполнить следующие шаги:

  1. Выберите действие «Отправить Webhook» в настройках триггера;
  2. Откроется окно, в котором вам нужно ввести URL-адрес вебхука, куда будут отправляться данные, и выбрать метод передачи данных (POST или GET);
  3. Убедитесь, что вы правильно ввели URL-адрес и метод передачи данных;
  4. Сохраните настройки вебхука, чтобы изменения вступили в силу.

Процесс отправки вебхука

Если все заданные условия выполняются — срабатывает триггер и выполняет все настроенные действия в нем.

Действие «Отправить Webhook» автоматически отправляет запрос с данными на указанный URL-адрес с методом, который вы выбрали.

Независимо от выбранного метода всегда отправляются 2 стандартных параметра:

  • «event» - событие по которому сработал триггер, отправивший вебхук;
  • «context» - контекст, данные сущности по которой сработал вебхук.

Если вам нужно отправить дополнительные данные вместе с запросом GET, вы можете добавить свои статические параметры к URL.

Эти параметры также будут переданы вместе с запросом и вы сможете получить и обработать их во внешней системе.

https://webhook.site/a6d5120f-cdf1-4765-bfd3-5a699db72e22?test=test // пример url адреса со статическими параметрами

Информация, которая отправляется через вебхук

Через вебхуки отправляется только базовая информация по заказам. Однако, она включает все основные параметры заказа, такие как его ID, статус оплати, сумму и т.д.

Важно! Если вам необходимо получить дополнительную информацию, например, о платежах и доставке, или другие параметры, вам необходимо осуществлять дополнительные запросы через API.

Для этого воспользуйтесь запросом GET/order/{orderId} с нужными значениями в параметре include.

Информация, которая отправляется по каждому заказу в формате json:

{
   "event": "order.change_order_status", // Событие, в данном случае, изменение статуса заказа
   "context": {
     "id": 56076, // Идентификатор заказа
     "source_uuid": null, // Уникальный идентификатор заказа из загруженного источника
     "status_on_source": null // Идентификатор статуса на источнике
     "source_id": 140, // Идентификатор источника
     "client_id": 17296, // Идентификатор id покупателя
     "grand_total": 22000, // Финальная стоимость
     "total_discount": 0, // Сумма скидки
     "expenses_sum": 0, // Сумма затрат
     "discount_amount": 0, // Скидка в целых значениях
     "discount_percent": 0, // Скидка в процентах
     "shipping_price": null, // Стоимость доставки
     "taxes": null, // Сумма налогов
     "fiscal_result": [], // Результаты фискализации
     "fiscal_status": null, // Статус фискализации
     "manager_id": 62, // ID менеджера
     "status_group_id": 4, // Идентификатор группы статуса заказа
     "status_id": 28, // Идентификатор статуса заказа
     "status_changed_at": "2023-03-20T09:53:49.000000Z", // Время изменения статуса в UTC формате
     "parent_id": null, // Идентификатор родительского заказа
     "manager_comment": null, // Комментарий менеджера
     "client_comment": null, // Комментарий клиента
     "is_gift": false, // Подарок или нет
     "promocode": null, // Промо код
     "wrap_price": null, // Стоимость подарочной упаковки
     "gift_wrap": false, // Подарочная упаковка, наличие или отсутствие
     "payment_status": "not_paid", // Статус оплаты
     "gift_message": null, // Поздравительное сообщение
     "last_synced_at": null, // Дата последней синхронизации с источником в UTC формате
     "created_at": "2023-03-17T18:36:34.000000Z", // Дата создания заказа в UTC формате
     "updated_at": "2023-03-20T09:53:49.000000Z", // Дата последнего изменения заказа в UTC формате
     "closed_at": null, // Дата закрытия заказа в UTC формате
     "deleted_at": null, // Дата удаления
     "ordered_at": "2023-03-17T18:36:34.000000Z", // Дата заказа на источники в UTC формате
     "payments_total": 0, // Общая сумма платежей
     "is_expired": false, // Просроченный заказ или нет
     "has_reserves": false // Есть ли резерв товара
   }
}

Информация, которая отправляется по карточкам воронки в формате json:

{
  "event": "lead.change_lead_status",
  "context": {
    "id": 8043,
    "title": "№110002",
    "contact_id": 8559,
    "manager_id": 108,
    "target_id": null,
    "target_type": null,
    "source_id": 141,
    "status_id": 678,
    "pipeline_id": 63,
    "status_changed_at": "2023-08-07T08:37:58.000000Z",
    "communicate_at": "2023-08-18T10:42:06.000000Z",
    "currency_code": "UAH",
    "manager_comment": "Комментарий",
    "utm_source": "facebook",
    "utm_medium": "banner",
    "utm_campaign": "sale",
    "utm_term": "landing page",
    "utm_content": "-30%",
    "is_finished": false,
    "closed_from": null,
    "created_at": "2023-06-07T09:42:06.000000Z",
    "updated_at": "2023-08-07T08:37:58.000000Z",
    "deleted_at": null,
    "source_uuid": null,
    "payments_total": 0,
    "products_total": 124.5
  }
}

Теги: POST, GET, вебхук, webhook, вэбхук.
Оцените эту статью