Adapty 开发者 CLI 快速入门指南

Adapty CLI 让你完全通过命令行完成应用配置。如果你偏好终端工具或 MCP 客户端,可以用它替代看板快速入门

Note

将 Adapty 连接到 App Store Connect 和 Google Play 仍需在看板中进行一次性配置——详见第 3 步。

完成后,你的应用、访问等级、产品、付费墙和版位都会显示在 Adapty 看板 中。 如果您在 Claude Cowork 中运行 CLI,请在开始前允许 Adapty 相关域名——详见在 Cowork 中运行 CLI

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

在继续之前,请先在 Adapty 看板中将你的应用连接到 App Store Connect 和 Google Play。第 5 步需要用到两个平台的产品 ID。

4. 创建访问等级(可选)

访问等级用于控制用户购买后可以访问的内容。与其在应用中检查用户是否购买了某个特定产品,不如检查用户是否拥有某个访问等级。这样可以将应用逻辑与具体的产品 ID 解耦。

每个新应用都会自动创建一个 premium 访问等级。对于大多数应用,你可以跳过这一步。 在第 5 步中直接使用 premium 作为访问等级 ID 即可。 仅当不同产品为不同用户组解锁不同功能时才运行此命令——例如,“Basic” 订阅用户和 “Pro” 订阅用户可以访问应用的不同部分。

adapty access-levels create --app <app-id> --sdk-id "pro" --title "Pro"
  • --sdk-id 是你在应用代码中用于检查某功能是否对用户开放的标识符(例如 if user.hasAccessLevel("pro"))。如果跳过此步骤并使用默认访问等级,其 --sdk-idpremium
  • --title 是在 Adapty 看板中供你参考的显示标签。

该命令返回一个 <access-level-id>

5. 创建产品

在 Adapty 中,产品代表应用内销售的任何内容——订阅或一次性购买。来自 App Store Connect 和 Google Play 的商品可以归并为一个 Adapty 产品,统一管理。

你需要从各应用商店获取产品 ID:从 App Store Connect 获取 Apple 产品 ID,从 Google Play Console 获取 Android 产品 ID 和基础方案 ID。详情请参阅产品。 如果你跳过了第 4 步,请使用第 3 步 apps create 命令返回的 default_access_level.id 作为你的 <access-level-id>

Important

此处关联的商店产品 ID 在创建后无法更改。如需使用不同的商店产品 ID,请创建新产品。

该命令会返回一个 <product-id>

如果你还通过 Stripe 或 Paddle 在网页端销售该产品,请将相应 ID 添加到同一命令中。详情请参阅命令参考中的 products create

6. 创建付费墙

付费墙 是承载产品的容器。在 Adapty 中,付费墙是向用户呈现产品的唯一方式。每个产品都必须先放入付费墙,才能在应用中展示。

Important

付费墙与版位关联后,其中的产品将无法修改。如需使用不同的产品,请创建新的付费墙,并将版位指向该付费墙。

该命令会返回一个 <paywall-id>

7. 创建版位

版位 是应用中展示付费墙的位置。你在代码里唯一需要硬编码的就是版位 ID,其余所有内容——向哪些用户展示哪个付费墙——都可以在看板中管理,无需发布新版本。

--developer-id 是你后续在应用代码中向 Adapty 查询该位置应展示哪个付费墙时所引用的字符串。建议取一个能描述该位置的名称,例如 "main""onboarding""settings"

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

--audiences 标志控制向哪些用户显示哪个付费墙。上面的示例设置了一个默认目标受众——所有用户在该版位看到的都是同一个付费墙。

在 Cowork 中运行 CLI

Claude Cowork 在沙盒中执行命令,只能访问已加入白名单的域名。在允许 Adapty 之前,CLI 无法登录或读取你的账户信息。如果你在自己的终端运行 CLI,可以跳过本节。

请同时允许 adapty.io*.adapty.io。在大多数白名单实现中,通配符并不覆盖顶级域名。CLI 本身访问的是 api.adapty.io,而在工作过程中读取 Adapty 文档的 Agent 则会访问顶级域名。

Cowork applies these settings when a task starts. If you change the access mode or add a domain during a conversation, that conversation keeps the settings it started with — start a new task.

A task also starts on a clean machine: no CLI, no token, and no config carries over from a previous session, so the install and login steps repeat at the start of each one.

个人账户

你需要自己设置白名单:

  1. 在 Claude 中,打开 SettingsCapabilities
  2. 开启 Code execution and file creationAllow network egress 区块在此之前不会显示。
  3. 开启 Allow network egress
  4. Domain allowlist 中,选择 Package managers only
  5. Additional allowed domains 下,添加 adapty.io,然后添加 *.adapty.io
Allow network egress settings in Claude, with the Adapty domain in the additional allowed domains list

另一种访问模式 All domains,允许沙盒访问任意网站。选择该模式后,无需添加 Adapty 域名。

企业工作区

由管理员控制白名单。请让他们为工作区添加两个域名。

接下来

所有实体现在均可在 Adapty 看板 中查看。接下来: