REST Resource: purchases.subscriptionsv2

Kaynak: SubscriptionPurchaseV2

Kullanıcının abonelik satın alma işleminin durumunu gösterir.

JSON gösterimi
{
  "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)
  }
}
Alanlar
kind

string

Bu tür, androidpublisher hizmetindeki bir SubscriptionPurchaseV2 nesnesini temsil eder.

regionCode

string

ISO 3166-1 alpha-2, aboneliğin verildiği sırada kullanıcının fatura adresinin bulunduğu ülke/bölge kodudur.

lineItems[]

object (SubscriptionPurchaseLineItem)

Abonelik satın alma işlemiyle ilgili öğe düzeyindeki bilgiler. Aynı satın alma işlemindeki öğelerin tümü AutoRenewingPlan'ı içeren veya tümü PrepaidPlan yüklü olmalıdır.

startTime

string (Timestamp format)

Aboneliğin verildiği zaman. Bekleyen abonelikler için ayarlanmadı (abonelik oluşturuldu, ancak kayıt sırasında ödeme bekleniyor).

RFC3339 UTC "Zulu" zaman damgası biçiminde olmalıdır. Örnekler: "2014-10-02T15:01:23Z" ve "2014-10-02T15:01:23.045123456Z".

subscriptionState

enum (SubscriptionState)

Aboneliğin mevcut durumu.

latestOrderId

string

Aboneliğin satın alınmasıyla ilişkili en son siparişin sipariş kimliği. autoRenewing aboneliği için, henüz yenilenmemişse kayıt siparişinin sipariş kimliği veya son yinelenen sipariş kimliği (başarılı, beklemede veya reddedilen sipariş). Ön ödemeli abonelik için bu, sorgulanan satın alma jetonuyla ilişkilendirilmiş sipariş kimliğidir.

linkedPurchaseToken

string

Bu abonelik aşağıdakilerden biriyse eski aboneliğin satın alma jetonu: * İptal edilen ancak süresi dolmamış bir aboneliğin yeniden kaydı * Önceki bir aboneliğin yeni veya eski bir aboneliğinin yeni sürüme geçirilmesi. * Ön ödemeli abonelikten otomatik yenilenen aboneliğe geçiş yapın. * Otomatik yenilenen bir abonelikten ön ödemeli aboneliğe geçme. * Ön ödemeli aboneliğe para ekleme.

pausedStateContext

object (PausedStateContext)

Duraklatılan aboneliklerle ilgili ek bilgiler. Yalnızca aboneliğin şu anda abonelik durumu SUBSCRIPTION_STATE_PAused ise mevcut.

canceledStateContext

object (CanceledStateContext)

İptal edilen aboneliklerle ilgili ek bilgiler. Yalnızca şu anda abonelik durumu SUBSCRIPTION_STATE_CANCELED veya SUBSCRIPTION_STATE_EXPIRED ise mevcut.

testPurchase

object (TestPurchase)

Yalnızca bu abonelik satın alma işlemi bir test satın alma işlemiyse mevcuttur.

acknowledgementState

enum (AcknowledgementState)

Aboneliğin onay durumu.

externalAccountIdentifiers

object (ExternalAccountIdentifiers)

Üçüncü taraf hizmetindeki kullanıcı hesabı tanımlayıcısı.

subscribeWithGoogleInfo

object (SubscribeWithGoogleInfo)

"Google ile Abone Ol" özelliğiyle yapılan satın alma işlemleriyle ilişkili kullanıcı profili.

SubscriptionState

Bir aboneliğin bulunabileceği olası durumlar (örneğin, etkin veya iptal edilmiş olması). Bir abonelik satın alma işlemindeki öğeler otomatik yenilenen planlar veya ön ödemeli planlar olabilir.

Sıralamalar
SUBSCRIPTION_STATE_UNSPECIFIED Abonelik durumu belirtilmedi.
SUBSCRIPTION_STATE_PENDING Abonelik oluşturuldu ancak kayıt sırasında ödeme bekleniyor. Bu durumda, tüm öğeler için ödeme yapılması bekleniyor.
SUBSCRIPTION_STATE_ACTIVE Abonelik etkin. - (1) Abonelik otomatik yenileme planıysa en az bir öğenin autoRenewEnabled değerine sahip olması ve geçerlilik süresi sona ermemiş olması gerekir. - (2) Ön ödemeli bir plan ise en az bir öğenin süresi dolmamıştır.
SUBSCRIPTION_STATE_PAUSED Abonelik duraklatıldı. Bu eyalet yalnızca abonelik otomatik yenilenen bir plan olduğunda kullanılabilir. Bu durumda, tüm öğeler duraklatılmış durumda.
SUBSCRIPTION_STATE_IN_GRACE_PERIOD Abonelik, ek süre içinde. Bu eyalet yalnızca abonelik otomatik yenilenen bir plan olduğunda kullanılabilir. Bu durumda, tüm öğeler ek süre içindedir.
SUBSCRIPTION_STATE_ON_HOLD Abonelik askıya alındı (askıya alındı). Bu eyalet yalnızca abonelik otomatik yenilenen bir plan olduğunda kullanılabilir. Bu durumda, tüm öğeler beklemededir.
SUBSCRIPTION_STATE_CANCELED Abonelik iptal edilmiş ancak süresi henüz dolmamış. Bu eyalet yalnızca abonelik otomatik yenilenen bir plan olduğunda kullanılabilir. Tüm öğelerde autoRenewEnabled "false" (yanlış) olarak ayarlanmıştır.
SUBSCRIPTION_STATE_EXPIRED Aboneliğin süresi doldu. Tüm öğelerin expiryTime değeri geçmişte.
SUBSCRIPTION_STATE_PENDING_PURCHASE_CANCELED Bekleyen abonelik işlemi iptal edildi. Bu bekleyen satın alma işlemi mevcut bir abonelik içinyse ilgili aboneliğin mevcut durumunu öğrenmek için linkedPurchaseToken kullanın.

PausedStateContext

Duraklatılmış durumdaki bir aboneliğe özel bilgiler.

JSON gösterimi
{
  "autoResumeTime": string
}
Alanlar
autoResumeTime

string (Timestamp format)

Aboneliğin otomatik olarak devam ettirileceği zaman.

RFC3339 UTC "Zulu" zaman damgası biçiminde olmalıdır. Örnekler: "2014-10-02T15:01:23Z" ve "2014-10-02T15:01:23.045123456Z".

CanceledStateContext

SUBSCRIPTION_STATE_CANCELED veya SUBSCRIPTION_STATE_EXPIRED durumundaki bir aboneliğe özel bilgiler.

JSON gösterimi
{

  // 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.
}
Alanlar
Birleştirme alanı cancellation_reason. Aboneliğin iptal edilme nedeni. cancellation_reason şunlardan yalnızca biri olabilir:
userInitiatedCancellation

object (UserInitiatedCancellation)

Abonelik kullanıcı tarafından iptal edildi.

systemInitiatedCancellation

object (SystemInitiatedCancellation)

Abonelik, örneğin bir faturalandırma sorunu nedeniyle sistem tarafından iptal edildi.

developerInitiatedCancellation

object (DeveloperInitiatedCancellation)

Abonelik, geliştirici tarafından iptal edildi.

replacementCancellation

object (ReplacementCancellation)

Abonelik, yeni bir abonelikle değiştirildi.

UserInitiatedCancellation

Kullanıcılar tarafından başlatılan iptal işlemlerine özel bilgiler.

JSON gösterimi
{
  "cancelSurveyResult": {
    object (CancelSurveyResult)
  },
  "cancelTime": string
}
Alanlar
cancelSurveyResult

object (CancelSurveyResult)

Abonelik iptali akışını (iptal nedeni anketi) tamamladığında kullanıcının sağladığı bilgiler.

cancelTime

string (Timestamp format)

Aboneliğin kullanıcı tarafından iptal edildiği zaman. Bu sürenin ardından kullanıcı aboneliğe erişmeye devam edebilir. Bir kullanıcının hâlâ erişime sahip olup olmadığını belirlemek için lineItems.expiry_time parametresini kullanın.

RFC3339 UTC "Zulu" zaman damgası biçiminde olmalıdır. Örnekler: "2014-10-02T15:01:23Z" ve "2014-10-02T15:01:23.045123456Z".

CancelSurveyResult

Abonelik kullanıcı tarafından iptal edildiğinde iptal anketinin sonucu.

JSON gösterimi
{
  "reason": enum (CancelSurveyReason),
  "reasonUserInput": string
}
Alanlar
reason

enum (CancelSurveyReason)

Kullanıcının iptal anketinde seçme nedeni.

reasonUserInput

string

Yalnızca CANCEL_SURVEY_REASON_OTHERS için ayarlandı. Bu, kullanıcının ankete verdiği serbest biçimli yanıttır.

CancelSurveyReason

Kullanıcının iptal anketinde seçme nedeni.

Sıralamalar
CANCEL_SURVEY_REASON_UNSPECIFIED Anket iptal nedeni belirtilmedi.
CANCEL_SURVEY_REASON_NOT_ENOUGH_USAGE Abonelik kullanımı yeterli değil.
CANCEL_SURVEY_REASON_TECHNICAL_ISSUES Uygulamayı kullanmayla ilgili teknik sorunlar.
CANCEL_SURVEY_REASON_FOUND_BETTER_APP Kullanıcı daha iyi bir uygulama buldu.
CANCEL_SURVEY_REASON_OTHERS Diğer nedenler.

SystemInitiatedCancellation

Bu türde alan yok.

Google sistemi tarafından başlatılan iptal işlemlerine özel bilgiler.

DeveloperInitiatedCancellation

Bu türde alan yok.

Geliştiricilerin yaptığı iptal işlemlerine özel bilgiler.

ReplacementCancellation

Bu türde alan yok.

Abonelik değişiminden kaynaklanan iptallere özel bilgiler.

TestPurchase

Bu türde alan yok.

Bu abonelik satın alma işleminin test amaçlı bir satın alma işlemi olup olmadığı.

AcknowledgementState

Bir abonelik için olası onay durumudur.

Sıralamalar
ACKNOWLEDGEMENT_STATE_UNSPECIFIED Belirtilmemiş onay durumu.
ACKNOWLEDGEMENT_STATE_PENDING Abonelik henüz onaylanmadı.
ACKNOWLEDGEMENT_STATE_ACKNOWLEDGED Abonelik onaylandı.

ExternalAccountIdentifiers

Üçüncü taraf hizmetindeki kullanıcı hesabı tanımlayıcısı.

JSON gösterimi
{
  "externalAccountId": string,
  "obfuscatedExternalAccountId": string,
  "obfuscatedExternalProfileId": string
}
Alanlar
externalAccountId

string

Üçüncü taraf hizmetindeki kullanıcı hesabı tanımlayıcısı. Yalnızca hesap bağlama, abonelik satın alma akışının bir parçası olarak gerçekleştiyse mevcuttur.

obfuscatedExternalAccountId

string

Kimliğin, uygulamanızdaki kullanıcı hesabıyla benzersiz bir şekilde ilişkilendirilen, kodu karartılmış bir sürümü. Aşağıdaki satın alma işlemlerinde geçerlidir: * Hesap bağlama, abonelik satın alma akışının bir parçası olarak gerçekleştiyse. * Satın alma işlemi sırasında https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedaccountid kullanılarak belirtilmişse.

obfuscatedExternalProfileId

string

Kimliğin, uygulamanızdaki kullanıcının profiliyle benzersiz bir şekilde ilişkilendirilen, kodu karartılmış bir sürümü. Yalnızca satın alma işlemi sırasında https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedprofileid kullanılarak belirtilmişse mevcut olur.

SubscribeWithGoogleInfo

"Google ile Abone Ol" işleviyle yapılan satın alma işlemleriyle ilişkili bilgiler.

JSON gösterimi
{
  "profileId": string,
  "profileName": string,
  "emailAddress": string,
  "givenName": string,
  "familyName": string
}
Alanlar
profileId

string

Abonelik satın alındığındaki kullanıcının Google profili kimliği.

profileName

string

Abonelik satın alındığındaki kullanıcının profil adı.

emailAddress

string

Abonelik satın alındığı sırada kullanıcının e-posta adresi.

givenName

string

Abonelik satın alındığında kullanıcının belirtilen adı.

familyName

string

Abonelik satın alınırken kullanıcının soyadı.

SubscriptionPurchaseLineItem

Abonelik satın alma işlemiyle ilgili öğe düzeyindeki bilgiler.

JSON gösterimi
{
  "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.
}
Alanlar
productId

string

Satın alınan ürünün kimliği (örneğin, "aylık001").

expiryTime

string (Timestamp format)

Aboneliğin süresinin uzatılması (ör. yenilenme) durumunda aboneliğin süresinin dolacağı veya sona ereceği zaman.

RFC3339 UTC "Zulu" zaman damgası biçiminde olmalıdır. Örnekler: "2014-10-02T15:01:23Z" ve "2014-10-02T15:01:23.045123456Z".

Birleştirme alanı plan_type. Abonelik planı türü. plan_type şunlardan yalnızca biri olabilir:
autoRenewingPlan

object (AutoRenewingPlan)

Öğe otomatik olarak yenileniyor.

prepaidPlan

object (PrepaidPlan)

Öğe ön ödemeli.

offerDetails

object (OfferDetails)

Bu öğenin teklif ayrıntıları.

Birleştirme alanı deferred_item_change. Bu alan, bir öğede ertelenen değişiklik olduğunda görünür. Çıkarılabilir veya değiştirilebilir. deferred_item_change şunlardan yalnızca biri olabilir:
deferredItemReplacement

object (DeferredItemReplacement)

Ertelenen ürün değişimiyle ilgili bilgiler.

AutoRenewingPlan

Otomatik yenilenen bir planla ilgili bilgiler.

JSON gösterimi
{
  "autoRenewEnabled": boolean,
  "priceChangeDetails": {
    object (SubscriptionItemPriceChangeDetails)
  },
  "installmentDetails": {
    object (InstallmentPlan)
  }
}
Alanlar
autoRenewEnabled

boolean

Abonelik şu anda otomatik yenilenecek şekilde ayarlanmışsa (ör. kullanıcı, aboneliği iptal etmedi

priceChangeDetails

object (SubscriptionItemPriceChangeDetails)

Abonelik kaydından bu yana öğenin son fiyat değişikliğiyle ilgili bilgiler.

installmentDetails

object (InstallmentPlan)

Taksit planı taahhüdü ve otomatik yenileme planı için eyaletle ilgili bilgiler.

SubscriptionItemPriceChangeDetails

Bir abonelik öğesinin fiyat değişikliğiyle ilgili bilgileri.

JSON gösterimi
{
  "newPrice": {
    object (Money)
  },
  "priceChangeMode": enum (PriceChangeMode),
  "priceChangeState": enum (PriceChangeState),
  "expectedNewPriceChargeTime": string
}
Alanlar
newPrice

object (Money)

Abonelik öğesi için yinelenen yeni fiyat.

priceChangeMode

enum (PriceChangeMode)

Fiyat değişikliği modu, abonelik öğesi fiyatının nasıl değiştiğini belirtir.

priceChangeState

enum (PriceChangeState)

Fiyat değişikliğinin şu anda geçerli olduğunu belirtin.

expectedNewPriceChargeTime

string (Timestamp format)

Fiyat değişikliğinin kullanıcı için geçerli olacağı yenileme zamanı. Yenileme zamanının duraklatma gibi değişebileceği durumlar nedeniyle bu süre değişebilir(gelecek bir zamana kadar). Bu alan yalnızca fiyat değişikliği geçerli değilse doldurulur.

RFC3339 UTC "Zulu" zaman damgası biçiminde olmalıdır. Örnekler: "2014-10-02T15:01:23Z" ve "2014-10-02T15:01:23.045123456Z".

PriceChangeMode

Fiyat değişiminin modu.

Sıralamalar
PRICE_CHANGE_MODE_UNSPECIFIED Fiyat değişikliği modu belirtilmedi. Bu değer hiçbir zaman ayarlanmamalıdır.
PRICE_DECREASE Abonelik ücreti düşüyor mu?
PRICE_INCREASE Abonelik fiyatı artıyorsa ve kullanıcının bunu kabul etmesi gerekiyorsa
OPT_OUT_PRICE_INCREASE Abonelik ücreti, devre dışı bırakma modunda artıyorsa:

PriceChangeState

Fiyat değişikliğinin durumu.

Sıralamalar
PRICE_CHANGE_STATE_UNSPECIFIED Fiyat değişikliği durumu belirtilmemiş. Bu değer kullanılmamalıdır.
OUTSTANDING Kullanıcının fiyat değişikliğini kabul etmesi bekleniyor.
CONFIRMED Fiyat değişikliğinin kullanıcı için gerçekleştiği onaylandı.
APPLIED Fiyat değişikliği uygulanır, yani kullanıcıdan yeni fiyat alınmaya başlanır.

InstallmentPlan

Taksit planına ait bilgiler.

JSON gösterimi
{
  "initialCommittedPaymentsCount": integer,
  "subsequentCommittedPaymentsCount": integer,
  "remainingCommittedPaymentsCount": integer,
  "pendingCancellation": {
    object (PendingCancellation)
  }
}
Alanlar
initialCommittedPaymentsCount

integer

Kullanıcının başlangıçta taahhüt ettiği toplam ödeme sayısı.

subsequentCommittedPaymentsCount

integer

Her taahhüt döneminden sonra kullanıcının taahhüt edeceği toplam ödeme sayısı. Boş olması, taksit planının ilk taahhütten sonra normal otomatik yenilenen aboneliğe döneceği anlamına gelir.

remainingCommittedPaymentsCount

integer

Bu yenileme döneminde ödenmesi planlanan, taahhüt edilen ödemelerin toplam sayısı.

pendingCancellation

object (PendingCancellation)

Bu taksit planı varsa, bu taksit planı iptal edilmeyi bekliyordur. İptal işlemi yalnızca kullanıcı taahhüt edilen tüm ödemeleri tamamladıktan sonra gerçekleşir.

PendingCancellation

Bu türde alan yok.

Bu, sanal taksit planında bekleyen bir iptal olup olmadığının bir göstergesidir. İptal işlemi yalnızca kullanıcı taahhüt edilen tüm ödemeleri tamamladıktan sonra gerçekleşir.

PrepaidPlan

Ön ödemeli planla ilgili bilgiler.

JSON gösterimi
{
  "allowExtendAfterTime": string
}
Alanlar
allowExtendAfterTime

string (Timestamp format)

Varsa ön ödemeli planda para eklemek için satın alma işlemlerine izin verilen süredir. Süresi dolan ön ödemeli planlar için kullanılamaz.

RFC3339 UTC "Zulu" zaman damgası biçiminde olmalıdır. Örnekler: "2014-10-02T15:01:23Z" ve "2014-10-02T15:01:23.045123456Z".

OfferDetails

Bir satın alma satır öğesiyle ilgili teklif ayrıntılarıyla ilgili bilgiler.

JSON gösterimi
{
  "offerTags": [
    string
  ],
  "basePlanId": string,
  "offerId": string
}
Alanlar
offerTags[]

string

Teklifle ilişkili en yeni teklif etiketleri. Temel plandan devralınan etiketleri içerir.

basePlanId

string

Temel plan kimliği. Tüm temel plan ve tekliflerde kullanılabilir.

offerId

string

Teklif kimliği. Yalnızca indirimli tekliflerde kullanılabilir.

DeferredItemReplacement

Ertelenen ürün değişimiyle ilgili bilgiler.

JSON gösterimi
{
  "productId": string
}
Alanlar
productId

string

Mevcut productId'nin yerini alacak productId.

Yöntemler

get

Aboneliklerle ilgili meta verileri alma

revoke

Kullanıcının abonelik satın alma işlemini iptal edin.