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)
  },
  "etag": string,
  "outOfAppPurchaseContext": {
    object (OutOfAppPurchaseContext)
  }
}
שדות
kind

string

הסוג הזה מייצג אובייקט SubscriptionPurchaseV2 בשירות androidpublisher.

regionCode

string

קוד המדינה או האזור לחיוב של המשתמש לפי תקן ISO 3166-1 alpha-2 בזמן שהמינוי הוענק.

lineItems[]

object (SubscriptionPurchaseLineItem)

מידע ברמת הפריט על רכישת מינוי. כל הפריטים באותה רכישה צריכים להיות עם הערך AutoRenewingPlan או עם הערך PrepaidPlan.

startTime

string (Timestamp format)

השעה שבה המינוי הוענק. לא מוגדר למינויים בהמתנה (המינוי נוצר אבל ממתין לתשלום במהלך ההרשמה).

הפורמט הוא RFC 3339, והפלט שנוצר תמיד יהיה בפורמט Z-normalized ויכלול 0, 3, 6 או 9 ספרות אחרי הנקודה. אפשר להשתמש גם בהיסטים אחרים חוץ מ-Z. דוגמאות: "2014-10-02T15:01:23Z", ‏ "2014-10-02T15:01:23.045123456Z" או "2014-10-02T15:01:23+05:30".

subscriptionState

enum (SubscriptionState)

הסטטוס הנוכחי של המינוי.

latestOrderId
(deprecated)

string

הוצא משימוש: במקומו צריך להשתמש ב-lineItems.latest_successful_order_id. מזהה ההזמנה של ההזמנה האחרונה שמשויכת לרכישת המינוי. במינוי עם חידוש אוטומטי, זהו מזהה ההזמנה של ההרשמה אם המינוי עדיין לא חודש, או מזהה ההזמנה האחרונה שחוזרת על עצמה (הזמנה שהתקבלה, בהמתנה או שנדחתה). במינוי בתשלום מראש, זהו מזהה ההזמנה שמשויך לאסימון הרכישה שנשלח בשאילתה.

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'.

etag

string

תג ישות שמייצג את המצב הנוכחי של המינוי. המפתח יספק את ה-etag הזה לפעולות שקשורות למינוי. ה-etag הזה תמיד קיים במינויים שמתחדשים אוטומטית ובמינויים ששולמו מראש.

outOfAppPurchaseContext

object (OutOfAppPurchaseContext)

הקשר נוסף לרכישות מחוץ לאפליקציה. המידע הזה מוצג רק ברכישות של מינויים חוזרים (רכישות של מינויים שבוצעו אחרי שהמינוי הקודם לאותו מוצר פג) שבוצעו דרך מרכז המינויים של Google Play. השדה הזה יוסר אחרי שתאשרו את המינוי.

SubscriptionState

המצבים האפשריים של מינוי, למשל אם הוא פעיל או בוטל. הפריטים ברכישת מינוי יכולים להיות מינויים שמתחדשים אוטומטית או מינויים בתשלום מראש.

טיפוסים בני מנייה (enum)
SUBSCRIPTION_STATE_UNSPECIFIED לא צוין מצב המינוי.
SUBSCRIPTION_STATE_PENDING המינוי נוצר אבל התשלום בהרשמה בהמתנה. בסטטוס הזה, כל הפריטים נמצאים בהמתנה לתשלום.
SUBSCRIPTION_STATE_ACTIVE המינוי פעיל. ‫- (1) אם המינוי הוא תוכנית עם חידוש אוטומטי, לפחות פריט אחד הוא autoRenewEnabled ולא פג התוקף שלו. ‫– (2) אם המינוי הוא תוכנית בתשלום מראש, לפחות פריט אחד לא פג תוקף.
SUBSCRIPTION_STATE_PAUSED המינוי מושהה. הסטטוס הזה זמין רק אם המינוי הוא תוכנית שמתחדשת אוטומטית. במצב הזה, כל הפריטים מושהים.
SUBSCRIPTION_STATE_IN_GRACE_PERIOD המינוי נמצא בתקופת חסד. הסטטוס הזה זמין רק אם המינוי הוא תוכנית שמתחדשת אוטומטית. במצב הזה, כל הפריטים נמצאים בתקופת חסד.
SUBSCRIPTION_STATE_ON_HOLD המינוי נמצא בהמתנה (מושעה). הסטטוס הזה זמין רק אם המינוי הוא תוכנית שמתחדשת אוטומטית. במצב הזה, כל הפריטים נמצאים בהמתנה.
SUBSCRIPTION_STATE_CANCELED המינוי בוטל אבל התוקף שלו עדיין לא פג. הסטטוס הזה זמין רק אם המינוי הוא תוכנית שמתחדשת אוטומטית. בכל הפריטים, הערך של autoRenewEnabled מוגדר כ-false.
SUBSCRIPTION_STATE_EXPIRED המינוי הסתיים. לכל הפריטים יש ערך של expiryTime (תאריך תפוגה) בעבר.
SUBSCRIPTION_STATE_PENDING_PURCHASE_CANCELED עסקה בהמתנה למינוי בוטלה. אם הרכישה בהמתנה היא של מינוי קיים, אפשר להשתמש ב-linkedPurchaseToken כדי לקבל את המצב הנוכחי של המינוי.

PausedStateContext

מידע ספציפי על מינוי במצב מושהה.

ייצוג ב-JSON
{
  "autoResumeTime": string
}
שדות
autoResumeTime

string (Timestamp format)

השעה שבה המינוי יחודש באופן אוטומטי.

הפורמט הוא RFC 3339, והפלט שנוצר תמיד יהיה בפורמט Z-normalized ויכלול 0, 3, 6 או 9 ספרות אחרי הנקודה. אפשר להשתמש גם בהיסטים אחרים חוץ מ-Z. דוגמאות: "2014-10-02T15:01:23Z", ‏ "2014-10-02T15:01:23.045123456Z" או "2014-10-02T15:01:23+05:30".

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)

המינוי הוחלף במינוי חדש.

UserInitiatedCancellation

מידע ספציפי על ביטולים שבוצעו על ידי משתמשים.

ייצוג ב-JSON
{
  "cancelSurveyResult": {
    object (CancelSurveyResult)
  },
  "cancelTime": string
}
שדות
cancelSurveyResult

object (CancelSurveyResult)

מידע שהמשתמש מספק כשהוא משלים את תהליך ביטול המינוי (סקר סיבת הביטול).

cancelTime

string (Timestamp format)

השעה שבה המשתמש ביטל את המינוי. יכול להיות שלמשתמש עדיין תהיה גישה למינוי אחרי התקופה הזו. כדי לקבוע אם למשתמש עדיין יש גישה, משתמשים ב-lineItems.expiry_time.

הפורמט הוא RFC 3339, והפלט שנוצר תמיד יהיה בפורמט Z-normalized ויכלול 0, 3, 6 או 9 ספרות אחרי הנקודה. אפשר להשתמש גם בהיסטים אחרים חוץ מ-Z. דוגמאות: "2014-10-02T15:01:23Z", ‏ "2014-10-02T15:01:23.045123456Z" או "2014-10-02T15:01:23+05:30".

CancelSurveyResult

התוצאה של סקר הביטול כשמינוי בוטל על ידי המשתמש.

ייצוג ב-JSON
{
  "reason": enum (CancelSurveyReason),
  "reasonUserInput": string
}
שדות
reason

enum (CancelSurveyReason)

הסיבה שהמשתמש בחר בסקר הביטול.

reasonUserInput

string

ההגדרה הזו רלוונטית רק ל-CANCEL_SURVEY_REASON_OTHERS. התשובה הפתוחה של המשתמש לסקר.

CancelSurveyReason

הסיבה שהמשתמש בחר בסקר הביטול.

טיפוסים בני מנייה (enum)
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 סיבות אחרות.

SystemInitiatedCancellation

בסוג הזה אין שדות.

מידע ספציפי על ביטולים שבוצעו על ידי מערכת Google.

DeveloperInitiatedCancellation

בסוג הזה אין שדות.

מידע ספציפי על ביטולים שמתבצעים על ידי מפתחים.

ReplacementCancellation

בסוג הזה אין שדות.

מידע ספציפי על ביטולים שנגרמים כתוצאה מהחלפת מינוי.

TestPurchase

בסוג הזה אין שדות.

אם רכישת המינוי הזו היא רכישת בדיקה.

AcknowledgementState

המצבים האפשריים של אישור מינוי.

טיפוסים בני מנייה (enum)
ACKNOWLEDGEMENT_STATE_UNSPECIFIED לא צוין סטטוס אישור.
ACKNOWLEDGEMENT_STATE_PENDING המינוי עדיין לא אושר.
ACKNOWLEDGEMENT_STATE_ACKNOWLEDGED המינוי אושר.

ExternalAccountIdentifiers

מזהה חשבון המשתמש בשירות של צד שלישי.

ייצוג ב-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 בזמן ביצוע הרכישה.

SubscribeWithGoogleInfo

מידע שמשויך לרכישות שבוצעו באמצעות 'מינוי דרך Google'.

ייצוג ב-JSON
{
  "profileId": string,
  "profileName": string,
  "emailAddress": string,
  "givenName": string,
  "familyName": string
}
שדות
profileId

string

מזהה הפרופיל של המשתמש ב-Google בזמן רכישת המינוי.

profileName

string

שם הפרופיל של המשתמש בזמן רכישת המינוי.

emailAddress

string

כתובת האימייל של המשתמש בזמן רכישת המינוי.

givenName

string

השם הפרטי של המשתמש בזמן רכישת המינוי.

familyName

string

שם המשפחה של המשתמש בזמן רכישת המינוי.

SubscriptionPurchaseLineItem

מידע ברמת הפריט על רכישת מינוי.

ייצוג ב-JSON
{
  "productId": string,
  "expiryTime": string,
  "latestSuccessfulOrderId": 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)
  },
  "deferredItemRemoval": {
    object (DeferredItemRemoval)
  }
  // End of list of possible types for union field deferred_item_change.
  "signupPromotion": {
    object (SignupPromotion)
  },
  "itemReplacement": {
    object (ItemReplacement)
  },
  "offerPhase": {
    object (OfferPhase)
  }
}
שדות
productId

string

מזהה המוצר שנרכש (לדוגמה, monthly001).

expiryTime

string (Timestamp format)

השעה שבה המינוי פג או יפוג, אלא אם הגישה תוארך (למשל, אם המינוי יחודש).

הפורמט הוא RFC 3339, והפלט שנוצר תמיד יהיה בפורמט Z-normalized ויכלול 0, 3, 6 או 9 ספרות אחרי הנקודה. אפשר להשתמש גם בהיסטים אחרים חוץ מ-Z. דוגמאות: "2014-10-02T15:01:23Z", ‏ "2014-10-02T15:01:23.045123456Z" או "2014-10-02T15:01:23+05:30".

latestSuccessfulOrderId

string

מזהה ההזמנה של ההזמנה האחרונה שבוצעה בהצלחה ומשויכת לפריט הזה. המאפיין לא מופיע אם הפריט עדיין לא נמצא בבעלות המשתמש (למשל, אם הפריט הוחלף בפריט אחר שנדחה).

שדה איחוד plan_type. סוג תוכנית המינוי. הערך plan_type יכול להיות רק אחד מהבאים:
autoRenewingPlan

object (AutoRenewingPlan)

הפריט מתחדש באופן אוטומטי.

prepaidPlan

object (PrepaidPlan)

הפריט הוא בתשלום מראש.

offerDetails

object (OfferDetails)

פרטי המבצע של הפריט הזה.

שדה איחוד deferred_item_change. השדה מופיע כשיש שינוי שנדחה בפריט. אפשר להסיר אותו או להחליף אותו. הערך deferred_item_change יכול להיות רק אחד מהבאים:
deferredItemReplacement

object (DeferredItemReplacement)

מידע על החלפת פריטים שנדחתה.

deferredItemRemoval

object (DeferredItemRemoval)

מידע על הסרת פריטים שנדחתה.

signupPromotion

object (SignupPromotion)

פרטי המבצע על הפריט הזה. הערך מוגדר רק אם הופעל מבצע במהלך ההרשמה.

itemReplacement

object (ItemReplacement)

פרטים של הפריט שמוחלף. השדה הזה מתמלא רק אם הפריט הזה החליף פריט אחר במינוי קודם, והוא זמין רק למשך 60 ימים אחרי זמן הרכישה.

offerPhase

object (OfferPhase)

פרטים על שלב המבצע הנוכחי של הפריט הזה.

AutoRenewingPlan

מידע שקשור למינוי שמתחדש אוטומטית.

ייצוג ב-JSON
{
  "autoRenewEnabled": boolean,
  "recurringPrice": {
    object (Money)
  },
  "priceChangeDetails": {
    object (SubscriptionItemPriceChangeDetails)
  },
  "installmentDetails": {
    object (InstallmentPlan)
  },
  "priceStepUpConsentDetails": {
    object (PriceStepUpConsentDetails)
  }
}
שדות
autoRenewEnabled

boolean

אם המינוי מוגדר כרגע לחידוש אוטומטי, למשל אם המשתמש לא ביטל את המינוי

recurringPrice

object (Money)

המחיר הנוכחי של המינוי שמתחדש אוטומטית. שימו לב שהמחיר לא כולל הנחות ולא כולל מיסים במחירים ללא מס. אם אתם צריכים פרטי עסקה, עליכם להתקשר אל orders.get API.

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)

המועד לחידוש המינוי שבו שינוי המחיר ייכנס לתוקף עבור המשתמש. התאריך הזה עשוי להשתנות(למועד עתידי) במקרים שבהם מועד החידוש משתנה, למשל אם משהים את המינוי. השדה הזה מאוכלס רק אם שינוי המחיר לא נכנס לתוקף.

הפורמט הוא RFC 3339, והפלט שנוצר תמיד יהיה בפורמט Z-normalized ויכלול 0, 3, 6 או 9 ספרות אחרי הנקודה. אפשר להשתמש גם בהיסטים אחרים חוץ מ-Z. דוגמאות: "2014-10-02T15:01:23Z", ‏ "2014-10-02T15:01:23.045123456Z" או "2014-10-02T15:01:23+05:30".

PriceChangeMode

מצב השינוי במחיר.

טיפוסים בני מנייה (enum)
PRICE_CHANGE_MODE_UNSPECIFIED לא צוין מצב שינוי המחיר. אסור להגדיר את הערך הזה.
PRICE_DECREASE אם מחיר המינוי יורד.
PRICE_INCREASE אם מחיר המינוי עולה והמשתמש צריך לאשר את העלייה.
OPT_OUT_PRICE_INCREASE אם מחיר המינוי עולה עם אפשרות לסירוב.

PriceChangeState

המצב של שינוי המחיר.

טיפוסים בני מנייה (enum)
PRICE_CHANGE_STATE_UNSPECIFIED לא צוין מצב שינוי המחיר. אין להשתמש בערך הזה.
OUTSTANDING בהמתנה להסכמת המשתמש לשינוי במחיר.
CONFIRMED השינוי במחיר מאושר למשתמש.
APPLIED השינוי במחיר חל, כלומר המשתמש התחיל לשלם את המחיר החדש.
CANCELED שינוי המחיר בוטל.

InstallmentPlan

מידע על פריסת תשלומים.

ייצוג ב-JSON
{
  "initialCommittedPaymentsCount": integer,
  "subsequentCommittedPaymentsCount": integer,
  "remainingCommittedPaymentsCount": integer,
  "pendingCancellation": {
    object (PendingCancellation)
  }
}
שדות
initialCommittedPaymentsCount

integer

מספר התשלומים הכולל שהמשתמש התחייב לשלם בהתחלה.

subsequentCommittedPaymentsCount

integer

המספר הכולל של התשלומים שהמשתמש יתחייב אליהם אחרי כל תקופת התחייבות. אם הערך ריק, תוכנית התשלומים תחזור למינוי רגיל עם חידוש אוטומטי אחרי ההתחייבות הראשונית.

remainingCommittedPaymentsCount

integer

המספר הכולל של תשלומים שהתחייבתם לשלם שנותרו במחזור החידוש הזה.

pendingCancellation

object (PendingCancellation)

אם מופיעה תוכנית תשלומים, היא נמצאת בהמתנה לביטול. הביטול יתבצע רק אחרי שהמשתמש ישלים את כל התשלומים שהתחייב לבצע.

PendingCancellation

בסוג הזה אין שדות.

האינדיקטור הזה מציין אם יש בקשת ביטול בהמתנה של תוכנית התשלומים הווירטואלית. הביטול יתבצע רק אחרי שהמשתמש ישלים את כל התשלומים שהתחייב לבצע.

PriceStepUpConsentDetails

מידע שקשור להעלאת מחיר שנדרשת לגביה הסכמת המשתמש.

ייצוג ב-JSON
{
  "state": enum (ConsentState),
  "consentDeadlineTime": string,
  "newPrice": {
    object (Money)
  }
}
שדות
state

enum (ConsentState)

פלט בלבד. מצב ההסכמה לעלייה במחיר.

consentDeadlineTime

string (Timestamp format)

המועד האחרון שבו המשתמש צריך לספק הסכמה. אם לא נקבל ממך אישור עד לתאריך שצוין, המינוי יבוטל.

הפורמט הוא RFC 3339, והפלט שנוצר תמיד יהיה בפורמט Z-normalized ויכלול 0, 3, 6 או 9 ספרות אחרי הנקודה. אפשר להשתמש גם בהיסטים אחרים חוץ מ-Z. דוגמאות: "2014-10-02T15:01:23Z", ‏ "2014-10-02T15:01:23.045123456Z" או "2014-10-02T15:01:23+05:30".

newPrice

object (Money)

המחיר החדש שדורש הסכמת משתמשים.

ConsentState

מצב ההסכמה לעלייה במחיר.

טיפוסים בני מנייה (enum)
CONSENT_STATE_UNSPECIFIED מצב הסכמה לא צוין.
PENDING המשתמש עדיין לא סיפק הסכמה.
CONFIRMED המשתמש הסכים, והמחיר החדש יתעדכן בקרוב.
COMPLETED המשתמש הסכים למחיר החדש, והוא נכנס לתוקף.

PrepaidPlan

מידע שקשור לתוכנית בתשלום מראש.

ייצוג ב-JSON
{
  "allowExtendAfterTime": string
}
שדות
allowExtendAfterTime

string (Timestamp format)

אם הערך הזה קיים, זהו הזמן שאחריו מותרות רכישות של טעינת יתרה במינוי בתשלום מראש. לא יופיע במינויים בתשלום מראש שהתוקף שלהם פג.

הפורמט הוא RFC 3339, והפלט שנוצר תמיד יהיה בפורמט Z-normalized ויכלול 0, 3, 6 או 9 ספרות אחרי הנקודה. אפשר להשתמש גם בהיסטים אחרים חוץ מ-Z. דוגמאות: "2014-10-02T15:01:23Z", ‏ "2014-10-02T15:01:23.045123456Z" או "2014-10-02T15:01:23+05:30".

OfferDetails

פרטים על מוצר שמופיע בשורת רכישה.

ייצוג ב-JSON
{
  "offerTags": [
    string
  ],
  "basePlanId": string,
  "offerId": string
}
שדות
offerTags[]

string

תגי המבצע העדכניים שמשויכים למבצע. הוא כולל תגים שירשו מהתוכנית הבסיסית.

basePlanId

string

מזהה המינוי הבסיסי. מוצגות לכל המינויים הבסיסיים ולכל המבצעים.

offerId

string

מזהה המבצע. המאפיין הזה מוצג רק במבצעים עם הנחה.

DeferredItemReplacement

מידע שקשור להחלפת פריטים שנדחתה.

ייצוג ב-JSON
{
  "productId": string
}
שדות
productId

string

מזהה המוצר שיחליף את מזהה המוצר הקיים.

DeferredItemRemoval

בסוג הזה אין שדות.

מידע שקשור להחלפת פריטים שנדחתה.

SignupPromotion

המבצע שהוחל על הפריט הזה בזמן הרכישה.

ייצוג ב-JSON
{

  // Union field promotion_type can be only one of the following:
  "oneTimeCode": {
    object (OneTimeCode)
  },
  "vanityCode": {
    object (VanityCode)
  }
  // End of list of possible types for union field promotion_type.
}
שדות
שדה איחוד promotion_type. סוג המבצע שחל על הפריט. הערך promotion_type יכול להיות רק אחד מהבאים:
oneTimeCode

object (OneTimeCode)

הוחל קוד חד-פעמי.

vanityCode

object (VanityCode)

קוד מותאם אישית הופעל.

OneTimeCode

בסוג הזה אין שדות.

קוד שובר לשימוש חד-פעמי.

VanityCode

קוד שובר מוגדר מראש שאפשר להשתמש בו כמה פעמים.

ייצוג ב-JSON
{
  "promotionCode": string
}
שדות
promotionCode

string

קוד השובר.

ItemReplacement

פרטים על פריט מינוי שמוחלף.

ייצוג ב-JSON
{
  "productId": string,
  "replacementMode": enum (ReplacementMode),
  "basePlanId": string,
  "offerId": string
}
שדות
productId

string

מזהה המוצר של פריט המינוי שמוחלף.

replacementMode

enum (ReplacementMode)

מצב ההחלפה שהוחל במהלך הרכישה.

basePlanId

string

מזהה המינוי הבסיסי של פריט המינוי שמוחלף.

offerId

string

מזהה המוצר של פריט המינוי שמוחלף, אם רלוונטי.

ReplacementMode

מצב ההחלפה של המינוי.

טיפוסים בני מנייה (enum)
REPLACEMENT_MODE_UNSPECIFIED מצב החלפה לא מוגדר.
WITH_TIME_PRORATION החיוב על התוכנית החדשה יהיה יחסי, והיתרה מהתוכנית הישנה תועבר לתוכנית החדשה.
CHARGE_PRORATED_PRICE המשתמש יחויב במחיר יחסי על המינוי החדש.
WITHOUT_PRORATION התוכנית החדשה תחליף את התוכנית הישנה בלי לחשב את הזמן באופן יחסי.
CHARGE_FULL_PRICE המשתמש יחויב במחיר המלא של המינוי החדש.
DEFERRED התוכנית הישנה תבוטל והתוכנית החדשה תיכנס לתוקף אחרי שהתוכנית הישנה תסתיים.
KEEP_EXISTING התוכנית לא תשתנה בעקבות ההחלפה הזו.

OfferPhase

פרטי שלב המבצע.

ייצוג ב-JSON
{

  // Union field offer_phase can be only one of the following:
  "prorationPeriod": {
    object (ProrationPeriodOfferPhase)
  },
  "freeTrial": {
    object (FreeTrialOfferPhase)
  },
  "introductoryPrice": {
    object (IntroductoryPriceOfferPhase)
  },
  "basePrice": {
    object (BasePriceOfferPhase)
  }
  // End of list of possible types for union field offer_phase.
}
שדות
שדה איחוד offer_phase. פרטי שלב המבצע. הערך offer_phase יכול להיות רק אחד מהבאים:
prorationPeriod

object (ProrationPeriodOfferPhase)

הגדרת המועד שבו תקופת המבצע תהיה תקופת חישוב יחסי.

freeTrial

object (FreeTrialOfferPhase)

מגדירים מתי שלב המבצע הוא תקופת ניסיון בחינם.

introductoryPrice

object (IntroductoryPriceOfferPhase)

מגדירים מתי שלב המבצע הוא שלב של מחיר היכרות.

basePrice

object (BasePriceOfferPhase)

מגדירים מתי שלב המבצע הוא שלב תמחור של מינוי בסיסי.

ProrationPeriodOfferPhase

פרטים על שלב המבצע בתקופת החיוב היחסי.

ייצוג ב-JSON
{
  "originalOfferPhaseType": enum (OriginalOfferPhaseType)
}
שדות
originalOfferPhaseType

enum (OriginalOfferPhaseType)

סוג השלב המקורי של המבצע לפני תקופת החלוקה היחסית. ההגדרה הזו רלוונטית רק כשמעדכנים את תקופת החיוב היחסי משלב קיים של מבצע.

OriginalOfferPhaseType

שלב המבצע המקורי של תשלום המבצע, אם תשלום המבצע הוא תשלום יחסי.

טיפוסים בני מנייה (enum)
ORIGINAL_OFFER_PHASE_TYPE_UNSPECIFIED לא צוין סוג שלב המבצע המקורי.
BASE המינוי נמצא בשלב התמחור הבסיסי (למשל, מחיר מלא).
INTRODUCTORY המינוי נמצא בשלב של מחיר היכרות.
FREE_TRIAL המינוי נמצא בתקופת ניסיון בחינם.

FreeTrialOfferPhase

בסוג הזה אין שדות.

פרטים על שלב תקופת הניסיון בחינם.

IntroductoryPriceOfferPhase

בסוג הזה אין שדות.

פרטים על שלב מחיר ההיכרות.

BasePriceOfferPhase

בסוג הזה אין שדות.

פרטים על שלב מבצע מחיר הבסיס.

OutOfAppPurchaseContext

מידע ספציפי לרכישה מחוץ לאפליקציה.

ייצוג ב-JSON
{
  "expiredExternalAccountIdentifiers": {
    object (ExternalAccountIdentifiers)
  },
  "expiredPurchaseToken": string
}
שדות
expiredExternalAccountIdentifiers

object (ExternalAccountIdentifiers)

מזהה חשבון המשתמש מהמינוי האחרון שפג התוקף שלו למק"ט הזה.

expiredPurchaseToken

string

טוקן הרכישה של המינוי האחרון שתוקפו פג. אפשר להשתמש בטוקן הרכישה הזה רק כדי לזהות את המשתמש אם הקישור בין purchaseToken לבין המשתמש מאוחסן במסד הנתונים שלכם. אי אפשר להשתמש ב-API הזה כדי להתקשר אל Google Developer API אם עברו יותר מ-60 יום מאז התפוגה.

Methods

cancel

ביטול רכישת מינוי עבור המשתמש.

defer

דחיית חידוש המינוי.

get

אחזור מטא-נתונים של מינוי

revoke

ביטול רכישת מינוי של המשתמש.

קודי שגיאה

הפעולות של המשאב הזה מחזירות את קודי שגיאות ה-HTTP הבאים:

קוד שגיאה סיבה תיאור רזולוציה
400 / 410 subscriptionExpired המינוי פג ואי אפשר לבצע את הפעולה המבוקשת. בודקים את תאריך התפוגה של המינוי. אי אפשר לבצע את הפעולה הזו במינויים שפג התוקף שלהם.
400 subscriptionInvalidArgument בבקשה למינוי צוין ארגומנט לא תקין. כדאי לעיין במסמכי התיעוד בנושא API ולוודא שציינתם את המידע בכל שדות החובה ושהזנתם את הנתונים בפורמט הנכון.
400 invalidPurchaseState הרכישה לא במצב שמאפשר לבצע את הפעולה המבוקשת. לדוגמה, יכול להיות שאתם מנסים לאשר רכישה שכבר נעשה בה שימוש או לבטל מינוי שלא פעיל. לפני שמנסים לבצע את הפעולה, כדאי לבדוק את המצב הנוכחי של המשאב באמצעות ה-API המתאים מסוג Get. מוודאים שהמשאב נמצא במצב המתאים לפעולה.
400 invalidValue צוין ערך לא תקין בבקשה. השגיאה הזו מוחזרת בדרך כלל אם טוקן הרכישה פגום או לא תקין. מתקנים את הערך הלא תקין של השדה בגוף הבקשה או בפרמטרים על סמך הפניה ל-API.
400 prepaidSubscriptionNotSupported הפעולה שביקשת לא נתמכת במינויים בתשלום מראש. מוודאים שהפעולה רלוונטית לסוג המינוי. השגיאה הזו ספציפית לשיטות כמו Cancel,‏ Defer,‏ Refund או Revoke.
400 productNotOwnedByUser האסימון של הרכישה שסופק תקין, אבל המשתמש לא מחזיק כרגע במוצר. זה יכול לקרות אם הרכישה בוטלה, בוטלה או שפג תוקפה לפני האישור. לפני שמנסים לבצע את הפעולה, כדאי לבדוק את המצב הנוכחי של המשאב באמצעות ה-API המתאים מסוג Get. מוודאים שהמשאב נמצא במצב המתאים לפעולה.
400 purchaseTokenMismatch אסימון הרכישה שסיפקת לא תואם לרכישה, לשם החבילה, למזהה המינוי או למזהה המוצר. מוודאים שכל הפרטים בבקשה נכונים ותואמים זה לזה.
400 required חסר שדה או פרמטר חובה בבקשה. כדאי לעיין במסמכי התיעוד בנושא API כדי לוודא שכללתם את כל שדות החובה והפרמטרים הנדרשים.
400 unsupportedIabType הפעולה לא נתמכת בסוג החיוב מתוך האפליקציה שצוין. מוודאים ששיטת ה-API תואמת לסוג הפריט שמנוהל.
403 userInsufficientPermission למשתמש אין מספיק הרשאות לביצוע הפעולה המבוקשת. מוודאים שלמשתמש המאומת יש את ההרשאות הנדרשות ב-Google Play Console. פרטים נוספים מופיעים במאמר בנושא שימוש בחשבון שירות.
404 notFound לא נמצא המשאב המבוקש. מוודאים שהמזהים (לדוגמה, טוקן רכישה, שם חבילה, מזהה מוצר, מזהה מינוי) נכונים.
409 concurrentUpdate היה ניסיון לעדכן אובייקט שנמצא בתהליך עדכון בו-זמני. מנסים לשלוח שוב את הבקשה עם השהיה מעריכית לפני ניסיון חוזר (exponential backoff). מומלץ להימנע משינויים בו-זמניים באותו משאב.
410 purchaseTokenNoLongerValid טוקן הרכישה לא תקף באופן קבוע כי חשבון המשתמש המשויך נמחק או שרשומת הרכישה כבר לא קיימת. צריך להפסיק את השימוש באסימון הרכישה הזה.
410 subscriptionNoLongerAvailable אי אפשר יותר להריץ שאילתה על רכישת המינוי כי עבר יותר מדי זמן מאז שפג התוקף שלו. השגיאה הזו מציינת שתוקף המינוי פג לפני יותר מ-60 יום. לא כדאי יותר לשלוח שאילתות לגבי המינויים האלה.
5xx Generic error שגיאה כללית בשרת של Google Play. צריך לנסות לשלוח את הבקשה שוב.

אם הבעיה נמשכת, אפשר לפנות למנהל החשבון ב-Google Play או לשלוח בקשת תמיכה. כדאי לבדוק בלוח הבקרה של סטטוס Play אם יש הפסקות זמניות ידועות בשירות.