- 资源:SubscriptionOffer
- 状态
- SubscriptionOfferPhase
- RegionalSubscriptionOfferPhaseConfig
- RegionalSubscriptionOfferPhaseFreePriceOverride
- OtherRegionsSubscriptionOfferPhaseConfig
- OtherRegionsSubscriptionOfferPhasePrices
- OtherRegionsSubscriptionOfferPhaseFreePriceOverride
- SubscriptionOfferTargeting
- AcquisitionTargetingRule
- TargetingRuleScope
- TargetingRuleScopeThisSubscription
- TargetingRuleScopeAnySubscriptionInApp
- UpgradeTargetingRule
- RegionalSubscriptionOfferConfig
- OtherRegionsSubscriptionOfferConfig
- 方法
资源:SubscriptionOffer
单个临时优惠
JSON 表示法 |
---|
{ "packageName": string, "productId": string, "basePlanId": string, "offerId": string, "state": enum ( |
字段 | |
---|---|
packageName |
必需。不可变。父级订阅所属应用的软件包名称。 |
productId |
必需。不可变。相应优惠所属父级订阅的 ID。 |
basePlanId |
必需。不可变。基础方案的 ID(相应优惠延伸自该基础方案)。 |
offerId |
必需。不可变。相应订阅优惠的唯一 ID。在基础方案中必须具有唯一性。 |
state |
仅限输出。相应优惠的当前状态。可以使用“激活”和“停用”操作进行更改。注意:基础方案状态可取代此状态,因此,如果基础方案无效,有效优惠可能不可用。 |
phases[] |
必需。相应订阅优惠的阶段。必须包含至少一个条目,最多可以包含两个条目。用户将始终以指定顺序进入所有这些阶段。 |
targeting |
用户为获得享受相应优惠的资格而需满足的要求。表示 Play 在决定是否应返回优惠时会评估的要求。开发者可自行进一步过滤这些优惠。 |
regionalConfigs[] |
必需。相应优惠在特定地区的专用配置。必须包含至少一个条目。 |
otherRegionsConfig |
Play 未来可能新增的任何地区所对应的配置。 |
offerTags[] |
为相应优惠指定、通过结算库返回到应用的自定义标记的列表(最多 20 个自定义标记)。 |
州
订阅优惠的当前状态。
枚举 | |
---|---|
STATE_UNSPECIFIED |
默认值,切勿使用。 |
DRAFT |
目前未向用户提供相应订阅优惠,以前也从未向用户提供过。 |
ACTIVE |
新用户和现有用户均可享受相应订阅优惠。 |
INACTIVE |
新用户无法享受相应订阅优惠。现有用户可继续享受相应订阅优惠。 |
SubscriptionOfferPhase
订阅优惠的单个阶段。
JSON 表示法 |
---|
{ "recurrenceCount": integer, "duration": string, "regionalConfigs": [ { object ( |
字段 | |
---|---|
recurrenceCount |
必需。相应阶段重复的次数。如果相应优惠阶段不是免费阶段,则每次重复都会向用户收取该优惠阶段的费用。 |
duration |
必需。相应阶段单次重复的时长。采用 ISO 8601 格式指定。 |
regionalConfigs[] |
必需。相应优惠阶段在特定地区的专用配置。对于订阅优惠具有地区专用配置的每个地区,此列表必须仅包含一个条目。 |
otherRegionsConfig |
Play 未来可能新增的任何地区所对应的定价信息。 |
RegionalSubscriptionOfferPhaseConfig
订阅优惠在单个地区的单个阶段所对应的配置。
JSON 表示法 |
---|
{ "regionCode": string, // Union field |
字段 | |
---|---|
regionCode |
必需。不可变。相应配置要应用到的地区。 |
联合字段 price_override 。相应阶段的价格替换项。必需。price_override 只能是下列其中一项: |
|
price |
用户为相应优惠阶段支付的绝对价格。该价格不得低于相应地区允许的最低价格。 |
relativeDiscount |
相应优惠阶段向用户收取的价格在基于阶段时长按比例折算的基础方案价格中的占比(以小数表示)。例如,如果基础方案在相应地区 1 年期的价格为 12 美元,那么对于时长为 3 个月的阶段而言,50% 的折扣对应 1.50 美元的价格。必须将折扣指定为一个严格大于 0 且严格小于 1 的小数。最终价格将四舍五入到最接近的可结算单位(例如美元将舍入到美分)。如果折扣价格最终低于相应地区允许的最低价格,则相对折扣会被视为无效。 |
absoluteDiscount |
从基础方案价格中减去的根据相应优惠阶段时长按比例计算的绝对金额。例如,如果基础方案在相应地区 1 年期的价格为 12 美元,那么对于时长为 3 个月的阶段而言,1 美元的绝对折扣对应 2 美元的价格。最终价格不得低于相应地区允许的最低价格。 |
free |
若要指定相应优惠可免费获取,请设置此字段。 |
RegionalSubscriptionOfferPhaseFreePriceOverride
此类型没有字段。
表示订阅优惠的单个阶段的免费价格替换配置
OtherRegionsSubscriptionOfferPhaseConfig
对于单个优惠阶段,Play 未来可能新增的任何地区所对应的配置。
JSON 表示法 |
---|
{ // Union field |
字段 | |
---|---|
联合字段 price_override 。相应阶段的价格替换项。必需。price_override 只能是下列其中一项: |
|
otherRegionsPrices |
用户为相应优惠阶段支付的绝对价格。该价格不得低于 Play 未来可能新增的任何地区允许的最低价格。 |
relativeDiscount |
相应优惠阶段向用户收取的价格在基于阶段时长按比例折算的基础方案价格中的占比(以小数表示)。例如,如果基础方案在相应地区 1 年期的价格为 12 美元,那么对于时长为 3 个月的阶段而言,50% 的折扣对应 1.50 美元的价格。必须将折扣指定为一个严格大于 0 且严格小于 1 的小数。最终价格将四舍五入到最接近的可结算单位(例如美元将舍入到美分)。如果折扣价格最终低于 Play 未来可能新增的任何地区允许的最低价格,则相对折扣会被视为无效。 |
absoluteDiscounts |
从基础方案价格中减去的根据相应优惠阶段时长按比例计算的绝对金额。例如,如果基础方案在相应地区 1 年期的价格为 12 美元,那么对于时长为 3 个月的阶段而言,1 美元的绝对折扣对应 2 美元的价格。最终价格不得低于 Play 未来可能新增的任何地区允许的最低价格。 |
free |
若要指定相应优惠可免费获取,请设置此字段。 |
OtherRegionsSubscriptionOfferPhasePrices
Play 未来可能新增的任何地区所对应的定价信息。
JSON 表示法 |
---|
{ "usdPrice": { object ( |
字段 | |
---|---|
usdPrice |
必需。要在 Play 未来可能新增的任何地区使用的价格(以美元为单位)。 |
eurPrice |
必需。要在 Play 未来可能新增的任何地区使用的价格(以欧元为单位)。 |
OtherRegionsSubscriptionOfferPhaseFreePriceOverride
此类型没有字段。
表示对于单个优惠阶段,Play 未来可能新增的任何地区所对应的免费价格替换配置。
SubscriptionOfferTargeting
定义用户为获得相应优惠需要满足的规则。
JSON 表示法 |
---|
{ // Union field |
字段 | |
---|---|
联合字段 rule 。若要使用由开发者决定的优惠资格条件,请将此字段留空。rule 只能是下列其中一项: |
|
acquisitionRule |
想要获取新用户时适用的优惠定位规则。 |
upgradeRule |
想要吸引用户升级现有方案时适用的优惠定位规则。 |
AcquisitionTargetingRule
表示如下形式的定位规则:用户以前从未订阅过“{scope}”。
JSON 表示法 |
---|
{
"scope": {
object ( |
字段 | |
---|---|
scope |
必需。相应规则适用的订阅范围。仅允许“此订阅”和“应用中的任何订阅”。 |
TargetingRuleScope
定义定位规则可以匹配的订阅范围,以根据过去或当前使用权拥有情况向用户提供优惠。
JSON 表示法 |
---|
{ // Union field |
字段 | |
---|---|
联合字段
|
|
thisSubscription |
当前定位规则的范围是定义了相应优惠的订阅。 |
anySubscriptionInApp |
当前定位规则的范围是父级应用中的任何订阅。 |
specificSubscriptionInApp |
当前定位规则的范围是具有特定订阅 ID 的订阅。必须是同一父级应用中的订阅。 |
TargetingRuleScopeThisSubscription
此类型没有字段。
表示与定义了相应优惠的订阅对应的定位规则范围。
TargetingRuleScopeAnySubscriptionInApp
此类型没有字段。
表示与父级应用中的任何订阅对应的定位规则范围。
UpgradeTargetingRule
表示如下形式的定位规则:用户当前订阅了“{scope}”[结算周期为 {billing_period}]。
JSON 表示法 |
---|
{
"oncePerUser": boolean,
"scope": {
object ( |
字段 | |
---|---|
oncePerUser |
将相应优惠限制为每位用户只能享受一次。如果设置为 true,则曾经享受过相应优惠的用户将永远无法再次获得相应优惠。 |
scope |
必需。相应规则适用的订阅范围。仅允许“此订阅”和“应用中的特定订阅”。 |
billingPeriodDuration |
为符合相应规则,用户当前必须订阅的特定结算周期时长(采用 ISO 8601 格式指定)。如果未指定,则系统会匹配订阅任何结算周期的用户。 |
RegionalSubscriptionOfferConfig
订阅优惠在单个地区对应的配置。
JSON 表示法 |
---|
{ "regionCode": string, "newSubscriberAvailability": boolean } |
字段 | |
---|---|
regionCode |
必需。不可变。相应配置适用地区的地区代码(按照 ISO 3166-2 的定义),例如“US”。 |
newSubscriberAvailability |
用于表示指定地区的订阅优惠是否向新订阅者提供。如果此值设置为 false,系统不会取消现有订阅者的订阅。如果未指定,则默认为 false。 |
OtherRegionsSubscriptionOfferConfig
Play 未来可能新增的任何地区所对应的配置,针对订阅优惠进行指定。
JSON 表示法 |
---|
{ "otherRegionsNewSubscriberAvailability": boolean } |
字段 | |
---|---|
otherRegionsNewSubscriberAvailability |
用于表示订阅优惠是否在 Play 未来可能新增的任何地区提供。如果未指定,则默认为 false。 |
方法 |
|
---|---|
|
激活订阅优惠。 |
|
读取一项或多项订阅优惠。 |
|
批量更新订阅优惠。 |
|
批量更新订阅优惠状态。 |
|
创建新的订阅优惠。 |
|
停用订阅优惠。 |
|
删除订阅优惠。 |
|
读取单项优惠 |
|
列出指定订阅下的全部优惠。 |
|
更新现有订阅优惠。 |
错误代码
此资源的操作会返回以下 HTTP 错误代码:
错误代码 | 原因 | 分辨率 |
---|---|---|
5xx |
Google Play 服务器中的一般错误。 | 请重试您的请求。
如果问题仍然存在,请与您的 Google Play 客户经理联系,或提交支持请求。 不妨查看 Play 状态信息中心,了解是否存在任何已知的中断。 |
409 |
并发更新错误。
尝试更新正在更新的对象。例如,通过同时调用 Play 结算库的 |
请重试您的请求。 |