REST Resource: purchases.subscriptions

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

Ресурс SubscriptionPurchase указывает состояние покупки подписки пользователя.

JSON-представление
{
  "kind": string,
  "startTimeMillis": string,
  "expiryTimeMillis": string,
  "autoResumeTimeMillis": string,
  "autoRenewing": boolean,
  "priceCurrencyCode": string,
  "priceAmountMicros": string,
  "introductoryPriceInfo": {
    object (IntroductoryPriceInfo)
  },
  "countryCode": string,
  "developerPayload": string,
  "paymentState": integer,
  "cancelReason": integer,
  "userCancellationTimeMillis": string,
  "cancelSurveyResult": {
    object (SubscriptionCancelSurveyResult)
  },
  "orderId": string,
  "linkedPurchaseToken": string,
  "purchaseType": integer,
  "priceChange": {
    object (SubscriptionPriceChange)
  },
  "profileName": string,
  "emailAddress": string,
  "givenName": string,
  "familyName": string,
  "profileId": string,
  "acknowledgementState": integer,
  "externalAccountId": string,
  "promotionType": integer,
  "promotionCode": string,
  "obfuscatedExternalAccountId": string,
  "obfuscatedExternalProfileId": string
}
Поля
kind

string

Этот тип представляет собой объект subscribePurchase в службе androidpublisher.

start Time Millis

string ( int64 format)

Время предоставления подписки в миллисекундах с начала Эпохи.

expiry Time Millis

string ( int64 format)

Время истечения срока действия подписки (в миллисекундах с момента начала Эпохи).

auto Resume Time Millis

string ( int64 format)

Время, когда подписка будет автоматически возобновлена, в миллисекундах с момента начала Эпохи. Присутствует только в том случае, если пользователь запросил приостановку подписки.

auto Renewing

boolean

Будет ли подписка автоматически продлеваться по истечении текущего срока ее действия.

price Currency Code

string

Код валюты ISO 4217 для стоимости подписки. Например, если цена указана в британских фунтах стерлингов, параметр PriceCurrencyCode имеет значение «GBP».

price Amount Micros

string ( int64 format)

Стоимость подписки. Для стран с льготным налогообложением цена не включает налоги. Для стран с включенным налогом цена включает налог. Цена выражается в микроединицах, где 1 000 000 микроединиц представляют одну единицу валюты. Например, если цена подписки составляет 1,99 евро, ценаAmountMicros равна 1990000.

introductory Price Info

object ( IntroductoryPriceInfo )

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

Это поле не указывает на то, что подписка в настоящее время находится в ознакомительном ценовом периоде.

country Code

string

Код страны/региона выставления счетов пользователя ISO 3166-1 Alpha-2 на момент предоставления подписки.

developer Payload

string

Строка, указанная разработчиком, содержащая дополнительную информацию о заказе.

payment State

integer

Состояние оплаты подписки. Возможные значения: 0. Ожидается платеж 1. Платеж получен 2. Бесплатная пробная версия 3. Ожидается отложенное обновление/понижение версии.

Не присутствует для отмененных подписок с истекшим сроком действия.

cancel Reason

integer

Причина, по которой подписка была отменена или не продлевается автоматически. Возможные значения: 0. Пользователь отменил подписку 1. Подписка была отменена системой, например, из-за проблемы с выставлением счетов 2. Подписка была заменена новой 3. Подписка была отменена разработчиком

user Cancellation Time Millis

string ( int64 format)

Время, когда подписка была отменена пользователем, в миллисекундах с начала эпохи. Присутствует только в том случае, если cancelReason равен 0.

cancel Survey Result

object ( SubscriptionCancelSurveyResult )

Информация, предоставляемая пользователем при завершении процесса отмены подписки (опрос причины отмены).

order Id

string

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

linked Purchase Token

string

Токен покупки исходной покупки, если эта подписка является одной из следующих: 0. Повторная регистрация отмененной, но еще не истекшей подписки 1. Обновление/понижение предыдущей подписки.

Например, предположим, что пользователь первоначально регистрируется, и вы получаете токен покупки X, затем пользователь отменяет подписку и проходит процедуру повторной регистрации (до истечения срока действия его подписки), и вы получаете токен покупки Y, и, наконец, пользователь обновляет свою подписку, и вы получаете покупку. токен Z. Если вы вызываете этот API с токеном покупки Z, в этом поле будет установлено значение Y. Если вы вызываете этот API с токеном покупки Y, в этом поле будет установлено значение X. Если вы вызываете этот API с токеном покупки X, это поля не будет набор.

purchase Type

integer

Тип приобретения подписки. Это поле заполняется только в том случае, если эта покупка была совершена не с использованием стандартного процесса выставления счетов в приложении. Возможные значения: 0. Тестовая (т. е. приобретена из учетной записи для тестирования лицензии) 1. Промо (т. е. приобретена с использованием промокода)

price Change

object ( SubscriptionPriceChange )

Самая последняя доступная информация об изменении цен. Это присутствует только в том случае, если предстоящее изменение цены на подписку еще не применено.

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

profile Name

string

Имя профиля пользователя на момент приобретения подписки. Присутствует только для покупок, совершенных с помощью «Подписки через Google».

email Address

string

Адрес электронной почты пользователя на момент приобретения подписки. Присутствует только для покупок, совершенных с помощью «Подписки через Google».

given Name

string

Имя пользователя при покупке подписки. Присутствует только для покупок, совершенных с помощью «Подписки через Google».

family Name

string

Фамилия пользователя на момент приобретения подписки. Присутствует только для покупок, совершенных с помощью «Подписки через Google».

profile Id

string

Идентификатор профиля Google пользователя на момент приобретения подписки. Присутствует только для покупок, совершенных с помощью «Подписки через Google».

acknowledgement State

integer

Состояние подтверждения продукта подписки. Возможные значения: 0. Еще не подтверждено 1. Подтверждено.

external Account Id

string

Идентификатор учетной записи пользователя в стороннем сервисе. Отображается только в том случае, если привязка учетной записи произошла в рамках процесса покупки подписки.

promotion Type

integer

Тип промоакции, примененной к этой покупке. Это поле заполняется только в том случае, если при покупке подписки применялась акция. Возможные значения: 0. Одноразовый код 1. Косметический код.

promotion Code

string

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

obfuscated External Account Id

string

Запутанная версия идентификатора, которая однозначно связана с учетной записью пользователя в вашем приложении. Присутствует для следующих покупок: * Если привязка учетной записи произошла в рамках процесса покупки подписки. * Он был указан с помощью https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedaccountid при совершении покупки.

obfuscated External Profile Id

string

Запутанная версия идентификатора, которая однозначно связана с профилем пользователя в вашем приложении. Присутствует только в том случае, если указано с помощью https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedprofileid при совершении покупки.

ВводнаяЦенаИнформация

Содержит вводную информацию о цене подписки.

JSON-представление
{
  "introductoryPriceCurrencyCode": string,
  "introductoryPriceAmountMicros": string,
  "introductoryPricePeriod": string,
  "introductoryPriceCycles": integer
}
Поля
introductory Price Currency Code

string

Код валюты ISO 4217 для начальной цены подписки. Например, если цена указана в британских фунтах стерлингов, параметр PriceCurrencyCode имеет значение «GBP».

introductory Price Amount Micros

string ( int64 format)

Начальная цена подписки без учета налогов. Валюта такая же, как и PriceCurrencyCode. Цена выражается в микроединицах, где 1 000 000 микроединиц представляют одну единицу валюты. Например, если цена подписки составляет 1,99 евро, ценаAmountMicros равна 1990000.

introductory Price Period

string

Начальный ценовой период указан в формате ISO 8601. Обычными значениями являются (но не ограничиваются ими) «P1W» (одна неделя), «P1M» (один месяц), «P3M» (три месяца), «P6M» (шесть месяцев) и «P1Y» (один год).

introductory Price Cycles

integer

Количество расчетных периодов, в течение которых будут предлагаться начальные цены.

ПодпискаОтменаОпросРезультат

Информация, предоставляемая пользователем при завершении процесса отмены подписки (опрос причины отмены).

JSON-представление
{
  "cancelSurveyReason": integer,
  "userInputCancelReason": string
}
Поля
cancel Survey Reason

integer

Причину отмены, которую пользователь выбрал в опросе. Возможные значения: 0. Другое 1. Я недостаточно пользуюсь этой услугой 2. Технические проблемы 3. Причины, связанные с затратами 4. Я нашел лучшее приложение

user Input Cancel Reason

string

Настроенная пользователем причина отмены ввода. Присутствует только тогда, когда cancelReason равен 0.

ПодпискаЦенаИзменить

Содержит информацию об изменении цены для подписки, которую можно использовать для управления действиями пользователя при изменении цены в приложении. Это может быть в форме запроса подтверждения от пользователя или адаптации опыта для успешной конверсии.

JSON-представление
{
  "newPrice": {
    object (Price)
  },
  "state": integer
}
Поля
new Price

object ( Price )

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

state

integer

Текущее состояние изменения цен. Возможные значения: 0. Выдающееся: состояние ожидания изменения цены, ожидающего согласия пользователя. В этом состоянии вы можете дополнительно запросить подтверждение от пользователя с помощью API внутри приложения. 1. Принято: укажите принятое изменение цены, с которым подписка будет продлена, если она не будет отменена. Изменение цены вступит в силу в будущем, когда подписка будет продлена. Обратите внимание, что это изменение может не произойти при следующем продлении подписки.

Методы

acknowledge

Подтверждает покупку подписки.

cancel

Отменяет покупку подписки пользователя.

defer

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

get

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

refund

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

revoke

Возвращает и немедленно отзывает покупку подписки пользователя.