Краткое руководство по Adapty Developer CLI

Adapty CLI позволяет настроить конфигурацию приложения полностью из командной строки. Используйте его как альтернативу быстрому старту через дашборд, если вы предпочитаете работу в терминале или MCP-клиенты.

Note

Подключение 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 во всех последующих командах.

Important

Прежде чем продолжить, подключите приложение к 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>.

Important

Идентификаторы продуктов стора, которые вы привязываете здесь, нельзя изменить после создания. Чтобы использовать другие идентификаторы продуктов стора, создайте новый продукт.

Команда возвращает <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. Создайте пейвол

Пейвол — это контейнер, в котором хранятся ваши продукты.

Important

После того как пейвол привязан к плейсменту, его продукты нельзя изменить. Чтобы использовать другие продукты, создайте новый пейвол и обновите плейсмент, указав на него.

Команда возвращает <paywall-id>.

7. Создайте плейсмент

Плейсмент — это точка в вашем приложении, где отображается флоу или пейвол. Единственное, что нужно прописать в коде приложения, — это идентификатор плейсмента. Всё остальное — какой флоу или пейвол показывать и каким пользователям — управляется в дашборде без выпуска новой версии приложения.

--developer-id — это строка, на которую вы будете ссылаться позже в коде приложения, когда запрашиваете у Adapty, что показать в этой точке. Выберите что-то, описывающее расположение, например "main", "onboarding" или "settings".

Флаг --audiences определяет, какой флоу или пейвол показывается каким пользователям. В примерах выше задана единственная аудитория по умолчанию: все пользователи на этом плейсменте видят одно и то же содержимое. Плейсмент работает с одним типом контента: плейсмент для пейвола принимает записи paywall, а плейсмент для флоу — записи flow. Подробнее о таргетинге по сегменту см. раздел Формат audiences в справочнике команд.

Что дальше

Все сущности теперь видны в дашборде Adapty. Что дальше: