REST Resource: purchases.subscriptionsv2

منبع: SubscriptionPurchaseV2

وضعیت خرید اشتراک کاربر را نشان می دهد.

نمایندگی 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)
  }
}
فیلدها
kind

string

این نوع یک شیء SubscriptionPurchaseV2 را در سرویس androidpublisher نشان می دهد.

regionCode

string

کد کشور/منطقه صورت‌حساب ISO 3166-1 آلفا-2 کاربر در زمان اعطای اشتراک.

lineItems[]

object ( SubscriptionPurchaseLineItem )

اطلاعات سطح مورد برای خرید اشتراک. موارد موجود در همان خرید باید همه با AutoRenewingPlan یا همه با PrepaidPlan باشند.

startTime

string ( Timestamp format)

زمانی که در آن اشتراک اعطا شد. برای اشتراک های معلق تنظیم نشده است (اشتراک ایجاد شد اما در انتظار پرداخت در حین ثبت نام).

یک مهر زمانی در قالب RFC3339 UTC "Zulu"، با وضوح نانوثانیه و حداکثر نه رقم کسری. مثال‌ها: "2014-10-02T15:01:23Z" و "2014-10-02T15:01:23.045123456Z" .

subscriptionState

enum ( SubscriptionState )

وضعیت فعلی اشتراک.

latestOrderId

string

شناسه سفارش آخرین سفارش مرتبط با خرید اشتراک. برای اشتراک تمدید خودکار، اگر هنوز تمدید نشده باشد، این شناسه سفارش سفارش ثبت نام است یا آخرین شناسه سفارش تکرارشونده (موفقیت، سفارش در انتظار یا رد شده). برای اشتراک پیش پرداخت، این شناسه سفارش مرتبط با رمز خرید درخواست شده است.

linkedPurchaseToken

string

نشانه خرید اشتراک قدیمی در صورتی که این اشتراک یکی از موارد زیر باشد: * ثبت نام مجدد اشتراک لغو شده اما بدون پایان * ارتقا/کاهش از اشتراک قبلی. * تبدیل اشتراک از پیش پرداخت به تمدید خودکار. * تبدیل از اشتراک تمدید خودکار به پیش پرداخت. * اشتراک پیش پرداخت را تکمیل کنید.

pausedStateContext

object ( PausedStateContext )

زمینه اضافی در مورد اشتراک های متوقف شده. فقط در صورتی ارائه می شود که اشتراک در حال حاضر دارای حالت اشتراک SUBSCRIPTION_STATE_PAUSED باشد.

canceledStateContext

object ( CanceledStateContext )

زمینه اضافی در مورد اشتراک های لغو شده. فقط در صورتی ارائه می شود که اشتراک در حال حاضر دارای اشتراک ایالت SUBSCRIPTION_STATE_CANCELED یا SUBSCRIPTION_STATE_EXPIRED باشد.

testPurchase

object ( TestPurchase )

فقط در صورتی ارائه شود که این خرید اشتراک یک خرید آزمایشی باشد.

acknowledgementState

enum ( AcknowledgementState )

وضعیت تأیید اشتراک.

externalAccountIdentifiers

object ( ExternalAccountIdentifiers )

شناسه حساب کاربری در سرویس شخص ثالث.

subscribeWithGoogleInfo

object ( SubscribeWithGoogleInfo )

نمایه کاربر مرتبط با خریدهای انجام شده با «اشتراک با Google».

وضعیت اشتراک

حالت‌های بالقوه‌ای که یک اشتراک می‌تواند در آن باشد، برای مثال فعال یا لغو شده است. اقلام موجود در خرید اشتراک می توانند همه طرح های تمدید خودکار یا طرح های پیش پرداخت باشند.

Enums
SUBSCRIPTION_STATE_UNSPECIFIED وضعیت اشتراک نامشخص
SUBSCRIPTION_STATE_PENDING اشتراک ایجاد شد اما در انتظار پرداخت در حین ثبت نام. در این حالت همه اقلام در انتظار پرداخت هستند.
SUBSCRIPTION_STATE_ACTIVE اشتراک فعال است - (1) اگر اشتراک یک طرح تمدید خودکار است، حداقل یک مورد به طور خودکار تمدید فعال شده و منقضی نشده است. - (2) اگر اشتراک یک طرح پیش پرداخت باشد، حداقل یک مورد منقضی نشده است.
SUBSCRIPTION_STATE_PAUSED اشتراک متوقف شده است. حالت فقط زمانی در دسترس است که اشتراک یک طرح تمدید خودکار باشد. در این حالت همه موارد در حالت مکث هستند.
SUBSCRIPTION_STATE_IN_GRACE_PERIOD اشتراک در مهلت است. حالت فقط زمانی در دسترس است که اشتراک یک طرح تمدید خودکار باشد. در این حالت تمامی اقلام در مهلت مقرر می باشند.
SUBSCRIPTION_STATE_ON_HOLD اشتراک در حالت تعلیق است (تعلیق شده است). حالت فقط زمانی در دسترس است که اشتراک یک طرح تمدید خودکار باشد. در این حالت همه موارد در حالت انتظار هستند.
SUBSCRIPTION_STATE_CANCELED اشتراک لغو شده است اما هنوز منقضی نشده است. حالت فقط زمانی در دسترس است که اشتراک یک طرح تمدید خودکار باشد. همه موارد دارای autoRenewEnabled روی نادرست تنظیم شده اند.
SUBSCRIPTION_STATE_EXPIRED اشتراک منقضی شده است. همه موارد در گذشته دارای expiryTime هستند.
SUBSCRIPTION_STATE_PENDING_PURCHASE_CANCELED تراکنش معلق برای اشتراک لغو شده است. اگر این خرید معلق برای یک اشتراک موجود بود، از linkedPurchaseToken برای دریافت وضعیت فعلی آن اشتراک استفاده کنید.

PausedStateContext

اطلاعات مختص یک اشتراک در حالت توقف.

نمایندگی JSON
{
  "autoResumeTime": string
}
فیلدها
autoResumeTime

string ( Timestamp format)

زمانی که در آن اشتراک به طور خودکار از سر گرفته می شود.

یک مهر زمانی در قالب RFC3339 UTC "Zulu"، با وضوح نانوثانیه و حداکثر نه رقم کسری. مثال‌ها: "2014-10-02T15:01:23Z" و "2014-10-02T15:01:23.045123456Z" .

CanceledStateContext

اطلاعات مختص یک اشتراک در وضعیت SUBSCRIPTION_STATE_CANCELED یا SUBSCRIPTION_STATE_EXPIRED.

نمایندگی 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.
}
فیلدها
cancellation_reason فیلد اتحادیه . دلیل لغو اشتراک cancellation_reason تنها می تواند یکی از موارد زیر باشد:
userInitiatedCancellation

object ( UserInitiatedCancellation )

اشتراک توسط کاربر لغو شد.

systemInitiatedCancellation

object ( SystemInitiatedCancellation )

اشتراک توسط سیستم لغو شد، برای مثال به دلیل مشکل صورت‌حساب.

developerInitiatedCancellation

object ( DeveloperInitiatedCancellation )

اشتراک توسط توسعه دهنده لغو شد.

replacementCancellation

object ( ReplacementCancellation )

اشتراک با یک اشتراک جدید جایگزین شد.

UserInitiated Cancellation

اطلاعات مربوط به لغوهایی که توسط کاربران آغاز شده است.

نمایندگی JSON
{
  "cancelSurveyResult": {
    object (CancelSurveyResult)
  },
  "cancelTime": string
}
فیلدها
cancelSurveyResult

object ( CancelSurveyResult )

اطلاعات ارائه شده توسط کاربر هنگام تکمیل جریان لغو اشتراک (نظرسنجی دلیل لغو).

cancelTime

string ( Timestamp format)

زمانی که در آن اشتراک توسط کاربر لغو شد. ممکن است کاربر پس از این مدت همچنان به اشتراک دسترسی داشته باشد. از lineItems.expiry_time برای تعیین اینکه آیا کاربر همچنان دسترسی دارد یا خیر استفاده کنید.

یک مهر زمانی در قالب RFC3339 UTC "Zulu"، با وضوح نانوثانیه و حداکثر نه رقم کسری. مثال‌ها: "2014-10-02T15:01:23Z" و "2014-10-02T15:01:23.045123456Z" .

CancelSurveyResult

نتیجه نظرسنجی لغو زمانی که اشتراک توسط کاربر لغو شد.

نمایندگی JSON
{
  "reason": enum (CancelSurveyReason),
  "reasonUserInput": string
}
فیلدها
reason

enum ( CancelSurveyReason )

دلیل انتخاب کاربر در نظرسنجی لغو.

reasonUserInput

string

فقط برای CANCEL_SURVEY_REASON_OTHERS تنظیم شده است. این پاسخ فرم آزاد کاربر به نظرسنجی است.

CancelSurveyReason

دلیل انتخاب کاربر در نظرسنجی لغو.

Enums
CANCEL_SURVEY_REASON_UNSPECIFIED دلیل نظرسنجی لغو نامشخص.
CANCEL_SURVEY_REASON_NOT_ENOUGH_USAGE عدم استفاده کافی از اشتراک
CANCEL_SURVEY_REASON_TECHNICAL_ISSUES مشکلات فنی هنگام استفاده از برنامه
CANCEL_SURVEY_REASON_FOUND_BETTER_APP کاربر برنامه بهتری پیدا کرد.
CANCEL_SURVEY_REASON_OTHERS دلایل دیگر.

SystemInitiated Cancellation

این نوع هیچ فیلدی ندارد.

اطلاعات مربوط به لغوهایی که توسط سیستم Google آغاز شده است.

DeveloperInitiated Cancellation

این نوع هیچ فیلدی ندارد.

اطلاعات مربوط به لغوهایی که توسط توسعه دهندگان آغاز شده است.

جایگزینی لغو

این نوع هیچ فیلدی ندارد.

اطلاعات مربوط به لغوهای ناشی از تعویض اشتراک.

تست خرید

این نوع هیچ فیلدی ندارد.

آیا این خرید اشتراک یک خرید آزمایشی است یا خیر.

دولت قدردانی

اظهارات احتمالی برای یک اشتراک.

Enums
ACKNOWLEDGEMENT_STATE_UNSPECIFIED وضعیت تأیید نامشخص
ACKNOWLEDGEMENT_STATE_PENDING اشتراک هنوز تایید نشده است.
ACKNOWLEDGEMENT_STATE_ACKNOWLEDGED اشتراک تایید شده است.

شناسه های حساب خارجی

شناسه حساب کاربری در سرویس شخص ثالث.

نمایندگی JSON
{
  "externalAccountId": string,
  "obfuscatedExternalAccountId": string,
  "obfuscatedExternalProfileId": string
}
فیلدها
externalAccountId

string

شناسه حساب کاربری در سرویس شخص ثالث. فقط در صورتی ارائه شود که پیوند حساب به عنوان بخشی از جریان خرید اشتراک اتفاق افتاده باشد.

obfuscatedExternalAccountId

string

یک نسخه مبهم از شناسه که به طور منحصر به فرد با حساب کاربر در برنامه شما مرتبط است. برای خریدهای زیر ارائه دهید: * اگر پیوند حساب به عنوان بخشی از جریان خرید اشتراک اتفاق افتاده باشد. * هنگام خرید با استفاده از https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedaccountid مشخص شد.

obfuscatedExternalProfileId

string

یک نسخه مبهم از شناسه که به طور منحصر به فرد با نمایه کاربر در برنامه شما مرتبط است. فقط در صورت مشخص شدن با استفاده از https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedprofileid هنگام خرید.

اشتراک با GoogleInfo

اطلاعات مرتبط با خریدهای انجام شده با «اشتراک با Google».

نمایندگی JSON
{
  "profileId": string,
  "profileName": string,
  "emailAddress": string,
  "givenName": string,
  "familyName": string
}
فیلدها
profileId

string

شناسه نمایه Google کاربر هنگام خرید اشتراک.

profileName

string

نام نمایه کاربر هنگام خرید اشتراک.

emailAddress

string

آدرس ایمیل کاربر هنگام خرید اشتراک.

givenName

string

نام داده شده کاربر هنگام خرید اشتراک.

familyName

string

نام خانوادگی کاربر هنگام خرید اشتراک.

اشتراک خرید آیتم خط

اطلاعات سطح مورد برای خرید اشتراک.

نمایندگی 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.
}
فیلدها
productId

string

شناسه محصول خریداری شده (به عنوان مثال، 'monthly001').

expiryTime

string ( Timestamp format)

زمانی که در آن اشتراک منقضی می‌شود یا منقضی می‌شود مگر اینکه دسترسی تمدید شود (مثلاً تمدید شود).

یک مهر زمانی در قالب RFC3339 UTC "Zulu"، با وضوح نانوثانیه و حداکثر نه رقم کسری. مثال‌ها: "2014-10-02T15:01:23Z" و "2014-10-02T15:01:23.045123456Z" .

plan_type میدان اتحادیه . نوع طرح اشتراک plan_type فقط می تواند یکی از موارد زیر باشد:
autoRenewingPlan

object ( AutoRenewingPlan )

مورد در حال تمدید خودکار است.

prepaidPlan

object ( PrepaidPlan )

کالا پیش پرداخت شده است.

offerDetails

object ( OfferDetails )

جزئیات پیشنهاد برای این مورد.

فیلد اتحادیه deferred_item_change . این فیلد زمانی وجود دارد که یک مورد دارای یک تغییر معوق باشد. می توان آن را برداشت یا جایگزین کرد. deferred_item_change تنها می تواند یکی از موارد زیر باشد:
deferredItemReplacement

object ( DeferredItemReplacement )

اطلاعات مربوط به تعویض کالای معوق

برنامه تمدید خودکار

اطلاعات مربوط به طرح تمدید خودرو.

نمایندگی JSON
{
  "autoRenewEnabled": boolean,
  "priceChangeDetails": {
    object (SubscriptionItemPriceChangeDetails)
  },
  "installmentDetails": {
    object (InstallmentPlan)
  }
}
فیلدها
autoRenewEnabled

boolean

اگر اشتراک در حال حاضر روی تمدید خودکار تنظیم شده باشد، به عنوان مثال کاربر اشتراک را لغو نکرده است

priceChangeDetails

object ( SubscriptionItemPriceChangeDetails )

اطلاعات آخرین تغییر قیمت کالا از زمان ثبت نام.

installmentDetails

object ( InstallmentPlan )

تعهد طرح اقساطی و اطلاعات مربوط به طرح تمدید خودرو.

SubscriptionItemPriceChangeDetails

اطلاعات مربوط به تغییر قیمت یک مورد اشتراک.

نمایندگی JSON
{
  "newPrice": {
    object (Money)
  },
  "priceChangeMode": enum (PriceChangeMode),
  "priceChangeState": enum (PriceChangeState),
  "expectedNewPriceChargeTime": string
}
فیلدها
newPrice

object ( Money )

قیمت تکراری جدید برای مورد اشتراک.

priceChangeMode

enum ( PriceChangeMode )

حالت تغییر قیمت نحوه تغییر قیمت آیتم اشتراک را مشخص می کند.

priceChangeState

enum ( PriceChangeState )

اعلام کنید تغییر قیمت در حال حاضر انجام شده است.

expectedNewPriceChargeTime

string ( Timestamp format)

زمان تمدید که در آن تغییر قیمت برای کاربر موثر خواهد بود. به دلیل مواردی که زمان تمدید مانند مکث تغییر می کند، ممکن است (به زمان آینده) تغییر کند. این قسمت فقط در صورتی پر می شود که تغییر قیمت اعمال نشده باشد.

یک مهر زمانی در قالب RFC3339 UTC "Zulu"، با وضوح نانوثانیه و حداکثر نه رقم کسری. مثال‌ها: "2014-10-02T15:01:23Z" و "2014-10-02T15:01:23.045123456Z" .

PriceChangeMode

حالت تغییر قیمت

Enums
PRICE_CHANGE_MODE_UNSPECIFIED حالت تغییر قیمت مشخص نشده است. این مقدار هرگز نباید تنظیم شود.
PRICE_DECREASE اگر قیمت اشتراک در حال کاهش است.
PRICE_INCREASE اگر قیمت اشتراک در حال افزایش است و کاربر باید آن را بپذیرد.
OPT_OUT_PRICE_INCREASE اگر قیمت اشتراک با حالت انصراف در حال افزایش است.

قیمت تغییر وضعیت

وضعیت تغییر قیمت.

Enums
PRICE_CHANGE_STATE_UNSPECIFIED وضعیت تغییر قیمت مشخص نشده است. این مقدار نباید استفاده شود.
OUTSTANDING منتظر موافقت کاربر برای تغییر قیمت هستیم.
CONFIRMED تغییر قیمت برای کاربر تایید شده است.
APPLIED تغییر قیمت اعمال می شود، یعنی کاربر شروع به شارژ قیمت جدید کرده است.

طرح اقساطی

اطلاعات طرح اقساطی

نمایندگی JSON
{
  "initialCommittedPaymentsCount": integer,
  "subsequentCommittedPaymentsCount": integer,
  "remainingCommittedPaymentsCount": integer,
  "pendingCancellation": {
    object (PendingCancellation)
  }
}
فیلدها
initialCommittedPaymentsCount

integer

تعداد کل پرداخت هایی که کاربر در ابتدا متعهد شده است.

subsequentCommittedPaymentsCount

integer

تعداد کل پرداخت هایی که کاربر پس از هر دوره تعهد متعهد می شود. خالی به این معنی است که طرح اقساط پس از تعهد اولیه به اشتراک عادی تمدید خودکار بازمی گردد.

remainingCommittedPaymentsCount

integer

تعداد کل پرداخت‌های متعهد باقی مانده برای پرداخت در این چرخه تمدید.

pendingCancellation

object ( PendingCancellation )

در صورت وجود، این طرح اقساطی در انتظار لغو است. لغو تنها پس از پایان تمام پرداخت های متعهد توسط کاربر انجام می شود.

در انتظار لغو

این نوع هیچ فیلدی ندارد.

این نشان دهنده وجود لغو معلق در طرح اقساط مجازی است. لغو تنها پس از اتمام تمام پرداخت های متعهد توسط کاربر انجام می شود.

PrepaidPlan

اطلاعات مربوط به طرح پیش پرداخت

نمایندگی JSON
{
  "allowExtendAfterTime": string
}
فیلدها
allowExtendAfterTime

string ( Timestamp format)

در صورت وجود، این زمانی است که پس از آن خریدهای شارژ برای طرح پیش پرداخت مجاز است. برای طرح های پیش پرداخت منقضی شده حضور نخواهد داشت.

یک مهر زمانی در قالب RFC3339 UTC "Zulu"، با وضوح نانوثانیه و حداکثر نه رقم کسری. مثال‌ها: "2014-10-02T15:01:23Z" و "2014-10-02T15:01:23.045123456Z" .

جزئیات پیشنهاد

اطلاعات جزئیات پیشنهاد مربوط به یک مورد خط خرید.

نمایندگی JSON
{
  "offerTags": [
    string
  ],
  "basePlanId": string,
  "offerId": string
}
فیلدها
offerTags[]

string

آخرین برچسب های پیشنهاد مرتبط با پیشنهاد. این شامل تگ های به ارث رسیده از طرح پایه است.

basePlanId

string

شناسه طرح پایه ارائه برای همه طرح های پایه و پیشنهادات.

offerId

string

شناسه پیشنهاد فقط برای پیشنهادات با تخفیف ارائه می شود.

DeferredItemReplacement

اطلاعات مربوط به تعویض اقلام معوق

نمایندگی JSON
{
  "productId": string
}
فیلدها
productId

string

productId جایگزین productId موجود می شود.

روش ها

get

دریافت فراداده در مورد یک اشتراک

revoke

لغو خرید اشتراک برای کاربر.