# Установите приложение на облачный телефон.

Устанавливает приложение из библиотеки команды на облачный телефон.
- **Предварительные условия**: облачный телефон должен быть включён и не должен быть занят другим участником команды. Приложение уже должно существовать в библиотеке команды или в публичном каталоге; укажите его либо через `appVersionId`, либо через `packageName` вместе с `versionCode`. Оно также должно быть загружено Сервису, обслуживающему этот телефон, иначе установка не удастся.
- **Ограничение частоты**: не более одной установки на телефон в секунду; более быстрый повторный вызов отклоняется.
- **Завершение**: **принято, но не завершено.** Ответ лишь подтверждает, что запрос поставлен в очередь. Опрашивайте `/cloudphone/app/installedList`, чтобы увидеть, дошло ли приложение.
- **Повтор**: безопасен после проверки списка установленных, с учётом ограничения одного вызова в секунду.

Задокументированные бизнес-ошибки: `33005`, `33014`, `33714`. Значения кодов см. в [Error Codes](../Getting%20Started/error-codes.md). Любая операция может дополнительно вернуть общие коды.

Endpoint: POST /api/cloudphone/app/install
Version: 2026-09-05

## Request fields (application/json):

  - `appVersionId` (string)
    Идентификатор версии приложения

  - `id` (string, required)
    Идентификатор телефона в облаке

  - `packageName` (string)
    Название пакета — требуется только в том случае, если не указан appVersionId.

  - `versionCode` (integer)
    Код версии — требуется только в том случае, если не указан appVersionId.

## Response 200:

  - `200` (unknown)
    Успех. `data` — одно значение типа boolean.

## Response 200 fields (application/json):

  - `code` (integer)

  - `msg` (string | null)

  - `data` (boolean)

  - `requestId` (string)

