# Получение списка облачных профилей телефонов

Постранично выводит облачные телефоны, видимые аутентифицированной команде.
- **Эффект**: отсутствует. Только чтение. Повтор безопасен при ограниченной выдержке.
- **Примечание**: возвращаются телефоны всех Сервисов. Пароли платформенных и динамических прокси удаляются из ответа.
- **Применение**: этот эндпоинт и `/cloudphone/info` служат сигналами завершения асинхронных операций включения и выключения, смены устройства в один клик и подготовки телефона.

Endpoint: POST /api/cloudphone/page
Version: 2026-09-05

## Request fields (application/json):

  - `bindIp` (boolean)
    IP-адрес привязан: true = привязан, false = не привязан.
    Example: false

  - `keyword` (string)
    Ключевые слова для фильтрации: информация о прокси, имя группы, имя тега, имя среды.
    Example: CP-424

  - `pageNo` (integer)
    Текущая страница
    Example: 1

  - `pageSize` (integer)
    Количество элементов на странице
    Example: 100

  - `sort` (array)
    Поля с динамической сортировкой. В настоящее время для облачных телефонов поддерживается только поле "envName".
    Example: [{"sortDirection":"asc","sortField":"envName"}]

  - `sort.sortDirection` (string, required)
    Направление сортировки
    Enum: "asc", "desc"

  - `sort.sortField` (string, required)
    Поле для сортировки (в настоящее время поддерживается только поле "envName")
    Example: envName

## Response 200:

  - `200` (unknown)
    OK

## Response 200 fields (application/json):

  - `code` (integer, required)
    Возвращаемый код результата 0: Нормальный. Остальные коды являются исключениями.

  - `msg` (string | null, required)
    сообщение об ошибке

  - `data` (object, required)

  - `data.current` (string, required)

  - `data.dataList` (array, required)

  - `data.dataList.abnormalStatus` (integer)
    Аномальное состояние: 0 — Нет аномалий; 1 — Неактивировано; 2 — Срок действия контракта истек; 3 — Перепродано; 4 — Деактивировано.

  - `data.dataList.adbInfo` (object)
    Данные ADB доступны только когда телефон включён (envStatus >= 4); их нельзя запросить, когда он выключен или загружается

  - `data.dataList.adbInfo.adbIp` (string, required)
    IP для ADB

  - `data.dataList.adbInfo.adbPassword` (string, required)
    пароль подключения adb

  - `data.dataList.adbInfo.adbPort` (string, required)
    порт adb

  - `data.dataList.adbInfo.command` (string | null)
    Команда подключения по ADB через SSH-туннель

  - `data.dataList.adbInfo.expireTime` (string | null)
    Срок действия ADB-подключения

  - `data.dataList.adbInfo.remark` (string, required)
    Информация о сбоях

  - `data.dataList.adbInfo.success` (integer, required)
    Успешно получено: 1 = Да, 0 = Нет

  - `data.dataList.billingType` (integer)
    Оплата: 0 — бесплатно, 1 — гибкая подписка, 2 — ежемесячно.

  - `data.dataList.createDate` (string)
    Время создания

  - `data.dataList.createMember` (integer)
    Идентификатор участника-создателя

  - `data.dataList.createMemberName` (string)
    Имя участника-создателя

  - `data.dataList.enableAdb` (boolean)
    Включать ли ADB

  - `data.dataList.envName` (string)
    Название облачного телефона

  - `data.dataList.envRemark` (string)
    Примечания к биографии

  - `data.dataList.envStatus` (integer)
    Статус профиля: 0 — Новый 1 — Создание не удалось 2 — Остановка 3 — Запуск 4 — Запуск 5 — Выполняется сброс

  - `data.dataList.expireTime` (string)
    время истечения срока действия

  - `data.dataList.groupId` (string)
    Идентификатор группы

  - `data.dataList.groupName` (string | null)
    Название группы. Null, если облачный телефон не входит ни в одну группу

  - `data.dataList.id` (string)
    ID облачного телефона

  - `data.dataList.androidId` (string)
    android id облачного телефона

  - `data.dataList.gaid` (string)
    gaid облачного телефона

  - `data.dataList.lastConnectDate` (string)
    Время последнего подключения

  - `data.dataList.lastConnectMemberId` (string)
    Идентификатор участника последнего подключения

  - `data.dataList.lastConnectMemberName` (string)
    Имя участника последнего подключения

  - `data.dataList.lastStartDate` (string)
    Время последнего запуска

  - `data.dataList.lastStartMemberId` (string)
    Идентификатор участника последнего запуска

  - `data.dataList.lastStartMemberName` (string)
    Имя участника последнего запуска

  - `data.dataList.proxy` (object)

  - `data.dataList.proxy.country` (string, required)
    Страна

  - `data.dataList.proxy.countryCode` (string, required)
    Код страны

  - `data.dataList.proxy.createDate` (string, required)
    Время создания

  - `data.dataList.proxy.delFlag` (integer, required)
    1 - удалено 2 - не удалено

  - `data.dataList.proxy.expiryTime` (string, required)
    Время истечения

  - `data.dataList.proxy.exportIp` (string, required)
    Исходящий IP-адрес

  - `data.dataList.proxy.groupId` (string, required)
    Идентификатор группы

  - `data.dataList.proxy.id` (string, required)
    ID

  - `data.dataList.proxy.providerCode` (string, required)
    Код сервиса

  - `data.dataList.proxy.proxyAreaCode` (string, required)
    Код зоны местоположения прокси

  - `data.dataList.proxy.proxyCatagoryType` (integer, required)
    Тип прокси: 0: группа сайтов 1: облачная платформа 2: собственный IP-адрес 3: VPS 4: виртуальная машина

  - `data.dataList.proxy.proxyCheckStatus` (integer, required)
    Статус обнаружения: 0: ожидание обнаружения 1: успешное обнаружение 2: сбой обнаружения 3: неизвестная ошибка

  - `data.dataList.proxy.proxyInfo` (string, required)
    Строка с данными прокси

  - `data.dataList.proxy.state` (string | null)
    Штат или область прокси. Приоритет у определённого местоположения выходного IP, затем используется настроенное; возможны null или пустая строка.
    Example: California

  - `data.dataList.proxy.city` (string | null)
    Город прокси. Приоритет у определённого местоположения выходного IP, затем используется настроенное; возможны null или пустая строка.
    Example: Los Angeles

  - `data.dataList.proxy.proxyIp` (string, required)
    IP-адрес прокси-сервера

  - `data.dataList.proxy.proxyName` (string, required)
    Название конфигурации прокси

  - `data.dataList.proxy.proxyPort` (integer | null, required)
    Порт подключения к прокси; не определяется по имени прокси. Может быть null, если недоступен.
    Example: 1080

  - `data.dataList.proxy.proxyRegionCode` (string, required)
    Код региона местоположения прокси

  - `data.dataList.proxy.proxyStatus` (integer, required)
    0 — Нормальный 1 — Ожидающее выделение 2 — Обновление 3 — Истек срок действия

  - `data.dataList.proxy.proxySub` (object, required)

  - `data.dataList.proxy.proxySub.activeRecordId` (string, required)
    ID активной записи подписки

  - `data.dataList.proxy.proxySub.businessId` (string, required)
    Бизнес-ID сервиса прокси

  - `data.dataList.proxy.proxySub.createMember` (integer, required)
    Идентификатор участника-создателя

  - `data.dataList.proxy.proxySub.endTime` (string, required)
    Время окончания

  - `data.dataList.proxy.proxySub.id` (string, required)
    ID подписки

  - `data.dataList.proxy.proxySub.nextBillingTime` (string, required)
    Время следующего списания или платежа

  - `data.dataList.proxy.proxySub.startTime` (string, required)
    Начало срока действия

  - `data.dataList.proxy.proxySub.subPayMethod` (string, required)
    Способ оплаты подписки

  - `data.dataList.proxy.proxySub.subStatus` (integer, required)
    Статус подписки: 0 — Ожидает подтверждения, 1 — Подписано, 2 — Отменено.

  - `data.dataList.proxy.proxySub.subType` (integer, required)
    Тип подписки: 1 агент, 2 пакета.

  - `data.dataList.proxy.proxySub.teamId` (string, required)
    ID команды

  - `data.dataList.proxy.proxyType` (integer, required)
    Тип прокси: 0-http 1-https 2-socks5 4-Oxylabs 5-Proxys.io 6-GeoSurf 9-Oxylabsauto 10-Trogan 11-Shadowsocks 12-vmess

  - `data.dataList.proxy.proxyTypeCode` (string, required)
    Код типа протокола прокси

  - `data.dataList.proxy.regionKey` (string, required)
    Ключ региона облачной платформы

  - `data.dataList.proxy.releaseTime` (string, required)
    Время выпуска: время удаления (если удалено), время истечения срока действия (если истекло).

  - `data.dataList.proxy.uniqueId` (integer, required)
    ID порядка отображения

  - `data.dataList.proxyStatus` (integer)
    Статус прокси: 0 — Не обнаружено; 1 — Обнаружение идёт; 2 — Обнаружение не удалось; 3 — Обнаружение успешно.

  - `data.dataList.supportAdb` (boolean)
    Поддерживается ли ADB: 0 = нет, 1 = да

  - `data.dataList.tagInfos` (array)
    Сведения о тегах. Пустой массив, если теги не назначены

  - `data.dataList.tagInfos.id` (string, required)
    Идентификатор тега

  - `data.dataList.tagInfos.tagName` (string, required)
    Название тега

  - `data.dataList.updateDate` (string)
    Время обновления

  - `data.dataList.updateMember` (integer)
    Идентификатор участника, выполнившего обновление

  - `data.pages` (string, required)

  - `data.total` (string, required)

  - `requestId` (string, required)
    Идентификатор запроса на операцию

