REST Resource: monetization.subscriptions

資源:Subscription

單一應用程式的訂閱項目。

JSON 表示法
{
  "packageName": string,
  "productId": string,
  "basePlans": [
    {
      object (BasePlan)
    }
  ],
  "listings": [
    {
      object (SubscriptionListing)
    }
  ],
  "archived": boolean,
  "taxAndComplianceSettings": {
    object (SubscriptionTaxAndComplianceSettings)
  },
  "restrictedPaymentCountries": {
    object (RestrictedPaymentCountries)
  }
}
欄位
packageName

string

不可變動。父項應用程式的套件名稱。

productId

string

不可變動。產品的專屬產品 ID。僅限父項應用程式中的不重複值。產品 ID 只能使用小寫英文字母 (a-z)、數字 (0-9)、底線 (_) 和半形句號 (.)。開頭必須是小寫英文字母或數字,長度必須介於 1 到 40 個字元之間。

basePlans[]

object (BasePlan)

這項訂閱項目的基本方案組合。代表訂閱項目的價格和訂閱期間 (如果沒有其他優惠)。

listings[]

object (SubscriptionListing)

必要欄位。這項訂閱的本地化清單。至少必須包含一個上層應用程式預設語言的項目。

archived
(deprecated)

boolean

僅供輸出。已淘汰:不支援訂閱項目封存功能。

taxAndComplianceSettings

object (SubscriptionTaxAndComplianceSettings)

稅務和法規遵循詳細資訊。

restrictedPaymentCountries

object (RestrictedPaymentCountries)

選用設定。購買這項訂閱項目的國家/地區,只能使用在相同國家/地區登錄的付款方式。如果留空,系統就不會對付款地區設限。

BasePlan

訂閱項目的單一基本方案。

JSON 表示法
{
  "basePlanId": string,
  "state": enum (State),
  "regionalConfigs": [
    {
      object (RegionalBasePlanConfig)
    }
  ],
  "offerTags": [
    {
      object (OfferTag)
    }
  ],
  "otherRegionsConfig": {
    object (OtherRegionsBasePlanConfig)
  },

  // Union field base_plan_type can be only one of the following:
  "autoRenewingBasePlanType": {
    object (AutoRenewingBasePlanType)
  },
  "prepaidBasePlanType": {
    object (PrepaidBasePlanType)
  },
  "installmentsBasePlanType": {
    object (InstallmentsBasePlanType)
  }
  // End of list of possible types for union field base_plan_type.
}
欄位
basePlanId

string

必要欄位。不可變動。這項基本方案的專屬 ID。訂閱項目的名稱不得重複,且符合 RFC-1034 標準。也就是說,這個 ID 只能包含小寫英文字母 (a-z)、數字 (0-9) 和連字號 (-),長度上限為 63 個半形字元。

state

enum (State)

僅供輸出。基本方案的狀態,例如是否有效。您可以啟用或刪除草稿和已停用的基本方案。可以將有效的基本方案設為停用。您可以取消已停用的基本方案。更新資源後即無法變更這個欄位。請改用專屬端點。

regionalConfigs[]

object (RegionalBasePlanConfig)

這項基本方案的區域專屬資訊。

offerTags[]

object (OfferTag)

此基本方案最多可指定 20 個自訂標記,並透過結帳程式庫傳回應用程式。這個基本方案的訂閱優惠也會在帳款服務程式庫中一併收到這些優惠標記。

otherRegionsConfig

object (OtherRegionsBasePlanConfig)

Google Play 日後會發布任何新地點的定價資訊。如果省略此設定,BasePlan 將不會自動提供 Google Play 日後推出的任何新地區。

聯集欄位 base_plan_type。這項基本方案的類型。只能設定一個值。base_plan_type 只能是下列其中一項:
autoRenewingBasePlanType

object (AutoRenewingBasePlanType)

設定基本方案定期自動續訂的時間。

prepaidBasePlanType

object (PrepaidBasePlanType)

設定基本方案在帳單週期結束時不會自動續約的時間。

installmentsBasePlanType

object (InstallmentsBasePlanType)

針對使用者可承諾支付特定次數金額的分期付款基本方案設定。

基本方案的目前狀態。

列舉
STATE_UNSPECIFIED 未指定狀態。
DRAFT 基本方案目前處於草稿狀態,尚未啟用。此時您可以安全刪除。
ACTIVE 基本方案已啟用並可供新訂閱者使用。
INACTIVE 基本方案已停用,僅適用於現有訂閱者。

AutoRenewingBasePlanType

代表會在訂閱期結束時自動續訂的基本方案。

JSON 表示法
{
  "billingPeriodDuration": string,
  "gracePeriodDuration": string,
  "accountHoldDuration": string,
  "resubscribeState": enum (ResubscribeState),
  "prorationMode": enum (SubscriptionProrationMode),
  "legacyCompatible": boolean,
  "legacyCompatibleSubscriptionOfferId": string
}
欄位
billingPeriodDuration

string

必要欄位。以 ISO 8601 格式指定的訂閱期。如要查看可接受的帳單週期清單,請參閱說明中心。

gracePeriodDuration

string

訂閱的寬限期,以 ISO 8601 格式指定。可接受的值為 P0D (零天)、P3D (3 天)、P7D (7 天)、P14D (14 天) 和 P30D (30 天)。如未指定,系統會根據週期持續時間使用預設值。

accountHoldDuration

string

選用設定。訂閱項目的帳戶保留期,以 ISO 8601 格式指定。可接受的值必須介於 DAYS 至 P0D (零天) 到 P30D (30 天) 之間。如未指定,則預設值為 P30D (30 天)。

resubscribeState

enum (ResubscribeState)

是否應讓使用者在 Google Play 途徑重新訂閱這項基本方案。如未指定,預設為 RELICENSE_STATE_ACTIVE。

prorationMode

enum (SubscriptionProrationMode)

基本方案的依比例計費模式可決定使用者從其他基本方案改用資費方案時,會發生什麼事。如果未指定,則預設為 CHARGE_ON_NEXT_BILLING_DATE。

legacyCompatible

boolean

更新的基本方案是否可回溯相容。

回溯相容基本方案是由 Google Play 帳款服務程式庫已淘汰的 querySkuDetailsAsync() 方法傳回。

每項訂閱項目只能將一項續訂型基本方案標示為與舊版相容。

legacyCompatibleSubscriptionOfferId

string

訂閱優惠 ID,與舊版相容。

Google Play 帳款服務程式庫已淘汰的 querySkuDetailsAsync() 方法,會傳回回溯相容的訂閱優惠。

針對特定續訂基本方案,您只能將一項訂閱方案標示為與舊版相容。

如不需要將訂閱優惠設為與舊版相容的,請將這個欄位設為空白字串。

ResubscribeState

基本方案的重新訂閱狀態。

列舉
RESUBSCRIBE_STATE_UNSPECIFIED 未指定狀態。
RESUBSCRIBE_STATE_ACTIVE 已啟用重新訂閱功能。
RESUBSCRIBE_STATE_INACTIVE 無法重新訂閱。

SubscriptionProrationMode

用於續訂基本方案的依比例計費模式。

列舉
SUBSCRIPTION_PRORATION_MODE_UNSPECIFIED 未指定模式。
SUBSCRIPTION_PRORATION_MODE_CHARGE_ON_NEXT_BILLING_DATE 系統會在使用者目前的帳單週期結束時,向使用者收取新基本方案的費用。
SUBSCRIPTION_PRORATION_MODE_CHARGE_FULL_PRICE_IMMEDIATELY 系統會立即向使用者收取新的基本方案費用。現有訂閱方案的剩餘約期將用於延長新計費方案的效期。

PrepaidBasePlanType

代表的基本方案不會在基本方案結束時自動續訂,必須由使用者手動續訂。

JSON 表示法
{
  "billingPeriodDuration": string,
  "timeExtension": enum (TimeExtension)
}
欄位
billingPeriodDuration

string

必要欄位。以 ISO 8601 格式指定的訂閱期。如要查看可接受的帳單週期清單,請參閱說明中心。

timeExtension

enum (TimeExtension)

使用者是否應能在 Google Play 途徑中延長這項預付基本方案的效期。如未指定,預設為 TIME_EXTENSION_ACTIVE。

TimeExtension

基本方案時間展延。

列舉
TIME_EXTENSION_UNSPECIFIED 未指定狀態。
TIME_EXTENSION_ACTIVE 已啟用時間額外資訊。使用者可以儲值或延長預付方案。
TIME_EXTENSION_INACTIVE 時間額外資訊已停用。使用者無法儲值或延長預付方案。

InstallmentsBasePlanType

代表使用者承諾支付指定金額的分期付款基本方案。

JSON 表示法
{
  "billingPeriodDuration": string,
  "committedPaymentsCount": integer,
  "renewalType": enum (RenewalType),
  "gracePeriodDuration": string,
  "accountHoldDuration": string,
  "resubscribeState": enum (ResubscribeState),
  "prorationMode": enum (SubscriptionProrationMode)
}
欄位
billingPeriodDuration

string

必要欄位。以 ISO 8601 格式指定的訂閱期。如要查看可接受的帳單週期清單,請參閱說明中心。

committedPaymentsCount

integer

必要欄位。使用者承諾的付款次數。

renewalType

enum (RenewalType)

必要欄位。分期付款基本方案續訂類型。決定初始使用承諾結束時的行為。

gracePeriodDuration

string

訂閱的寬限期,以 ISO 8601 格式指定。可接受的值為 P0D (零天)、P3D (3 天)、P7D (7 天)、P14D (14 天) 和 P30D (30 天)。如未指定,系統會根據週期持續時間使用預設值。

accountHoldDuration

string

選用設定。訂閱項目的帳戶保留期,僅以天為單位和 ISO 8601 格式指定。可接受的值為 P0D (零天) 至 P30D (30 天)。如未指定,則預設值為 P30D (30 天)。

resubscribeState

enum (ResubscribeState)

是否應讓使用者在 Google Play 途徑重新訂閱這項基本方案。如未指定,預設為 RELICENSE_STATE_ACTIVE。

prorationMode

enum (SubscriptionProrationMode)

基本方案的依比例計費模式可決定使用者從其他基本方案改用資費方案時,會發生什麼事。如果未指定,則預設為 CHARGE_ON_NEXT_BILLING_DATE。

RenewalType

分期付款基本方案續訂類型。決定初始使用承諾結束時的行為。

列舉
RENEWAL_TYPE_UNSPECIFIED 未指定狀態。
RENEWAL_TYPE_RENEWS_WITHOUT_COMMITMENT 無須綁約,在帳單週期內定期續約。
RENEWAL_TYPE_RENEWS_WITH_COMMITMENT 續約時,使用與最初相同的承諾使用時間長度。

RegionalBasePlanConfig

特定區域基本方案的設定。

JSON 表示法
{
  "regionCode": string,
  "newSubscriberAvailability": boolean,
  "price": {
    object (Money)
  }
}
欄位
regionCode

string

必要欄位。這項設定適用的區域代碼 (根據 ISO 3166-2 的定義),例如「US」。

newSubscriberAvailability

boolean

指定區域的基本方案是否適用於新訂閱者。如果這個值設為 False,現有訂閱者將不會取消訂閱。如果未指定,將預設為 false。

price

object (Money)

指定區域的基本方案價格。如果新訂閱者適用基本方案,就必須設定價格。設定時必須使用與指定區域連結的貨幣。

OtherRegionsBasePlanConfig

Google Play 可能會在發布新地區時提供定價資訊。

JSON 表示法
{
  "usdPrice": {
    object (Money)
  },
  "eurPrice": {
    object (Money)
  },
  "newSubscriberAvailability": boolean
}
欄位
usdPrice

object (Money)

必要欄位。在 Google Play 可能推出任何新地區適用的價格 (以美元為單位)。

eurPrice

object (Money)

必要欄位。Google Play 可能推出任何新地區適用的價格 (以歐元)。

newSubscriberAvailability

boolean

在 Play 可能推出的新地區,是否提供基本方案供新訂閱者使用。如果未指定,將預設為 false。

SubscriptionListing

消費者可見的訂閱項目中繼資料。

JSON 表示法
{
  "languageCode": string,
  "title": string,
  "benefits": [
    string
  ],
  "description": string
}
欄位
languageCode

string

必要欄位。此資訊 (由 BCP-47 定義) 的語言,例如:「en-US」。

title

string

必要欄位。這個訂閱項目的標題,採用這個商店資訊的語言。純文字。

benefits[]

string

使用者在 Play 商店和還原流程等平台上看到的福利清單 (以這則商店資訊的語言顯示)。純文字。已排序的清單,最多列出四項福利。

description

string

這個訂閱項目的說明,顯示這個商店資訊的語言。長度上限為 80 個半形字元。純文字。

RestrictedPaymentCountries

如要購買這項產品的國家/地區,您只能在同一國家/地區註冊付款方式。如果留空,系統就不會對付款地區設限。

JSON 表示法
{
  "regionCodes": [
    string
  ]
}
欄位
regionCodes[]

string

必要欄位。要對 ISO 3166-2 定義套用付款限制的區碼,例如「US」。

方法

archive
(deprecated)

已淘汰:不支援訂閱項目封存功能。

batchGet

讀取一或多個訂閱項目。

batchUpdate

更新批次訂閱項目。

create

建立新的訂閱項目。

delete

刪除訂閱項目。

get

讀取單一訂閱項目。

list

列出特定應用程式下的所有訂閱項目。

patch

更新現有的訂閱項目。