Перейти к содержимому

Веб-хуки

Что такое веб-хуки?

Веб-хуки позволяют Hedy отправлять данные в другие приложения и сервисы в реальном времени. Когда происходит событие, например завершается сессия или создаётся основной момент, Hedy отправляет данные на указанный вами URL. Так можно строить мощные автоматизации без единой строчки кода.

Например, можно автоматически:

  • Сохранять транскрипты встреч в Google Docs или Notion

  • Публиковать резюме сессий в канале Slack

  • Создавать задачи в Asana или Todoist из списка задач

  • Записывать данные сессий в таблицу

Веб-хуки отправляют данные сами, когда происходят события. Если вместо этого вы хотите, чтобы ИИ-ассистент запрашивал данные ваших сессий по требованию, прочитайте о подключении Hedy к ИИ-ассистентам через MCP.

Настроенные веб-хуки находятся в разделе Настройки > Автоматизация и данные > Доступ к API > Управление веб-хуками. Для каждого показаны события, на которые он подписан, и дата создания:

Экран веб-хуков в Hedy со списком из трёх настроенных веб-хуков: их URL, метки подписанных событий и даты создания

Требования

  • Подписка Hedy Pro — веб-хуки доступны в Pro

  • Включённая облачная синхронизация — нужна, чтобы Hedy могла обрабатывать события веб-хуков через облако

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

Как настроить веб-хук

  1. Откройте Hedy и перейдите в Настройки

  2. Прокрутите вниз до раздела Доступ к API

  3. Нажмите Управление веб-хуками

  4. Нажмите кнопку +, чтобы добавить новый веб-хук

  5. Введите имя (необязательно) — метку, которая поможет вспомнить, для чего нужен этот веб-хук (например, «Zapier, заметки о встречах»)

  6. Вставьте URL веб-хука из внешнего сервиса — это должен быть URL с HTTPS

  7. Выберите события, на которые хотите подписаться (см. ниже)

  8. Нажмите Создать

  9. Сразу после создания Hedy показывает секрет подписи. Он отображается только один раз — скопируйте его и сохраните в надёжном месте, прежде чем закрывать окно.

Можно создать до 10 веб-хуков.

Редактирование веб-хука

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

Диалог редактирования веб-хука в Hedy: поля имени и URL над списком событий, на которые можно подписаться; выбрано session.ended

Редактирование веб-хука не меняет его секрет подписи. Hedy выдаёт его один раз, при создании веб-хука.

Доступные события

Выберите, какие события будут запускать ваш веб-хук:

Сессия создана — срабатывает, когда вы начинаете новую сессию. Отправляет название сессии и время начала.

Сессия завершена — срабатывает, когда сессия заканчивается. Отправляет полные данные сессии: транскрипт, резюме, протокол встречи, основные моменты, ваши заметки к сессии и информацию о теме. Это самое полное событие.

Сессия экспортирована — срабатывает, когда вы вручную экспортируете сессию в свои веб-хуки. Отправляет данные, похожие на «Сессия завершена» (транскрипт, резюме, основные моменты, заметки к сессии и т. д.).

Основной момент создан — срабатывает каждый раз, когда во время сессии фиксируется основной момент. Отправляет текст основного момента, вывод ИИ и временную метку.

Подсказка создана — срабатывает каждый раз, когда Hedy показывает автоматическую подсказку во время живой сессии. Отправляет текст подсказки, сессию, к которой она относится, и тип сеанса. За одну сессию Hedy может показать несколько подсказок, поэтому это событие срабатывает чаще остальных.

Задача экспортирована — срабатывает, когда вы экспортируете задачу. Отправляет текст задачи, срок и связанную сессию.

Ручной экспорт сессии

Помимо автоматических событий, любую сессию можно вручную отправить в ваши веб-хуки:

  1. Откройте завершённую сессию

  2. Нажмите Экспорт в вебхук

  3. Если у вас несколько веб-хуков, подписанных на событие «Сессия экспортирована», выберите, на какие отправлять

  4. Подтвердите экспорт

Проверка веб-хука

Прежде чем на него полагаться, можно убедиться, что веб-хук работает:

  1. Перейдите в Настройки > Автоматизация и данные > Доступ к API > Управление веб-хуками

  2. Нажмите кнопку Тест на любом веб-хуке

  3. Hedy отправит тестовые данные на ваш URL и покажет, успешно ли это прошло, вместе с кодом статуса ответа

Если тест не проходит, проверьте, правильный ли URL и готов ли ваш внешний сервис принимать запросы.

Просмотр данных через webhook.site

Если вы хотите увидеть, что именно отправляет Hedy (каждый заголовок, полное тело JSON и подпись), прежде чем подключать Zapier, Make или собственный сервер, быстрее всего сделать это через webhook.site:

  1. Откройте webhook.site — уникальный URL создаётся мгновенно, регистрация не нужна

  2. Скопируйте URL и вставьте его в свой веб-хук в Hedy

  3. Нажмите Тест в Hedy (или вызовите настоящее событие)

  4. Вернитесь на webhook.site — каждый запрос появляется в реальном времени с полными заголовками, строкой запроса и телом

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

Какие данные отправляются?

Каждый запрос веб-хука — это HTTP POST с телом JSON. Данные зависят от типа события, но событие «Сессия завершена» включает:

  • Сведения о сессии — название, время начала, время окончания, длительность

  • Транскрипт — полный текст вашей сессии

  • Диалоги — структурированный диалог с разбивкой по говорящим

  • Протокол встречи — ключевые пункты обсуждения

  • Резюме — краткое изложение, созданное ИИ

  • Основные моменты — каждый момент с выводом ИИ, цитатой и временной меткой

  • Заметки к сессии — ваши собственные заметки к сессии в поле session_notes (JSON с форматированным текстом; пустая строка, если вы ничего не писали). Отправляются с событиями session.ended и session.exported в Hedy 3.4 и новее

  • Тема — название темы и выводы, если сессия отнесена к теме

О заметках к сессии: заметки, которые вы вводите на экране после сессии в течение нескольких секунд после её окончания, могут не попасть в первую отправку session.ended, потому что Hedy ещё сохраняет их. Эти заметки всегда включаются в session.exported и в API, поэтому, если они вам нужны, экспортируйте сессию повторно.

Событие suggestion.created гораздо меньше. Вместо всей сессии оно отправляет только текст подсказки, идентификатор подсказки, сессию, к которой она относится, тип сеанса и временную метку. К моменту его прихода сессия может ещё продолжаться, поэтому если вам нужны полный транскрипт и резюме, используйте session.ended.

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

Каждый запрос веб-хука содержит подпись, чтобы вы могли проверить, что он действительно пришёл от Hedy:

  • Заголовок X-Hedy-Signature — необработанный хеш HMAC-SHA256 тела запроса в шестнадцатеричной записи, подписанный уникальным секретом вашего веб-хука (без префикса sha256=). Секрет отображается один раз, при создании веб-хука.

  • Заголовок X-Hedy-Event — тип события (например, session.ended)

Все URL веб-хуков должны использовать HTTPS, чтобы ваши данные передавались в зашифрованном виде. Hedy не отправляет данные на HTTP-адреса.

Проверка подписи

Если вы создаёте собственную конечную точку, проверяйте каждый запрос, прежде чем ему доверять. Вычислите HMAC-SHA256 от необработанного тела запроса с вашим секретом подписи и сравните результат с заголовком X-Hedy-Signature с помощью сравнения за постоянное время (обычное == уязвимо для атак по времени).

Node.js:

const crypto = require('crypto');

function verifyHedy(rawBody, signature, secret) {
  const expected = crypto.createHmac('sha256', secret).update(rawBody).digest('hex');
  const a = Buffer.from(expected, 'hex');
  const b = Buffer.from(signature, 'hex');
  return a.length === b.length && crypto.timingSafeEqual(a, b);
}

Python:

import hmac, hashlib

def verify_hedy(raw_body: bytes, signature: str, secret: str) -> bool:
    expected = hmac.new(secret.encode(), raw_body, hashlib.sha256).hexdigest()
    return hmac.compare_digest(expected, signature)

Важно: используйте необработанные байты тела запроса в том виде, в каком они получены. Если сериализовать разобранный JSON заново, изменятся пробелы или порядок ключей, и подпись не совпадёт.

Веб-хуки с популярными платформами

Zapier — создайте Zap, выбрав «Webhooks by Zapier» в качестве триггера. Выберите «Catch Hook», скопируйте URL веб-хука и вставьте его в Hedy.

Make (прежнее название Integromat) — добавьте модуль «Custom Webhook» как триггер сценария. Скопируйте созданный URL и вставьте его в Hedy. Либо используйте приложение Hedy для Make: его триггер «Watch events» сам регистрирует веб-хук, поэтому копировать URL не нужно.

n8n — добавьте в рабочий процесс узел-триггер «Webhook». Скопируйте рабочий URL (production) и вставьте его в Hedy.

Доставка и повторные попытки

Hedy автоматически повторяет неудавшиеся отправки:

  • Ошибки сервера (5xx) — до 2 повторных попыток с нарастающими задержками

  • Превышение лимита запросов (429) — одна повторная попытка с учётом времени повтора, указанного сервисом

  • Ошибки клиента (4xx) — без повторных попыток, так как обычно они указывают на ошибку настройки

Что должна возвращать ваша конечная точка: ответьте любым статусом 2xx (подойдёт 200 OK) в течение 5 секунд. Тело ответа игнорируется. Если нужно выполнить тяжёлую работу, например сохранить в базу данных, вызвать другой API или создать документ, сразу верните 200 и обрабатывайте данные асинхронно, иначе у Hedy истечёт время ожидания, и отправка будет считаться неудавшейся.

Устранение неполадок

Проблемы на стороне Hedy

Сообщение «Для веб-хуков требуется Pro» — перейдите на Hedy Pro в разделе Настройки > Аккаунт > Ваш тариф, чтобы получить доступ к веб-хукам.

Сообщение «Требуется облачная синхронизация» — включите облачную синхронизацию в Настройки > Конфиденциальность и система > Настройки конфиденциальности > Синхронизация с облаком либо нажмите кнопку Включить в предупреждении вверху экрана веб-хуков.

События не приходят — проверьте, что облачная синхронизация включена, веб-хук подписан на нужное событие, а ваша подписка Pro активна.

Проблемы с доставкой

Если тест не проходит или события не приходят, быстрее всего локализовать проблему так: укажите в веб-хуке webhook.site и повторите тест. Если запрос там появляется, Hedy отправляет всё правильно, а проблема на принимающей стороне.

Тест завершается таймаутом — ваша конечная точка должна ответить в течение 10 секунд для теста и 5 секунд для настоящих событий. Если перед ответом вы выполняете тяжёлую работу (сохранение в базу данных, вызов другого API, создание PDF), сразу верните 200 OK и обрабатывайте данные асинхронно.

Ошибка SSL или сертификата — HTTPS-сертификат вашей конечной точки просрочен, самоподписан или в нём не хватает промежуточных сертификатов. Проверьте его через SSL Labs и продлите сертификат или исправьте цепочку.

Отказ в соединении или 404 — URL неверен, пути не существует или сервер не запущен. Уточните точный URL: сначала запустите тест на webhook.site, а затем сравните.

Zap или сценарий Make выдаёт «404 not found» — рабочий процесс приостановлен, находится в режиме черновика или указывает на тестовый URL вместо рабочего. В Zapier Zap должен быть переведён в состояние On. В Make сценарий должен быть Active. В n8n используйте URL Production, а не Test.

Запросы молча отбрасываются — входящие POST-запросы блокирует межсетевой экран, WAF или плагин безопасности (Wordfence, Sucuri, защита от ботов Cloudflare). Проверьте журналы доступа сервера: если запрос Hedy в них не появляется, добавьте Hedy или User-Agent, который она отправляет, в список разрешённых.

Подпись не совпадает — вы проверяете разобранный и заново сериализованный JSON, а не необработанные байты тела запроса, либо добавили к сравнению префикс sha256= (Hedy его не включает). См. «Проверка подписи» выше.

Совет: начните с подписки на событие Сессия завершена — в нём больше всего данных, и оно полезнее всего для автоматизаций на основе заметок о встречах.