Castles:Защита серверов/API защиты серверов: различия между версиями

Материал из SurvivalHost Wiki
Перейти к навигации Перейти к поиску
Строка 102: Строка 102:


== Поддерживаемые игры ==
== Поддерживаемые игры ==
  '''GET [baseUrl]/[project]/games'''
  '''GET [baseUrl]/[project]/v2/games'''
Пример запроса: https://api.castles.pro/myhost/v2/games
 
Пример ответа:
  {
    "id": "7dtd",
    "name": "7 Days to Die",
    "main_port_id": "game"
  },
  {
    "id": "ark",
    "name": "ARK: Survival Evolved",
    "main_port_id": "game"
  },
  {
    "id": "arma3",
    "name": "Arma 3",
    "main_port_id": "game"
  },


== Перечень обслуживаемых подсетей ==
== Перечень обслуживаемых подсетей ==

Версия 20:42, 25 октября 2023

Castles Pro - API защиты серверов
<< Castles:Защита серверов | К концу статьи | Предыдущая глава: Поддерживаемые игры | Короткая ссылка

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

[baseUrl]: Главный URL сервиса (https://api.castles.pro)

[project]: Идентификатор проекта (выдается сервисом при подключении, например myhost)

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

<ip_address>: IP-адрес игрового сервера (например 10.10.10.5)

<main_port>: Главный порт игрового сервера (см. колонку "Основной (адресный) порт" в Поддерживаемые игры)

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

Authorization: Bearer <token>

Работа с игровыми серверами

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

GET [baseUrl]/[project]/v2/<ip_address>:<main_port>

Пример запроса: https://api.castles.pro/myhost/v2/10.10.10.5/27020

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

 "game": "ark",
 "ipAddress": "10.10.10.5",
 "enduser": "uid=123",
 "ports": {
   "query": "27015",
   "game": "27020",
   "rcon": "27100"
 },
 "protection": {
   "status": "online",
   "address": "10.10.10.5/27020",
   "additional": "query:27015, rcon:27100",
   "comment": "Защита игрового сервера"
 }


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

  • HTTP 400 Request must contain a valid IP.
  • HTTP 400 The port must be in the range 1-65535.
  • HTTP 404 Server not found.

Просмотр данных всех серверов на IP-адресе

GET [baseUrl]/[project]/<ip_address>

Пример запроса: https://api.castles.pro/myhost/v2/10.10.10.5

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

 {
   "game": "ark",
   "ipAddress": "10.10.10.5",
   "enduser": "uid=123",
   "ports": {
     "query": "27015",
     "game": "27020",
     "rcon": "27100"
   },
   "protection": {
     "status": "online",
     "address": "10.10.10.5/27020",
     "additional": "query:27015, rcon:27100",
     "comment": "Защита игрового сервера"
   }
 },
 {
   "game": "arma3",
   "ipAddress": "10.10.10.5",
   "enduser": "uid=123",
   "ports": {
     "game": "29020",
     "query": "29015",
     "rcon": "29100"
   },
   "protection": {
     "status": "deleted",
     "address": "10.10.10.5/29020",
     "additional": "query:29015, rcon:29100",
     "comment": "Защита игрового сервера"
   }
 }

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

  • HTTP 400 Request must contain a valid IP.

Добавление сервера под защиту

POST [baseUrl]/[project]/<ip_address>

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

{}

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

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

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


Удаление сервера из под защиты

DELETE [baseUrl]/[project]/<ip_address>:<main_port>

Справочники

Поддерживаемые игры

GET [baseUrl]/[project]/v2/games

Пример запроса: https://api.castles.pro/myhost/v2/games

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

 {
   "id": "7dtd",
   "name": "7 Days to Die",
   "main_port_id": "game"
 },
 {
   "id": "ark",
   "name": "ARK: Survival Evolved",
   "main_port_id": "game"
 },
 {
   "id": "arma3",
   "name": "Arma 3",
   "main_port_id": "game"
 },

Перечень обслуживаемых подсетей

GET [baseUrl]/[project]/network

<< Castles:Защита серверов | К началу статьи