Налаштування регламенту для надання доступу до даних через SOAP та REST API
🌐 Цей документ доступний українською та англійською мовами. Використовуйте перемикач у правому верхньому куті, щоб змінити версію. |
Якщо ваш реєстр є власником даних, і ви хочете виставляти інтеграційні API-точки, отримувати запити та віддавати дані іншим реєстрам або системам, виконайте наступні налаштування регламенту:
Для REST-взаємодії необхідно також надати доступ до реєстру в адміністративній панелі Control Plane. Детальніше про це — див. на сторінці Налаштування доступу до реєстрів. |
1. Налаштування авторизації для доступу до бізнес-процесів реєстру
Адміністратор реєстру має виконати налаштування авторизації на рівні регламенту.
|
-
Налаштуйте доступ до бізнес-процесів у цільовому реєстрі, який надаватиме свій API для обміну даними.
Для цього перейдіть до файлу bp-auth/external-system.yml у регламенті та визначте конфігурацію:
Приклад 1. Конфігураційний файл для надання доступу до бізнес-процесів у цільовому реєстріauthorization: realm: 'external-system' process_definitions: - process_definition_id: 'my-process-id' process_name: 'Назва вашого бізнес-процесу' process_description: 'Опис вашого бізнес-процесу' roles: - 'trembita-invoker'
У цьому прикладі ми вказуємо, що доступ необхідно надати до бізнес-процесу
my-process-id
для роліtrembita-invoker
з Keycloak-реалму-external-system
. Параметриprocess_name
таprocess_description
є опціональними, і не впливають на процес авторизації.Клієнт trembita-invoker
з однойменною роллю створюється автоматично оператором Keycloak в реалмі-external-system
при розгортанні реєстру. Облікові дані цього клієнта необхідно використовувати для всіх зовнішніх систем, яким потрібен доступ до реєстру на Платформі. -
Налаштуйте файл bp-trembita/external-system.yml у регламенті:
-
Налаштуйте змінні старту бізнес-процесу. Для цього вкажіть, які параметри очікуватиме бізнес-процес у блоці
start_vars
.Без визначення start_vars
бізнес-процес не запрацює. -
Налаштуйте змінні повернення. Для цього вкажіть у блоці
return_vars
, які параметри повертатиме бізнес-процес.Приклад 2. Налаштування API-контракту для бізнес-процесуtrembita: process_definitions: - process_definition_id: 'my-process-id' start_vars: - eduname return_vars: - id - name
У цьому прикладі ми вказуємо, що для запуску бізнес-процесу
my-process-id
у цільовому реєстрі, необхідно передати стартові змінні. Без них ви не зможете ініціювати бізнес-процес. Тут ми передаємо параметрeduname
— умовне ім’я учня.Приклад, як прийняти змінні у цільовому процесі, див. у розділі нижче: Моделювання бізнес-процесу для виклику у цільовому реєстрі. -
Також налаштуйте змінні повернення. Тут ми налаштовуємо, що бізнес-процес повертатиме параметри
id
таname
. Вони будуть записані до змінної результату в Output Parameters цієї ж сервісної задачі з делегатом.
-
2. Налаштування моделі даних
Створіть модель даних реєстру. Додайте нові критерії пошуку, що надаватимуть доступ на читання даних БД через API-представлення реєстру.
Детальніше про налаштування моделі даних ви можете переглянути на сторінці Налаштування доступу до API-представлень реєстру. |
3. Моделювання бізнес-процесу для виклику у цільовому реєстрі
Змоделюйте бізнес-процес, до якого звертатимуться інші реєстри для отримання даних. Це може бути будь-який процес, передбачений бізнес-логікою вашого реєстру.
Для того, щоб запустити бізнес-процес у вашому реєстрі, вам необхідно прийняти надіслані стартові змінні, які очікуються. Це можна зробити за допомогою скрипт-задачі, як показано на прикладі. Зображення 1. Приймання стартових змінних процесу у цільовому реєстрі
|
Де можна знайти приклад референтного бізнес-процесу?Адміністратор Платформи може розгорнути для вас демо-реєстр — еталонний реєстр, що містить референтні та інші приклади файлів для створення цифрового регламенту. Він містить різноманітні елементи для розробки моделі даних, бізнес-процесів, UI-форм, аналітичної звітності, витягів, сповіщень, зовнішніх інтеграцій та багато іншого. Детальну інструкцію щодо розгортання демо-реєстру та отримання референтних прикладів моделювання ви знайдете на сторінці Розгортання демо-реєстру із референтними прикладами. Приклад BPMN-схеми процесу буде доступний у регламенті демо-реєстру за пошуком по ключовим словам — create-school-auto-sign. Назви форм ви можете знайти всередині відповідних користувацьких задач (User Task) бізнес-процесу у полі |