Перейти к основному содержимому
Version: 2.0

Команды API

Здесь содержится справочная информация по командам API панели управления

Авторизация и аутентификация для доступа к API панели управления

Команды API панели управления доступны только авторизованным пользователям. Неавторизованным пользователям требуется пройти процедуру авторизации. Далее, после авторизации в системе, для доступа к API используется аутентификация с помощью токена доступа. Для получения токена доступа необходимо выполнить следующее:

В профиле пользователя, в разделе Ключи доступа, получить идентификатор и секрет клиента. Они будут использоваться далее при создании запроса.

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

POST /console/sys/token
Content-Type: application/x-www-form-urlencoded
Authorization: Basic <ClientId:ClientSecret в кодировке Base64>
grant_type=CLIENT_CREDENTIALS

Например, для HTTP-запроса:

POST /console/sys/token HTTP/1.1
Host: localhost:9090
Content-Type: application/x-www-form-urlencoded
Authorization: Basic dlFCRm05WkNjVmZhV2ZPZnZQTnVua1pncG9jcElBMXhmTW5sbmlwNmR1az06dTNUUFlTMVplRV9TVFJJeFQ4VDh6R3NQYnVRcXFJbDlRbUhDdlJUOXd5cz0=
Content-Length: 29

grant_type=client_credentials

так будет выглядеть ответ в формате JSON с токеном и информацией о нем:

{
"id_token": "eyJhbGciOiJSUzUxMiJ9.eyJpc3MiOiI3R0xnMmV0WkZzOG4wOXg1N1pyamlieTdRSEE4c25LLVl4OXJ2eFVoMnVnPSIsInN1YiI6IntcclxuICBcInVzZXItaWRcIiA6IFwiMjVkMjc1N2QtZWQ2Yi00OGFlLTlhYmYtYTU2M2QwMDA1MmFlXCIsXHJcbiAgXCJ1c2VyLWxpc3QtaWRcIiA6IFwiNDExYzVjYTAtOWFkMy00Y2RiLTgzZmUtMDZhMGYyMGNiNWIyXCIsXHJcbiAgXCJ1c2VyLXByZXNlbnRhdGlvblwiIDogXCJhZG1pblwiLFxyXG4gIFwiYXV0aC1pZGVudGl0eVwiIDoge1xyXG4gICAgXCJuYW1lXCIgOiBcInZRQkZtOVpDY1ZmYVdmT2Z2UE51bmtaZ3BvY3BJQTF4Zk1ubG5pcDZkdWs9XCIsXHJcbiAgICBcImRvbWFpblwiIDogXCJ1c2VyX3Rva2Vuc1wiXHJcbiAgfVxyXG59IiwiYXVkIjoidlFCRm05WkNjVmZhV2ZPZnZQTnVua1pncG9jcElBMXhmTW5sbmlwNmR1az0iLCJpYXQiOjE3MTA0MjI3NzMsImV4cCI6MTcxMDQyNjM3MywiYXRfaGFzaCI6IkFjY2Vzc1Rva2VuIGhhc2ggKG5vdCBpbXBsZW1lbnRlZCkifQ.NqLg2JfHuwcHVfjg4ePJGmIhKDDX5wEfduuO5maJoFmI3YGBk4oBbfC6iukKLY1CPUcsiLS0suU-2vaNvfBQt4ePE4l57uED1j7UKVj5ih2NHDuaHBBYDZQjXWC-0FyArC3jHcE7MjLAOqkymWIn0xtHOjLNNct1XdXfHoeZfBU",
"token_type": "Bearer",
"access_token": "Not implemented"
}

Далее, полученный токен будет использоваться для получения доступа к API. Тип авторизации: Bearer (Bearer Token).

Токен действителен в течение часа. Таким образом, можно сделать сразу несколько вызовов (возможно разных команд API), используя уже полученный токен, а не получая его заново.

Если токен устарел, то при вызове API вернется ответ с кодом 401. Это значит, что нужно снова запросить токен аутентификации.

Пример

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

Выполните запрос с методом GET по адресу http://localhost:9090/console/api/v2/applications. При необходимости скопируйте и вставьте полученный ранее токен, а также указанный выше тип авторизации.

Таким образом, для вашего HTTP-запроса:

GET /console/api/v2/applications HTTP/1.1
Host: localhost:9090
Authorization: Bearer eyJhbGciOiJSUzUxMiJ9.eyJpc3MiOiI3R0xnMmV0WkZzOG4wOXg1N1pyamlieTdRSEE4c25LLVl4OXJ2eFVoMnVnPSIsInN1YiI6IntcclxuICBcInVzZXItaWRcIiA6IFwiMjVkMjc1N2QtZWQ2Yi00OGFlLTlhYmYtYTU2M2QwMDA1MmFlXCIsXHJcbiAgXCJ1c2VyLWxpc3QtaWRcIiA6IFwiNDExYzVjYTAtOWFkMy00Y2RiLTgzZmUtMDZhMGYyMGNiNWIyXCIsXHJcbiAgXCJ1c2VyLXByZXNlbnRhdGlvblwiIDogXCJhZG1pblwiLFxyXG4gIFwiYXV0aC1pZGVudGl0eVwiIDoge1xyXG4gICAgXCJuYW1lXCIgOiBcInZRQkZtOVpDY1ZmYVdmT2Z2UE51bmtaZ3BvY3BJQTF4Zk1ubG5pcDZkdWs9XCIsXHJcbiAgICBcImRvbWFpblwiIDogXCJ1c2VyX3Rva2Vuc1wiXHJcbiAgfVxyXG59IiwiYXVkIjoidlFCRm05WkNjVmZhV2ZPZnZQTnVua1pncG9jcElBMXhmTW5sbmlwNmR1az0iLCJpYXQiOjE3MTA0Mzg1NjIsImV4cCI6MTcxMDQ0MjE2MiwiYXRfaGFzaCI6IkFjY2Vzc1Rva2VuIGhhc2ggKG5vdCBpbXBsZW1lbnRlZCkifQ.VQOJf59w8wQejc1cUBJWh5DDS8P6KDcbihbANEGkzcu_gDOkau4FOwu2YIBB8ddNfdsxnEivANqr1R26hgL_RcKn28jezAYQ6gy3IyM2TMsPW5APixD4Q6n4YJkWCYGLR8gvJ_xvQUepX7LtGjAs9sE5eTJ150jSgGBbCRZHjBY

ответ будет выглядеть следующим образом:

[
{
"display-name": "DemoCRM-dev",
"user-lists": [
"dbc195ed-3b80-4717-85d4-91dc60f406c5",
"411c5ca0-9ad3-4cdb-83fe-06a0f20cb5b2"
],
"current-task": null,
"description": "",
"project": {
"id": "1eeb5447-c4f8-635e-b776-199d8903fded"
},
"endpoint": null,
"source": {
"project-version-id": "1eeb5447-c51f-6466-b776-199d8903fded",
"project-name": "DemoCRM",
"type": "image",
"image-id": "1eeb5447-c4f8-635e-b776-199d8903fded",
"project-version": "1.0"
},
"error": null,
"uri": "http://127.0.0.1:9090/applications/DemoCRM-dev",
"space-id": "1eeb5437-b8d7-655d-b776-199d8903fded",
"date-created": "2024-01-17T14:27:04.383Z",
"technology-version": "5.0.1-20240117.33032-636",
"name": "DemoCRM-dev",
"default-user-list": "dbc195ed-3b80-4717-85d4-91dc60f406c5",
"development-mode": true,
"debugging": true,
"autostarting-scheduled-jobs": true,
"id": "1eeb5447-c5bb-6867-b776-199d8903fded",
"autostarting-esb": false,
"status": "Running"
}
]

Как видно из примера выше, полученный ранее токен был успешно использован для аутентификации пользователя и получения доступа к API панели управления.

Authentication

Security Scheme Type:

http

HTTP Authorization Scheme:

bearer