1
0
forked from BRT/arc
arc/docs/api/device.md
slava afbf3a3afb Add Ozon pay_to_new_number and pay_to_old_number XML assets
Included XML files for the "pay to new number" and "pay to old number" features in the Ozon platform.
2026-03-01 09:30:59 +07:00

112 lines
2.6 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Device & Desktop API
[← Главная](../index.md)
Управление десктопами (установками приложения) и устройствами (подключёнными Android телефонами).
---
## Desktop
Desktop — это одна установка ARCDeskProject. Каждый desktop содержит список устройств.
### GET `/api/v1/desktop/` 🔒
Получить все десктопы профиля.
### POST `/api/v1/desktop/` 🔒
Зарегистрировать новый десктоп.
**Тело запроса:**
```json
{
"blue_token": "string",
"name": "Мой компьютер",
"contact": "string",
"app_version": "1.0.0"
}
```
**Ответ** содержит `id` (UUID) и `unique_name`.
### PATCH `/api/v1/desktop/{desktop_id}` 🔒
Обновить данные десктопа (версию, session_time и т.д.).
---
## Device
Device — физическое Android-устройство, подключённое к десктопу через ADB.
### GET `/api/v1/device/{desktop_id}` 🔒
Получить все устройства десктопа.
### POST `/api/v1/device/` 🔒
Зарегистрировать новое устройство.
**Тело запроса:**
```json
{
"desktop_id": "uuid",
"status": "ONLINE",
"name": "Pixel 6",
"screen_width": 1080,
"screen_height": 2400,
"battery": 85
}
```
**`DeviceStatus`:** `"ONLINE"` | `"OFFLINE"`
**Ответ** содержит `id` (UUID) — сохраняется как `api_id` в таблице `devices`.
### PATCH `/api/v1/device/{device_id}` 🔒
Обновить статус, battery, update_time устройства.
```json
{
"status": "ONLINE",
"battery": 72,
"update_time": 1700000000
}
```
### POST `/api/v1/device/add_screenshot/{device_id}` 🔒
Загрузить скриншот экрана устройства.
**Тип запроса:** `multipart/form-data`
| Поле | Тип | Описание |
|------|-----|----------|
| `file` | binary | JPEG-скриншот |
**Ответ:**
```json
{
"success": true,
"data": {
"id": "uuid",
"device_id": "uuid",
"screenshot_url": "https://...",
"taken_at": "2024-01-01T12:00:00"
}
}
```
---
## Связь с кодом проекта
| API | Метод в коде |
|-----|-------------|
| `POST /api/v1/desktop/` | `NetworkService::loginAndSetup()` |
| `POST /api/v1/device/` | `NetworkService::createDevice()` |
| `PATCH /api/v1/device/{id}` | `NetworkService::updateDevice()` |
| `POST /api/v1/device/add_screenshot/{id}` | `NetworkService::postDeviceScreenshot()` |