Adapty Developer CLIの完全リファレンス
AIアシスタントを使っていますか?LLMがCLIを操作しやすいようにAdapty CLIスキルが用意されています。
この記事では、Adapty CLIのすべてのコマンドと引数、フラグ、使用可能な値を一覧で紹介します。
認証の設定とトークン管理については、認証を参照してください。
グローバルフラグ
これらのフラグはすべてのコマンドで使用できます。
| フラグ | 説明 |
|---|---|
--json | フォーマットテキストの代わりにJSONで出力する |
--help | コマンドのヘルプを表示する |
すべての list コマンドではページネーションフラグも使用できます:
| フラグ | デフォルト | 説明 |
|---|---|---|
--page | 1 | ページ番号 |
--page-size | 20 | 1ページあたりのアイテム数(最大:100) |
アプリ
Adaptyアカウント内のアプリを管理します。ダッシュボードベースの設定については、App settingsを参照してください。
adapty apps list
Adaptyアカウント内のすべてのアプリを一覧表示します。
adapty apps list
ページネーションフラグを使用できます。
adapty apps get
特定のアプリの詳細を取得します。
adapty apps get <app-id>
| 引数 | 説明 |
|---|---|
app-id | アプリID(UUID) |
adapty apps create
新しいアプリを作成します。
adapty apps create --title "My App" --platform ios --apple-bundle-id com.example.app
| フラグ | 必須 | 説明 |
|---|---|---|
--title | はい | アプリのタイトル |
--platform | はい | プラットフォーム:ios または android。両方指定する場合は繰り返す:--platform ios --platform android |
--apple-bundle-id | --platform ios 指定時に必須 | AppleバンドルID |
--google-bundle-id | --platform android 指定時に必須 | GoogleバンドルID |
adapty apps update
既存のアプリを更新します。
adapty apps update <app-id> --title "New Name"
| 引数 | 説明 |
|---|---|
app-id | アプリID(UUID) |
| フラグ | 説明 |
|---|---|
--title | 新しいアプリタイトル |
--apple-bundle-id | 新しいAppleバンドルID |
--google-bundle-id | 新しいGoogleバンドルID |
少なくとも1つのフラグが必要です。--platform は作成後に変更できません。
アクセスレベル
adapty access-levels list
アプリのすべてのアクセスレベルを一覧表示します。
adapty access-levels list --app <app-id>
| フラグ | 必須 | 説明 |
|---|---|---|
--app | はい | アプリID(UUID) |
ページネーションフラグを使用できます。
adapty access-levels get
特定のアクセスレベルの詳細を取得します。
adapty access-levels get --app <app-id> <access-level-id>
| 引数 | 説明 |
|---|---|
access-level-id | アクセスレベルID(UUID) |
| フラグ | 必須 | 説明 |
|---|---|---|
--app | はい | アプリID(UUID) |
adapty access-levels create
新しいアクセスレベルを作成します。
adapty access-levels create --app <app-id> --sdk-id "pro" --title "Pro"
| フラグ | 必須 | 説明 |
|---|---|---|
--app | はい | アプリID(UUID) |
--sdk-id | はい | アプリコード内でアクセス確認に使用する識別子(例:"pro" や "premium") |
--title | はい | Adaptyダッシュボードに表示されるラベル |
adapty access-levels update
既存のアクセスレベルを更新します。
adapty access-levels update --app <app-id> <access-level-id> --title "Pro Access"
| 引数 | 説明 |
|---|---|
access-level-id | アクセスレベルID(UUID) |
| フラグ | 必須 | 説明 |
|---|---|---|
--app | はい | アプリID(UUID) |
--title | はい | 新しい表示ラベル |
--sdk-id は作成後に変更できません。
プロダクト
adapty products list
アプリのすべてのプロダクトを一覧表示します。
adapty products list --app <app-id>
| フラグ | 必須 | 説明 |
|---|---|---|
--app | はい | アプリID(UUID) |
ページネーションフラグを使用できます。
adapty products get
特定のプロダクトの詳細を取得します。
adapty products get --app <app-id> <product-id>
| 引数 | 説明 |
|---|---|
product-id | プロダクトID(UUID) |
| フラグ | 必須 | 説明 |
|---|---|---|
--app | はい | アプリID(UUID) |
adapty products create
新しいプロダクトを作成します。
ストアのプロダクトID(--ios-product-id、--android-product-id、--android-base-plan-id)は作成後に変更できません。異なるストアプロダクトIDを使用したい場合は、新しいプロダクトを作成してください。
adapty products create --app <app-id> --title "Monthly" --access-level-id <access-level-id> --period monthly --ios-product-id com.example.monthly
| フラグ | 必須 | 説明 |
|---|---|---|
--app | はい | アプリID(UUID) |
--title | はい | プロダクトタイトル |
--access-level-id | はい | このプロダクトがアンロックするアクセスレベルID(UUID) |
--period | はい | サブスクリプション期間:weekly、monthly、2_months、3_months、6_months、yearly、lifetime |
--ios-product-id | 少なくとも1つのプラットフォームが必須 | App Store ConnectのプロダクトID |
--android-product-id | 少なくとも1つのプラットフォームが必須 | Google Play ConsoleのプロダクトID |
--android-base-plan-id | --android-product-id 指定時に必須(--period lifetime の場合を除く) | Google Play ConsoleのベースプランID |
adapty products update
既存のプロダクトを更新します。
ストアのプロダクトID(--ios-product-id、--android-product-id)は作成後に変更できないため、このコマンドでは使用できません。異なるストアプロダクトIDを使用したい場合は、新しいプロダクトを作成してください。
adapty products update --app <app-id> <product-id> --title "Monthly" --access-level-id <access-level-id>
| 引数 | 説明 |
|---|---|
product-id | プロダクトID(UUID) |
| フラグ | 必須 | 説明 |
|---|---|---|
--app | はい | アプリID(UUID) |
--title | いいえ | プロダクトタイトル |
--access-level-id | いいえ | このプロダクトがアンロックするアクセスレベルID(UUID) |
ペイウォール
adapty paywalls list
アプリのすべてのペイウォールを一覧表示します。
adapty paywalls list --app <app-id>
| フラグ | 必須 | 説明 |
|---|---|---|
--app | はい | アプリID(UUID) |
ページネーションフラグを使用できます。
adapty paywalls get
特定のペイウォールの詳細を取得します。
adapty paywalls get --app <app-id> <paywall-id>
| 引数 | 説明 |
|---|---|
paywall-id | ペイウォールID(UUID) |
| フラグ | 必須 | 説明 |
|---|---|---|
--app | はい | アプリID(UUID) |
adapty paywalls create
新しいペイウォールを作成します。
adapty paywalls create --app <app-id> --title "Default Paywall" --product-id <product-id>
| フラグ | 必須 | 説明 |
|---|---|---|
--app | はい | アプリID(UUID) |
--title | はい | ペイウォールタイトル |
--product-id | はい | プロダクトID(UUID)。複数指定する場合は繰り返す:--product-id <id1> --product-id <id2> |
adapty paywalls update
既存のペイウォールのすべてのフィールドを置き換えます。
ペイウォールがプレースメントに紐付けられると、そのプロダクトは変更できません。本番稼働中のペイウォールで異なるプロダクトを使用したい場合は、新しいペイウォールを作成し、プレースメントがそちらを参照するよう更新してください。
adapty paywalls update --app <app-id> <paywall-id> --title "Default Paywall" --product-id <product-id>
このコマンドはプロダクトリスト全体を含む、ペイウォールのすべてのフィールドを置き換えます。
| 引数 | 説明 |
|---|---|
paywall-id | ペイウォールID(UUID) |
| フラグ | 必須 | 説明 |
|---|---|---|
--app | はい | アプリID(UUID) |
--title | はい | ペイウォールタイトル |
--product-id | はい | プロダクトID(UUID)。複数指定する場合は繰り返す:--product-id <id1> --product-id <id2> |
adapty paywalls placements
指定したペイウォールを現在使用しているすべてのプレースメントを一覧表示します。
adapty paywalls placements --app <app-id> <paywall-id>
| 引数 | 説明 |
|---|---|
paywall-id | ペイウォールID(UUID) |
| フラグ | 必須 | 説明 |
|---|---|---|
--app | はい | アプリID(UUID) |
ペイウォールを切り替える前に、このコマンドで影響を受けるプレースメントを確認してください。
プレースメント
adapty placements list
アプリのすべてのプレースメントを一覧表示します。
adapty placements list --app <app-id>
| フラグ | 必須 | 説明 |
|---|---|---|
--app | はい | アプリID(UUID) |
ページネーションフラグを使用できます。
adapty placements get
特定のプレースメントの詳細を取得します。
adapty placements get --app <app-id> <placement-id>
| 引数 | 説明 |
|---|---|
placement-id | プレースメントID(UUID) |
| フラグ | 必須 | 説明 |
|---|---|---|
--app | はい | アプリID(UUID) |
レスポンスには audiences 配列が含まれます。各エントリは {segment_ids, paywall_id, priority} の形式です。デフォルトのオーディエンスは segment_ids: [] を持ち、最も高いpriorityの値(最後に評価される)を持ちます。フォーマット済みの人間向け出力には、便宜上デフォルトオーディエンスから導出したトップレベルの Paywall ID も表示されます。--json を使用すると、加工されていないAPIレスポンスがそのまま返されます。
adapty placements create
新しいプレースメントを作成します。
adapty placements create --app <app-id> --title "Main" --developer-id "main" --audiences '[{"segment_ids":[],"paywall_id":"<paywall-id>","priority":0}]'
| フラグ | 必須 | 説明 |
|---|---|---|
--app | はい | アプリID(UUID) |
--title | はい | プレースメントタイトル |
--developer-id | はい | アプリコード内でこのプレースメントをリクエストする際に使用する文字列識別子 |
--audiences | どちらか一方 | {segment_ids, paywall_id, priority} エントリのJSON配列。オーディエンスの形式を参照 |
--paywall-id | どちらか一方 | 非推奨。 ペイウォールID(UUID)。クライアント側で単一のデフォルトオーディエンスにラップされます |
--audiences または --paywall-id のいずれか一方のみを指定してください。両方指定または両方省略するとエラーになります。
--paywall-id は非推奨であり、今後削除される予定です。指定した場合、CLIはstderrに警告を出力し、値をデフォルトオーディエンスに変換します。新しい自動化処理では --audiences を使用してください。
adapty placements update
既存のプレースメントのすべてのフィールドを置き換えます。
adapty placements update --app <app-id> <placement-id> --title "Main" --developer-id "main" --audiences '[{"segment_ids":[],"paywall_id":"<paywall-id>","priority":0}]'
このコマンドはオーディエンスリスト全体を含む、プレースメントのすべてのフィールドを置き換えます。
| 引数 | 説明 |
|---|---|
placement-id | プレースメントID(UUID) |
| フラグ | 必須 | 説明 |
|---|---|---|
--app | はい | アプリID(UUID) |
--title | はい | プレースメントタイトル |
--developer-id | はい | アプリコード内でこのプレースメントをリクエストする際に使用する文字列識別子 |
--audiences | どちらか一方 | {segment_ids, paywall_id, priority} エントリのJSON配列。オーディエンスの形式を参照 |
--paywall-id | どちらか一方 | 非推奨。 ペイウォールID(UUID)。すべてのオーディエンスを単一のデフォルトオーディエンスで置き換えます |
--paywall-id を指定すると、プレースメントのすべてのオーディエンスが上書きされます。セグメント固有のオーディエンスは削除されます。それらを保持したい場合は --audiences を使用し、維持したいすべてのエントリを含めてください。
オーディエンスの形式
--audiences フラグはJSON配列を受け取ります。各エントリには以下のフィールドがあります:
| フィールド | 型 | 説明 |
|---|---|---|
segment_ids | string[] | このオーディエンスが対象とするセグメントIDの配列。要素数は0または1。空配列はデフォルトオーディエンス(他のセグメントにマッチしないユーザーへのフォールバック)を表します |
paywall_id | string | このオーディエンスのユーザーに表示されるペイウォールID(UUID) |
priority | number | 0始まりで、プレースメント内で一意。オーディエンスは値の小さい順に評価され、デフォルトオーディエンスは最も高い値を持つ必要があります |
プレースメントには必ずデフォルトオーディエンスが1つ必要です。
1つのターゲットオーディエンスと1つのデフォルトオーディエンスを持つ例:
adapty placements update <placement-id> --app <app-id> --title "Main" --developer-id "main" \
--audiences '[{"segment_ids":["<vip-segment-id>"],"paywall_id":"<vip-paywall-id>","priority":0},{"segment_ids":[],"paywall_id":"<default-paywall-id>","priority":1}]'
セグメント固有のルーティングを維持しながら複数のプレースメントでペイウォールを切り替えるには:
-
影響を受けるプレースメントを確認する:
adapty paywalls placements --app <app-id> <old-paywall-id> -
それぞれの
audiences配列全体を取得する:adapty placements get --app <app-id> <placement-id> --json -
対象の
paywall_idの値をクライアント側で置き換える。 -
変更したペイロードを書き戻す:
adapty placements update --app <app-id> <placement-id> --title "<title>" --developer-id "<developer-id>" --audiences '<modified-payload>'
セグメント
セグメントはCLI経由では読み取り専用です。作成・編集はAdaptyダッシュボードで行ってください。プレースメントのオーディエンスを構成する際にセグメントIDを調べるためにこれらのコマンドを使用します。
adapty segments list
アプリのすべてのセグメントを一覧表示します。
adapty segments list --app <app-id>
| フラグ | 必須 | 説明 |
|---|---|---|
--app | はい | アプリID(UUID) |
ページネーションフラグを使用できます。
adapty segments get
特定のセグメントの詳細を取得します。
adapty segments get --app <app-id> <segment-id>
| 引数 | 説明 |
|---|---|
segment-id | セグメントID(UUID) |
| フラグ | 必須 | 説明 |
|---|---|---|
--app | はい | アプリID(UUID) |
レスポンスには id、title、description が含まれます。フィルタールールはこのAPIでは公開されていません。
認証
| コマンド | 説明 |
|---|---|
adapty auth login | デバイスフローを使用してブラウザ経由で認証する |
adapty auth logout | ローカルに保存された認証情報を削除する |
adapty auth whoami | サーバーでトークンを検証してユーザー情報を表示する |
adapty auth status | サーバーへの問い合わせなしにローカルの認証状態を表示する |
adapty auth revoke | サーバー側でトークンを失効させ、ローカルからも削除する |
各コマンドの詳細については認証を参照してください。