利用資格
GTAF は、ユーザーがプランを購入できるかどうかを確認するために、次の利用資格リクエストを発行する場合があります。
GET DPA/{userKey}/Eligibility/{planId}?key_type={CPID,MSISDN}
planId
は、ユーザーに代わってプランを購入するために使用できるプランの一意の識別子です(データ購入を参照)。planId
が指定されていない場合、DPA はそのユーザーが購入可能なすべてのプランを返さなければなりません。
エラーの場合には、エラーが発生した場合に DPA から返されることが想定されるレスポンスが記載されています。また、DPA は次のエラーの場合にエラーを返さなければなりません。
- DPA は、
planId
が無効であることを GTAF に示す 400 BAD REQUEST エラーコードを返します。 - DPA は、
planId
がユーザーのデータプランと互換性がないことを示す 409 CONFLICT エラーコードを返します。
それ以外の場合、DPA は 200-OK レスポンスを返さなければなりません。成功した EligibilityResponse の形式は次のとおりです。
{
"eligiblePlans":
[
{
"planId": string, // Plan identifier. Can be used to
// refer to the plan during
// offers, etc. (req.)
}
]
}
リクエストに planId
が含まれている場合、レスポンスにはそのプランのみが含まれます。それ以外の場合、リストにはユーザーが購入できるすべてのプランが含まれます。planId
が空で、DPA が対象プランのリストの返却をサポートしていない場合、400 BAD REQUEST エラーを返さなければなりません。
Android 5G エクスペリエンス
GTAF を使用すると、通信事業者は加入者の接続タイプごとに従量制ステータスを共有できます。この情報は GTAF によって定期的に取得されるか、内部トリガーに基づいて携帯通信会社がプッシュできます。
Pull API
デバイスは、次の方法で GTAF を使用して従量制課金情報を取得できます。
GET DPA/{userKey}/planStatus?key_type={userKey}&client_id=AndroidSystemInfo
DPA(データプラン エージェント)は、通信事業者のネットワーク内の API GW または利用資格サーバーを表します。
userKey は、こちらで定義されているように、初期認証フェーズで確立された認証トークンです。
client_id は AndroidSystemInfo
従量課金制のステータスが ENUM として提供される
DPA は 200 OK レスポンスを返し、planInfoPerClient を含めます。DPA のエラー処理はこちらで定義されています。
プルモデルでは、GTAF はクライアントとして動作し、DPA の SSL 証明書を検証します。GTAF は、こちらで定義されている OAuth 手順を使用して DPA に対して認証を行います。
Push API
携帯通信会社は、トリガー イベント(料金プランの変更など)に基づいて、次の方法で従量制課金情報もプッシュできます。
POST https://mobiledataplansharing.googleapis.com/v1/operators/12345/clients/AndroidSystemInfo/users/abcdef/planStatus
DPA は、メッセージの本文に planInfoPerClient を含めるものとします。GTAF からのエラー レスポンスはこちらで定義されています。
プッシュモードでは、GTAF は Google Cloud OAuth2 サーバーを使用して DPA からの受信リクエストを認証します。受信リクエストは、DPA が表す ASN の ISP ポータルでホワイトリストに登録されているサービス アカウントとして認証される必要があります。詳細については、統合ガイド(こちら)もご覧ください。