Коннектор n8n

Узел сообщества Entity Enricher для n8n позволяет создавать автоматизированные конвейеры обогащения с визуальным редактором drag-and-drop. Подключайтесь к более чем 400 приложениям без написания кода.

Установка

Установите community-узел в вашем экземпляре n8n:

npm install n8n-nodes-entity-enricher

Или установите через интерфейс n8n: перейдите в Settings → Community Nodes и найдите n8n-nodes-entity-enricher.

Предварительные требования

Ключ APIСоздайте ключ доступа организации в Entity Enricher. Подробнее см. в документации по API-ключам. Формат ключа — ent_XXXXXXXXXXXX.
Базовый URLURL вашего экземпляра Entity Enricher (например, https://entityenricher.ai или ваш URL при самостоятельном размещении).
Настройка учётных данныхВ n8n создайте учётные данные Entity Enricher API, указав ваш API-ключ и базовый URL. Все узлы будут использовать эти учётные данные. Ключ доступа организации работает независимо от любой учётной записи пользователя — рекомендуемый вариант для устойчивых рабочих процессов между сервисами.
OAuth2 (альтернатива)Предпочитаете подключаться через свою учётную запись? Тогда создайте учётные данные Entity Enricher OAuth2 API: скопируйте URL перенаправления OAuth, который показывает n8n, зарегистрируйте с ним OAuth-клиент в Entity Enricher в разделе API Keys → Connected Apps → OAuth Clients (роль owner), вставьте идентификатор клиента в n8n и нажмите Connect my account. Подключение действует с вашей ролью и может быть отозвано в любой момент в разделе Connected Apps. Выберите учётные данные на узле с помощью его параметра Authentication.
  1. 1Имя, отображаемое в Connected Apps
  2. 2URL перенаправления OAuth из n8n, скопированный в точности
  3. 3Возвращает client ID для вставки в n8n
Клиента нельзя изменить после создания — его URL перенаправления задаётся один раз, поэтому второй экземпляр n8n получает собственного клиента, а удаление клиента мгновенно отзывает все созданные через него подключения.

Доступные операции

Коннектор предоставляет 18 операций в 7 категориях ресурсов:

РесурсОперацияОписание
EnrichmentEnrich EntityОбогащение одной сущности — просто выберите схему; лучшая модель и стратегия вашей организации выбираются автоматически. Результаты передаются через SSE с прогрессом в реальном времени.
EnrichmentEnrich Entity AdvancedОбогащение одной сущности с полным контролем над моделями, слиянием, стратегией, классификацией и структурированным выводом.
EnrichmentBatch EnrichОбогащение всех входных элементов одним пакетом с автоматическим выбором модели и стратегии. Параллельная обработка с отслеживанием прогресса по каждой сущности.
EnrichmentBatch Enrich AdvancedОбогащение всех входных элементов одним пакетом с полным набором параметров.
SchemaList SchemasВыводит список доступных сохранённых schemas для выбора в рабочих процессах enrichment.
SchemaGet Schema DetailsПолучить полное содержимое схемы с извлечёнными ключевыми свойствами для конкретной схемы.
SchemaGenerate SampleСгенерируйте от 1 до N реалистичных JSON-примеров одного типа сущности за одно задание — точка входа в цикл создания схемы. Язык по умолчанию — auto: он определяется по словам вашего запроса.
SchemaGenerate SchemaСгенерировать и автоматически сохранить JSON-схему — каждый входной элемент является примером одного и того же типа сущности: объединение полей, nullable там, где поле отсутствует в части примеров, реальные наблюдаемые значения в качестве примеров. Параметр «Язык» задаёт язык, на котором схема описывает саму себя.
RecordList RecordsЗапрашивайте записи обогащения с фильтрами по типу и успешности. Результаты с постраничной разбивкой.
RecordGet RecordПолучить конкретный результат обогащения по ID с полным структурированным выводом.
RecordSync Records to DatabaseОтправьте сохранённый (или преобразованный) результат обогащения в синхронизацию базы данных его схемы — он повторно проверяется по опубликованному контракту, а затем проходит через шлюз допуска.
FusionMerge ResultsОбъединяйте результаты нескольких записей обогащения с опциональным арбитражем LLM.
AttachmentAdd AttachmentЗагружает один или несколько бинарных файлов из входного элемента (одним multipart-запросом) и возвращает по одному элементу на каждый ID вложения.
AttachmentDelete AttachmentУдалить вложение по ID — удобный шаг очистки после обогащения.
Database SyncList Database SyncsСписок database sync, зарегистрированных для схемы, с количеством ожидающих дельт.
Database SyncFetch DeltasПолучите следующее FIFO-окно дельт базы данных (SQL + JSON), при необходимости арендуя их для подтверждения.
Database SyncAcknowledge DeltasПодтвердите применённые дельты вплоть до указанного ID — освобождает аренду (lease) и, согласно настройкам синхронизации, удаляет доставленные копии.
ConfigurationGet OptionsПолучите доступные модели, языки, стратегии и лимиты плана для динамической конфигурации.

Узел-триггер

В пакет также входит отдельная нода Entity Enricher Trigger — вебхук-триггер, который запускает рабочий процесс при любом событии платформы и автоматически регистрирует подписку. Список в поле Event загружается напрямую из вашего аккаунта, поэтому все события платформы доступны без обновления ноды:

Записи обогащенияrecord.created срабатывает при каждом завершённом обогащении (с Database Sync или без него). При желании можно ограничить его одной схемой. Запуск, не прошедший проверку допуска Database Sync, приходит с database.saved = false и списком отсутствующих обязательных полей.
Аккаунты, биллинг и кредитыmember.*, subscription.*, credits.* — запрос на вступление, изменение роли, повышение тарифа, покупка кредитов или низкий/исчерпанный баланс. Каждое событие «updated» содержит карту changes, где точно указано, какой атрибут изменился.
Задачи и схемыjob.completed / job.failed для любой задачи LLM — обогащение, пакет, бенчмарк, генерация образца или схемы — и schema.updated, когда схема публикуется: это тот сигнал, которого нужно дождаться перед чтением новой структуры. Неудавшаяся задача содержит типизированный error_code рядом с сообщением.
Провайдеры ИИprovider.failed, когда вызов провайдера ИИ завершается ошибкой на стороне провайдера после повторных попыток — лимит запросов, таймаут, отключённая модель, исчерпание кредитов — при этом data.code указывает причину; provider.threshold, когда на аккаунте, привязанном к ключу провайдера, заканчиваются кредиты (один раз на каждый ключ), при этом key_source сообщает, ваш это собственный ключ или общий.
Доступны дельты базы данныхСрабатывает, когда для Database Sync готовы новые SQL-дельты. Если включён параметр "Fetch Deltas on Fire", нода получает и арендует ожидающие дельты, выдавая по одному элементу на каждую дельту для последующего шага Acknowledge Deltas. База данных, наполняемая несколькими схемами, шлёт уведомления отдельно по каждой схеме — каждая ведёт свой рабочий процесс, — поэтому укажите, какую связанную схему слушает этот триггер.

Каждая доставка подписывается: заголовок X-EE-Signature содержит HMAC-SHA256 от тела с меткой времени, а X-EE-Delivery не меняется при повторных попытках, поэтому его можно использовать как ключ идемпотентности. Неудачные доставки повторяются три раза в течение получаса. Эндпоинты можно зарегистрировать и вручную — без коннектора — в разделе «Настройки › Вебхуки», где журнал доставок показывает каждую попытку и позволяет повторить её.

  1. 1События, на которые подписан этот эндпоинт
  2. 2Ключ, стоящий за X-EE-Signature
  3. 3По одной строке на попытку — со статусом и задержкой
Строка записывается до первого POST, поэтому журнал остаётся аудиторским следом, даже если до вашего потребителя так ничего и не дошло, — а эндпоинт, у которого подряд не удались десять доставок, отключается, вместо того чтобы копить очередь на URL, который никто не слушает.

Вместе с операциями Database Sync триггер поддерживает синхронизацию внешней базы данных силами одного n8n — см. документацию по Database Sync.

  1. 1Окно, за которым следит триггер
  2. 2Назад к обогащению, в котором возникла эта дельта
  3. 3Запрос, который применяет ваша база данных, с защитой по ревизии
О чём сообщает триггер и что резервирует Fetch Deltas: упорядоченные строки, каждая из которых несёт точный запрос для применения и обогащение, из которого она получена.

Обогащение одной сущности

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

Пример рабочего процесса — обогащение одной сущности:

Конфигурация узла — операция обогащения сущности:

Конфигурация

По умолчанию операции Enrich Entity и Batch Enrich показывают только самое необходимое: схему, загрузку файла, языки и веб-поиск. Entity Enricher автоматически работает с лучшей моделью вашей организации — вашей закреплённой моделью по умолчанию или моделью с наивысшей оценкой по бенчмаркам — и выбирает стратегию обогащения на основе вашей схемы. Операции Enrich Entity Advanced и Batch Enrich Advanced открывают полный набор опций, приведённых ниже.

Выберите схему из динамического выпадающего списка, выберите одну или несколько моделей и укажите данные сущности в виде полей «ключ-значение». Узел автоматически заполняет поля ключей поиска на основе выбранной схемы.

Необязательные настройки включают стратегию (одинарный проход или несколько областей экспертизы), языки для многоязычного вывода, модель классификации для проверки типа сущности, модель арбитража для разрешения конфликтов между моделями и переключатели схемы ответа / строгого структурированного вывода, которые обеспечивают соответствие вывода схеме на поддерживающих это моделях.

Чтобы передать исходные документы в обогащение, включите Upload Input Binary Files: узел загружает бинарные файлы входного элемента как вложения одним запросом (все либо только указанные в Binary Fields to Upload) и при включённом Delete Uploaded Attachments After Enrichment (по умолчанию включено) удаляет их после завершения обогащения — отдельные шаги Add Attachment / Delete Attachment не нужны. Как вариант, укажите поле Attachment IDs (UUID через запятую из предыдущих вызовов Add Attachment), чтобы повторно использовать однажды загруженные документы во многих обогащениях; оба источника можно комбинировать. Также доступно в Batch Enrich, где файлы собираются из всех входных элементов и применяются к каждой сущности в задании. Если между источником файлов и узлом обогащения находится узел Edit Fields, включите его переключатель Include Other Input Fields — иначе он удалит бинарные данные.

Пакетное обогащение

Обрабатывайте все входные элементы как единый batch. Идеально для enrichment списков из электронных таблиц, баз данных или ответов API. Все entity обрабатываются параллельно с ограничением частоты запросов для каждого provider.

Конфигурация узла — операция пакетного обогащения:

Как работает пакетный режим

  1. Сбор элементов — Узел собирает все входные элементы из предыдущего узла (например, строки из таблицы).
  2. Запуск пакетного задания — Все сущности отправляются через POST /api/batch/start и обрабатываются параллельно.
  3. Потоковый прогресс — Узел читает поток SSE, пока все сущности не будут обработаны или не истечёт тайм-аут.
  4. Результаты вывода — Один выходной элемент на сущность с обогащёнными структурированными данными, готовыми к дальнейшей обработке.

Ключевые функции

Простые и расширенные операции

Операции Enrich Entity и Batch Enrich по умолчанию показывают только схему, загрузку файла, языки и веб-поиск — лучшая модель и стратегия выбираются автоматически. Расширенные операции дают полный контроль над моделями, слиянием, стратегией и структурированным выводом.

Динамические выпадающие списки

Селекторы схемы, модели, языка и стратегии получают параметры из вашего экземпляра Entity Enricher во время настройки.

Потоковая передача SSE

Операции обогащения потребляют поток SSE в реальном времени, ожидая завершения перед передачей результатов следующему узлу.

Автопродолжение

Когда предварительная классификация обнаруживает несоответствие, коннектор автоматически продолжает работу (рабочие процессы n8n неинтерактивны).

Настраиваемый тайм-аут

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

Поддержка нескольких моделей

Выбирайте несколько моделей для каждого обогащения. При использовании 2+ моделей результаты автоматически объединяются (слияние).

Очищать вывод по умолчанию

По умолчанию вывод содержит только обогащённые поля данных. Включите «Включить метаданные обогащения», чтобы добавить стоимость, токены, детали слияния и идентификаторы записей.

Вывод по каждой модели

При желании выводить результаты отдельных моделей вместе с результатом слияния для последующего сравнения.

Учёт лимитов плана

Выпадающие списки моделей и языков отображают лимиты плана, если они настроены. Ошибки HTTP 402, связанные с контролем квот, отображаются в виде понятных, полезных сообщений с деталями лимитов. Вывод метаданных включает текущие лимиты плана для последующей маршрутизации.

Используйте из AI-агента или начните с примера

Инструмент для AI-агента

Узел Entity Enricher можно подключить к AI Agent в n8n как инструмент, чтобы агент сам решал, когда обогатить сущность или получить схему по ходу диалога. Триггерный узел намеренно так не предлагается: триггер запускает рабочий процесс, а не вызывается агентом.

Шесть рабочих процессов, готовых к импорту

Пакет содержит готовые файлы рабочих процессов: одиночное обогащение, пакетное, документ → обогащение, изображение → образец → схема, образцы → схема и вычитывание потока изменений в PostgreSQL. Импортируйте нужный и подставьте свои учётные данные вместо того, чтобы собирать всё с нуля.

Идеи рабочих процессов

Типичные паттерны построения конвейеров обогащения с n8n:

Enrichment CRMЗапускайте при новых контактах HubSpot/Salesforce, обогащайте данными о компании, обновляйте запись в CRM.
Конвейер таблицЧитайте сущности из Google Sheets, обогащайте пакетно и записывайте результаты обратно в новый лист.
Каскадное обогащениеОбъедините несколько шагов обогащения в цепочку с условной логикой — сначала используйте быструю модель, затем повторно обогатите сбои более мощной моделью.
Запланированное обновлениеЗапуск по расписанию cron для повторного обогащения устаревших записей с помощью новейших ИИ-моделей.
На основе вебхуковОткройте эндпоинт webhook, который принимает данные сущности, обогащает их и синхронно возвращает результат.

Дальнейшие шаги