SurvivalHost API

Материал из SurvivalHost Wiki
Версия от 20:14, 7 ноября 2023; Swidh (обсуждение | вклад) (→‎Работа с машинами)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к навигации Перейти к поиску

SurvivalHost API
<< SurvivalHost Wiki | К концу статьи

Основные параметры

[baseUrl]: Главный URL сервиса (https://panel-api.survivalhost.org)

<token>: Токен доступа к сервисам (выдается сервисом при подключении)

<machine_id>: Идентификатор машины

Доступ и авторизация

Authorization: Bearer <token>

Пример тестового токена: nv73MHPHw3!eEVzuHAlAhSZH/CenIgAN=/eccBIuK2AlwHF4aYSrsV3EZnMkmo-V

Работа с машинами

Просмотр данных всех машин

GET [baseUrl]/v1/machines

Пример запроса:

curl -H "Authorization: Bearer nv73MHPHw3!eEVzuHAlAhSZH/CenIgAN=/eccBIuK2AlwHF4aYSrsV3EZnMkmo-V" -X GET https://panel-api.survivalhost.org/v1/machines -k -v  

Пример ответа:

[
 {
   "id": 1,
   "alias": "SH-VM10",
   "main_ip": "10.20.30.1",
   "distributive": "Windows Server 2019"
 },
 {
   "id": 2,
   "alias": "SH-VM15",
   "main_ip": "10.20.30.2",
   "distributive": "Debian-9"
 }
]

Просмотр данных машины

GET [baseUrl]/v1/machines/<machine_id>

Пример запроса:

curl -H "Authorization: Bearer nv73MHPHw3!eEVzuHAlAhSZH/CenIgAN=/eccBIuK2AlwHF4aYSrsV3EZnMkmo-V" -X GET https://panel-api.survivalhost.org/v1/machines/1 -k -v  

Пример ответа:

{
 "id": 1,
 "alias": "SH-VM10",
 "main_ip": "10.20.30.1",
 "distributive": "Windows Server 2019"
}

Возвращаемые ошибки:

  • HTTP 404 Machine not found.

Query статус машины

GET [baseUrl]/v1/machines/<machine_id>/query

Пример запроса:

curl -H "Authorization: Bearer nv73MHPHw3!eEVzuHAlAhSZH/CenIgAN=/eccBIuK2AlwHF4aYSrsV3EZnMkmo-V" -X GET https://panel-api.survivalhost.org/v1/machines/1/query -k -v  

Пример ответа:

{
 "status": true,
 "query_status": 1
}

Возвращаемые ошибки:

  • HTTP 404 Machine not found.
  • HTTP 400 Machine do not support control.
  • HTTP 400 Failed to complete action.

Доступные дистрибутивы для машины

GET [baseUrl]/v1/machines/<machine_id>/os

Пример запроса:

curl -H "Authorization: Bearer nv73MHPHw3!eEVzuHAlAhSZH/CenIgAN=/eccBIuK2AlwHF4aYSrsV3EZnMkmo-V" -X GET https://panel-api.survivalhost.org/v1/machines/1/os-k -v  

Пример ответа:

[
 {
   "id": 4,
   "name": "Windows Server 2019"
 },
 {
   "id": 10,
   "name": "Ubuntu-18-Standard-KVM"
 }
]

Возвращаемые ошибки:

  • HTTP 404 Machine not found.

Запуск машины

POST [baseUrl]/v1/machines/<machine_id>/start

Пример запроса:

curl -H "Authorization: Bearer nv73MHPHw3!eEVzuHAlAhSZH/CenIgAN=/eccBIuK2AlwHF4aYSrsV3EZnMkmo-V" -X POST https://panel-api.survivalhost.org/v1/machines/1/start -k -v  

Пример ответа:

{
 "status": true
}

Возвращаемые ошибки:

  • HTTP 404 Machine not found.
  • HTTP 400 Machine do not support control.
  • HTTP 400 Failed to complete action.
  • HTTP 400 The machine rental service is suspended.

Остановка машины

POST [baseUrl]/v1/machines/<machine_id>/stop

Пример запроса:

curl -H "Authorization: Bearer nv73MHPHw3!eEVzuHAlAhSZH/CenIgAN=/eccBIuK2AlwHF4aYSrsV3EZnMkmo-V" -X POST https://panel-api.survivalhost.org/v1/machines/1/stop -k -v  

Пример ответа:

{
 "status": true
}

Возвращаемые ошибки:

  • HTTP 404 Machine not found.
  • HTTP 400 Machine do not support control.
  • HTTP 400 Failed to complete action.
  • HTTP 400 The machine rental service is suspended.

Перезапуск машины

POST [baseUrl]/v1/machines/<machine_id>/restart

Пример запроса:

curl -H "Authorization: Bearer nv73MHPHw3!eEVzuHAlAhSZH/CenIgAN=/eccBIuK2AlwHF4aYSrsV3EZnMkmo-V" -X POST https://panel-api.survivalhost.org/v1/machines/1/restart -k -v  

Пример ответа:

{
 "status": true
}

Возвращаемые ошибки:

  • HTTP 404 Machine not found.
  • HTTP 400 Machine do not support control.
  • HTTP 400 Failed to complete action.
  • HTTP 400 The machine rental service is suspended.

Переустановка дистрибутива на машине

POST [baseUrl]/v1/machines/<machine_id>/reinstall

Тело запроса:

{
  "os":4
}

Пример запроса:

curl -d '{"os":4}' -H "Content-Type: application/json" -H "Authorization: Bearer nv73MHPHw3!eEVzuHAlAhSZH/CenIgAN=/eccBIuK2AlwHF4aYSrsV3EZnMkmo-V" -X POST https://panel-api.survivalhost.org/v1/machines/1/reinstall -k -v  

Пример ответа:

{
 "status": true
}

Возвращаемые ошибки:

  • HTTP 404 Machine not found.
  • HTTP 400 Body must contain valid json.
  • HTTP 400 The os field is required.
  • HTTP 400 The os field must contain an integer.
  • HTTP 400 Machine do not support control.
  • HTTP 400 Failed to complete action.
  • HTTP 400 The machine rental service is suspended.



SurvivalHost API
<< SurvivalHost Wiki | К началу статьи