- Ресурс: 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 |
Обязательно. Не меняется. Идентификатор родительской подписки, к которой относится предложение. |
basePlanId |
Обязательно. Не меняется. Идентификатор основного плана, к которому относится это предложение. |
offerId |
Обязательно. Не меняется. Уникальный идентификатор этого специального предложения. У каждого специального предложения должен быть уникальный идентификатор. |
state |
Только для вывода. Текущий статус предложения. Его можно изменить с помощью действий "Активировать" и "Деактивировать". Примечание. Статус основного плана имеет приоритет над статусом специального предложения, поэтому активное предложение может быть недоступно, если основной план неактивен. |
phases[] |
Обязательно. Этапы этого предложения подписки. Должно содержать от одной до двух записей. Пользователи всегда будут проходить все эти этапы в указанном порядке. |
targeting |
Требования, которые должны выполнить пользователи, чтобы воспользоваться предложением. Требования, которые Google Play будет оценивать, чтобы решить, нужно ли возвращать специальное предложение. Разработчики могут дополнительно фильтровать эти предложения. |
regionalConfigs[] |
Обязательно. Региональная конфигурация этого предложения. Должно содержать хотя бы одну запись. |
otherRegionsConfig |
Конфигурация для новых регионов, которые Google Play может поддерживать в будущем. |
offerTags[] |
Список, содержащий до 20 специальных тегов, которые указаны для этого специального предложения и возвращаются в приложение через библиотеку Google Play Платежей. |
Штат
Текущий статус специального предложения.
| Перечисления | |
|---|---|
STATE_UNSPECIFIED |
Значение по умолчанию, которое не должно использоваться. |
DRAFT |
Предложение подписки недоступно и никогда не было доступно пользователям. |
ACTIVE |
Предложение доступно новым и существующим пользователям. |
INACTIVE |
Специальное предложение недоступно новым пользователям. Существующие пользователи сохранят доступ. |
SubscriptionOfferPhase
Один этап специального предложения.
| JSON-представление |
|---|
{ "recurrenceCount": integer, "duration": string, "regionalConfigs": [ { object ( |
| Поля | |
|---|---|
recurrenceCount |
Обязательно. Количество повторений этого этапа. Если этап не бесплатный, то при каждом повторении с пользователя будет списываться его стоимость. |
duration |
Обязательно. Продолжительность одного повторения этого этапа. Указывается в формате ISO 8601. |
regionalConfigs[] |
Обязательно. Региональная конфигурация этого этапа специального предложения. Этот список должен содержать ровно одну запись для каждого региона, для которого в специальном предложении есть региональная конфигурация. |
otherRegionsConfig |
Информация о ценах для новых регионов, в которых может быть запущен Google Play. |
RegionalSubscriptionOfferPhaseConfig
Конфигурация для одного этапа специального предложения в одном регионе.
| JSON-представление |
|---|
{ "regionCode": string, // The following is a list of mutually exclusive fields. At most one of the // fields will be set in a response: "price": { object ( |
| Поля | |
|---|---|
regionCode |
Обязательно. Не меняется. Регион, к которому применяется эта конфигурация. |
| Переопределение цены для этого этапа. Обязательно. Ниже приведен список взаимоисключающих полей. В ответе будет задано не более одного из следующих полей: | |
price |
Абсолютная цена, которую пользователь платит за этот этап специального предложения. Цена не должна быть ниже минимальной цены, разрешенной для этого региона. |
relativeDiscount |
Процент скидки, вычитаемый из цены основного плана, пропорционально распределенный по продолжительности этапа, указанный в виде доли, строго большей |
absoluteDiscount |
Абсолютная сумма, вычитаемая из цены основного плана, пропорционально распределенная по продолжительности этапа. Например, если цена основного плана для этого региона составляет 12 долларов США за 1 год, то абсолютная скидка в размере 1 доллара США для периода продолжительностью 3 месяца будет соответствовать цене 2 доллара США. Итоговая цена не может быть меньше минимальной цены, разрешенной для этого региона. |
free |
Укажите, что предложение бесплатное. |
| Конец взаимоисключающих полей. | |
RegionalSubscriptionOfferPhaseFreePriceOverride
У этого типа нет полей.
Представляет конфигурацию переопределения бесплатной цены для одного этапа специального предложения.
OtherRegionsSubscriptionOfferPhaseConfig
Настройка для новых регионов, в которых Google Play может запустить одну фазу специального предложения.
| JSON-представление |
|---|
{ // The following is a list of mutually exclusive fields. At most one of the // fields will be set in a response: "otherRegionsPrices": { object ( |
| Поля | |
|---|---|
| Переопределение цены для этого этапа. Обязательно. Ниже приведен список взаимоисключающих полей. В ответе будет задано не более одного из следующих полей: | |
otherRegionsPrices |
Абсолютная цена, которую пользователь платит за этот этап специального предложения. Цена не должна быть ниже минимальной цены, разрешенной для новых регионов, в которых может быть запущен Google Play. |
relativeDiscount |
Процент скидки, вычитаемый из цены основного плана, пропорционально распределенный по продолжительности этапа, указанный в виде доли, строго большей |
absoluteDiscounts |
Абсолютная сумма, вычитаемая из цены основного плана, пропорционально распределенная по продолжительности этапа. Например, если цена основного плана для этого региона составляет 12 долларов США за 1 год, то абсолютная скидка в размере 1 доллара США для периода продолжительностью 3 месяца будет соответствовать цене 2 доллара США. Итоговая цена не может быть меньше минимальной цены, разрешенной для новых регионов, в которых может быть запущен Google Play. |
free |
Укажите, что предложение бесплатное. |
| Конец взаимоисключающих полей. | |
OtherRegionsSubscriptionOfferPhasePrices
Информация о ценах для новых регионов, в которых может быть запущен Google Play.
| JSON-представление |
|---|
{ "usdPrice": { object ( |
| Поля | |
|---|---|
usdPrice |
Обязательно. Цена в долларах США, которая будет использоваться в новых странах, где станет доступен Google Play. |
eurPrice |
Обязательно. Цена в евро, которая будет использоваться для новых регионов, где может появиться Google Play. |
OtherRegionsSubscriptionOfferPhaseFreePriceOverride
У этого типа нет полей.
Представляет конфигурацию переопределения цены для новых регионов, в которых Google Play может запустить этап специального предложения.
SubscriptionOfferTargeting
Определяет правило, которому должен соответствовать пользователь, чтобы получить это предложение.
| JSON-представление |
|---|
{ // The following is a list of mutually exclusive fields. At most one of the // fields will be set in a response: "acquisitionRule": { object ( |
| Поля | |
|---|---|
| Если оставить поле пустым, соответствие требованиям будет определять разработчик. Ниже приведен список взаимоисключающих полей. В ответе будет задано не более одного из следующих полей: | |
acquisitionRule |
Правило таргетинга специальных предложений для привлечения новых пользователей. |
upgradeRule |
Правило таргетинга специальных предложений для пользователей, которые хотят перейти на более дорогой план. |
| Конец взаимоисключающих полей. | |
AcquisitionTargetingRule
Представляет правило таргетинга в форме: у пользователя никогда не было {scope}.
| JSON-представление |
|---|
{
"scope": {
object ( |
| Поля | |
|---|---|
scope |
Обязательно. Область действия подписок, к которым применяется это правило. Доступны только варианты "Эта подписка" и "Любая подписка в приложении". |
TargetingRuleScope
Определяет область действия подписок, которым может соответствовать правило таргетинга, чтобы предлагать пользователям специальные предложения на основе прошлых или текущих прав.
| JSON-представление |
|---|
{ // The following is a list of mutually exclusive fields. At most one of the // fields will be set in a response: "thisSubscription": { object ( |
| Поля | |
|---|---|
| Ниже приведен список взаимоисключающих полей. В ответе будет задано не более одного из следующих полей: | |
thisSubscription |
Область действия текущего правила таргетинга – подписка, в которой определено это специальное предложение. |
anySubscriptionInApp |
Область действия текущего правила таргетинга – любая подписка в родительском приложении. |
specificSubscriptionInApp |
Область действия текущего правила таргетинга – подписка с указанным идентификатором. Подписка должна быть в том же родительском приложении. |
| Конец взаимоисключающих полей. | |
TargetingRuleScopeThisSubscription
У этого типа нет полей.
Представляет область действия правила таргетинга, соответствующую подпискам, в которых определено это предложение.
TargetingRuleScopeAnySubscriptionInApp
У этого типа нет полей.
Область действия правила таргетинга, соответствующая любой подписке в родительском приложении.
UpgradeTargetingRule
Представляет правило таргетинга в форме: у пользователя сейчас есть {scope} [с расчетным периодом {billingPeriod}].
| 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
Конфигурация для новых регионов, в которых Google Play может запустить специальное предложение.
| JSON-представление |
|---|
{ "otherRegionsNewSubscriberAvailability": boolean } |
| Поля | |
|---|---|
otherRegionsNewSubscriberAvailability |
Будет ли предложение доступно в новых регионах, которые со временем станут поддерживаться в Google Play. Если значение не указано, по умолчанию используется false. |
Методы |
|
|---|---|
|
Активирует специальное предложение. |
|
Считывает одно или несколько специальных предложений. |
|
Обновляет пакет специальных предложений. |
|
Обновляет группу статусов специальных предложений. |
|
Создает специальное предложение. |
|
Деактивирует специальное предложение. |
|
Удаляет специальное предложение. |
|
Считывает одно предложение. |
|
Список всех специальных предложений в рамках подписки. |
|
Обновляет существующее специальное предложение. |
Коды ошибок
Операции этого ресурса возвращают следующие коды ошибок HTTP:
| Код ошибки | Причина | Описание | Разрешение |
|---|