惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园_首页
博客园 - Franky
大猫的无限游戏
大猫的无限游戏
博客园 - 三生石上(FineUI控件)
量子位
博客园 - 聂微东
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
S
SegmentFault 最新的问题
Apple Machine Learning Research
Apple Machine Learning Research
爱范儿
爱范儿
V
Visual Studio Blog
雷峰网
雷峰网
T
Tailwind CSS Blog
宝玉的分享
宝玉的分享
Blog — PlanetScale
Blog — PlanetScale
有赞技术团队
有赞技术团队
博客园 - 叶小钗
Microsoft Azure Blog
Microsoft Azure Blog
T
The Blog of Author Tim Ferriss
U
Unit 42
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
小众软件
小众软件
阮一峰的网络日志
阮一峰的网络日志
Y
Y Combinator Blog

Все публикации подряд на Хабре

Ловим музу за клавиатуру: как айтишнику стать автором Что умеет Midjourney в 2026? Мой немного грустный разбор этого шикарного инструмента Никто не любит писать тесты, но ИИ может исправить это IPv8 выглядит как мечта. Поэтому почти наверняка не взлетит Производители вернули в продажу материнки с DDR3. Что происходит? Управление агентом с телефона через Telegram теперь в KodaCode От координации к лидерству: как меняется роль руководителя разработки Я сделала родителям бизнес вместо пенсии: зарабатываем 70 тысяч, мама не даёт продать В три раза быстрее приемка товара и оптимизация трудозатрат на 73%: как «РСТ-Инвент» помог Gulliver Group ИИ-шечный мир победил? О влиянии искусственного интеллекта на игропром Кремль снижает давление на Телеграмм пока Европа строит интернет по паспорту Как CEO, CTO и CIO за 8 часов собрали ИИ-директора, который умеет держать позицию под давлением Как (не) потерять домен за выходные Вместо 8 разных VPS: как я организовал практику студентам на одном сервере Почему твой Open Source проект не замечают? R&D: искусство управления неопределенностью в разработке AI-дефляция: вакансий для разработчиков больше, а рост зарплат — худший за 15 лет Мы отдали управление роботами OpenClaw. Что из этого вышло Галактический ID: система идентификации для всех форм разумной жизни Шесть основ бизнес-анализа: начинаем с вопроса «Кто в игре?» Код-ревью, в котором дело не в коде Данные переехали. Команда — нет Системной подход к сдаче OSWE в 2025 Почему комната управления реактором покрашена в цвет морской пены 4 YAML-файла вместо PySpark: как аналитикам строить пайплайны без разработчиков LLM-агент для поиска свободных доменов: автоматизируем подбор Когда, зачем и как правильно начинать новую сессию в Claude Code? Как я заставил нейросеть писать макросы для FreeCAD Анатомия ИИ‑агента для подбора персонала. От тысячи резюме к топ‑10 за минуты Опыт разработчика как экономика внимания
Динамические шаблоны пути в интеграциях: как передавать п...
Илья Вязников · 2026-06-17 · via Все публикации подряд на Хабре

Привет, Хабр!

С вами снова Илья Вязников, инженер сопровождения СОФРОС. Продолжаю делится практическими приёмами и полезными настройками платформы.

При интеграции с REST API часто возникает ситуация, когда идентификатор объекта нужно передавать не в теле запроса и не в query-параметрах, а непосредственно в URL. 

Например:

PATCH /users/12345

или

PUT /documents/987/status

Такой подход используется во многих CRM, ECM-системах, банковских и государственных API.

Сегодня, разберём, как реализовать подобную интеграцию в DATAREON Platform с помощью шаблона пути и параметров обработчика. 

Когда это может понадобиться

Несколько типичных сценариев:

  • Обновление контакта во внешней CRM по адресу /api/contacts/{id};

  • Изменение статуса документа по адресу /documents/{docId}/status;

  • Интеграция с внешними REST API, структура которых строго определена поставщиком.

Во всех этих случаях путь запроса должен формироваться динамически на основе данных сообщения.

Как это работает в DATAREON Platform

Рассмотрим реальный пример: обработчик, который отправляет обновления пользователя во внешнюю систему.

Шаг 1. Шаблон пути

Создадим обработчик типа «Веб-клиент».

В настройках обработчика (вкладка Основные) в поле Шаблон пути указываем:

/endpoint/v1/users/{id}

Здесь {id} — параметр, значение которого будет подставлено при выполнении обработчика. 
Название параметра должно совпадать с именем параметра обработчика. Регистр символов также имеет значение. (можно использовать userId, externalId, documentNumber и т.д.).

Шаг 2. Объявление параметра

Переходим на вкладку Параметры обработчика и добавляем параметр:

  • Наименование: id

  • Тип: int (или string, в зависимости от внешней системы)

Если параметр используется в шаблоне пути веб-обработчика расширенного REST API, необходимо пометить его как обязательный. При отсутствии значения платформа не сможет корректно сформировать URL и вернет ошибку. 

После этого параметр станет доступен в коде обработчика и при вызове из бизнес-процесса. 

Шаг 3. Присвоение значения параметру

Здесь есть два удобных варианта.

Вариант А - из типа данных.

Если идентификатор уже присутствует в сообщении, можно присвоить его в коде обработчика: 

На вкладке Код обработчика пишем простое присвоение:

id = Ваш_Тип_Данных.id;     // или externalId, userId и т.д.

В результате при выполнении обработчика значение будет подставлено в URL. 

Вариант Б - напрямую из бизнес-процесса

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

Для примера покажу передачу id из InitMessage:

  • В блоке Отправка указываем обработчик, в котором создана переменная id.

  • Открываем локальные переменные обработчика.

  • Связываем поле id из контекста процесса (InitMessage.id, переменная процесса и т.д.). с переменной обработчика, для передачи значения из процесса в обработчик.

Таким образом, платформа подставит значение в плейсхолдер при формировании запроса.

Например:

Шаблон:

/endpoint/v1/users/{id}

Значение параметра:

id = 12345

Итоговый запрос:

/endpoint/v1/users/12345

Что происходит во время выполнения

При запуске обработчика DATAREON Platform:

  1. Берёт шаблон пути.

  2. Получает значения параметров обработчика.

  3. Подставляет их в шаблон URL.

  4. Формирует итоговый адрес запроса.

  5. Выполняет HTTP-вызов внешней системы.

Практические советы

  • Используйте понятные имена параметров:

    • /users/{userId}

    • /orders/{orderId}

    • /documents/{documentGuid}

  • Если идентификатор представляет собой UUID или строковый код, используйте тип String.

  • В одном URL можно использовать несколько параметров: /api/v1/orders/{orderId}/positions/{positionId}

  • После настройки рекомендуется проверить сформированный URL в журнале выполнения обработчика и убедиться, что все параметры подставляются корректно.

Итог

Шаблон пути в DATAREON Platform позволяет формировать URL динамически и передавать в него значения из сообщений или бизнес-процессов.

Это упрощает интеграцию с REST API, где идентификаторы объектов являются частью адреса запроса, и избавляет от необходимости создавать дополнительные преобразования данных только ради формирования URL.