Обработчик расширенного REST API
Веб-обработчик относится к системе, имеющей коннектор типа Расширенное REST API.
Внутри обработчика происходит настройка метода:
Наименование.
Комментарий.
Тип (Веб-обработчик).
Тип метода (GET, POST, PUT, DELETE).
Имя таблицы обработчика, которая будет выступать как источник, если указано направление В Platform. Если указано направление ИЗ Platform, таблица выступает как приемник.
Тип внешнего типа данных.
- Шаблон пути. В поле Шаблон пути можно использовать параметры:
{path} путь к методу со всей иерархией папок;
{method} имя метода;
{folder} имя текущей папки метода.
Таймаут вызова.
Параметры запроса.
вPlatform (для методов POST, PUT).
изPlatform (для методов POST, PUT).
Системы (список систем для данного обработчика).
Настройка флагов: требуется авторизация авторизация, ожидание ответа.
Если в Ответе настроен Немассив, а в теле сообщения от процесса приходит массив, при парсинге ответа в веб-сервис проверяется количество элементов в массиве:

если элементов 0, то это интерпретируется как пустое тело, выводится значение соответствующего типа данных с пустыми значениями полей;
если 1, то интерпретируется первый элемент массива как тело сообщения и выводится соответствующее значение;
в других случаях регистрируется ошибка, что получен массив.
Сообщения могут быть отправлены без указания в теле значений полей. Например:
{
"поле3": "string"
}

В этом случае в ответном сообщении будут переданы соответствующие значения полей:
{
"Поле1": "",
"Поле2": null,
"Поле3": "string"
}
Код обработчика
Код обработчика пишется на языке C#.
В коде обработчика c направлением В Platform доступна переменная RunMessage. В этой переменной содержится сообщение, полученное из внешней системы.
Содержимое переменной RunMessage можно модифицировать с помощью методов для работы с сообщениями. После завершения работы обработчика содержимое переменной RunMessage отправляется в Платформу.
RunMessage.SetBody(Object); - установить новое тело сообщения.
Особенности формирования шаблона пути
Имена переменных регистрозависимые; если регистр переменной и маски в пути совпадает, то в запрос передается значение параметра из swagger веб-сервиса:

Если регистр не совпадает, то в запросе остается имя параметра в скобках:

Помимо этого, при формировании шаблона пути можно использовать стандартные маски, такие как {path}, {method} и {folder}. Если в параметрах обработчика будут заданы пользовательские параметры с этими именами, то они считаются приоритетными и подставляются в шаблон пути: иначе эти параметры будут определены автоматически от расположения обработчика в иерархии папок:
