SurvivalHost API: различия между версиями

Материал из SurvivalHost Wiki
Перейти к навигации Перейти к поиску
Строка 25: Строка 25:
  [
  [
   {
   {
     "id": "1",
     "id": 1,
     "alias": "SH-VM10",
     "alias": "SH-VM10",
     "main_ip": "10.20.30.1",
     "main_ip": "10.20.30.1",
Строка 31: Строка 31:
   },
   },
   {
   {
     "id": "2",
     "id": 2,
     "alias": "SH-VM15",
     "alias": "SH-VM15",
     "main_ip": "10.20.30.2",
     "main_ip": "10.20.30.2",
Строка 45: Строка 45:
Пример ответа:  
Пример ответа:  
  {
  {
   "id": "1",
   "id": 1,
   "alias": "SH-VM10",
   "alias": "SH-VM10",
   "main_ip": "10.20.30.1",
   "main_ip": "10.20.30.1",
Строка 78: Строка 78:
  [
  [
   {
   {
     "id": "4",
     "id": 4,
     "name": "Windows Server 2019"
     "name": "Windows Server 2019"
   },
   },
   {
   {
     "id": "10",
     "id": 10,
     "name": "Ubuntu-18-Standard-KVM"
     "name": "Ubuntu-18-Standard-KVM"
   }
   }
Строка 89: Строка 89:
Возвращаемые ошибки:
Возвращаемые ошибки:
* HTTP 404 Machine not found.
* HTTP 404 Machine not found.
== Переустановка дистрибутива на машине ==
'''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.


{{nav foot}}
{{nav foot}}

Версия 20:00, 7 ноября 2023

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>/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 | К началу статьи