REST Resource: monetization.subscriptions

Ресурс: Подписка

Единая подписка на приложение.

JSON-представление
{
  "packageName": string,
  "productId": string,
  "basePlans": [
    {
      object (BasePlan)
    }
  ],
  "listings": [
    {
      object (SubscriptionListing)
    }
  ],
  "archived": boolean,
  "taxAndComplianceSettings": {
    object (SubscriptionTaxAndComplianceSettings)
  },
  "restrictedPaymentCountries": {
    object (RestrictedPaymentCountries)
  }
}
Поля
package Name

string

Неизменяемый. Имя пакета родительского приложения.

product Id

string

Неизменяемый. Уникальный идентификатор продукта. Уникальный в родительском приложении. Идентификаторы продуктов должны состоять из строчных букв (az), цифр (0–9), символов подчеркивания (_) и точек (.). Он должен начинаться со строчной буквы или цифры и иметь длину от 1 до 40 (включительно) символов.

base Plans[]

object ( BasePlan )

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

listings[]

object ( SubscriptionListing )

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

archived
(deprecated)

boolean

Только вывод. Устарело: архивирование по подписке не поддерживается.

tax And Compliance Settings

object ( SubscriptionTaxAndComplianceSettings )

Подробная информация о налогах и соблюдении законодательства.

restricted Payment Countries

object ( RestrictedPaymentCountries )

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

Базовый план

Единый базовый план для подписки.

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.
}
Поля
base Plan Id

string

Необходимый. Неизменяемый. Уникальный идентификатор этого базового плана. Должно быть уникальным в рамках подписки и соответствовать RFC-1034. То есть этот идентификатор может содержать только строчные буквы (az), цифры (0–9) и дефисы (-) и содержать не более 63 символов.

state

enum ( State )

Только вывод. Состояние базового плана, т. е. активен ли он. Черновые и неактивные базовые планы можно активировать или удалить. Активные базовые планы можно сделать неактивными. Неактивные базовые планы можно отменить. Это поле нельзя изменить путем обновления ресурса. Вместо этого используйте выделенные конечные точки.

regional Configs[]

object ( RegionalBasePlanConfig )

Информация для этого базового плана, специфичная для региона.

offer Tags[]

object ( OfferTag )

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

other Regions Config

object ( OtherRegionsBasePlanConfig )

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

Поле объединения base_plan_type . Тип этого базового плана. Должен быть установлен именно один. Тип базового плана остается неизменным после создания базового плана. base_plan_type может быть только одним из следующих:
auto Renewing Base Plan Type

object ( AutoRenewingBasePlanType )

Установите, когда базовый план автоматически обновляется через регулярные промежутки времени.

prepaid Base Plan Type

object ( PrepaidBasePlanType )

Установите, если базовый план не продлевается автоматически в конце расчетного периода.

installments Base Plan Type

object ( InstallmentsBasePlanType )

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

Состояние

Текущее состояние базового плана.

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

АвтообновлениеBasePlanType

Представляет базовый план, который автоматически продлевается в конце периода подписки.

JSON-представление
{
  "billingPeriodDuration": string,
  "gracePeriodDuration": string,
  "accountHoldDuration": string,
  "resubscribeState": enum (ResubscribeState),
  "prorationMode": enum (SubscriptionProrationMode),
  "legacyCompatible": boolean,
  "legacyCompatibleSubscriptionOfferId": string
}
Поля
billing Period Duration

string

Необходимый. Неизменяемый. Период подписки, указанный в формате ISO 8601. Список приемлемых периодов выставления счетов можно найти в Справочном центре. Продолжительность остается неизменной после создания базового плана.

grace Period Duration

string

Льготный период подписки, указанный в формате ISO 8601. Приемлемые значения должны быть в днях и находиться в диапазоне от P0D до меньшего из 30D и периода выставления счетов по базовому плану.

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

Сумма GracePeriodDuration и accountHoldDuration должна находиться в диапазоне от P30D до P60D дней включительно.

account Hold Duration

string

Необязательный. Период хранения учетной записи подписки, указанный в формате ISO 8601. Приемлемые значения должны быть в днях и находиться в диапазоне от P0D до P60D.

Если не указано, значение по умолчанию — P30D.

Сумма GracePeriodDuration и accountHoldDuration должна находиться в диапазоне от P30D до P60D дней включительно.

resubscribe State

enum ( ResubscribeState )

Должны ли пользователи иметь возможность повторно подписаться на этот базовый план в Google Play. По умолчанию используется RESUBSCRIBE_STATE_ACTIVE, если не указано.

proration Mode

enum ( SubscriptionProrationMode )

Режим пропорционального распределения для базового плана определяет, что произойдет, когда пользователь переключится на этот план с другого базового плана. Если не указано, по умолчанию используется CHARGE_ON_NEXT_BILLING_DATE.

legacy Compatible

boolean

Является ли обновляемый базовый план обратно совместимым.

Базовый план с обратной совместимостью возвращается устаревшим методом querySkuDetailsAsync() библиотеки Google Play.

Только один обновляемый базовый план может быть помечен как совместимый с устаревшими версиями для данной подписки.

legacy Compatible Subscription Offer Id

string

Идентификатор предложения подписки, совместимый с устаревшими версиями.

Предложение подписки с обратной совместимостью возвращается устаревшим методом querySkuDetailsAsync() библиотеки Google Play.

Только одно предложение подписки может быть помечено как совместимое с устаревшими версиями для данного обновляемого базового плана.

Чтобы предложение подписки не было совместимым с устаревшими версиями, установите в этом поле пустую строку.

ResubscribeState

Состояние повторной подписки базового плана.

Перечисления
RESUBSCRIBE_STATE_UNSPECIFIED Неустановленное состояние.
RESUBSCRIBE_STATE_ACTIVE Переподписка активна.
RESUBSCRIBE_STATE_INACTIVE Повторная подписка неактивна.

Режим Прорационирования Подписки

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

Перечисления
SUBSCRIPTION_PRORATION_MODE_UNSPECIFIED Неопределенный режим.
SUBSCRIPTION_PRORATION_MODE_CHARGE_ON_NEXT_BILLING_DATE С пользователей будет взиматься плата за новый базовый план в конце текущего расчетного периода.
SUBSCRIPTION_PRORATION_MODE_CHARGE_FULL_PRICE_IMMEDIATELY Плата за новый базовый план будет взиматься с пользователей немедленно и в полном объеме. Любой оставшийся период существующей подписки будет использован для продления срока действия нового тарифного плана.

Тип предоплаченного базового плана

Представляет базовый план, который не продлевается автоматически по окончании базового плана и должен быть продлен пользователем вручную.

JSON-представление
{
  "billingPeriodDuration": string,
  "timeExtension": enum (TimeExtension)
}
Поля
billing Period Duration

string

Необходимый. Неизменяемый. Период подписки, указанный в формате ISO 8601. Список приемлемых периодов выставления счетов можно найти в Справочном центре. Продолжительность остается неизменной после создания базового плана.

time Extension

enum ( TimeExtension )

Должны ли пользователи иметь возможность расширять этот базовый план с предоплатой в Google Play. По умолчанию — TIME_EXTENSION_ACTIVE, если не указано.

Расширение времени

Продление времени базового плана.

Перечисления
TIME_EXTENSION_UNSPECIFIED Неустановленное состояние.
TIME_EXTENSION_ACTIVE Продление времени активно. Пользователям разрешено пополнять или расширять свой предоплаченный план.
TIME_EXTENSION_INACTIVE Продление времени неактивно. Пользователи не могут пополнить или продлить свой предоплаченный план.

Тип рассрочки

Представляет базовый план с рассрочкой, при котором пользователь обязуется внести определенное количество платежей.

JSON-представление
{
  "billingPeriodDuration": string,
  "committedPaymentsCount": integer,
  "renewalType": enum (RenewalType),
  "gracePeriodDuration": string,
  "accountHoldDuration": string,
  "resubscribeState": enum (ResubscribeState),
  "prorationMode": enum (SubscriptionProrationMode)
}
Поля
billing Period Duration

string

Необходимый. Неизменяемый. Период подписки, указанный в формате ISO 8601. Список приемлемых периодов выставления счетов можно найти в Справочном центре. Продолжительность остается неизменной после создания базового плана.

committed Payments Count

integer

Необходимый. Неизменяемый. Количество платежей, которые обязуется совершить пользователь. Он остается неизменным после создания базового плана.

renewal Type

enum ( RenewalType )

Необходимый. Неизменяемый. Тип продления базового плана «Рассрочка». Определяет поведение в конце первоначального обязательства. Тип продления остается неизменным после создания базового плана.

grace Period Duration

string

Льготный период подписки, указанный в формате ISO 8601. Приемлемые значения должны быть в днях и находиться в диапазоне от P0D до меньшего из 30D и периода выставления счетов по базовому плану.

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

Сумма GracePeriodDuration и accountHoldDuration должна находиться в диапазоне от P30D до P60D дней включительно.

account Hold Duration

string

Необязательный. Период хранения учетной записи подписки, указанный в формате ISO 8601. Приемлемые значения должны быть в днях и находиться в диапазоне от P0D до P60D.

Если не указано, значение по умолчанию — P30D.

Сумма GracePeriodDuration и accountHoldDuration должна находиться в диапазоне от P30D до P60D дней включительно.

resubscribe State

enum ( ResubscribeState )

Должны ли пользователи иметь возможность повторно подписаться на этот базовый план в Google Play. По умолчанию используется RESUBSCRIBE_STATE_ACTIVE, если не указано.

proration Mode

enum ( SubscriptionProrationMode )

Режим пропорционального распределения для базового плана определяет, что произойдет, когда пользователь переключится на этот план с другого базового плана. Если не указано, по умолчанию используется CHARGE_ON_NEXT_BILLING_DATE.

Тип продления

Тип продления базового плана «Рассрочка». Определяет поведение в конце первоначального обязательства. Тип продления остается неизменным после создания базового плана.

Перечисления
RENEWAL_TYPE_UNSPECIFIED Неустановленное состояние.
RENEWAL_TYPE_RENEWS_WITHOUT_COMMITMENT Периодически продлевается на протяжении расчетного периода без каких-либо обязательств.
RENEWAL_TYPE_RENEWS_WITH_COMMITMENT Продлевается с обязательством той же продолжительности, что и первоначальное.

Региональная базовая конфигурация плана

Конфигурация базового плана, специфичного для региона.

JSON-представление
{
  "regionCode": string,
  "newSubscriberAvailability": boolean,
  "price": {
    object (Money)
  }
}
Поля
region Code

string

Необходимый. Код региона, к которому применяется данная конфигурация, согласно определению ISO 3166-2, например «США».

new Subscriber Availability

boolean

Доступен ли базовый план в указанном регионе для новых абонентов. Подписка существующих подписчиков не будет отменена, если для этого значения установлено значение false. Если не указано, по умолчанию будет установлено значение false.

price

object ( Money )

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

Другие регионыBasePlanConfig

Информация о ценах на любые новые места, где может появиться Play.

JSON-представление
{
  "usdPrice": {
    object (Money)
  },
  "eurPrice": {
    object (Money)
  },
  "newSubscriberAvailability": boolean
}
Поля
usd Price

object ( Money )

Необходимый. Цена в долларах США для использования во всех новых местах, где может появиться Play.

eur Price

object ( Money )

Необходимый. Цена указана в евро для любых новых мест, где может появиться Play.

new Subscriber Availability

boolean

Доступен ли базовый план для новых подписчиков в каких-либо новых местах, где может запускаться Play. Если не указано, по умолчанию будет установлено значение false.

ПодпискаЛистинг

Видимые потребителю метаданные подписки.

JSON-представление
{
  "languageCode": string,
  "title": string,
  "benefits": [
    string
  ],
  "description": string
}
Поля
language Code

string

Необходимый. Язык этого списка, как определено BCP-47, например «en-US».

title

string

Необходимый. Название этой подписки на языке этого объявления. Простой текст.

benefits[]

string

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

description

string

Описание этой подписки на языке этого объявления. Максимальная длина – 80 символов. Простой текст.

Ограниченные страны оплаты

Страны, в которых покупка этого продукта ограничена способами оплаты, зарегистрированными в той же стране. Если пусто, ограничения по месту платежа не налагаются.

JSON-представление
{
  "regionCodes": [
    string
  ]
}
Поля
region Codes[]

string

Необходимый. Коды регионов, на которые накладываются ограничения платежей, как определено ISO 3166-2, например «США».

Методы

archive
(deprecated)

Устарело: архивирование по подписке не поддерживается.

batch Get

Читает одну или несколько подписок.

batch Update

Обновляет пакет подписок.

create

Создает новую подписку.

delete

Удаляет подписку.

get

Читает одну подписку.

list

Перечисляет все подписки в рамках данного приложения.

patch

Обновляет существующую подписку.