Документация
API группового управления и remote forwarding
Fleet token, список клиентов, обслуживание remote clients и Base64 forwarding путей RustMinerSystem.
API группового управления и remote forwarding
Fleet control позволяет одному экземпляру RustMinerSystem читать состояние других. Fleet API — credential с высокими правами, используйте его только между доверенными системами.
Fleet credential и clients
| Метод | Путь | Назначение |
|---|---|---|
| GET | /api/remote/token |
Получить локальный fleet API. |
| GET | /api/remote/refresh/token |
Обновить API; старое значение перестает работать. |
| GET | /api/remote/list |
Получить remote clients. |
| POST | /api/remote/new |
Добавить remote client. |
| POST | /api/remote/{id} |
Обновить remote client. |
| DELETE | /api/remote/{id} |
Удалить remote client. |
{
"name": "Hong Kong Proxy 01",
"endpoint": "https://proxy.example.com/safe-route",
"token": "<fleet API удаленного экземпляра>"
}
endpoint включает protocol, port и safe route. Завершающий / не требуется.
/api/remote/token и /api/remote/refresh/token возвращают fleet token прямой строкой; refresh изменяет credential. /api/remote/list возвращает RemoteClient[], а create/update/delete — Ok.
Поле RemoteClient |
Тип | Значение |
|---|---|---|
id |
string | Локальный ID записи для path parameters. |
name |
string | Отображаемое имя. |
endpoint |
string | Remote base URL вместе с safe route. |
token |
string | Remote fleet token; скрывайте его. |
time |
string | Время создания или изменения. |
Forwarding remote запроса
POST /api/remote/q/{id}/{m}/{p}
X-ACCESS-TOKEN: <Access Token>
Content-Type: application/json
| Параметр | Значение |
|---|---|
id |
ID записи remote client. |
m |
Режим; текущий frontend всегда использует 0. |
p |
API path без /api/, закодированный Base64. |
Для /api/ports закодируйте строку ports и поместите результат в {p}.
Текущий frontend читает через forwarding:
/api/ports
/api/stat/currency/{currency}
/api/device/stats
/api/currency/online/stat/{coin}
/api/sys/stat
/api/sys/base/info
/api/local/version
/api/sys/starttime
Внешний запрос всегда POST; read calls обычно отправляют пустой JSON. Ошибки дают статус клиента partial или offline.
HTTP 200 возвращает raw data remote endpoint без новой envelope:
| Remote path | Модель ответа |
|---|---|
/api/ports |
PortRecord[]. |
/api/stat/currency/{currency} |
ChartPoint[]. |
/api/device/stats |
DevicePoint[]. |
/api/currency/online/stat/{coin} |
CoinDevicePoint[]. |
/api/sys/stat |
SystemPoint[]. |
/api/sys/base/info |
Объект системной информации. |
/api/local/version |
{ version: string }. |
/api/sys/starttime |
Числовой timestamp. |
Создавайте {p} только из фиксированного allowlist. Base64 — encoding пути, а не access control.
Безопасность
- Храните и обновляйте fleet API отдельно от общего
X-ACCESS-TOKEN. - После rotation сразу обновите все управляющие экземпляры.
- Используйте HTTPS и ограничения source IP.
- Не позволяйте недоверенному пользователю управлять
{p}: это может расширить набор доступных remote APIs. - Скрывайте client
tokenи полные параметры forwarding из логов.
