REST Resource: purchases.subscriptions

المرجع: SubscriptionPurchase

يشير مورد 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

يمثّل هذا النوع عنصر subscriptionPurchase في خدمة androidpublisher.

startTimeMillis

string (int64 format)

الوقت الذي تم فيه منح الاشتراك، بالمللي ثانية منذ بداية حساب الفترة

expiryTimeMillis

string (int64 format)

الوقت الذي ستنتهي فيه صلاحية الاشتراك، بالمللي ثانية منذ بداية الحقبة

autoResumeTimeMillis

string (int64 format)

الوقت الذي سيتم فيه استئناف الاشتراك تلقائيًا، بالمللي ثانية منذ بدء حساب الفترة لا يظهر هذا الحقل إلا إذا طلب المستخدم إيقاف الاشتراك مؤقتًا.

autoRenewing

boolean

ما إذا كان سيتم تجديد الاشتراك تلقائيًا عند بلوغ وقت انتهاء صلاحيته الحالي

priceCurrencyCode

string

رمز العملة وفقًا لمعيار ISO 4217 لسعر الاشتراك على سبيل المثال، إذا تم تحديد السعر بالجنيه الإسترليني، يكون priceCurrencyCode هو "GBP".

priceAmountMicros

string (int64 format)

سعر الاشتراك: في البلدان التي لا يتم فيها تضمين الضريبة في السعر، لا يشمل السعر الضريبة. في البلدان التي يتم فيها تضمين الضريبة في السعر، يشمل السعر الضريبة. يتم التعبير عن السعر بوحدات ميكرو، حيث أنّ 1,000,000 وحدة ميكرو تمثل وحدة واحدة من العملة. على سبيل المثال، إذا كان سعر الاشتراك هو 1.99 يورو، تكون قيمة priceAmountMicros هي 1990000.

introductoryPriceInfo

object (IntroductoryPriceInfo)

معلومات حول السعر التمهيدي للاشتراك لا يظهر هذا الخيار إلا عند شراء الاشتراك بسعر تمهيدي.

لا يشير هذا الحقل إلى أنّ الاشتراك متوفّر حاليًا بسعر تمهيدي.

countryCode

string

رمز البلد أو المنطقة وفقًا لمعيار ISO 3166-1 alpha-2 الذي يستخدمه المستخدم في الفوترة في وقت منح الاشتراك.

developerPayload

string

سلسلة يحدّدها المطوّر تحتوي على معلومات تكميلية عن طلب معيّن

paymentState

integer

حالة الدفع للاشتراك القيم المحتمَلة هي: 0. الدفعة معلَّقة 1. تم استلام الدفعة 2. الفترة التجريبية المجانية 3. ترقية/ترجيع في انتظار المراجعة

لا تتوفّر هذه الميزة للاشتراكات الملغاة أو المنتهية الصلاحية.

cancelReason

integer

سبب إلغاء اشتراك أو عدم تجديده تلقائيًا القيم المحتمَلة هي: 0. ألغى المستخدم الاشتراك 1. تم إلغاء الاشتراك من قِبل النظام، مثلاً بسبب مشكلة في الفوترة 2. تم استبدال الاشتراك باشتراك جديد 3. تم إلغاء الاشتراك من قِبل المطوِّر

userCancellationTimeMillis

string (int64 format)

الوقت الذي ألغى فيه المستخدم الاشتراك، بالمللي ثانية منذ بداية الحقبة لا يظهر هذا الحقل إلا إذا كانت قيمة cancelReason هي 0.

cancelSurveyResult

object (SubscriptionCancelSurveyResult)

المعلومات التي يقدّمها المستخدم عند إكمال عملية إلغاء الاشتراك (استطلاع سبب الإلغاء)

orderId

string

معرّف الطلب الخاص بآخر طلب متكرّر مرتبط بعملية شراء الاشتراك. إذا تم إلغاء الاشتراك بسبب رفض الدفعة، سيكون هذا هو معرّف الطلب من الطلب الذي تم رفض دفعته.

linkedPurchaseToken

string

رمز الشراء لعملية الشراء الأصلية إذا كان هذا الاشتراك هو أحد العناصر التالية: 0. إعادة الاشتراك في اشتراك تم إلغاؤه ولكن لم تنته صلاحيته 1. الترقية/الرجوع إلى إصدار سابق من اشتراك

على سبيل المثال، لنفترض أنّ أحد المستخدمين اشترك في البداية وتلقّيت الرمز المميّز X للشراء، ثم ألغى المستخدم الاشتراك ونفَّذ عملية إعادة الاشتراك (قبل انتهاء صلاحية اشتراكه) وتلقّيت الرمز المميّز Y للشراء، وفي النهاية أجرى المستخدم ترقية لاشتراكه وتلقّيت الرمز المميّز Z للشراء. في حال طلب بيانات من واجهة برمجة التطبيقات هذه باستخدام رمز الشراء Z، سيتم ضبط هذا الحقل على Y. في حال استدعاء واجهة برمجة التطبيقات هذه باستخدام رمز الشراء Y، سيتم ضبط هذا الحقل على X. في حال طلب بيانات من واجهة برمجة التطبيقات هذه باستخدام الرمز المميّز X لعملية الشراء، لن يتم ضبط هذا الحقل.

purchaseType

integer

نوع شراء الاشتراك لا يتم ضبط هذا الحقل إلا إذا لم تتم عملية الشراء هذه باستخدام مسار الفوترة العادي داخل التطبيق. القيم المحتمَلة هي: 0. اختبار (أي تم شراؤه من حساب اختبار الترخيص) 1. ترويجي (أي تم شراؤه باستخدام رمز ترويجي)

priceChange

object (SubscriptionPriceChange)

أحدث معلومات التغييرات في الأسعار لا يظهر هذا الخيار إلا عند حدوث تغيير قادم في سعر الاشتراك لم يتم تطبيقه بعد.

بعد تجديد الاشتراك بالسعر الجديد أو إلغائه، لن يتم عرض أي معلومات عن تغيير السعر.

profileName

string

اسم الملف الشخصي للمستخدم عند شراء الاشتراك لا تظهر إلا لعمليات الشراء التي تم إجراؤها باستخدام ميزة "الاشتراك باستخدام حساب Google".

emailAddress

string

عنوان البريد الإلكتروني للمستخدم عند شراء الاشتراك لا تظهر إلا لعمليات الشراء التي تم إجراؤها باستخدام ميزة "الاشتراك باستخدام حساب Google".

givenName

string

الاسم الأول للمستخدم عند شراء الاشتراك. لا تظهر إلا لعمليات الشراء التي تم إجراؤها باستخدام ميزة "الاشتراك باستخدام حساب Google".

familyName

string

اسم عائلة المستخدم عند شراء الاشتراك لا تظهر إلا لعمليات الشراء التي تم إجراؤها باستخدام ميزة "الاشتراك باستخدام حساب Google".

profileId

string

رقم تعريف الملف الشخصي للمستخدم على Google عند شراء الاشتراك لا تظهر إلا لعمليات الشراء التي تم إجراؤها باستخدام ميزة "الاشتراك باستخدام حساب Google".

acknowledgementState

integer

حالة تأكيد منتج الاشتراك القيم المحتمَلة هي: 0. لم يتم الردّ بعد 1. تم الإشعار بالاستلام

externalAccountId

string

معرّف حساب المستخدم في الخدمة التابعة لجهة خارجية لا يظهر هذا الحقل إلا إذا تم ربط الحساب كجزء من عملية شراء الاشتراك.

promotionType

integer

نوع العرض الترويجي الذي تم تطبيقه على عملية الشراء هذه. لا يتم ضبط هذا الحقل إلا إذا تم تطبيق عرض ترويجي عند شراء الاشتراك. القيم المحتمَلة هي: 0. الرمز المخصّص لمرة واحدة 1. رمز Vanity

promotionCode

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 عند إجراء عملية الشراء.

IntroductoryPriceInfo

يحتوي على معلومات السعر التمهيدي لاشتراك.

تمثيل JSON
{
  "introductoryPriceCurrencyCode": string,
  "introductoryPriceAmountMicros": string,
  "introductoryPricePeriod": string,
  "introductoryPriceCycles": integer
}
الحقول
introductoryPriceCurrencyCode

string

رمز العملة وفقًا لمعيار ISO 4217 لسعر الاشتراك التمهيدي على سبيل المثال، إذا تم تحديد السعر بالجنيه الإسترليني، يكون priceCurrencyCode هو "GBP".

introductoryPriceAmountMicros

string (int64 format)

السعر التمهيدي للاشتراك، بدون احتساب الضريبة العملة هي نفسها priceCurrencyCode. يتم التعبير عن السعر بوحدات ميكرو، حيث أنّ 1,000,000 وحدة ميكرو تمثل وحدة واحدة من العملة. على سبيل المثال، إذا كان سعر الاشتراك 1.99 يورو، تكون قيمة priceAmountMicros هي 1990000.

introductoryPricePeriod

string

فترة السعر التمهيدي، المحدّدة بتنسيق ISO 8601 تشمل القيم الشائعة (على سبيل المثال لا الحصر) "P1W" (أسبوع واحد) و"P1M" (شهر واحد) و"P3M" (ثلاثة أشهر) و"P6M" (ستة أشهر) و "P1Y" (عام واحد).

introductoryPriceCycles

integer

عدد الفترات الزمنية للفوترة لتقديم أسعار تمهيدية

SubscriptionCancelSurveyResult

المعلومات التي يقدّمها المستخدم عند إكمال عملية إلغاء الاشتراك (استطلاع سبب الإلغاء)

تمثيل JSON
{
  "cancelSurveyReason": integer,
  "userInputCancelReason": string
}
الحقول
cancelSurveyReason

integer

سبب الإلغاء الذي اختاره المستخدم في الاستطلاع القيم المحتمَلة هي: 0. غير ذلك 1. لا أستفيد من هذه الخدمة بقدرٍ كافٍ 2. المشاكل الفنية 3. أسباب تتعلّق بالتكلفة 4. اكتشفت تطبيقًا أفضل.

userInputCancelReason

string

سبب الإلغاء المخصّص الذي يُدخله المستخدم لا يظهر هذا الحقل إلا عندما يكون cancelReason يساوي 0.

SubscriptionPriceChange

يحتوي على معلومات تغيير السعر لاشتراك يمكن استخدامه للتحكّم في رحلة المستخدِم المتعلّقة بتغيير السعر في التطبيق. ويمكن أن يكون ذلك في شكل طلب تأكيد من المستخدِم أو تخصيص التجربة لتحقيق إحالة ناجحة.

تمثيل JSON
{
  "newPrice": {
    object (Price)
  },
  "state": integer
}
الحقول
newPrice

object (Price)

السعر الجديد الذي سيتم تجديد الاشتراك به إذا وافق المستخدم على تغيير السعر.

state

integer

الحالة الحالية لتغيير السعر القيم المحتمَلة هي: 0. غير مكتمل: حالة تغيير سعر في انتظار موافقة المستخدم. في هذه الحالة، يمكنك اختياريًا طلب تأكيد من المستخدم باستخدام واجهة برمجة التطبيقات داخل التطبيق. 1. تم قبوله: حدِّد السعر الجديد الذي تم قبوله والذي سيتم تجديد الاشتراك به ما لم يتم إلغاؤه. يسري تغيير السعر في تاريخ مستقبلي عند تجديد الاشتراك. يُرجى العِلم أنّ هذا التغيير قد لا يحدث عند تجديد الاشتراك في المرة القادمة.

الطُرق

acknowledge

الإقرار بعملية شراء اشتراك

cancel

إلغاء عملية شراء اشتراك أحد المستخدمين

defer

يؤجل شراء اشتراك المستخدم إلى وقت انتهاء صلاحية محدّد في المستقبل.

get

للتحقّق مما إذا كانت عملية شراء اشتراك المستخدم صالحة وعرض وقت انتهاء صلاحيته

refund

ردّ الأموال المدفوعة مقابل شراء اشتراك المستخدم، ولكن يظل الاشتراك صالحًا حتى وقت انتهاء صلاحيته وسيستمر تجدده.

revoke

ردّ الأموال وإبطال عملية شراء اشتراك المستخدم على الفور