# Get the Cloud mode offer

- **Method:** `GET`
- **Path:** `/v1/cloud-offer`
- **Operation ID:** `getCloudOffer`
- **Tags:** Account

Lists what the desktop app can render in Cloud mode: the voice models, the avatar engines and resolutions, the longest avatar audio, and the lip sync versions.

## Effective servers

- `https://api.vcp.name`

## Authentication

- **bearer**: HTTP bearer (`API key`)

  An API key from Settings, starting vcp\_live\_.

## Responses

### 200 OK.

**Content type:** `application/json`

schema: `CloudOffer`, no additional properties

- **`avatar_engines` (required)**: `array of string`

  Engines for avatar videos.
- **`avatar_max_seconds` (required)**: `integer`, minimum: `1`

  The longest avatar audio, in seconds.
- **`avatar_resolutions` (required)**: `array of string`

  Avatar video resolutions.
- **`lipsync_versions` (required)**: `array of string`

  Lip sync versions.
- **`tts_families` (required)**: `array of string`

  Models that speak text.

**Example:**

```json
{
  "tts_families": [
    "dramabox",
    "kokoro",
    "omnivoice",
    "qwen3-tts",
    "voxcpm"
  ],
  "avatar_engines": [
    "ltx-2.3",
    "ltx-2.5"
  ],
  "avatar_resolutions": [
    "480p",
    "720p",
    "1080p",
    "1440p",
    "2160p"
  ],
  "avatar_max_seconds": 20,
  "lipsync_versions": [
    "1.5",
    "1.6"
  ]
}
```

### 401, 429, 500, 503

- `401` The API key is missing, invalid or revoked.
- `429` Too many requests. Retry after the Retry-After header.
- `500` Something went wrong on our side.
- `503` Temporarily unavailable. Retry after the Retry-After header.

**Content type:** `application/json`

schema: `ErrorBody`, no additional properties

- **`error` (required)**: `object`, schema: `ErrorDetail`, no additional properties
  - **`code` (required)**: `string`

    A code from the error tables.
  - **`message` (required)**: `string`

    What went wrong.
  - **`param`**: `string`

    The request field at fault, when there is one.

**Example:**

```json
{
  "error": {
    "code": "invalid_request",
    "message": "text is required.",
    "param": "text"
  }
}
```

## Schemas

### ErrorBody

**Type:** `object`, no additional properties

*Schema `ErrorBody` is shown above.*

**Example:**

```json
{
  "error": {
    "code": "invalid_request",
    "message": "text is required.",
    "param": "text"
  }
}
```

- `ErrorDetail` — shown above.
- `CloudOffer` — shown above.
