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

Обязательно. Не меняется. Идентификатор родительского товара, к которому относится это предложение.

purchaseOptionId

string

Обязательно. Не меняется. Идентификатор способа покупки, дополнением к которому является это предложение.

offerId

string

Обязательно. Не меняется. Идентификатор предложения товара. У каждого способа покупки должен быть уникальный идентификатор. Он должен начинаться с цифры или строчной буквы и может содержать только строчные буквы (a–z), цифры (0–9) и дефисы (-). Максимальная длина – 63 символа.

state

enum (State)

Только для вывода. Текущий статус предложения. Это поле нельзя изменить путем обновления ресурса. Используйте вместо этого специальные конечные точки.

regionalPricingAndAvailabilityConfigs[]

object (RegionalPricingAndAvailabilityConfig)

Набор сведений о ценах и наличии товаров на уровне региона для этого предложения. Не должно быть повторяющихся записей с одинаковым кодом региона.

offerTags[]

object (OfferTag)

Необязательное поле. Список, содержащий до 20 специальных тегов, которые указаны для этого специального предложения и возвращаются в приложение через библиотеку Google Play Платежей.

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-нормализованным, и в нем будут использоваться цифры дробных частей 0, 3, 6 или 9. Допустимы и другие типы нормализации. Примеры: "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-нормализованным, и в нем будут использоваться цифры дробных частей 0, 3, 6 или 9. Допустимы и другие типы нормализации. Примеры: "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-нормализованным, и в нем будут использоваться цифры дробных частей 0, 3, 6 или 9. Допустимы и другие типы нормализации. Примеры: "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-нормализованным, и в нем будут использоваться цифры дробных частей 0, 3, 6 или 9. Допустимы и другие типы нормализации. Примеры: "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-нормализованным, и в нем будут использоваться цифры дробных частей 0, 3, 6 или 9. Допустимы и другие типы нормализации. Примеры: "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)

Абсолютное значение скидки, которая вычитается из стоимости способа покупки.

Значение должно быть больше нуля и меньше цены варианта покупки.

free

object

Предложение бесплатное.

Конец взаимоисключающих полей.

OneTimeProductOfferNoPriceOverrideOptions

У этого типа нет полей.

Варианты специальных предложений для контента для однократных покупок без переопределения цены на уровне региона.

Доступность

Доступность предложения.

Перечисления
AVAILABILITY_UNSPECIFIED Не указано наличие. Не используйте его.
AVAILABLE Предложение доступно пользователям.
NO_LONGER_AVAILABLE Предложение больше не доступно пользователям. Это значение можно использовать, только если ранее для доступности было задано значение AVAILABLE.

Методы

activate

Активирует предложение, относящееся к контенту для однократных покупок.

batchDelete

Удаляет одно или несколько специальных предложений для однократных покупок.

batchGet

Чтение информации об одном или нескольких специальных предложениях на контент для однократных покупок.

batchUpdate

Создает или обновляет одно или несколько специальных предложений на контент для однократных покупок.

batchUpdateStates

Обновляет группу статусов предложений, относящихся к контенту для однократных покупок.

cancel

Отменяет предложение контента для однократных покупок.

deactivate

Деактивирует предложение, относящееся к контенту для однократных покупок.

list

Возвращает список всех специальных предложений для указанного приложения, товара или способа покупки.

Коды ошибок

Операции этого ресурса возвращают следующие коды ошибок HTTP:

Код ошибки Причина Описание Разрешение