資格條件
GTAF 可以發出下列資格要求,藉此確認使用者是否符合購買方案的資格。
GET DPA/{userKey}/Eligibility/{planId}?key_type={CPID,MSISDN}
請注意,planId
是方案的專屬 ID,可用於代表使用者購買方案 (請參閱資料購買)。如未指定 planId
,DPA 「必須」傳回使用者可購買的所有方案。
錯誤案例 會列出發生錯誤時來自 DPA 的回應。此外,DPA SHALL 會在下列錯誤情況下傳回錯誤:
- DPA 向 GTAF 傳回 400 BAD REQUEST 錯誤代碼,指出
planId
無效。 - DPA 傳回 409 CONFLICT 錯誤代碼,指出
planId
與使用者的數據方案不相容。
否則,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 定期提取,或依照內部觸發條件來推送資訊。
提取 API
裝置可使用下列項目透過 GTAF 提取計量付費資訊:
GET DPA/{userKey}/planStatus?key_type={userKey}&client_id=AndroidSystemInfo
請注意,DPA (數據方案代理程式) 代表電信業者的 #G9; 網路中的 API GW 或 Entitlement 伺服器。
userKey 是在初始驗證階段建立的驗證權杖,如這裡所定義。
client_id 是 AndroidSystemInfo
Meteredness 狀態以 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 許可清單中的服務帳戶。此外,請參閱整合指南瞭解詳情。