---
title: "Сохранение и публикация флоу"
description: "Сохраняйте флоу как черновики и публикуйте их для пользователей"
---

[Flow Builder](adapty-flow-builder) разделяет сохранение и публикацию. Черновики сохраняют вашу работу в дашборде Adapty, а публикация делает текущую версию доступной пользователям через SDK. В этой статье рассказывается о том, как и когда использовать каждое из этих действий.
## Сохранение флоу в виде черновика \{#save-a-flow-as-a-draft\}

:::warning
Недействительный [Remote Config](customize-flow-with-remote-config) не позволит сохранить черновик.
:::

Flow Builder автоматически сохраняет прогресс раз в минуту.

Чтобы сохранить черновик вручную, нажмите **Save draft** в правом верхнем углу Flow Builder или используйте сочетание клавиш **Cmd/Ctrl + S**.

Черновики видны только в дашборде. Они не влияют на то, что видят пользователи в приложении, даже если флоу уже привязан к [плейсменту](placements).

## Публикация флоу \{#publish-a-flow\}

Публикация делает текущую версию флоу доступной для пользователей через SDK. После публикации новая версия заменяет любую ранее опубликованную версию того же флоу.

:::note
Чтобы добавить флоу в [плейсмент](placements), сначала опубликуйте его. Флоу в статусе Draft добавить нельзя.
:::

Чтобы опубликовать флоу, нажмите **Publish to Live** в правом верхнем углу Flow Builder.

Дальнейшее зависит от того, привязан ли флоу к плейсменту:
- **Флоу уже привязан к плейсменту**: пользователи увидят новую версию при следующем обращении к этому плейсменту.
- **Флоу не привязан к плейсменту**: добавьте флоу в [плейсмент](create-placement), чтобы начать показывать его пользователям.

:::tip
Флоу готов к публикации, когда каждое действие, экран и элемент продукта полностью настроены. Типичные ошибки описаны в разделе [Устранение неполадок](#troubleshooting).
:::

:::warning
[Пользовательские шрифты](using-custom-fonts-in-flow-builder) не поставляются вместе с флоу — каждый файл шрифта нужно добавить в бандл приложения. Без файла пользователи увидят системный шрифт.

Чтобы изменить шрифт в опубликованном флоу без поломки старых версий: продублируйте флоу, измените шрифт в копии и назначьте её [аудитории](add-audience-paywall-ab-test) для версий приложения, в которых есть этот шрифт.
:::
## Статус флоу \{#flow-status\}

Каждый флоу отображает статус в списке флоу. Статус отражает, на каком этапе жизненного цикла сохранения и публикации находится флоу.
| Статус | Значение |
| :----- | :------ |
| **Draft** | Флоу ни разу не публиковался. Существует только черновик, пользователи его не видят. Нужно сначала опубликовать черновик, чтобы добавить флоу в [плейсмент](placements). |
| **Dirty** | Флоу был опубликован, но в нём есть сохранённые правки, которые ещё не опубликованы. Пользователи видят последнюю опубликованную версию, пока вы не опубликуете снова. |
| **Publishing** | Публикация в процессе. |
| **Failed** | Последняя попытка публикации завершилась ошибкой. Пользователи продолжают видеть последнюю опубликованную версию, если она есть. |
| **Published** | Последняя сохранённая версия активна. Неопубликованных правок нет. |
| **Archived** | Флоу удалён. |
## Устранение неполадок \{#troubleshooting\}

Вы не можете опубликовать или просмотреть флоу, если присутствует хотя бы одна из следующих проблем.

- Взаимодействие с неполной конфигурацией. Распространённые случаи:
    - Действие **Open URL** без целевого URL.
    - Действие **Navigate to screen** без указания экрана назначения — также возникает, если экран назначения был удалён после настройки действия.
    - **Условное действие** без оператора или значения.
    - Действие **Set Variable** без назначенной переменной или значения.
    - Действие **Purchase** без продукта (встроенный стор) или без URL Web Paywall (веб-оплата).
    - Действие **Custom** без Action ID.
    - Действие **Show alert** с пустым полем Title или Message.
    - Действие **Show** или **Hide** без выбранного элемента.
- **Экран без элементов**.
- Элемент продукта **без привязанного продукта** — может возникнуть, если удалить связанный продукт.
- Невалидный JSON в **Remote Config** нарушает весь процесс доставки — сохранить даже черновик не получится.

Перед публикацией проверьте флоу в [приложении Adapty](paywall-device-compatibility-preview) — это поможет выявить проблемы заранее. Если флоу не загружается в превью, изучите сообщение об ошибке для получения подробностей.