DEPRECATED
Данный метод предназначен для работы с BillingClient SDK, который переведен в статус deprecated.
Получение данных подписки (V3) [DEPRECATED]
Метод позволяет получить информацию о подписке по токену подписки.
подсказка
Если не знаете с чего начать, прочтите инструкцию в сценариях использования.
Параметры взаимодействия
Для реальных подписок:
GET
https://public-api.rustore.ru/public/v3/subscription/{packageName}/{subscriptionId}/{subscriptionToken}
предупреждение
Для тестовых подписок используйте отдельный метод:
GET
https://public-api.rustore.ru/public/sandbox/v3/subscription/{packageName}/{subscriptionId}/{subscriptionToken}
Для работы с тестовыми платежами и подписками вам понадобится новый ключ, при создании которого нужно указать методы для тестирования.
| Атрибут | Тип | Описание | Обязательность | Расположение | Пример | 
|---|---|---|---|---|---|
Public-Token | string | Jwe-токен авторизации в Public API Rustore.  Как получить токен авторизации.  | Да | header | N/A | 
packageName | string | Наименование пакета приложения. | Да | path | com.MashaAndTheBear.HairSalon | 
subscriptionId | string | Код продукта-подписки.  Указывается разработчиком при создании продукта в RuStore Консоли. Как создать подписку.  | Да | path | daily_sub | 
subscriptionToken | string | Как получить токен подписки, см. документацию по SDK платежей. | Да | path | 111.123 | 
Параметры успешного ответа
| Атрибут | Тип | Описание | Обязательность | Пример | 
|---|---|---|---|---|
startTimeMillis | string | Время предоставления подписки в миллисекундах с начала эпохи. | Да | 1577826955637 | 
expiryTimeMillis | string | Время истечения срока действия подписки в миллисекундах с начала эпохи. | Да | 1609456386128 | 
autoRenewing | boolean | Будет ли подписка автоматически продлеваться по истечении текущего срока действия. | Да | false | 
priceCurrencyCode | string | Код валюты ISO 4217 для цены подписки. | Да | RUB | 
priceAmountMicros | string | Цена подписки. Цена выражается в микроединицах, где 1 000 000 микроединиц представляет собой одну единицу валюты. Например, если цена подписки составляет 100 рублей, цена AmountMicros равна 100000000. | Да | 749000000 | 
countryCode | string | Код страны/региона выставления счетов пользователя на момент предоставления подписки. | Да | RU | 
paymentState | number | Состояние оплаты подписки. Возможные значения:  • 0 — ожидание платежа • 1 —  платёж получен; • 2 — бесплатная пробная версия.Отсутствует для отмененных подписок с истекшим сроком действия.  | нет, только для активных подписок | 1 | 
cancelReason | number | Причина, по которой подписка была отменена или не продлевается автоматически. Возможные значения:  • 0 — пользователь отменил подписку  • 1 — подписка была отменена системой, например, из-за проблемы с оплатой. | нет, только для отмененных подписок со статусом CLOSED | 0 | 
orderId | string | Идентификатор последнего счета, связанного с покупкой подписки. Если счетов по подписке более одного, к идентификатору добавляется их количество через разделитель "..", начало отсчёта от 0 | Да | 41456..3 | 
acknowledgementState | number | Состояние подтверждения продукта подписки. Возможные значения:  • 0 — ещё не подтверждено; • 1 — подтверждено. | Да | 1 | 
introductoryPriceInfo{} | object | Информация о промо периоде подписки. Это поле не указывает, что подписка в настоящее время находится в промо периоде. | нет, только для подписок с периодом PROMO | N/A | 
kind | string | Всегда передаётся значение androidpublisher#subscriptionPurchase | Да | androidpublisher#subscriptionPurchase | 
purchaseType | number | Возможные значения:  • 0 —  реальная подписка; • 1 — тестовая подписка. | Да | 0 | 
introductoryPriceInfo{}
| Атрибут | Тип | Описание | Обязательность | Пример | 
|---|---|---|---|---|
introductoryPriceCurrencyCode | string | Код валюты ISO 4217 для начальной цены подписки. | нет, только для подписок с периодом PROMO. | RUB | 
introductoryPriceAmountMicros | string | Начальная цена подписки. Валюта совпадает с priceCurrencyCode. Цена выражается в микроединицах, где 1 000 000 микроединиц представляет собой одну единицу валюты. Например, если цена подписки составляет 100 рублей, цена AmountMicros равна 100000000. | нет, только для подписок с периодом PROMO | 599000000 | 
introductoryPricePeriod | string | Период начальной цены, указанный в формате ISO 8601.  Например, P1W (одна неделя), P1M (один месяц), P3M (три месяца), P6M (шесть месяцев) и P1Y (один год). | нет, только для подписок с периодом PROMO | P1Y | 
introductoryPriceCycles | string | Количество расчетных периодов для предложения начальной цены. | нет, только для подписок с периодом PROMO | 1 | 
Пример успешного ответа
{
"startTimeMillis": "1694431707000",
    "expiryTimeMillis": "1697034507000",
    "autoRenewing": true,
    "priceCurrencyCode": "RUB",
    "priceAmountMicros": "749000000",
    "countryCode": "RU",
    "paymentState": 1,
    "orderId": "33252..1",
    "acknowledgementState": 1,
    "kind": "androidpublisher#subscriptionPurchase",
    "purchaseType": 0,
    "introductoryPriceInfo":
        { 
            "introductoryPriceCurrencyCode": "RUB", 
            "introductoryPriceAmountMicros": "599000000",
            "introductoryPricePeriod": "P1M",
            "introductoryPriceCycles": "1"
        }
}
Параметры ошибки
| Атрибут | Тип | Описание | Обязательность | Пример | 
|---|---|---|---|---|
code | string | Код ответа. | Да | ERROR | 
message | string | Расшифровка кода ответа. | Нет | Jwe token is expired | 
body{} | object | Тело ответа. | Нет | N/A | 
timestamp | string | Время ответа. | Да | 2024-01-21T13:34:31.067240345+03:00 | 
Пример ответа с ошибкой
{
"code": "ERROR",
    "message": "Jwe token is expired",
    "body": null,
    "timestamp": "2024-01-21T13:51:59.654427798+03:00"
}