Внешние API-запросы
Общайтесь с любым API и интегрируйте любой сервис.
Внешние API-запросы позволяют определить шаблоны запросов и затем инициировать исходящие вызовы к любому API из бизнес-процессов. С их помощью вы можете подключить свой проект к любому стороннему сервису, даже если для него еще не существует модуля на рынке.
Определение
Обратитесь к спецификации того, как должен быть структурирован запрос, в документации API поставщика услуг, к которому вы хотите подключиться.
- Чтобы определить новый шаблон запроса, перейдите на вкладку "Бизнес-логика" на боковой панели (1), переключитесь на вкладку "Внешние API-запросы" (2) и нажмите "Новый API-запрос" (3).
2. Дайте новому запросу имя и, по желанию, описание.
3. Выберите HTTP-метод запроса и его URL.
4. Определите параметры URL, параметры запроса (только для GET-запросов), заголовки и тело запроса, введя имя параметра (1), его тип (2) и нажав кнопку "Добавить параметр" (3).
Фактическое значение этих параметров будет определено во время выполнения бизнес-процесса, в котором инициируется запрос.
Чтобы понять разницу между параметрами URL и параметрами запроса, читайте подробнее здесь. Независимо от стандартов, документация по API поставщика услуг, с которым вы хотите установить связь, является лучшим источником информации о том, как составить запрос.
Вы также можете автоматически заполнить заголовки и тело запроса, введя образец JSON, система создаст все необходимые параметры автоматически.
Вам не придется добавлять новые параметры на каждой вкладке. Некоторые запросы могут вообще не содержать параметров URL, заголовков или тела, например.
В случае, если запрос содержит объекты (например, автомобиль -> цвет, размер и т.д.), вам придется создать виртуальные модели для последующей обработки этих объектов в ваших бизнес-процессах. Для этого выберите "Модель" в селекторе типов параметров и введите дочерние элементы, которые вам понадобятся. Вы можете вложить объекты столько раз, сколько вам нужно (т.е. объект в объекте) и создать массивы виртуальных моделей. В случае, если вы использовали автозаполнение, этот процесс был выполнен автоматически.
5. Измените настройки запроса, такие как проверка SSL, тайм-аут и обработка ошибок на вкладке "Настройки".
6. Протестируйте запрос, нажав кнопку "Test Request" и введя все необходимые параметры. Проверьте ответ от сервера и автоматически заполните заголовки и тело ответа, либо сделайте это вручную.
7. Сохраните шаблон запроса, нажав "Сохранить запрос".
Использование
После того как вы определите и сохраните новый запрос, в редакторе бизнес-процессов станет доступен новый блок для его запуска.
Вы должны будете предоставить ему все компоненты, которые вы хотите добавить в запрос (URL и параметры запроса, заголовки и тело) в виде моделей данных, которые можно сделать с помощью этих блоков. На выходе вы сможете извлечь отформатированное тело ответа, его заголовки и статус ответа. Вы можете расширить эти модели с помощью этих блоков.
Чтобы запрос сработал правильно, необязательно подключать все входы данных. Например, если у вас есть запрос без параметров URL, вам не нужно создавать его модель и подключать ее.
Для каждой виртуальной модели, которую вы определили, в редактор бизнес-процессов будут добавлены 2 новых блока для ее создания и расширения.
Мониторинг
Каждый раз, когда вы запускаете API-запрос, система будет выводить в журналы его тип и адрес, тело запроса, код статуса HTTP и тело ответа. Вы можете выводить в журналы и другую информацию, например, определенные поля тела ответа или задержку, используя блок Write to Log.