---
title: "Команды Flows"
description: "Команды Adapty CLI для создания флоу, чтения и записи конфигураций builder, валидации и предпросмотра, загрузки медиафайлов и публикации."
---

> **AI agents**: to search Adapty docs faster and with fewer tokens, install the Adapty skills: `npx adapty skills install --yes`

[Флоу](adapty-flow-builder) — это пейволы и онбординги, которые вы создаёте во Flow & Paywall Builder. CLI управляет записью флоу, конфигом билдера и публикацией. Конфиг билдера — это объёмный JSON-документ, который обычно генерирует Flow & Paywall Builder; CLI сам его не создаёт. Чтобы создать или отредактировать конфиг в терминале, используйте [скилл flow-generator](flow-generator-skill), который выполняет эти команды за вас. Перед публикацией [скилл flow-audit](flow-audit-skill) проверяет, готов ли флоу к продакшену. Ниже приведён справочник команд.

## adapty flows list \{#adapty-flows-list\}

Показывает список всех флоу для приложения.

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

| Флаг | Обязательный | Описание |
|---|---|---|
| `--app` | Да | ID приложения (UUID) |

Принимает [флаги пагинации](developer-cli-reference#global-flags).

## adapty flows get

Получить подробную информацию о конкретном флоу.

```bash
adapty flows get --app <app-id> <flow-id>
```

| Аргумент | Описание |
|---|---|
| `flow-id` | ID флоу (UUID) |

| Флаг | Обязательный | Описание |
|---|---|---|
| `--app` | Да | ID приложения (UUID) |

Ответ содержит `id`, `name`, `status` и `updated_at`. Возможные значения статуса:

| Статус | Значение |
|---|---|
| `draft` | Флоу ещё ни разу не публиковался |
| `published` | Текущая версия активна |
| `dirty` | Флоу публиковался ранее, и текущая версия содержит неопубликованные изменения. Пользователи видят последнюю опубликованную версию |
| `publishing` | Публикация выполняется |
| `publication_failed` | Последняя публикация завершилась с ошибкой. Исправьте конфигурацию и опубликуйте снова |
| `archived` | Флоу заархивирован |

## adapty flows create

Создать флоу. Новый флоу имеет название, но не имеет конфигурации. Чтобы добавить конфигурацию, используйте [`flows config update`](#adapty-flows-config-update).

```bash
adapty flows create --app <app-id> --name "Onboarding"
```

| Флаг | Обязателен | Описание |
|---|---|---|
| `--app` | Да | ID приложения (UUID) |
| `--name` | Да | Название флоу |

## adapty flows update

Переименовать флоу.

```bash
adapty flows update --app <app-id> <flow-id> --name "Onboarding v2"
```

| Argument | Description |
|---|---|
| `flow-id` | Flow ID (UUID) |

| Flag | Required | Description |
|---|---|---|
| `--app` | Yes | App ID (UUID) |
| `--name` | Yes | Новое имя флоу |

## adapty flows publish

Опубликовать текущую версию флоу для ваших пользователей.

```bash
adapty flows publish --app <app-id> <flow-id>
```

| Аргумент | Описание |
|---|---|
| `flow-id` | ID флоу (UUID) |

| Флаг | Обязательный | Описание |
|---|---|---|
| `--app` | Да | ID приложения (UUID) |
| `--yes`, `-y` | Нет | Опубликовать без запроса подтверждения. Обязателен, если вывод передаётся по пайпу или используется `--json` |

Поскольку публикация меняет то, что видят пользователи, команда выводит имя флоу и запрашивает подтверждение. Любой ответ, кроме `y`, отменяет команду с кодом выхода 1. При использовании флага `--json` или в пайпе команда отказывается выполняться с кодом выхода 2 вместо ожидания ответа, поэтому в скриптах и агентских сессиях передавайте `--yes`.

Публикация выполняется асинхронно: в ответе возвращается `status: publishing`, и флоу ещё не активен. Опрашивайте [`flows get`](#adapty-flows-get) до тех пор, пока статус не станет `published` или `publication_failed`. При `publication_failed` причину можно узнать через [`flows config get`](#adapty-flows-config-get).

Публикация завершается с HTTP 400, если у флоу нет конфига, конфиг не готов к публикации или текущая версия уже активна. Чтобы проверить конфиг перед публикацией, используйте [`flows config validate`](#adapty-flows-config-validate).

## adapty flows config get

Получить конфигурацию конструктора для флоу.

```bash
adapty flows config get --app <app-id> <flow-id>
```

| Аргумент | Описание |
|---|---|
| `flow-id` | ID флоу (UUID) |

| Флаг | Обязательный | Описание |
|---|---|---|
| `--app` | Да | ID приложения (UUID) |

Ответ содержит поля `config`, `remote_configs`, `status` и `updated_at`. `updated_at` — это метка времени в миллисекундах, соответствующая последнему изменению конфига. Передайте её в [`flows config update`](#adapty-flows-config-update) через `--expected-updated-at`, чтобы не затереть параллельно сделанные правки. Если конфиг флоу ни разу не записывался, возвращается 404.

После попытки публикации ответ также содержит три поля, описывающие её результат. Читайте их, когда [`flows get`](#adapty-flows-get) возвращает `publication_failed`:

| Поле | Описание |
|---|---|
| `publication_status` | Статус публикации данной версии флоу: `transforming`, `transformed`, `uploading`, `uploaded`, `published` или `failed` |
| `transform_error` | Необработанная ошибка трансформации — либо JSON-пейлоад с описанием проблем, либо строка с кратким описанием |
| `publication_error` | Понятное сообщение об ошибке публикации |

## adapty flows config update

Записывает конфигурацию билдера для флоу.

```bash
adapty flows config update --app <app-id> <flow-id> --config-file config.json
```

| Аргумент | Описание |
|---|---|
| `flow-id` | ID флоу (UUID) |

| Флаг | Обязательный | Описание |
|---|---|---|
| `--app` | Да | ID приложения (UUID) |
| `--config` | Один из двух | Конфиг Builder в виде JSON-строки |
| `--config-file` | Один из двух | Путь к JSON-файлу с конфигом Builder или `-` для чтения из stdin |
| `--remote-configs` | Нет | JSON-массив записей `{locale, data}`, где `data` — Remote Config в виде строки |
| `--expected-updated-at` | Нет | Значение `updated_at` из предыдущего вызова `flows config get`. Если конфиг изменился после этого чтения, команда завершится с ошибкой вместо перезаписи изменений. Опустите параметр, чтобы перезаписать безусловно |

Сохранение конфига создаёт черновик, но не публикует его. Для опубликованного флоу запись создаёт новую версию: статус флоу становится `dirty`, и пользователи видят опубликованную версию до тех пор, пока вы не выполните [`flows publish`](#adapty-flows-publish).

## adapty flows config validate

Проверяет, готова ли конфигурация билдера к публикации, без её сохранения.

```bash
adapty flows config validate --app <app-id> <flow-id> --config-file config.json
```

| Аргумент | Описание |
|---|---|
| `flow-id` | ID флоу (UUID) |

| Флаг | Обязателен | Описание |
|---|---|---|
| `--app` | Да | ID приложения (UUID) |
| `--config` | Один из двух | Конфигурация билдера в виде JSON-строки |
| `--config-file` | Один из двух | Путь к JSON-файлу с конфигурацией билдера или `-` для чтения из stdin |

Ответ содержит `valid` и список `issues`. Если конфиг нельзя опубликовать, команда завершается с кодом 1, что позволяет использовать это в скриптах.

## adapty flows config preview \{#adapty-flows-config-preview\}

Отображает локальный файл конфигурации в браузере. Эта команда не обращается к API и не принимает флаг `--app`.

```bash
adapty flows config preview ./config.json --screen <screen-id> --device iphone-14 --orientation portrait
```

| Аргумент | Описание |
|---|---|
| `config-file` | Путь к локальному файлу JSON с конфигурацией билдера |

| Флаг | По умолчанию | Описание |
|---|---|---|
| `--screen` | Первый экран флоу | ID экрана для отображения |
| `--device` | `iphone-14` | Фрейм устройства для отображения |
| `--orientation` | `portrait` | `portrait` или `landscape` |

В терминале команда открывает превью в браузере. При перенаправлении вывода или с флагом `--json` она печатает URL. URL содержит полный конфиг и может быть длинным: передайте его в инструмент для скриншотов, а не выводите напрямую. Конфиги размером более ~32 КБ отображаются медленно.

## adapty flows media upload

Загрузите изображение для использования в конфиге флоу.

```bash
adapty flows media upload --app <app-id> ./hero.png
```

| Аргумент | Описание |
|---|---|
| `file` | Путь к файлу изображения |

| Флаг | Обязательный | Описание |
|---|---|---|
| `--app` | Да | ID приложения (UUID) |

Поддерживаемые форматы: GIF, HEIC, JPEG, PNG, SVG и WebP. В ответе содержатся `id`, `name` изображения и CDN `url` для ссылки из конфига.

## Что дальше \{#whats-next\}

- [Справочник команд](developer-cli-reference) — все темы CLI, глобальные флаги и флаги пагинации.