REST Resource: purchases.subscriptionsv2

Zasób: SubscriptionPurchaseV2

Wskazuje stan zakupu subskrypcji przez użytkownika.

Zapis JSON
{
  "kind": string,
  "regionCode": string,
  "lineItems": [
    {
      object (SubscriptionPurchaseLineItem)
    }
  ],
  "startTime": string,
  "subscriptionState": enum (SubscriptionState),
  "latestOrderId": string,
  "linkedPurchaseToken": string,
  "pausedStateContext": {
    object (PausedStateContext)
  },
  "canceledStateContext": {
    object (CanceledStateContext)
  },
  "testPurchase": {
    object (TestPurchase)
  },
  "acknowledgementState": enum (AcknowledgementState),
  "externalAccountIdentifiers": {
    object (ExternalAccountIdentifiers)
  },
  "subscribeWithGoogleInfo": {
    object (SubscribeWithGoogleInfo)
  }
}
Pola
kind

string

Ten rodzaj reprezentuje obiekt SubscriptionPurchaseV2 w usłudze androidpublisher.

regionCode

string

Kod kraju lub regionu rozliczenia zgodnie ze standardem ISO 3166-1 alfa-2 w momencie przyznania subskrypcji.

lineItems[]

object (SubscriptionPurchaseLineItem)

Informacje na poziomie produktu dotyczące zakupu subskrypcji. Wszystkie elementy w tym samym zakupie powinny być w całości z automatycznym odnawianiem lub wszystkie w ramach przedpłaconego abonamentu.

startTime

string (Timestamp format)

Godzina przyznania subskrypcji. Nie ustawiono dla oczekujących subskrypcji (subskrypcja została utworzona, ale oczekuje na płatność podczas rejestracji).

Sygnatura czasowa w formacie RFC3339 UTC „Zulu”, z rozdzielczością nanosekundy i maksymalnie 9 cyframi po przecinku. Przykłady: "2014-10-02T15:01:23Z" i "2014-10-02T15:01:23.045123456Z".

subscriptionState

enum (SubscriptionState)

Obecny stan subskrypcji.

latestOrderId

string

Identyfikator ostatniego zamówienia powiązanego z zakupem subskrypcji. W przypadku subskrypcji odnawianej automatycznie jest to identyfikator zamówienia rejestracyjnego, jeśli nie zostało ono jeszcze odnowione, lub identyfikator ostatniego zamówienia cyklicznego (zamówienie zakończone powodzeniem, oczekujące lub odrzucone). W przypadku subskrypcji przedpłaconej jest to identyfikator zamówienia powiązany z tokenem zakupu, którego dotyczy zapytanie.

linkedPurchaseToken

string

Token zakupu starej subskrypcji, jeśli jest ona jedną z tych sytuacji: * Ponowna rejestracja anulowanej, ale jeszcze niewygasłej subskrypcji * przejście na wyższą lub niższą wersję usługi. * Zmień subskrypcję z przedpłaty na subskrypcję odnawianą automatycznie. * Zmień subskrypcję z automatycznie odnawianą na przedpłaconą. * Doładuj abonament przedpłacony.

pausedStateContext

object (PausedStateContext)

Dodatkowy kontekst dotyczący wstrzymanych subskrypcji. Widoczny tylko wtedy, gdy subskrypcja ma obecnie stan subscriptionState SUBSCRIPTION_STATE_PAUSE.

canceledStateContext

object (CanceledStateContext)

Dodatkowe informacje o anulowanych subskrypcjach. Obecna tylko wtedy, gdy subskrypcja ma obecnie stan subscriptionState SUBSCRIPTION_STATE_CANCELED.

testPurchase

object (TestPurchase)

Jest dostępny tylko wtedy, gdy zakup subskrypcji jest zakupem testowym.

acknowledgementState

enum (AcknowledgementState)

Stan potwierdzenia subskrypcji.

externalAccountIdentifiers

object (ExternalAccountIdentifiers)

Identyfikator konta użytkownika w usłudze zewnętrznej.

subscribeWithGoogleInfo

object (SubscribeWithGoogleInfo)

Profil użytkownika powiązany z zakupami dokonanymi za pomocą funkcji „Subskrybuj z Google”.

SubscriptionState

Potencjalne stany subskrypcji, np. czy jest aktywna lub anulowana. Zakupione treści mogą obejmować zarówno abonamenty odnawiane automatycznie, jak i abonamenty przedpłacone.

Wartości w polu enum
SUBSCRIPTION_STATE_UNSPECIFIED Nieokreślony stan subskrypcji.
SUBSCRIPTION_STATE_PENDING Subskrypcja została utworzona, ale oczekuje na płatność podczas rejestracji. W tym stanie wszystkie produkty oczekują na płatność.
SUBSCRIPTION_STATE_ACTIVE Subskrypcja jest aktywna. – (1) Jeśli subskrypcja jest automatycznie odnawiana, co najmniej jeden element ma wartość autoRenewEnabled i nie wygasła. – (2) Jeśli subskrypcja jest abonamentem przedpłaconym, co najmniej 1 produkt nie stracił ważności.
SUBSCRIPTION_STATE_PAUSED Subskrypcja została wstrzymana. Stan jest dostępny tylko wtedy, gdy subskrypcja jest automatycznie odnawiana. W tym stanie wszystkie elementy są wstrzymane.
SUBSCRIPTION_STATE_IN_GRACE_PERIOD Subskrypcja jest w okresie prolongaty. Stan jest dostępny tylko wtedy, gdy subskrypcja jest automatycznie odnawiana. W tym stanie wszystkie produkty są w okresie prolongaty.
SUBSCRIPTION_STATE_ON_HOLD Subskrypcja jest wstrzymana (zawieszona). Stan jest dostępny tylko wtedy, gdy subskrypcja jest automatycznie odnawiana. W tym stanie wszystkie elementy są wstrzymane.
SUBSCRIPTION_STATE_CANCELED Subskrypcja została anulowana, ale jeszcze nie wygasła. Stan jest dostępny tylko wtedy, gdy subskrypcja jest automatycznie odnawiana. Wszystkie elementy mają wartość autoRenewEnabled ustawiona na false.
SUBSCRIPTION_STATE_EXPIRED Subskrypcja wygasła. Wszystkie produkty mają wartość expiryTime w przeszłości.

PausedStateContext

Informacje dotyczące wstrzymanej subskrypcji.

Zapis JSON
{
  "autoResumeTime": string
}
Pola
autoResumeTime

string (Timestamp format)

Godzina, o której subskrypcja zostanie automatycznie wznowiona.

Sygnatura czasowa w formacie RFC3339 UTC „Zulu”, z rozdzielczością nanosekundy i maksymalnie 9 cyframi po przecinku. Przykłady: "2014-10-02T15:01:23Z" i "2014-10-02T15:01:23.045123456Z".

CanceledStateContext

Informacje o anulowanej subskrypcji.

Zapis JSON
{

  // Union field cancellation_reason can be only one of the following:
  "userInitiatedCancellation": {
    object (UserInitiatedCancellation)
  },
  "systemInitiatedCancellation": {
    object (SystemInitiatedCancellation)
  },
  "developerInitiatedCancellation": {
    object (DeveloperInitiatedCancellation)
  },
  "replacementCancellation": {
    object (ReplacementCancellation)
  }
  // End of list of possible types for union field cancellation_reason.
}
Pola
Pole sumy cancellation_reason. Powód anulowania subskrypcji. cancellation_reason może mieć tylko jedną z tych wartości:
userInitiatedCancellation

object (UserInitiatedCancellation)

Subskrypcja została anulowana przez użytkownika.

systemInitiatedCancellation

object (SystemInitiatedCancellation)

Subskrypcja została anulowana przez system, np. z powodu problemu z płatnością.

developerInitiatedCancellation

object (DeveloperInitiatedCancellation)

Subskrypcja została anulowana przez dewelopera.

replacementCancellation

object (ReplacementCancellation)

Subskrypcja została zastąpiona przez nową subskrypcję.

UserInitiatedCancellation

Informacje dotyczące anulowania zainicjowanych przez użytkowników.

Zapis JSON
{
  "cancelSurveyResult": {
    object (CancelSurveyResult)
  },
  "cancelTime": string
}
Pola
cancelSurveyResult

object (CancelSurveyResult)

Informacje podane przez użytkownika podczas procesu anulowania subskrypcji (ankieta dotycząca przyczyny anulowania).

cancelTime

string (Timestamp format)

Godzina anulowania subskrypcji przez użytkownika. Po tym czasie użytkownik może nadal mieć dostęp do subskrypcji. Użyj parametru lineItems.expiry_time, aby określić, czy użytkownik nadal ma dostęp.

Sygnatura czasowa w formacie RFC3339 UTC „Zulu”, z rozdzielczością nanosekundy i maksymalnie 9 cyframi po przecinku. Przykłady: "2014-10-02T15:01:23Z" i "2014-10-02T15:01:23.045123456Z".

CancelSurveyResult

Wynik ankiety dotyczącej anulowania w przypadku anulowania subskrypcji przez użytkownika.

Zapis JSON
{
  "reason": enum (CancelSurveyReason),
  "reasonUserInput": string
}
Pola
reason

enum (CancelSurveyReason)

Powód wybrania przez użytkownika w ankiecie dotyczącej anulowania.

reasonUserInput

string

Stosowane tylko w przypadku: CANCEL_SURVEY_REASON_OTHERS. Jest to swobodna odpowiedź użytkownika na ankietę.

CancelSurveyReason

Powód wybrania przez użytkownika w ankiecie dotyczącej anulowania.

Wartości w polu enum
CANCEL_SURVEY_REASON_UNSPECIFIED Nieokreślony powód anulowania ankiety.
CANCEL_SURVEY_REASON_NOT_ENOUGH_USAGE Niewystarczające wykorzystanie subskrypcji.
CANCEL_SURVEY_REASON_TECHNICAL_ISSUES Problemy techniczne podczas korzystania z aplikacji.
CANCEL_SURVEY_REASON_FOUND_BETTER_APP użytkownik znalazł lepszą aplikację,
CANCEL_SURVEY_REASON_OTHERS Inne powody.

SystemInitiatedCancellation

Ten typ nie ma pól.

Informacje dotyczące anulowania zainicjowanych przez system Google.

DeveloperInitiatedCancellation

Ten typ nie ma pól.

Informacje dotyczące anulowania zainicjowanych przez deweloperów.

ReplacementCancellation

Ten typ nie ma pól.

Informacje o anulowaniach spowodowanych zastąpieniem subskrypcji.

TestPurchase

Ten typ nie ma pól.

Czy ten zakup subskrypcji jest zakupem testowym.

AcknowledgementState

Możliwe stany potwierdzenia subskrypcji.

Wartości w polu enum
ACKNOWLEDGEMENT_STATE_UNSPECIFIED Nieokreślony stan potwierdzenia.
ACKNOWLEDGEMENT_STATE_PENDING Subskrypcja nie została jeszcze potwierdzona.
ACKNOWLEDGEMENT_STATE_ACKNOWLEDGED Subskrypcja została potwierdzona.

ExternalAccountIdentifiers

Identyfikator konta użytkownika w usłudze zewnętrznej.

Zapis JSON
{
  "externalAccountId": string,
  "obfuscatedExternalAccountId": string,
  "obfuscatedExternalProfileId": string
}
Pola
externalAccountId

string

Identyfikator konta użytkownika w usłudze zewnętrznej. Dostępne tylko wtedy, gdy łączenie kont miało miejsce w ramach procesu zakupu subskrypcji.

obfuscatedExternalAccountId

string

Zaciemniona wersja identyfikatora, która jest jednoznacznie powiązana z kontem użytkownika w Twojej aplikacji. Występuje w przypadku tych zakupów: * Jeśli łączenie kont miało miejsce w ramach procesu zakupu subskrypcji. * Zostały one określone przy użyciu adresu https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedaccountid podczas zakupu.

obfuscatedExternalProfileId

string

Zaciemniona wersja identyfikatora, która jest jednoznacznie powiązana z profilem użytkownika w Twojej aplikacji. Widoczny tylko wtedy, gdy został określony za pomocą https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedprofileid podczas zakupu.

SubscribeWithGoogleInfo

Informacje związane z zakupami dokonanymi za pomocą funkcji „Subskrybuj z Google”.

Zapis JSON
{
  "profileId": string,
  "profileName": string,
  "emailAddress": string,
  "givenName": string,
  "familyName": string
}
Pola
profileId

string

Identyfikator profilu Google użytkownika w momencie zakupu subskrypcji.

profileName

string

Nazwa profilu użytkownika w momencie zakupu subskrypcji.

emailAddress

string

Adres e-mail użytkownika w momencie zakupu subskrypcji.

givenName

string

Nazwa użytkownika w momencie zakupu subskrypcji.

familyName

string

Nazwisko użytkownika w momencie zakupu subskrypcji.

SubscriptionPurchaseLineItem

Informacje na poziomie produktu dotyczące zakupu subskrypcji.

Zapis JSON
{
  "productId": string,
  "expiryTime": string,

  // Union field plan_type can be only one of the following:
  "autoRenewingPlan": {
    object (AutoRenewingPlan)
  },
  "prepaidPlan": {
    object (PrepaidPlan)
  }
  // End of list of possible types for union field plan_type.
  "offerDetails": {
    object (OfferDetails)
  },

  // Union field deferred_item_change can be only one of the following:
  "deferredItemReplacement": {
    object (DeferredItemReplacement)
  }
  // End of list of possible types for union field deferred_item_change.
}
Pola
productId

string

Identyfikator zakupionego produktu (np. „monthly001”).

expiryTime

string (Timestamp format)

Czas, w którym subskrypcja wygasła lub wygaśnie, o ile dostęp nie zostanie przedłużony (np. zostanie odnowiona).

Sygnatura czasowa w formacie RFC3339 UTC „Zulu”, z rozdzielczością nanosekundy i maksymalnie 9 cyframi po przecinku. Przykłady: "2014-10-02T15:01:23Z" i "2014-10-02T15:01:23.045123456Z".

Pole sumy plan_type. Typ abonamentu. plan_type może mieć tylko jedną z tych wartości:
autoRenewingPlan

object (AutoRenewingPlan)

Produkt jest automatycznie odnawiany.

prepaidPlan

object (PrepaidPlan)

Produkt jest opłacany z góry.

offerDetails

object (OfferDetails)

Szczegóły oferty dotyczącej tego produktu.

Pole sumy deferred_item_change. Pole jest obecne, gdy element ma odroczoną zmianę. Można go usunąć lub zastąpić. deferred_item_change może mieć tylko jedną z tych wartości:
deferredItemReplacement

object (DeferredItemReplacement)

Informacje na temat odroczonej wymiany produktu.

AutoRenewingPlan

Informacje dotyczące abonamentu, który jest automatycznie odnawiany.

Zapis JSON
{
  "autoRenewEnabled": boolean,
  "priceChangeDetails": {
    object (SubscriptionItemPriceChangeDetails)
  }
}
Pola
autoRenewEnabled

boolean

Jeśli subskrypcja jest obecnie ustawiona na automatyczne odnawianie, np. użytkownik nie ją anulował

priceChangeDetails

object (SubscriptionItemPriceChangeDetails)

Informacje o ostatniej zmianie ceny produktu od momentu zarejestrowania się w subskrypcji.

SubscriptionItemPriceChangeDetails

Informacje związane ze zmianą ceny produktu objętego subskrypcją.

Zapis JSON
{
  "newPrice": {
    object (Money)
  },
  "priceChangeMode": enum (PriceChangeMode),
  "priceChangeState": enum (PriceChangeState),
  "expectedNewPriceChargeTime": string
}
Pola
newPrice

object (Money)

Nowa cena cykliczna za element objęty subskrypcją.

priceChangeMode

enum (PriceChangeMode)

Tryb zmiany ceny określa, jak zmienia się cena produktu objętego subskrypcją.

priceChangeState

enum (PriceChangeState)

Stan, w którym obowiązuje obecnie zmiana ceny.

expectedNewPriceChargeTime

string (Timestamp format)

Termin odnowienia, w którym zmiana ceny zacznie obowiązywać dla użytkownika. Ta data może ulec zmianie (w przyszłości) ze względu na sytuacje, w których czas odnowienia się przesunie (np. zostanie wstrzymany). Pole jest wypełniane tylko wtedy, gdy zmiana ceny nie została zastosowana.

Sygnatura czasowa w formacie RFC3339 UTC „Zulu”, z rozdzielczością nanosekundy i maksymalnie 9 cyframi po przecinku. Przykłady: "2014-10-02T15:01:23Z" i "2014-10-02T15:01:23.045123456Z".

PriceChangeMode

Tryb zmiany ceny.

Wartości w polu enum
PRICE_CHANGE_MODE_UNSPECIFIED Nie określono trybu zmiany ceny. Tej wartości nie należy nigdy ustawiać.
PRICE_DECREASE Jeśli cena subskrypcji spada.
PRICE_INCREASE Jeśli cena subskrypcji wzrasta i użytkownik musi ją zaakceptować.
OPT_OUT_PRICE_INCREASE Jeśli cena subskrypcji rośnie w trybie rezygnacji,

PriceChangeState

Stan zmiany ceny.

Wartości w polu enum
PRICE_CHANGE_STATE_UNSPECIFIED Nie określono stanu zmiany ceny. Nie należy używać tej wartości.
OUTSTANDING Oczekiwanie na zgodę użytkownika na zmianę ceny.
CONFIRMED Potwierdzono, że zmiana ceny wpłynie na użytkownika.
APPLIED Zmiana ceny została zastosowana, czyli użytkownik zaczął płacić nową cenę.

PrepaidPlan

Informacje dotyczące abonamentu przedpłaconego.

Zapis JSON
{
  "allowExtendAfterTime": string
}
Pola
allowExtendAfterTime

string (Timestamp format)

Jeśli ta opcja jest dostępna, jest to czas, po którym będzie można kupować doładowania w przypadku abonamentu przedpłaconego. Nie jest dostępny w przypadku wygasłych abonamentów przedpłaconych.

Sygnatura czasowa w formacie RFC3339 UTC „Zulu”, z rozdzielczością nanosekundy i maksymalnie 9 cyframi po przecinku. Przykłady: "2014-10-02T15:01:23Z" i "2014-10-02T15:01:23.045123456Z".

OfferDetails

Informacje o ofercie powiązanej z elementem zamówienia.

Zapis JSON
{
  "offerTags": [
    string
  ],
  "basePlanId": string,
  "offerId": string
}
Pola
offerTags[]

string

Najnowsze tagi oferty powiązane z ofertą. Obejmuje tagi odziedziczone z abonamentu podstawowego.

basePlanId

string

Identyfikator abonamentu podstawowego. Widoczne w przypadku wszystkich abonamentów podstawowych i ofert.

offerId

string

Identyfikator oferty. Dostępne tylko w przypadku ofert z rabatem.

DeferredItemReplacement

Informacje dotyczące odroczonej wymiany produktu.

Zapis JSON
{
  "productId": string
}
Pola
productId

string

Identyfikator productId zastąpi dotychczasowy identyfikator produktu.

Metody

get

Pobieranie metadanych subskrypcji

revoke

Cofnąć zakup subskrypcji użytkownika.