アクセスレベルを手動で付与する

特定のユーザーやユーザーグループに対してプレミアム機能を手動でアンロックしたい場合、Adapty API を使って行うことができます。プロモーションキャンペーン、投資家へのアクセス付与、カスタマーサポートの特別対応などに役立ちます。

このガイドでは、ユーザーを識別してプログラムからアクセスレベルを付与する方法を説明します。

利用シナリオの例

  • プロモコード: ユーザーがアプリ内で有効なプロモコードを入力した際に、プレミアム機能へのアクセスを自動的に付与する。

  • 投資家・ベータテスター向けアクセス: カスタム属性を確認して、投資家やベータテスターにプレミアムアクセスを提供する。

Google Play プロモコード: Google Play のプロモコードを使用した購入は、orderId なしで届く場合があります。Adapty の買い切り購入(サブスクリプション以外)のバリデーションには orderId が必要なため、こうしたコード引き換えは自動的にバリデーション・付与されません。以下の手順で手動でアクセスを付与してください。Server-Side API は orderId に依存しません。

ステップ 1. ユーザーを識別する

Adapty はプラットフォームやデバイスをまたいでユーザーを識別するために customer_user_id を使用します。これにより、アプリの再インストールやデバイス切り替え後もユーザーのアクセスを継続させることができます。

この ID は一度だけ作成します。ユーザーがアプリから初めてサインアップする際に、SDK アクティベーション時に customer user ID を渡すか、サインアップ前に SDK をアクティベートした場合は identify メソッドを使用します。

SDK アクティベーション後に新規ユーザーを識別する場合、SDK はまず匿名プロファイルを作成します(SDK は必ずプロファイルが必要です)。その後 identify を customer user ID で呼び出すと、新しいプロファイルが作成されます。

この動作は正常であり、アナリティクスの精度には影響しません。詳細はこちらをご覧ください。

ステップ 2. API でアクセスレベルを付与する

ユーザーが customer_user_id で識別されたら、サーバーサイド API を使ってアクセスレベルを付与できます。この API 呼び出しにより、ユーザーは実際に購入することなく有料機能にアクセスできるようになります。

メソッドの完全なリファレンスはこちらをご覧ください。

Adapty ダッシュボードでカスタム属性(例:Beta tester や Investor)を追加することで、ユーザーアクセスを管理できます。 アプリ起動時にユーザープロファイルのこの属性を確認してアクセスを自動的に付与します。 アクセスを更新するには、ダッシュボードで属性を変更するだけです。

curl --request POST \
  --url https://api.adapty.io/api/v2/server-side-api/purchase/profile/grant/access-level/ \
  --header 'Accept: application/json' \
  --header 'Authorization: Api-Key YOUR_SECRET_API_KEY' \
  --header 'Content-Type: application/json' \
  --header 'adapty-customer-user-id: CUSTOMER_USER_ID' \
  --data '{
  "access_level_id": "YOUR_ACCESS_LEVEL"
}'

ステップ 3. アプリ内でアクセスを確認する

API でアクセスを付与すると、ユーザーのプロファイルは自動的に更新されます。プロファイルを取得してサブスクリプションの状態を確認し、プレミアム機能をアンロックしてください。