REST Resource: purchases.subscriptionsv2

透過集合功能整理內容 你可以依據偏好儲存及分類內容。

資源:SubscriptionPurchaseV2

指出使用者的訂閱項目購買狀態。

JSON 表示法
{
  "kind": string,
  "regionCode": string,
  "latestOrderId": string,
  "lineItems": [
    {
      object (SubscriptionPurchaseLineItem)
    }
  ],
  "startTime": string,
  "subscriptionState": enum (SubscriptionState),
  "linkedPurchaseToken": string,
  "pausedStateContext": {
    object (PausedStateContext)
  },
  "canceledStateContext": {
    object (CanceledStateContext)
  },
  "testPurchase": {
    object (TestPurchase)
  },
  "acknowledgementState": enum (AcknowledgementState),
  "externalAccountIdentifiers": {
    object (ExternalAccountIdentifiers)
  },
  "subscribeWithGoogleInfo": {
    object (SubscribeWithGoogleInfo)
  }
}
欄位
kind

string

這個類型代表 androidpublisher 服務中的 SubscriptionPurchaseV2 物件。

regionCode

string

訂閱使用者時採用的 ISO 3166-1 alpha-2 國家/地區代碼。

latestOrderId

string

與購買訂閱項目相關聯的最新訂單訂單 ID。如果是 AutoRenewing 訂閱,這是指尚未更新的續訂訂單 ID 或最終週期性訂單 ID (成功、待處理或遭拒的訂單)。如果是預付訂閱方案,這是與查詢購買憑證相關的訂單 ID。

lineItems[]

object (SubscriptionPurchaseLineItem)

訂閱項目購買交易的商品層級資訊。同一購買交易中的項目都必須含有 AutoRenewingPlan,或是 PrepaidPlan。

startTime

string (Timestamp format)

訂閱的時間點。尚未設定待處理訂閱項目 (訂閱項目已建立,但申請期間正在等待付款)。

RFC3339 UTC 的「Zulu」格式時間戳記,單位為奈秒解析度,最多可達九位數。範例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

subscriptionState

enum (SubscriptionState)

訂閱項目的目前狀態。

linkedPurchaseToken

string

如果這個訂閱項目符合以下敘述,就屬於舊訂閱項目的購買憑證:* 重新訂閱已取消、尚未到期的訂閱項目 * 從先前的訂閱項目升級/降級。* 從預付方案轉換成自動續訂的訂閱方案。* 從自動續訂型訂閱項目轉換成預付方案。* 儲值預付訂閱。

pausedStateContext

object (PausedStateContext)

關於暫停訂閱的額外背景資訊。只有在訂閱項目目前含有 subscriptionState SUBSCRIPTION_STATE_PAUSED 時,才會顯示。

canceledStateContext

object (CanceledStateContext)

有關取消訂閱的額外背景資訊。只有在訂閱項目目前含有 subscriptionState SUBSCRIPTION_STATE_CANCELED 時,才會顯示這個選項。

testPurchase

object (TestPurchase)

只有在這個訂閱項目購買交易是測試購買時,才會顯示這項資訊。

acknowledgementState

enum (AcknowledgementState)

訂閱項目的確認狀態。

externalAccountIdentifiers

object (ExternalAccountIdentifiers)

第三方服務中的使用者帳戶 ID。

subscribeWithGoogleInfo

object (SubscribeWithGoogleInfo)

與透過 Google 訂閱 ' 透過 Google 訂閱' 進行消費相關的使用者個人資料。

訂閱項目狀態

訂閱項目可能處於的狀態,例如有效或取消訂閱。訂閱購買項目中的項目可以是自動續訂方案或預付方案。

列舉
SUBSCRIPTION_STATE_UNSPECIFIED 未指定訂閱狀態。
SUBSCRIPTION_STATE_PENDING 訂閱項目已建立,但註冊期間正在等待付款。在此狀態下,所有項目都會等候付款。
SUBSCRIPTION_STATE_ACTIVE 訂閱已啟用。- (1) 如果訂閱項目是自動續訂方案,則至少有一個項目是 autoRenewEnabled,且沒有過期。- (2) 如果訂閱項目是預付方案,則至少有一項項目未過期。
SUBSCRIPTION_STATE_PAUSED 已暫停訂閱。只有在訂閱項目是自動續訂方案時,才能使用此狀態。在此狀態下,所有項目都會處於暫停狀態。
SUBSCRIPTION_STATE_IN_GRACE_PERIOD 訂閱項目已進入寬限期。只有在訂閱項目是自動續訂方案時,才能使用此狀態。在這個狀態下,所有項目都會進入寬限期。
SUBSCRIPTION_STATE_ON_HOLD 訂閱處於暫停狀態 (已停權)。只有在訂閱項目是自動續訂方案時,才能使用此狀態。在這個狀態下,所有項目都會處於訴訟保留狀態。
SUBSCRIPTION_STATE_CANCELED 訂閱項目已取消,但尚未到期。只有在訂閱項目是自動續訂方案時,才能使用此狀態。所有項目的 autoRenewEnabled 已設為 false。
SUBSCRIPTION_STATE_EXPIRED 訂閱已過期。所有項目皆含過去 expiryTime。

PausedState

處於暫停狀態的訂閱項目相關資訊。

JSON 表示法
{
  "autoResumeTime": string
}
欄位
autoResumeTime

string (Timestamp format)

訂閱項目恢復自動生效的時間。

RFC3339 UTC 的「Zulu」格式時間戳記,單位為奈秒解析度,最多可達九位數。範例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

已取消狀態內容

關於取消狀態的訂閱項目相關資訊。

JSON 表示法
{

  // Union field cancellation_reason can be only one of the following:
  "userInitiatedCancellation": {
    object (UserInitiatedCancellation)
  },
  "systemInitiatedCancellation": {
    object (SystemInitiatedCancellation)
  },
  "developerInitiatedCancellation": {
    object (DeveloperInitiatedCancellation)
  },
  "replacementCancellation": {
    object (ReplacementCancellation)
  }
  // End of list of possible types for union field cancellation_reason.
}
欄位
聯集欄位 cancellation_reason。取消訂閱的原因。cancellation_reason 只能是下列其中一項:
userInitiatedCancellation

object (UserInitiatedCancellation)

使用者已取消訂閱項目。

systemInitiatedCancellation

object (SystemInitiatedCancellation)

例如系統因帳單問題而取消訂閱。

developerInitiatedCancellation

object (DeveloperInitiatedCancellation)

開發人員已取消訂閱項目。

replacementCancellation

object (ReplacementCancellation)

新訂閱已取代訂閱項目。

使用者取消

使用者啟動取消作業的相關資訊。

JSON 表示法
{
  "cancelSurveyResult": {
    object (CancelSurveyResult)
  },
  "cancelTime": string
}
欄位
cancelSurveyResult

object (CancelSurveyResult)

使用者完成訂閱取消流程時提供的資訊 (取消原因問卷調查)。

cancelTime

string (Timestamp format)

使用者取消訂閱的時間。在這段時間過後,使用者仍可存取訂閱內容。使用 lineItems.expiry_time 判斷使用者是否仍擁有存取權。

RFC3339 UTC 的「Zulu」格式時間戳記,單位為奈秒解析度,最多可達九位數。範例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

取消問卷調查結果

使用者取消訂閱項目時取消的問卷調查結果。

JSON 表示法
{
  "reason": enum (CancelSurveyReason),
  "reasonUserInput": string
}
欄位
reason

enum (CancelSurveyReason)

使用者在取消問卷調查中選取的原因。

reasonUserInput

string

僅設為「CANCEL_SURVEY_REASON_OTHERS」。這是使用者在問卷調查中提供的任意形式回應。

取消原因

使用者在取消問卷調查中選取的原因。

列舉
CANCEL_SURVEY_REASON_UNSPECIFIED 未指定取消問卷調查原因。
CANCEL_SURVEY_REASON_NOT_ENOUGH_USAGE 訂閱用量不足。
CANCEL_SURVEY_REASON_TECHNICAL_ISSUES 使用應用程式時發生技術問題。
CANCEL_SURVEY_REASON_FOUND_BETTER_APP 使用者找到了更好的應用程式。
CANCEL_SURVEY_REASON_OTHERS 其他原因。

系統啟動的取消作業

由 Google 系統啟動的取消作業相關資訊。

開發人員取消

開發人員啟動的取消作業相關資訊。

換貨取消

因訂閱替換作業導致的取消作業專屬資訊。

測試購買

是否為購買測試商品。

確認狀態

訂閱項目的確認狀態。

列舉
ACKNOWLEDGEMENT_STATE_UNSPECIFIED 未指定的確認狀態。
ACKNOWLEDGEMENT_STATE_PENDING 訂閱方案尚未確認。
ACKNOWLEDGEMENT_STATE_ACKNOWLEDGED 已確認訂閱項目。

外部帳戶 ID

第三方服務中的使用者帳戶 ID。

JSON 表示法
{
  "externalAccountId": string,
  "obfuscatedExternalAccountId": string,
  "obfuscatedExternalProfileId": string
}
欄位
externalAccountId

string

第三方服務中的使用者帳戶 ID。只有在帳戶連結購買流程中發生帳戶連結時,才會顯示這個選項。

obfuscatedExternalAccountId

string

經模糊處理的 ID 版本,該 ID 與應用程式中使用者的帳戶獨有關聯。在進行下列購買行為時會有此記錄:*如果在訂閱購買流程中發生帳戶連結問題,* 是使用 https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedaccountid 指定購買。

obfuscatedExternalProfileId

string

經模糊處理的 ID 版本,只與應用程式中的使用者個人資料有關。只有在使用 https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedprofileid 指定時才會看到此 ID。

透過 Google 訂閱

與「##9;透過 Google 訂閱」##39;

JSON 表示法
{
  "profileId": string,
  "profileName": string,
  "emailAddress": string,
  "givenName": string,
  "familyName": string
}
欄位
profileId

string

購買訂閱項目時使用者的 Google 個人資料 ID。

profileName

string

購買訂閱項目時的個人資料名稱。

emailAddress

string

購買訂閱項目時的使用者電子郵件地址。

givenName

string

購買訂閱項目時的使用者名稱。

familyName

string

購買訂閱項目時的使用者家庭名稱。

訂閱購買委刊項

訂閱項目購買交易的商品層級資訊。

JSON 表示法
{
  "productId": string,
  "expiryTime": string,

  // Union field plan_type can be only one of the following:
  "autoRenewingPlan": {
    object (AutoRenewingPlan)
  },
  "prepaidPlan": {
    object (PrepaidPlan)
  }
  // End of list of possible types for union field plan_type.
}
欄位
productId

string

所購買產品 ID (例如 'month001')。

expiryTime

string (Timestamp format)

訂閱到期或到期的時間 (如存取權延長時,例如續約)。

RFC3339 UTC 的「Zulu」格式時間戳記,單位為奈秒解析度,最多可達九位數。範例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

聯集欄位 plan_type。訂閱方案類型。plan_type 只能是下列其中一項:
autoRenewingPlan

object (AutoRenewingPlan)

商品將自動續訂。

prepaidPlan

object (PrepaidPlan)

預付項目。

自動續訂計畫

自動續訂方案的相關資訊。

JSON 表示法
{
  "autoRenewEnabled": boolean
}
欄位
autoRenewEnabled

boolean

如果訂閱項目目前設定為自動續約,例如使用者尚未取消訂閱

預付方案

預付方案相關資訊。

JSON 表示法
{
  "allowExtendAfterTime": string
}
欄位
allowExtendAfterTime

string (Timestamp format)

過了這段時間後,該訂閱即可再次購買。如果訂閱項目已由儲值交易延長,就不會顯示。

RFC3339 UTC 的「Zulu」格式時間戳記,單位為奈秒解析度,最多可達九位數。範例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

方法

get

取得訂閱項目的中繼資料