Интеграции и вебхуки
При отправке формы ProjME Forms может доставить ответ на ваш endpoint через вебхук.
Настройка вебхука
Заголовок раздела «Настройка вебхука»Создайте вебхук в настройках формы: укажите URL, HTTP-метод (POST/PUT/PATCH), события-триггеры и необязательные заголовки.
Payload
Заголовок раздела «Payload»Доставка form_submitted — это JSON POST вида:
{ "event": "form_submitted", "formId": "…", "submissionId": "…", "ipAddress": "…", "formData": { "field_id": "value" }, "formatted": { "field_label": "value" }}formData — исходные значения полей; formatted — человекочитаемое представление.
Аутентификация
Заголовок раздела «Аутентификация»Два способа аутентификации доставки, чтобы ваш endpoint знал, что запрос подлинный.
1. HMAC-подпись
Заголовок раздела «1. HMAC-подпись»Задайте secret на вебхуке. Каждая доставка будет включать:
X-Webhook-Signature: HMAC-SHA256(тело-запроса, secret) (hex)Проверяйте на своей стороне, пересчитав HMAC-SHA256(raw_body, secret) и сравнив с заголовком.
2. Статичный токен (Header Auth)
Заголовок раздела «2. Статичный токен (Header Auth)»Задайте статичный токен на вебхуке. Он передаётся в заголовке (по умолчанию X-Form-Token). Ваш endpoint проверяет значение заголовка. Токены отправляются только по HTTPS — URL вебхука должен использовать https://.
Slack и Discord
Заголовок раздела «Slack и Discord»Если вставить URL вебхука Slack или Discord, payload автоматически форматируется под этот сервис.
Доставка и ретраи
Заголовок раздела «Доставка и ретраи»Доставки повторяются до 3 раз с экспоненциальной задержкой. Каждая попытка логируется (статус, ответ, ошибка), можно получать email-уведомления об успехе/провале.
Пример: n8n
Заголовок раздела «Пример: n8n»- Статичный токен: узел Webhook в n8n с Authentication = Header Auth, заголовок
X-Form-Token= ваш токен. - HMAC: узел Webhook с Authentication = None и проверка
X-Webhook-Signatureв Code-узле (пересчёт HMAC по сырому телу).
