- 資源:SubscriptionPurchase
- IntroductoryPriceInfo
- SubscriptionCancelSurveyResult
- SubscriptionPriceChange
- 方法
資源:SubscriptionPurchase
SubscriptionPurchase 資源會指出使用者的訂閱購買狀態。
JSON 表示法 |
---|
{ "kind": string, "startTimeMillis": string, "expiryTimeMillis": string, "autoResumeTimeMillis": string, "autoRenewing": boolean, "priceCurrencyCode": string, "priceAmountMicros": string, "introductoryPriceInfo": { object ( |
欄位 | |
---|---|
kind |
這個種類代表 androidpublisher 服務中的 subscriptionPurchase 物件。 |
startTimeMillis |
授予訂閱項目的時間 (以自 Epoch 紀元時間起算,以毫秒為單位)。 |
expiryTimeMillis |
訂閱項目的到期日,以自 Epoch 紀元時間起算,以毫秒為單位。 |
autoResumeTimeMillis |
自動恢復訂閱的時間 (從 Epoch 紀元時間起算,以毫秒為單位)。只有在使用者要求暫停訂閱時才會顯示。 |
autoRenewing |
訂閱項目是否會在當前的到期時間時自動續約。 |
priceCurrencyCode |
訂閱價格的 ISO 4217 貨幣代碼。舉例來說,如果將價格指定為英鎊,priceCurrencyCode 就是「GBP」。 |
priceAmountMicros |
訂閱項目價格不適用於未稅國家/地區,不含稅。如果是課稅國家/地區,價格為含稅。價格是以微量單位表示,1,000,000 微量單位代表 1 單位的貨幣。舉例來說,如果訂閱價格為 €1.99 歐元,priceAmountMicros 就會是 1990000。 |
introductoryPriceInfo |
訂閱項目的新用戶優惠資訊。只有以新用戶優惠購買的訂閱項目才會顯示。 這個欄位未表示訂閱項目目前處於新用戶優惠期。 |
countryCode |
使用者獲得訂閱項目時的 ISO 3166-1 alpha-2 帳單國家/地區代碼。 |
developerPayload |
開發人員指定的字串,內含訂單的補充資訊。 |
paymentState |
訂閱項目的付款狀態。可能的值包括:0。付款處理中 1.已收到款項 2.免費試用 3.等待延遲升級/降級 已取消或已過期的訂閱項目則不會顯示。 |
cancelReason |
訂閱項目遭到取消或不會自動續訂的原因。可能的值包括:0。使用者取消訂閱 1.系統已取消訂閱項目,例如帳單問題 2。訂閱項目已由新的訂閱項目 3 取代。開發人員已取消訂閱 |
userCancellationTimeMillis |
使用者取消訂閱的時間,以自 Epoch 紀元時間起算,以毫秒為單位。只有在 cancelReason 為 0 時,才顯示此項目。 |
cancelSurveyResult |
使用者完成訂閱取消訂閱流程後提供的資訊 (取消原因問卷調查)。 |
orderId |
與購買訂閱相關的最新週期性訂單訂單 ID。如果訂閱是因為付款遭拒而遭到取消,這會是付款遭拒訂單的訂單 ID。 |
linkedPurchaseToken |
如果這個訂閱項目屬於下列任一項目,則來源購買交易的購買憑證:0。重新訂閱已取消但未流失的訂閱項目 1。從之前訂閱升級/降級 舉例來說,假設使用者一開始註冊時,您收到購買憑證 X,接著使用者取消訂閱並進行重新訂閱流程 (在訂閱失效前),而您收到購買憑證 Y,最後,使用者將訂閱項目升級,然後您收到購買憑證 Z 檔案。如果使用購買憑證 Z 呼叫這個 API,這個欄位將設為 Y。如果使用購買憑證 Y 呼叫這個 API,這個欄位將設為 X。如果使用購買憑證 X 呼叫這個 API,系統就不會設定這個欄位。 |
purchaseType |
訂閱項目的購買類型,只有在這筆購買交易不是使用標準應用程式內結帳流程時,您才能設定這個欄位。可能的值包括:0。測試 (例如從授權測試帳戶購買) 1.促銷代碼 (例如使用促銷代碼購買) |
priceChange |
有最新的價格異動資訊。只有在訂閱價格即將變更時,系統才會顯示這個選項。 以新價格續訂或取消訂閱後,系統就不會傳回價格異動資訊。 |
profileName |
購買訂閱項目的使用者的個人資料名稱。只有使用「透過 Google 訂閱」進行的交易才會顯示。 |
emailAddress |
購買訂閱項目的使用者電子郵件地址。只有使用「透過 Google 訂閱」進行的交易才會顯示。 |
givenName |
購買訂閱項目時的使用者名稱。只有使用「透過 Google 訂閱」進行的交易才會顯示。 |
familyName |
購買訂閱項目時的使用者名稱。只有使用「透過 Google 訂閱」進行的交易才會顯示。 |
profileId |
購買訂閱項目的使用者的 Google 個人資料 ID。只有使用「透過 Google 訂閱」進行的交易才會顯示。 |
acknowledgementState |
訂閱產品的確認狀態。可能的值包括:0。我想知道 1.已確認 |
externalAccountId |
第三方服務中的使用者帳戶 ID,只有在訂閱購買流程中發生帳戶連結時才會顯示。 |
promotionType |
此交易套用的促銷活動類型。只有在購買訂閱項目時套用促銷活動時,才需要設定這個欄位。可能的值包括:0。一次性代碼 1。別名代碼 |
promotionCode |
此交易套用的促銷代碼。只有在購買訂閱項目時套用優惠代碼促銷活動時,才需要設定這個欄位。 |
obfuscatedExternalAccountId |
經模糊處理的 ID 版本,與應用程式中的使用者帳戶相關聯。適用於下列購買交易:* 如果帳戶連結程序屬於訂閱購買流程,* 這項資訊是在購買交易發生時,使用 https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedaccountid 指定。 |
obfuscatedExternalProfileId |
經模糊處理的 ID 版本,只與應用程式中的使用者個人資料相關聯。只有在購買交易使用 https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedprofileid 指定時才會顯示。 |
IntroductoryPriceInfo
包含訂閱項目的入門價格資訊。
JSON 表示法 |
---|
{ "introductoryPriceCurrencyCode": string, "introductoryPriceAmountMicros": string, "introductoryPricePeriod": string, "introductoryPriceCycles": integer } |
欄位 | |
---|---|
introductoryPriceCurrencyCode |
新用戶訂閱價格的 ISO 4217 貨幣代碼。舉例來說,如果將價格指定為英鎊,priceCurrencyCode 就是「GBP」。 |
introductoryPriceAmountMicros |
訂閱項目的新用戶優惠 (含稅)。幣別與 priceCurrencyCode 相同。價格是以微量單位表示,1,000,000 微量單位代表 1 單位的貨幣。舉例來說,如果訂閱價格為 €1.99 歐元,priceAmountMicros 就會是 1990000。 |
introductoryPricePeriod |
新用戶優惠期,以 ISO 8601 格式指定。常見的值為 (但不限於)「P1W」(1 週)、「P1M」(1 個月)、「P3M」(3 個月)、「P6M」(6 個月) 和「P1Y」(一年)。 |
introductoryPriceCycles |
提供新用戶優惠的帳單週期數。 |
SubscriptionCancelSurveyResult
使用者完成訂閱取消訂閱流程後提供的資訊 (取消原因問卷調查)。
JSON 表示法 |
---|
{ "cancelSurveyReason": integer, "userInputCancelReason": string } |
欄位 | |
---|---|
cancelSurveyReason |
使用者在問卷調查中選擇的取消原因。可能的值包括:0。其他 1.我不常使用這項服務 2.技術問題 3.費用相關原因 4.我找到了更好的應用程式 |
userInputCancelReason |
使用者提供的自訂輸入取消原因。只有在 cancelReason 為 0 時,才顯示此項目。 |
SubscriptionPriceChange
包含訂閱項目的價格異動資訊,可用於控管應用程式價格異動的使用者歷程。這類訊息包括向使用者確認訊息,或是量身打造成功的轉換體驗。
JSON 表示法 |
---|
{
"newPrice": {
object ( |
欄位 | |
---|---|
newPrice |
如果使用者接受價格異動,系統就會以新的價格續訂。 |
state |
價格異動的目前狀態。可能的值包括:0。未完成:表示正在等待使用者同意價格的待處理價格變更。在這個狀態下,您可以選擇是否要使用 In-App API 向使用者確認。1. 已接受:表示系統接受的價格異動,如果未取消訂閱,訂閱項目會隨之續訂。價格異動將於日後續訂時生效。請注意,下次續訂時可能不會發生變更。 |
方法 |
|
---|---|
|
確認訂閱購買交易。 |
|
取消使用者的訂閱購買交易。 |
|
將使用者的訂閱購買交易延後到指定的未來到期時間。 |
|
檢查使用者的訂閱購買交易是否有效,並傳回到期時間。 |
|
退還使用者購買的訂閱項目,但訂閱項目在到期前仍然有效,訂閱項目將繼續定期續訂。 |
|
退款並立即撤銷使用者的訂閱購買交易。 |