Веб-хук процедуры

Веб-хук процедуры

Процедура с Как часто → По веб-хуку запускается входящим вызовом из вашей системы — CRM, формы на сайте, склада. Тело запроса агент получает как данные, а не как указания.

Адрес и секрет

После создания процедуры открывается окно Адрес и секрет веб-хука: Адрес (POST, JSON до 64 КБ), Секрет и Пример вызова с подписью — у каждого поля кнопка Копировать.

Секрет показывается один раз — сохраните его там, откуда будете вызывать процедуру. Потеряли — на странице процедуры, в блоке Веб-хук, нажмите Сменить секрет: прежний перестаёт работать сразу (вызовы с его подписью получат 401), новый покажется один раз. Там же — адрес и Последние вызовы с кодом ответа. Блок видят те, кто может менять процедуру.

Выключенная процедура на вызов не запускается.

Для разработчика

  • Запрос — POST на адрес процедуры, Content-Type: application/json, непустое тело до 64 КБ.
  • Подпись — заголовок X-Gribzer-Signature: t=<unix-время>,v1=<hex>, где v1 — HMAC-SHA256 секретом процедуры от строки <t>.<тело как отправлено>. При смене секрета можно прислать несколько v1 — подойдёт любой верный.
  • Окно времени — t не дальше 5 минут от времени сервера, иначе подпись считается устаревшей.
  • Повтор — вызов с тем же заголовком Idempotency-Key второй запуск не заводит. Без заголовка повтором считается тот же запрос с той же подписью.
  • Ответы:
    • 202 — принят, запуск идёт в фоне (в ответе runId);
    • 200 — повтор, второго запуска нет;
    • 400 — пустое тело или не JSON;
    • 401 — нет подписи, она не разобрана, устарела или не сошлась;
    • 404 — адрес не найден;
    • 409 — процедура выключена;
    • 413 — тело больше 64 КБ;
    • 415 — не application/json.
  • Частота — не больше 60 вызовов в минуту с одного IP отправителя, сверх — 429.
  • Журнал вызовов — последние вызовы хранятся 14 дней, на странице процедуры видны десять последних.