REST API
RS сlient API
Предоставляет API для удалённого запуска пользовательских скриптов и вывода сообщений на рабочем столе.
Информация о модуле
Все информация о задачах сохраняется в локальной базе данных.
Лимиты
Максимальный размер скрипта — 10 КБ.
Время выполнения по умолчанию — 3600 с (можно уменьшить параметром timeout).
Запрос
Name |
In |
Type |
Description |
|---|---|---|---|
script |
body |
string |
Скрипт, закодированный в формате base64. |
timeout (Optional) |
body |
integer |
Максимальное время работы скрипта, с. |
Пример запроса:
SCRIPT_B64=$(base64 -w0 hello.py)
curl -X POST -H "Content-Type: application/json" \
-d "{\"script\":\"$SCRIPT_B64\",\"timeout\":120}" \
http://controller:9364/v1/actions/run-script | python -m json.tool
Ответ
Name |
In |
Type |
Description |
|---|---|---|---|
task_id (Optional) |
body |
string |
Идентификатор задачи. |
{
"task_id": "1f1cda8e5d8f4b15a0c4eabf104e1ce9"
}
Запрос
Name |
In |
Type |
Description |
|---|---|---|---|
task_id |
path |
string |
Идентификатор задачи. |
Пример запроса:
curl -X GET http://controller:9364/v1/actions/1f1cda8e5d8f4b15a0c4eabf104e1ce9 \
| python -m json.tool
Ответ
Name |
In |
Type |
Description |
|---|---|---|---|
task_id (Optional) |
body |
string |
Идентификатор задачи. |
status (Optional) |
body |
string |
Статус задачи (Running, Completed, Failed). |
stdout (Optional) |
body |
string |
Вывод скрипта в stdout. |
stderr (Optional) |
body |
string |
Вывод скрипта в stderr. |
return_code (Optional) |
body |
string |
Код возврата процесса. |
start_time (Optional) |
body |
string |
Время запуска задачи (UTC). |
end_time (Optional) |
body |
string |
Время завершения задачи (UTC). |
runtime (Optional) |
body |
number |
Длительность выполнения, с. |
{
"task_id": "1f1cda8e5d8f4b15a0c4eabf104e1ce9",
"status": "Completed",
"stdout": "Hello World\n",
"stderr": "",
"return_code": 0,
"start_time": "2025-05-26T12:00:00+00:00",
"end_time": "2025-05-26T12:00:01+00:00",
"runtime": 1.0
}
Запрос
Name |
In |
Type |
Description |
|---|---|---|---|
message |
body |
string |
Текст сообщения, закодированный в base64. |
Пример запроса:
MSG_B64=$(echo -n "Не забудьте сохранить работу" | base64 -w0)
curl -X POST -H "Content-Type: application/json" \
-d "{\"message\":\"$MSG_B64\"}" \
http://controller:9364/v1/actions/print-message | python -m json.tool
Ответ
Name |
In |
Type |
Description |
|---|---|---|---|
status (Optional) |
body |
string |
Статус ответа (success / error). |
{
"status": "success"
}