# RUVDS API (legacy): Перезапустить или выключить сервер

Сценарий из mcp-everything. Актуально на 2026-10-24.

Управление серверами из своей панели или мониторинга.

1. Отправь команду: GET /api/server/command/ с id сервера и type — start, stop, shutdown (мягкое выключение), reset или recreate. Команды выполняются сразу, кроме асинхронного recreate.
2. Проверь состояние: GET /api/servers/ с id — поля state и running.
3. Если сервер не отвечает, посмотри экран: GET /api/server/image/ с width и height — в imageBase64 скриншот консоли (не чаще раза в 10 секунд).
4. Посуточная нагрузка процессора, дисков и трафик — GET /api/server/stat/.

```bash
curl -G https://ruvds.com/api/server/command/ -d sessionToken=$TOKEN -d id=38420 -d type=reset
curl -G https://ruvds.com/api/servers/ -d sessionToken=$TOKEN -d id=38420 -d fields=state,running,ip
```

## Базовые URL

- Боевой: `https://ruvds.com`

## Авторизация

Тип: Другое

Вызовите `/api/logon/` с персональным ключом API (`key` из настроек аккаунта), логином и паролем; полученный `sessionToken` передавайте параметром во всех последующих запросах. Токен храните только на своём сервере. Смена логина или пароля деактивирует все выданные токены.

```
https://ruvds.com/api/logon/?key=KEY&username=LOGIN&password=PASSWORD&endless=0
```

## Методы сценария

### GET /api/servers/ — Список серверов

В `items`: `cpu`, `ram`, `vram`, `drive`, `ip`, `tariff`, `paymentPeriod`, `state`, `running`, `paid`, `paidTill`, `stat`, `configurationChangeable` и др.

| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
| `sessionToken` | query | string | да | Сессионный токен |
| `id` | query | string | нет | ID серверов через запятую (рекомендуется указывать) |
| `fields` | query | string | нет | Какие поля вернуть; пусто — все |
| `userId` | query | string | нет | ID пользователя |

### GET /api/server/command/ — Команда серверу

Выполняется сразу (кроме асинхронного `recreate`).

| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
| `sessionToken` | query | string | да | Сессионный токен |
| `id` | query | integer | да | ID сервера |
| `type` | query | string | да | start, stop, shutdown, reset, new_password, recreate, remove |

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

```
https://ruvds.com/api/server/command/?sessionToken=YOURTOKEN&id=38420&type=start
```

### GET /api/server/stat/ — Статистика ресурсов

Посуточно: `cpu.avgLoad`, `drive` (`read`, `write`, `avgIOPS`), `traffic` (`inbound`, `outbound`).

| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
| `sessionToken` | query | string | да | Сессионный токен |
| `id` | query | integer | да | ID сервера (один) |

### GET /api/server/image/ — Скриншот экрана

`imageBase64` — null, если сервер не в состоянии 100 или не запущен.

| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
| `sessionToken` | query | string | да | Сессионный токен |
| `id` | query | integer | да | ID сервера |
| `width` | query | integer | да | 64–640 |
| `height` | query | integer | да | 48–480 |

## Нюансы

- Запросы GET или POST, параметры — в строке запроса; ответы — JSON.
- В каждом ответе `rejectReason` (`0` — успех) и `errMessage`; коды ошибок свои у каждого метода.
- Методы управления пользователями (`/api/user/...`) отключены и доступны только юрлицам с партнёрским договором.
- Для тестов документация советует SSD-серверы и минимум запросов.

## Другие сценарии

- [Создать VPS и дождаться готовности](https://mcp-everything.ru/integrations/ruvds/scenarios/sozdat-vps-i-dozhdatsya-gotovnosti.md)
- [Следить за балансом и оплатой серверов](https://mcp-everything.ru/integrations/ruvds/scenarios/sledit-za-balansom-i-oplatoy-serverov.md)

---

Если этого недостаточно — официальная документация: https://ruvds.com/en-rub/use_api
Вся интеграция одним документом: https://mcp-everything.ru/integrations/ruvds.md
