Документация
API dashboard, версий и системных настроек
Endpoints RustMinerSystem для валют, ресурсов, версий, срока хранения offline-записей, RMS, уведомлений, preset pools и KENC.
API dashboard, версий и системных настроек
Эти endpoints обслуживают dashboard, сведения о версии и основные системные настройки. Передавайте X-ACCESS-TOKEN: <Access Token> в каждом API-запросе.
Валюты и системная информация
| Метод | Путь | Назначение/параметры |
|---|---|---|
| GET | /api/currency/config |
Валюты, алгоритмы, icons и public visibility. |
| GET | /api/sys/base/info |
ОС, CPU, память и диски. |
| GET | /api/sys/stat |
История CPU, памяти и сетевого трафика. |
| GET | /api/device/stats |
История общего количества устройств. |
| GET | /api/currency/online/stat/{coin} |
История online-устройств одной монеты. |
| GET | /api/stat/currency/{currency} |
История хешрейта валюты. |
| POST | /api/config/refresh |
Обновить algorithm engine; не вызывайте часто. |
В {coin} и {currency} используются backend-коды, например BTC, KAS или код PoolNode.
Версия и состояние процесса
| Метод | Путь | Назначение |
|---|---|---|
| GET | /api/local/version |
Текущая версия. |
| GET | /api/version |
Remote version и конфигурация App Center. |
| GET | /api/releases |
История релизов. |
| GET | /api/sys/starttime |
Timestamp запуска. |
| GET | /api/mb/port |
Порт и состояние mobile access. |
| GET | /api/u/i |
UUID экземпляра. |
| POST | /api/failed/reset |
Сбросить флаг crash/startup failure. |
В разных версиях данные версии могут быть строкой или объектом с version; клиенту следует поддерживать оба формата.
Уведомления об offline
GET /api/warning/setting
POST /api/warning/setting
Frontend использует, среди прочего:
{
"is_off": 0,
"wr": 0,
"key": "<ServerChan key>",
"smtp_email": "[email protected]",
"smtp_secret": "<SMTP password или app secret>",
"smtp_endpoint": "smtp.example.com",
"smtp_port": 465,
"smtp_use_tls": 1
}
Backend может вернуть дополнительные поля, например порог падения хешрейта. Перед сохранением прочитайте объект и объедините изменения, чтобы не потерять новые настройки.
Срок хранения записей offline miners
Текущее значение находится в поле group_expire_secs ответа GET /api/sys/base/info и задается в секундах. Для изменения:
POST /api/group/offline/secs
Content-Type: application/json
{
"secs": 3600
}
secs — обязательное целое число. Минимальное эффективное значение — 600; меньшие значения сохраняются как 600 секунд. При успехе сервер возвращает HTTP 200 и текст Ok. Повторите /api/sys/base/info, чтобы получить нормализованное значение. Настройка меняет только срок хранения offline-записей и не отключает online miners.
Конфигурация RMS
GET /api/rms/config
POST /api/rms/config
{
"ports": {},
"code": "",
"mode": 0,
"title": "RMS",
"pool_mode": 0,
"notice": "",
"info": "",
"peers": {},
"host": "miner.example.com",
"protocol": 1
}
Если GET сообщает, что конфигурация не зарегистрирована, frontend создает ее с mode: 0, pool_mode: 0 и стандартным title. При сохранении он добавляет текущий host; protocol=1 означает HTTPS, 0 — HTTP. ports и peers являются объектами с портами в качестве ключей; вложенную структуру берите из текущего ответа.
Preset pools и wallets
| Метод | Путь | Назначение |
|---|---|---|
| GET | /api/local/pool/endpoint |
Получить preset pools, wallets и custom entries. |
| POST | /api/local/pool/endpoint |
Сохранить полный объект настроек. |
| GET | /api/pool/info/{id} |
Получить встроенные варианты pools; frontend использует id=1. |
POST заменяет полный объект. Для автоматизации сначала выполните GET и merge, чтобы сохранить customPool и customWallet.
Ключ KENC
| Метод | Путь | Назначение |
|---|---|---|
| GET | /api/kc/key |
Получить custom KENC key. |
| POST | /api/kc/key |
Сохранить custom KENC key. |
| POST | /api/kc/reset |
Восстановить стандартный KENC key. |
{
"k": "<custom key>"
}
Смена ключа может повлиять на подключенные clients. Сначала проверьте совпадение настроек клиента и сервера.
Ответ конфигурации валют
GET /api/currency/config возвращает объект с кодами валют в качестве ключей, а не массив. Поля каждого значения:
| Поле | Тип | Значение |
|---|---|---|
| ключ объекта | string | Идентификатор валюты для port и statistics requests. |
id |
number | ID записи валюты. |
name |
string | Код валюты. |
version |
string | Версия currency engine. |
category |
string | Категория алгоритма; копируется в запрос порта. |
rr / rl / rj |
number | Compatibility metadata; сохраняйте исходные значения. |
pow |
number | Proof-of-work metadata flag. |
is_pub |
number | 1 показывает запись в обычном UI. |
created_at / updated_at |
string | Timestamps записи. |
currency и category должны быть из одной записи. См. полные поля порта.
Ответы графиков
| Endpoint | Ответ |
|---|---|
/api/stat/currency/{currency} |
ChartPoint[]. |
/api/sys/stat |
SystemPoint[]. |
/api/device/stats |
DevicePoint[]. |
/api/currency/online/stat/{coin} |
CoinDevicePoint[]. |
ChartPoint, также используемый для port и worker charts, содержит s (время), s_h (effective hashrate), p_h (fee hashrate), f_h (failed hashrate), s_s (все shares), p_s (fee shares), f_s (failed shares) и d_l (задержка в миллисекундах). Числа могут быть null.
SystemPoint содержит id, cpu, mem, recv, trans, rk, time. recv и trans — traffic в байтах; rk — compatibility metadata.
DevicePoint содержит id, online, offline, time. CoinDevicePoint дополнительно содержит cr и rk, которые могут быть null.
Ответ системной информации
GET /api/sys/base/info возвращает:
| Поле | Тип | Значение |
|---|---|---|
os_version |
string | Версия ОС. |
load_avg |
string[] | Load average за 1, 5 и 15 минут. |
total_mem / used_mem |
number | Общая и использованная память. |
total_space / available_space / used_space |
number | Объемы диска. |
cpu_usage |
number | Текущая загрузка CPU. |
cpu_nums |
number | Число логических CPU. |
api_failed_flag |
number | Флаг сбоя программы; 1 требует внимания. |
group_expire_secs |
number | Срок хранения записи offline miner в секундах; UI обычно показывает минуты. |
rp / exp / t |
number | Runtime compatibility metadata; не изменяйте без определенного назначения. |
Ответы версии и runtime
| Endpoint | Успешный ответ |
|---|---|
/api/local/version |
{ "version": "x.y.z+build" }. |
/api/version |
Remote config как минимум с version, версиями clients, APP_INFO и PAY. |
/api/releases |
Массив в формате GitHub Release. |
/api/sys/starttime |
Числовой Unix timestamp в секундах или миллисекундах. |
/api/mb/port |
{ port: number, status: number }. |
/api/u/i |
Строка UUID экземпляра. |
/api/failed/reset |
HTTP 200 после изменения failure flag. |
/api/config/refresh |
HTTP 200 после принятия engine-refresh. |
Подтвержденные ключи /api/version: version, PoolNodeAndroidVersion, PoolNodeIosVersion, RustMinerSystemIOSVersion, RustMinerSystemAndroidVersion, RustMinerSystemCliVersion, RMS, APP_INFO, PAY.
APP_INFO.dialog содержит локализованные title и description; overview — локализованные eyebrow, title, description, counterLabel. В apps[] находятся key, локализованные name/title/tagline/description/status, icon, tone, features[], actions[], preview, platforms[]. Action содержит key, локализованный label, url, icon, target, rel; platform — key, локализованные label/status/description/stateLabel, icon, actions[]. Разрешайте дополнительные remote fields.
Ответы конфигурации
Уведомления
GET /api/warning/setting возвращает is_off, wr, key, smtp_email, smtp_secret, smtp_endpoint, smtp_port, smtp_use_tls. Последнее поле равно 1 для TLS и 0 без TLS. Скрывайте key и smtp_secret. POST сохраняет полный объект; после успеха повторите GET.
RMS
GET /api/rms/config возвращает:
| Поле | Тип | Значение |
|---|---|---|
url / url2 |
string | Основной и резервный RMS URL. |
code |
string | Pairing/access code, sensitive. |
mode / pool_mode |
number | Флаги режима RMS. |
ports |
object | Объект с listen ports в качестве ключей. |
peers |
object | Объект с peer ID в качестве ключей. |
title / notice / info |
string | Отображаемый content клиента. |
Каждый peers.* содержит coin, rk, cl, cs, upstream_peers[]; upstream содержит url, port, code, protocol. При сохранении frontend добавляет текущие host и protocol. Делайте deep merge ports и peers.
Preset pools и wallets
GET /api/local/pool/endpoint возвращает customPool[] и customWallet[]. Pool содержит address, coin, deal, name; wallet — address, name. Связывайте customPool[].coin с ответом валют.
GET /api/pool/info/{id} возвращает массив с id, category_id, brand, content, url, protocol, created_at. Используйте url как upstream, а protocol как connection mode.
KENC
GET /api/kc/key возвращает key прямой строкой. Save и reset KENC возвращают success scalar или HTTP 200. Не записывайте key в логи.
