---
title: "Referencia completa de la CLI para desarrolladores de Adapty"
description: "Referencia completa de todos los comandos de la CLI para desarrolladores de Adapty."
---

:::link
¿Usas un asistente de IA? Hay disponible una [skill de Adapty CLI](https://github.com/adaptyteam/adapty-cli/tree/main/skills/adapty-cli) para ayudar a los LLMs a trabajar con la CLI.
:::

Este artículo lista todos los comandos de la CLI de Adapty con sus argumentos, flags y valores aceptados.

:::link
Para configurar la autenticación y gestionar tokens, consulta [Autenticación](developer-cli-authentication).
:::

## Flags globales \{#global-flags\}

Estos flags están disponibles en todos los comandos.

| Flag | Descripción |
|---|---|
| `--json` | Mostrar la salida en JSON en lugar de texto formateado |
| `--help` | Mostrar la ayuda del comando |

Todos los comandos `list` también aceptan flags de paginación:

| Flag | Por defecto | Descripción |
|---|---|---|
| `--page` | `1` | Número de página |
| `--page-size` | `20` | Elementos por página (máx.: 100) |

## Apps \{#apps\}

Gestiona las apps de tu cuenta de Adapty. Para la configuración desde el dashboard, consulta [App settings](general).

### adapty apps list \{#adapty-apps-list\}

Lista todas las apps de tu cuenta de Adapty.

```bash
adapty apps list
```

Acepta [flags de paginación](#global-flags).

### adapty apps get \{#adapty-apps-get\}

Obtén los detalles de una app específica.

```bash
adapty apps get <app-id>
```

| Argumento | Descripción |
|---|---|
| `app-id` | ID de la app (UUID) |

### adapty apps create \{#adapty-apps-create\}

Crea una nueva app.

```bash
adapty apps create --title "My App" --platform ios --apple-bundle-id com.example.app
```

| Flag | Requerido | Descripción |
|---|---|---|
| `--title` | Sí | Título de la app |
| `--platform` | Sí | Plataforma: `ios` o `android`. Repite para ambas: `--platform ios --platform android` |
| `--apple-bundle-id` | Requerido con `--platform ios` | Bundle ID de Apple |
| `--google-bundle-id` | Requerido con `--platform android` | Bundle ID de Google |

### adapty apps update \{#adapty-apps-update\}

Actualiza una app existente.

```bash
adapty apps update <app-id> --title "New Name"
```

| Argumento | Descripción |
|---|---|
| `app-id` | ID de la app (UUID) |

| Flag | Descripción |
|---|---|
| `--title` | Nuevo título de la app |
| `--apple-bundle-id` | Nuevo bundle ID de Apple |
| `--google-bundle-id` | Nuevo bundle ID de Google |

Se requiere al menos un flag. `--platform` no se puede cambiar después de la creación.

## Niveles de acceso \{#access-levels\}

### adapty access-levels list \{#adapty-access-levels-list\}

Lista todos los [niveles de acceso](access-level) de una app.

```bash
adapty access-levels list --app <app-id>
```

| Flag | Requerido | Descripción |
|---|---|---|
| `--app` | Sí | ID de la app (UUID) |

Acepta [flags de paginación](#global-flags).

### adapty access-levels get \{#adapty-access-levels-get\}

Obtén los detalles de un [nivel de acceso](access-level) específico.

```bash
adapty access-levels get --app <app-id> <access-level-id>
```

| Argumento | Descripción |
|---|---|
| `access-level-id` | ID del nivel de acceso (UUID) |

| Flag | Requerido | Descripción |
|---|---|---|
| `--app` | Sí | ID de la app (UUID) |

### adapty access-levels create \{#adapty-access-levels-create\}

Crea un nuevo [nivel de acceso](access-level).

```bash
adapty access-levels create --app <app-id> --sdk-id "pro" --title "Pro"
```

| Flag | Requerido | Descripción |
|---|---|---|
| `--app` | Sí | ID de la app (UUID) |
| `--sdk-id` | Sí | Identificador utilizado en el código de la app para comprobar el acceso (por ejemplo, `"pro"` o `"premium"`) |
| `--title` | Sí | Etiqueta de visualización en el Adapty Dashboard |

### adapty access-levels update \{#adapty-access-levels-update\}

Actualiza un [nivel de acceso](access-level) existente.

```bash
adapty access-levels update --app <app-id> <access-level-id> --title "Pro Access"
```

| Argumento | Descripción |
|---|---|
| `access-level-id` | ID del nivel de acceso (UUID) |

| Flag | Requerido | Descripción |
|---|---|---|
| `--app` | Sí | ID de la app (UUID) |
| `--title` | Sí | Nueva etiqueta de visualización |

`--sdk-id` no se puede cambiar después de la creación.

## Productos \{#products\}

### adapty products list \{#adapty-products-list\}

Lista todos los [productos](product) de una app.

```bash
adapty products list --app <app-id>
```

| Flag | Requerido | Descripción |
|---|---|---|
| `--app` | Sí | ID de la app (UUID) |

Acepta [flags de paginación](#global-flags).

### adapty products get \{#adapty-products-get\}

Obtén los detalles de un [producto](product) específico.

```bash
adapty products get --app <app-id> <product-id>
```

| Argumento | Descripción |
|---|---|
| `product-id` | ID del producto (UUID) |

| Flag | Requerido | Descripción |
|---|---|---|
| `--app` | Sí | ID de la app (UUID) |

### adapty products create \{#adapty-products-create\}

Crea un nuevo [producto](product).

:::important
Los IDs de producto de la store (`--ios-product-id`, `--android-product-id`, `--android-base-plan-id`) no se pueden cambiar después de la creación. Para usar IDs de producto de la store distintos, crea un nuevo producto.
:::

```bash
adapty products create --app <app-id> --title "Monthly" --access-level-id <access-level-id> --period monthly --ios-product-id com.example.monthly
```

| Flag | Requerido | Descripción |
|---|---|---|
| `--app` | Sí | ID de la app (UUID) |
| `--title` | Sí | Título del producto |
| `--access-level-id` | Sí | ID (UUID) del [nivel de acceso](access-level) que desbloquea este producto |
| `--period` | Sí | Período de suscripción: `weekly`, `monthly`, `2_months`, `3_months`, `6_months`, `yearly`, `lifetime` |
| `--ios-product-id` | Se requiere al menos una plataforma | ID del producto en App Store Connect |
| `--android-product-id` | Se requiere al menos una plataforma | ID del producto en Google Play Console |
| `--android-base-plan-id` | Requerido con `--android-product-id` salvo que `--period lifetime` | ID del plan base en Google Play Console |

### adapty products update \{#adapty-products-update\}

Actualiza un [producto](product) existente.

Los IDs de producto de la store (`--ios-product-id`, `--android-product-id`) no se pueden cambiar después de la creación y no están disponibles en este comando. Para usar IDs de producto de la store distintos, crea un nuevo producto.

```bash
adapty products update --app <app-id> <product-id> --title "Monthly" --access-level-id <access-level-id>
```

| Argumento | Descripción |
|---|---|
| `product-id` | ID del producto (UUID) |

| Flag | Requerido | Descripción |
|---|---|---|
| `--app` | Sí | ID de la app (UUID) |
| `--title` | No | Título del producto |
| `--access-level-id` | No | ID (UUID) del [nivel de acceso](access-level) que desbloquea este producto |

## Paywalls \{#paywalls\}

### adapty paywalls list \{#adapty-paywalls-list\}

Lista todos los [paywalls](paywalls) de una app.

```bash
adapty paywalls list --app <app-id>
```

| Flag | Requerido | Descripción |
|---|---|---|
| `--app` | Sí | ID de la app (UUID) |

Acepta [flags de paginación](#global-flags).

### adapty paywalls get \{#adapty-paywalls-get\}

Obtén los detalles de un [paywall](paywalls) específico.

```bash
adapty paywalls get --app <app-id> <paywall-id>
```

| Argumento | Descripción |
|---|---|
| `paywall-id` | ID del paywall (UUID) |

| Flag | Requerido | Descripción |
|---|---|---|
| `--app` | Sí | ID de la app (UUID) |

### adapty paywalls create \{#adapty-paywalls-create\}

Crea un nuevo [paywall](paywalls).

```bash
adapty paywalls create --app <app-id> --title "Default Paywall" --product-id <product-id>
```

| Flag | Requerido | Descripción |
|---|---|---|
| `--app` | Sí | ID de la app (UUID) |
| `--title` | Sí | Título del paywall |
| `--product-id` | Sí | ID (UUID) del [producto](product). Repite para varios productos: `--product-id <id1> --product-id <id2>` |

### adapty paywalls update \{#adapty-paywalls-update\}

Reemplaza todos los campos de un [paywall](paywalls) existente.

:::important
Una vez que un paywall está vinculado a un placement, sus productos no se pueden cambiar. Para usar productos distintos en un paywall en producción, crea un nuevo paywall y actualiza el placement para que apunte a él.
:::

```bash
adapty paywalls update --app <app-id> <paywall-id> --title "Default Paywall" --product-id <product-id>
```

Este comando reemplaza todos los campos del paywall, incluida la lista completa de productos.

| Argumento | Descripción |
|---|---|
| `paywall-id` | ID del paywall (UUID) |

| Flag | Requerido | Descripción |
|---|---|---|
| `--app` | Sí | ID de la app (UUID) |
| `--title` | Sí | Título del paywall |
| `--product-id` | Sí | ID (UUID) del [producto](product). Repite para varios productos: `--product-id <id1> --product-id <id2>` |

### adapty paywalls placements \{#adapty-paywalls-placements\}

Lista todos los [placements](placements) que actualmente usan un [paywall](paywalls) determinado.

```bash
adapty paywalls placements --app <app-id> <paywall-id>
```

| Argumento | Descripción |
|---|---|
| `paywall-id` | ID del paywall (UUID) |

| Flag | Requerido | Descripción |
|---|---|---|
| `--app` | Sí | ID de la app (UUID) |

Usa este comando antes de reemplazar un paywall para ver qué placements se verían afectados.

## Placements \{#placements\}

### adapty placements list \{#adapty-placements-list\}

Lista todos los [placements](placements) de una app.

```bash
adapty placements list --app <app-id>
```

| Flag | Requerido | Descripción |
|---|---|---|
| `--app` | Sí | ID de la app (UUID) |

Acepta [flags de paginación](#global-flags).

### adapty placements get \{#adapty-placements-get\}

Obtén los detalles de un [placement](placements) específico.

```bash
adapty placements get --app <app-id> <placement-id>
```

| Argumento | Descripción |
|---|---|
| `placement-id` | ID del placement (UUID) |

| Flag | Requerido | Descripción |
|---|---|---|
| `--app` | Sí | ID de la app (UUID) |

La respuesta contiene un array `audiences`. Cada entrada es `{segment_ids, paywall_id, priority}`. La audiencia por defecto tiene `segment_ids: []` y el valor de prioridad más alto (se evalúa en último lugar). La salida formateada en texto también muestra un `Paywall ID` de nivel superior derivado de la audiencia por defecto, por comodidad. Con `--json` se devuelve la forma de la API sin modificar.

### adapty placements create \{#adapty-placements-create\}

Crea un nuevo [placement](placements).

```bash
adapty placements create --app <app-id> --title "Main" --developer-id "main" --audiences '[{"segment_ids":[],"paywall_id":"<paywall-id>","priority":0}]'
```

| Flag | Requerido | Descripción |
|---|---|---|
| `--app` | Sí | ID de la app (UUID) |
| `--title` | Sí | Título del placement |
| `--developer-id` | Sí | Identificador de cadena utilizado en el código de la app para solicitar este [placement](placements) |
| `--audiences` | Uno de los dos | Array JSON de entradas `{segment_ids, paywall_id, priority}`. Consulta [Forma de las audiencias](#audiences-shape) |
| `--paywall-id` | Uno de los dos | **Obsoleto.** ID (UUID) del [paywall](paywalls). Se convierte en el cliente en una única audiencia por defecto |

Pasa exactamente uno de `--audiences` o `--paywall-id`. Si se pasan ambos o ninguno, se produce un error.

:::warning
`--paywall-id` está obsoleto y se eliminará. Al usarlo, la CLI muestra una advertencia en stderr y convierte el valor en una audiencia por defecto. Para nuevas automatizaciones, usa `--audiences`.
:::

### adapty placements update \{#adapty-placements-update\}

Reemplaza todos los campos de un [placement](placements) existente.

```bash
adapty placements update --app <app-id> <placement-id> --title "Main" --developer-id "main" --audiences '[{"segment_ids":[],"paywall_id":"<paywall-id>","priority":0}]'
```

Este comando reemplaza todos los campos del placement, incluida la lista completa de audiencias.

| Argumento | Descripción |
|---|---|
| `placement-id` | ID del placement (UUID) |

| Flag | Requerido | Descripción |
|---|---|---|
| `--app` | Sí | ID de la app (UUID) |
| `--title` | Sí | Título del placement |
| `--developer-id` | Sí | Identificador de cadena utilizado en el código de la app para solicitar este [placement](placements) |
| `--audiences` | Uno de los dos | Array JSON de entradas `{segment_ids, paywall_id, priority}`. Consulta [Forma de las audiencias](#audiences-shape) |
| `--paywall-id` | Uno de los dos | **Obsoleto.** ID (UUID) del [paywall](paywalls). Reemplaza todas las audiencias con una única audiencia por defecto |

:::warning
Al usar `--paywall-id` se sobreescriben todas las audiencias del placement. Las audiencias específicas de segmento se eliminan. Para conservarlas, usa `--audiences` e incluye todas las entradas que quieras mantener.
:::

#### Forma de las audiencias \{#audiences-shape\}

El flag `--audiences` acepta un array JSON. Cada entrada tiene:

| Campo | Tipo | Descripción |
|---|---|---|
| `segment_ids` | `string[]` | IDs de [segmento](segments) a los que se dirige esta audiencia. Longitud 0 o 1. Un array vacío marca la **audiencia por defecto**: el fallback para usuarios que no coinciden con ningún otro segmento |
| `paywall_id` | `string` | ID (UUID) del [paywall](paywalls) que se muestra a los usuarios de esta audiencia |
| `priority` | `number` | Basado en 0, único dentro del placement. Las audiencias se evalúan de menor a mayor; la audiencia por defecto debe tener el valor más alto |

Un placement debe tener exactamente una audiencia por defecto.

Ejemplo con una audiencia segmentada y una por defecto:

```bash
adapty placements update <placement-id> --app <app-id> --title "Main" --developer-id "main" \
  --audiences '[{"segment_ids":["<vip-segment-id>"],"paywall_id":"<vip-paywall-id>","priority":0},{"segment_ids":[],"paywall_id":"<default-paywall-id>","priority":1}]'
```

Para reemplazar un paywall en varios placements sin perder el enrutamiento por segmento:

1. Encuentra los placements afectados:

   ```bash
   adapty paywalls placements --app <app-id> <old-paywall-id>
   ```

2. Para cada uno, lee el array completo de `audiences`:

   ```bash
   adapty placements get --app <app-id> <placement-id> --json
   ```

3. Reemplaza los valores de `paywall_id` correspondientes en el cliente.

4. Escribe el payload modificado:

   ```bash
   adapty placements update --app <app-id> <placement-id> --title "<title>" --developer-id "<developer-id>" --audiences '<modified-payload>'
   ```

## Segmentos \{#segments\}

Los [segmentos](segments) son de solo lectura a través de la CLI. Créalos y edítalos en el [Adapty dashboard](https://app.adapty.io). Usa estos comandos para buscar los IDs de segmento al componer audiencias de placements.

### adapty segments list \{#adapty-segments-list\}

Lista todos los [segmentos](segments) de una app.

```bash
adapty segments list --app <app-id>
```

| Flag | Requerido | Descripción |
|---|---|---|
| `--app` | Sí | ID de la app (UUID) |

Acepta [flags de paginación](#global-flags).

### adapty segments get \{#adapty-segments-get\}

Obtén los detalles de un [segmento](segments) específico.

```bash
adapty segments get --app <app-id> <segment-id>
```

| Argumento | Descripción |
|---|---|
| `segment-id` | ID del segmento (UUID) |

| Flag | Requerido | Descripción |
|---|---|---|
| `--app` | Sí | ID de la app (UUID) |

La respuesta contiene `id`, `title` y `description`. Las reglas de filtro no están expuestas a través de esta API.

## Auth \{#auth\}

| Comando | Descripción |
|---|---|
| `adapty auth login` | Autenticarse mediante el navegador usando el flujo de dispositivo |
| `adapty auth logout` | Borrar las credenciales almacenadas localmente |
| `adapty auth whoami` | Verificar el token con el servidor y mostrar información del usuario |
| `adapty auth status` | Mostrar el estado de autenticación local sin hacer una llamada al servidor |
| `adapty auth revoke` | Revocar el token en el servidor y borrarlo localmente |

Consulta [Autenticación](developer-cli-authentication) para ver todos los detalles de cada comando.