REST Resource: monetization.onetimeproducts.purchaseOptions.offers

资源:OneTimeProductOffer

针对一次性商品的单项优惠。

JSON 表示法
{
  "packageName": string,
  "productId": string,
  "purchaseOptionId": string,
  "offerId": string,
  "state": enum (State),
  "regionalPricingAndAvailabilityConfigs": [
    {
      object (RegionalPricingAndAvailabilityConfig)
    }
  ],
  "offerTags": [
    {
      object (OfferTag)
    }
  ],
  "regionsVersion": {
    object (RegionsVersion)
  },

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "preOrderOffer": {
    object (OneTimeProductPreOrderOffer)
  },
  "discountedOffer": {
    object (OneTimeProductDiscountedOffer)
  },
  "gameRewardOffer": {
    object (OneTimeProductGameRewardOffer)
  }
  // End of mutually exclusive fields.
}
字段
packageName

string

必需。不可变。父级商品所属应用的软件包名称。

productId

string

必需。不可变。相应优惠所属父级商品的 ID。

purchaseOptionId

string

必需。不可变。延伸出相应优惠的购买选项的 ID。

offerId

string

必需。不可变。相应商品优惠的 ID。在购买选项中必须是唯一的。必须以数字或小写字母开头,并且只能包含小写字母 (a-z)、数字 (0-9) 和连字符 (-)。长度上限为 63 个字符。

state

enum (State)

仅限输出。相应优惠的当前状态。此字段无法通过更新资源进行更改。请改用专用端点。

regionalPricingAndAvailabilityConfigs[]

object (RegionalPricingAndAvailabilityConfig)

相应优惠的一组地区定价和提供情况信息。不能存在具有相同 regionCode 的重复条目。

offerTags[]

object (OfferTag)

可选。为相应优惠指定的自定义标记的列表(最多 20 个),这些标记会通过结算库返回到应用。

regionsVersion

object (RegionsVersion)

仅限输出。用于生成一次性商品优惠的地区配置版本。

相应优惠的类型。必须且只能设置一个值。以下是互斥字段列表。在响应中,最多只能设置其中一个字段:
preOrderOffer

object (OneTimeProductPreOrderOffer)

预订优惠。

discountedOffer

object (OneTimeProductDiscountedOffer)

折扣优惠。

gameRewardOffer

object (OneTimeProductGameRewardOffer)

游戏奖励优惠。

互斥字段结束。

州

相应优惠的当前状态。

枚举
STATE_UNSPECIFIED 默认值,切勿使用。
DRAFT 目前未向用户提供相应优惠,以前也从未向用户提供过。
ACTIVE 目前向用户提供相应优惠,用户只要满足条件即可享受。
CANCELLED 此状态是预订专属状态。表示相应优惠已取消,目前不向用户提供。与相应优惠相关的所有待处理订单均已取消。
INACTIVE 此状态是折扣优惠专属状态。不再向用户提供相应优惠。

OneTimeProductPreOrderOffer

预订优惠的专属配置。

JSON 表示法
{
  "startTime": string,
  "endTime": string,
  "releaseTime": string,
  "priceChangeBehavior": enum (PreOrderPriceChangeBehavior)
}
字段
startTime

string (Timestamp format)

必需。预订开始的时间。

采用 RFC 3339 标准,生成的输出将始终进行 Z 规范化(即转换为 UTC 零时区格式并在末尾附加 Z),并使用 0、3、6 或 9 个小数位。不进行“Z”归一化处理的偏差时间也是可以接受的。示例:"2014-10-02T15:01:23Z"、"2014-10-02T15:01:23.045123456Z" 或 "2014-10-02T15:01:23+05:30"。

endTime

string (Timestamp format)

必需。预订截止的时间。

采用 RFC 3339 标准,生成的输出将始终进行 Z 规范化(即转换为 UTC 零时区格式并在末尾附加 Z),并使用 0、3、6 或 9 个小数位。不进行“Z”归一化处理的偏差时间也是可以接受的。示例:"2014-10-02T15:01:23Z"、"2014-10-02T15:01:23.045123456Z" 或 "2014-10-02T15:01:23+05:30"。

releaseTime

string (Timestamp format)

必需。发布与预订相关联的商品并履行预订订单的时间。

采用 RFC 3339 标准,生成的输出将始终进行 Z 规范化(即转换为 UTC 零时区格式并在末尾附加 Z),并使用 0、3、6 或 9 个小数位。不进行“Z”归一化处理的偏差时间也是可以接受的。示例:"2014-10-02T15:01:23Z"、"2014-10-02T15:01:23.045123456Z" 或 "2014-10-02T15:01:23+05:30"。

priceChangeBehavior

enum (PreOrderPriceChangeBehavior)

必需。不可变。指定价格变动对现有预订的影响。

PreOrderPriceChangeBehavior

指定价格变动对现有预订的影响。

枚举
PRE_ORDER_PRICE_CHANGE_BEHAVIOR_UNSPECIFIED 未指定价格变动行为。不得使用。
PRE_ORDER_PRICE_CHANGE_BEHAVIOR_TWO_POINT_LOWEST 向买家收取的价格为预订时的初始价格和发布日期最终报价之间的最低价格。
PRE_ORDER_PRICE_CHANGE_BEHAVIOR_NEW_ORDERS_ONLY 无论预订后价格是否发生变化,买家都将以预订时的价格购买商品。

OneTimeProductDiscountedOffer

折扣优惠的专属配置。

JSON 表示法
{
  "startTime": string,
  "endTime": string,
  "redemptionLimit": string
}
字段
startTime

string (Timestamp format)

开始提供优惠的时间。

采用 RFC 3339 标准,生成的输出将始终进行 Z 规范化(即转换为 UTC 零时区格式并在末尾附加 Z),并使用 0、3、6 或 9 个小数位。不进行“Z”归一化处理的偏差时间也是可以接受的。示例:"2014-10-02T15:01:23Z"、"2014-10-02T15:01:23.045123456Z" 或 "2014-10-02T15:01:23+05:30"。

endTime

string (Timestamp format)

停止提供优惠的时间。

采用 RFC 3339 标准,生成的输出将始终进行 Z 规范化(即转换为 UTC 零时区格式并在末尾附加 Z),并使用 0、3、6 或 9 个小数位。不进行“Z”归一化处理的偏差时间也是可以接受的。示例:"2014-10-02T15:01:23Z"、"2014-10-02T15:01:23.045123456Z" 或 "2014-10-02T15:01:23+05:30"。

redemptionLimit

string (int64 format)

可选。此优惠可兑换的次数。如果未设置或设置为 0,则允许无限次兑换优惠。否则,必须是 1 到 50 之间的数字(含边界值)。

OneTimeProductGameRewardOffer

游戏奖励优惠的专属配置。

JSON 表示法
{
  "redemptionLimit": string
}
字段
redemptionLimit

string (int64 format)

可选。此优惠可兑换的次数。如果未设置或设置为 0,则允许无限次兑换优惠。否则,必须是 1 到 50 之间的数字(含边界值)。

RegionalPricingAndAvailabilityConfig

一次性商品优惠的地区定价和提供情况配置。

JSON 表示法
{
  "regionCode": string,
  "availability": enum (Availability),

  // The following is a list of mutually exclusive fields. At most one of the
  // fields will be set in a response:
  "noOverride": {
    object (OneTimeProductOfferNoPriceOverrideOptions)
  },
  "relativeDiscount": number,
  "absoluteDiscount": {
    object (Money)
  },
  "free": {
    object
  }
  // End of mutually exclusive fields.
}
字段
regionCode

string

必需。相应配置适用地区的地区代码(按照 ISO 3166-2 的定义),例如“US”。

availability

enum (Availability)

必需。相应地区的优惠提供情况。

相应优惠的价格替换设置。必须且只能设置一个值。以下是互斥字段列表。在响应中,最多只能设置其中一个字段:
noOverride

object (OneTimeProductOfferNoPriceOverrideOptions)

将使用相应地区适用的购买选项中定义的价格。

relativeDiscount

number

从购买选项价格中扣除的折扣百分比,指定为严格大于 0 且严格小于 1 的小数。例如,值为 0.8 表示 80% 的折扣,这意味着如果购买选项价格为 100 美元,则优惠价格为 20 美元。最终价格将四舍五入到最接近的可结算单位(例如美元将舍入到美分)。如果折扣价格最终低于相应地区允许的最低价格,则相对折扣会被视为无效。

absoluteDiscount

object (Money)

从购买选项价格中扣除的折扣绝对值。

该值应介于 0 和购买选项价格之间。

free

object

此优惠免费。

互斥字段结束。

OneTimeProductOfferNoPriceOverrideOptions

此类型没有字段。

一次性商品优惠适用的选项,不包含地区价格替换设置。

可用性

相应优惠的提供情况。

枚举
AVAILABILITY_UNSPECIFIED 未指定提供情况。不得使用。
AVAILABLE 目前向用户提供相应优惠。
NO_LONGER_AVAILABLE 不再向用户提供相应优惠。只有在之前曾将优惠提供情况设置为 AVAILABLE 的情况下才能使用此值。

方法

activate

激活一项一次性商品优惠。

batchDelete

删除一项或多项一次性商品优惠。

batchGet

读取一项或多项一次性商品优惠。

batchUpdate

创建或更新一项或多项一次性商品优惠。

batchUpdateStates

批量更新一次性商品优惠状态。

cancel

取消一项一次性商品优惠。

deactivate

停用一次性商品优惠。

list

列出指定应用、商品或购买选项下的所有优惠。

错误代码

此资源相关操作将返回以下 HTTP 错误代码:

错误代码 原因 说明 解决方案