Краткое руководство по Adapty Developer CLI
Adapty CLI позволяет настроить конфигурацию приложения полностью из командной строки. Используйте его как альтернативу быстрому старту через дашборд, если вы предпочитаете работу в терминале или MCP-клиенты.
Подключение Adapty к App Store Connect и Google Play по-прежнему требует однократной настройки в дашборде — об этом рассказывается в шаге 3.
По завершении ваше приложение, уровень доступа, продукт, флоу или пейвол и плейсмент будут видны в дашборде Adapty.
Если вы запускаете CLI в приложении Claude (бывший Claude Cowork), сначала настройте его в Claude — см. Настройка Adapty CLI в приложении Claude.
1. Установите CLI
Требуется Node.js версии 18 или выше.
Чтобы установить CLI, выполните команду:
npm install -g adapty
Или напрямую:
npx adapty auth login
2. Аутентификация
Выполните команду входа, чтобы подключить CLI к вашему аккаунту Adapty.
adapty auth login
CLI откроет вкладку браузера. Сравните код в терминале с кодом в браузере и нажмите Authorize. Терминал подтвердит успешную аутентификацию.
3. Создайте приложение
Приложение в Adapty — это ваше мобильное приложение. Одно приложение в Adapty подключается одновременно к App Store и Google Play, поэтому создавать его нужно только один раз — вне зависимости от того, в скольких сторах вы публикуете продукт.
Команда возвращает <app-id>. Используйте этот ID во всех последующих командах.
Прежде чем продолжить, подключите приложение к App Store Connect и Google Play в дашборде Adapty. ID продуктов из обоих сторов потребуются на шаге 5.
4. Создайте уровень доступа (необязательно)
Уровни доступа определяют, к чему пользователи получают доступ после покупки. Вместо того чтобы проверять, купил ли пользователь конкретный продукт, приложение проверяет, есть ли у него нужный уровень доступа. Это позволяет не привязывать логику приложения к конкретным ID продуктов.
Уровень доступа premium создаётся автоматически для каждого нового приложения. Для большинства приложений этот шаг можно пропустить. Используйте premium в качестве ID уровня доступа на шаге 5.
Only run this command if different products unlock different features for different user groups — for example, if a “Basic” subscriber and a “Pro” subscriber get access to different parts of the app.
adapty access-levels create --app <app-id> --sdk-id "pro" --title "Pro"
--sdk-id— это идентификатор, который вы будете использовать в коде приложения для проверки доступа пользователя к функции (например,if user.hasAccessLevel("pro")). Если пропустить этот шаг и использовать уровень доступа по умолчанию, его--sdk-idравенpremium.--title— отображаемое название для вашего удобства в дашборде Adapty.
Команда возвращает <access-level-id>.
5. Создайте продукт
В Adapty продукт — это всё, что ваше приложение продаёт: подписка или разовая покупка. Товары из App Store Connect и Google Play можно объединить в один продукт Adapty и управлять ими из одного места.
Вам понадобятся идентификаторы продуктов из каждого стора: Apple product ID из App Store Connect, а также Android product ID и base plan ID из Google Play Console. Подробнее о том, где их найти, читайте в разделе Продукты.
Если вы пропустили шаг 4, используйте default_access_level.id, возвращённый командой apps create на шаге 3, в качестве <access-level-id>.
Идентификаторы продуктов стора, которые вы привязываете здесь, нельзя изменить после создания. Чтобы использовать другие идентификаторы продуктов стора, создайте новый продукт.
Команда возвращает <product-id>.
Если вы также продаёте этот продукт в вебе через Stripe или Paddle, добавьте соответствующие ID в ту же команду. См. products create в справочнике команд.
6. Создайте флоу или пейвол
Каждый продукт должен быть включён во флоу или пейвол, прежде чем он появится в приложении. Выберите один из вариантов:
- Флоу — это экран или последовательность экранов, которые вы создаёте в конструкторе Flow & Paywall Builder без написания кода, а SDK Adapty отображает нативно: экран пейвола, онбординг, квиз. Выбирайте флоу, если хотите, чтобы экран покупки отрисовывал Adapty. Для флоу требуется Adapty SDK 4.0 или новее.
- Пейвол — это набор продуктов без привязанного дизайна. Выбирайте пейвол, если экран покупки вы отрисовываете в коде собственного приложения, а от Adapty вам нужна только доставка продуктов, при необходимости с Remote Config.
Плейсмент служит одному типу контента, поэтому определитесь с этим до шага 7.
6a. Создайте флоу
CLI создаёт запись флоу. Его экраны хранятся в конфиге билдера — JSON-документе, который CLI не генерирует. Чтобы создать конфиг из терминала, используйте скилл flow-generator, который управляет CLI за вас.
Создайте флоу:
adapty flows create --app <app-id> --name "Onboarding"
Команда возвращает <flow-id>.
Постройте экраны с помощью скилла flow-generator или в Flow & Paywall Builder. В любом случае результатом будет сохранённый черновик, который пользователи пока не увидят.
Опубликуйте флоу:
adapty flows publish --app <app-id> <flow-id>
Команда запросит подтверждение. Публикация выполняется в фоновом режиме, поэтому проверяйте статус с помощью adapty flows get --app <app-id> <flow-id>, пока он не примет значение published. При статусе publication_failed команда flows config get покажет причину ошибки. Плейсмент принимает только опубликованный флоу.
6b. Создайте пейвол
Пейвол — это контейнер, в котором хранятся ваши продукты.
После того как пейвол привязан к плейсменту, его продукты нельзя изменить. Чтобы использовать другие продукты, создайте новый пейвол и обновите плейсмент, указав на него.
Команда возвращает <paywall-id>.
7. Создайте плейсмент
Плейсмент — это точка в вашем приложении, где отображается флоу или пейвол. Единственное, что нужно прописать в коде приложения, — это идентификатор плейсмента. Всё остальное — какой флоу или пейвол показывать и каким пользователям — управляется в дашборде без выпуска новой версии приложения.
--developer-id — это строка, на которую вы будете ссылаться позже в коде приложения, когда запрашиваете у Adapty, что показать в этой точке. Выберите что-то, описывающее расположение, например "main", "onboarding" или "settings".
Флаг --audiences определяет, какой флоу или пейвол показывается каким пользователям. В примерах выше задана единственная аудитория по умолчанию: все пользователи на этом плейсменте видят одно и то же содержимое. Плейсмент работает с одним типом контента: плейсмент для пейвола принимает записи paywall, а плейсмент для флоу — записи flow. Подробнее о таргетинге по сегменту см. раздел Формат audiences в справочнике команд.
Что дальше
Все сущности теперь видны в дашборде Adapty. Что дальше:
- Изменить флоу позже — опишите изменение скиллу flow-generator или откройте флоу в Flow & Paywall Builder.
- Отрендерить пейвол в приложении — получите пейвол и его продукты через SDK и постройте экран в собственном коде.
- Интегрировать SDK Adapty — добавьте SDK в приложение, чтобы получать и отображать плейсмент.
- Направлять разные сегменты пользователей к разным флоу или пейволам — см.
placements updateиsegments listв справочнике команд.