Двусторонняя автоматизация через Rest API

Share

В этой статье мы расскажем о возможностях отправки запросов через API для любых задач, с которыми можно столкнуться в процессе работы.

В качестве примера мы выбрали кейс: добавление в систему Neaktor пользователей и контрактов через сторонний ресурс. Также рассмотрели какие изменения можно вносить удаленно и как такие запросы обрабатываются системе.

Для тестирования API запросов мы использовали приложение Postman.

В системе Neaktor мы создали два связанных процесса. Процесс “Пользователи” и процесс “Контракты”, в которые и  будем отправлять запросы.

1. Зарегистрировать нового пользователя

Чтобы заполнить форму, а значит и зарегистрировать нового пользователя, необходимо отправить API-запрос из Postman в Neaktor.

Для это потребуется создать новый запрос типа POST.

При создании любого запроса в Neaktor, важно добавить в заголовок (header) Authorization публичный ключ API из Neaktor.

Более подробная документация по API Neaktor представлена по ссылке: https://developers.neaktor.com/.

В графе path следует прописать https://api.neaktor.com/v1/tasks/{model_id}, где model_id является ID модели, в которой вы хотите создать задачу. В нашем случае это ID модели процесса “Пользователи”.

После этого действия можно прописывать body запроса. Аргумент assignee — это информация о пользователе системы, который будет являться исполнителем данной задачи. В аргумент fields необходимо прописать ID поля и его значение, которое мы хотим вставить в задачу. По итогу body запроса для заполнения формы “Пользователи”  выглядит вот так:

После отправки запроса приходит ответ с ID пользователя, то есть с ID задачи, которую мы только что создали.

Этот ID необходимо перенести в уже созданную задачу в Neaktor.

2. Создать контракт добавленному пользователю

По такому же принципу, через POST-запрос в Postman, отправляем запрос на создание нового контракта для этого пользователя.

Прописываем header и новый path. В body запроса необходимо прописать ID пользователя, которого мы успешно добавили, а также прописать сумму данного контракта. В нашем случае это 1700 BYN.

При добавлении ID пользователя, мы его связываем с текущим контрактом, чтобы информация о пользователе отражалась в заявке контракта.

После отправки запроса, получаем ответ на него с ID контракта или ID созданной задачи.

Переносим ID контракта в уже созданную задачу в Neaktor.

В задаче мы видим связку с процессом “Пользователи” — подтянулась карточка нового пользователя в блоке “связанные задачи”.

Ознакомиться с добавлением блока “связанные задачи” в Neaktor можно по этой ссылке: https://neaktor.com/support/related_tasks?utm_source=none&utm_medium=direct#

3. Отправить WebHook с информацией о создании нового контракта

В Neaktor также можно настроить WebHook через Albato (ссылка с примером: https://neaktor.com/blog/2020/04/16/neaktor-albato), и отправлять сообщения в Телеграмм с информацией о созданном контракте.

4. Создать платеж по контракту

Для того, чтобы создать платеж пользователя по данному контракту, необходимо создать PUT-запрос в Postman.

Мы также прописываем header, а для значения path необходимо вставить https://api.neaktor.com/v1/tasks/{task_id}, где {task_id} — ID контракта/задачи, которую мы должны редактировать.

В body запроса прописываем сумму, которая является взносом пользователя, у нас это 500 BYN.

При отправке данного запроса в системе Neaktor обновляются поля “Внесено пользователем, BYN” и “Оставшаяся задолженность пользователя, BYN”.

После отработки данного запроса, выполнится автодействие: пользователю на email придет письмо, а также отразится информация в комментариях данного контракта.

5. Как получить полную информацию о пользователе по его id?

Чтобы посмотреть всю информацию о нашем пользователе, необходимо создать GET-запрос в Postman. Как и прежде, мы заполняем header, а в графе path указываем https://api.neaktor.com/v1/tasks/{task_id}, где task_id — это ID пользователя или ID задачи.

После отправки запроса получаем следующий ответ:

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

Данной настройкой мы хотели продемонстрировать возможности интеграции Neaktor с другими ресурсами, а также простоту логики построения запросов.

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

;

Оставьте комментарий