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 alpha-2 ในขณะที่ได้รับสิทธิ์สมัครใช้บริการ

lineItems[]

object (SubscriptionPurchaseLineItem)

ข้อมูลระดับสินค้าสำหรับการซื้อการสมัครใช้บริการ รายการในการซื้อเดียวกันควรมี AutoRenewingPlan ทั้งหมดหรือมี PrepaidPlan ทั้งหมด

startTime

string (Timestamp format)

เวลาที่ได้รับสิทธิ์สมัครใช้บริการ ไม่ได้ตั้งค่าสำหรับการสมัครใช้บริการที่รอดำเนินการ (สร้างการสมัครใช้บริการแล้วแต่รอการชำระเงินระหว่างการลงชื่อสมัครใช้)

ใช้ RFC 3339 โดยเอาต์พุตที่สร้างขึ้นจะได้รับการแปลงเป็นรูปแบบ Z เสมอ และใช้ตัวเลขเศษส่วน 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)

บริบทเพิ่มเติมเกี่ยวกับการสมัครใช้บริการที่หยุดชั่วคราว แสดงเมื่อการสมัครใช้บริการมี subscriptionState เป็น SUBSCRIPTION_STATE_PAUSED เท่านั้น

canceledStateContext

object (CanceledStateContext)

บริบทเพิ่มเติมเกี่ยวกับการสมัครใช้บริการที่ยกเลิก แสดงเมื่อการสมัครใช้บริการมี subscriptionState เป็น SUBSCRIPTION_STATE_CANCELED หรือ SUBSCRIPTION_STATE_EXPIRED ในปัจจุบันเท่านั้น

testPurchase

object (TestPurchase)

จะแสดงเฉพาะในกรณีที่การซื้อเพื่อสมัครใช้บริการนี้เป็นการซื้อทดสอบ

acknowledgementState

enum (AcknowledgementState)

สถานะการรับทราบของการสมัครใช้บริการ

externalAccountIdentifiers

object (ExternalAccountIdentifiers)

ตัวระบุบัญชีผู้ใช้ในบริการของบุคคลที่สาม

subscribeWithGoogleInfo

object (SubscribeWithGoogleInfo)

โปรไฟล์ผู้ใช้ที่เชื่อมโยงกับการซื้อที่ทำด้วย "สมัครใช้บริการด้วย Google"

SubscriptionState

สถานะที่เป็นไปได้ของการสมัครใช้บริการ เช่น สถานะใช้งานอยู่หรือยกเลิกแล้ว รายการในการซื้อการสมัครใช้บริการจะเป็นแพ็กเกจแบบต่ออายุใหม่อัตโนมัติทั้งหมดหรือแพ็กเกจแบบชำระล่วงหน้าทั้งหมด

Enum
SUBSCRIPTION_STATE_UNSPECIFIED สถานะการสมัครใช้บริการที่ไม่ได้ระบุ
SUBSCRIPTION_STATE_PENDING สร้างการสมัครใช้บริการแล้ว แต่รอการชำระเงินระหว่างลงชื่อสมัครใช้ ในสถานะนี้ รายการทั้งหมดกำลังรอการชำระเงิน
SUBSCRIPTION_STATE_ACTIVE การสมัครใช้บริการทำงานอยู่ - (1) หากการสมัครใช้บริการเป็นแพ็กเกจต่ออายุอัตโนมัติ แสดงว่ามีสินค้าอย่างน้อย 1 รายการที่ autoRenewEnabled และยังไม่หมดอายุ - (2) หากการสมัครใช้บริการเป็นแพ็กเกจแบบชำระเงินล่วงหน้า จะต้องมีอย่างน้อย 1 รายการที่ยังไม่หมดอายุ
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 เสมอ และใช้ตัวเลขเศษส่วน 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.
}
ช่อง
ฟิลด์ Union 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 เสมอ และใช้ตัวเลขเศษส่วน 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)
  }
}
ช่อง
productId

string

รหัสผลิตภัณฑ์ที่ซื้อ (เช่น "monthly001")

expiryTime

string (Timestamp format)

เวลาที่การสมัครใช้บริการหมดอายุหรือจะหมดอายุ เว้นแต่จะมีการขยายสิทธิ์เข้าถึง (เช่น ต่ออายุ)

ใช้ RFC 3339 โดยเอาต์พุตที่สร้างขึ้นจะได้รับการแปลงเป็นรูปแบบ Z เสมอ และใช้ตัวเลขเศษส่วน 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

รหัสคำสั่งซื้อของคำสั่งซื้อล่าสุดที่สำเร็จซึ่งเชื่อมโยงกับรายการนี้ ไม่มีหากผู้ใช้ยังไม่ได้เป็นเจ้าของรายการ (เช่น รายการที่ถูกเลื่อนการเปลี่ยนทดแทน)

ฟิลด์ Union plan_type ประเภทแพ็กเกจการสมัครใช้บริการ plan_type ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้เท่านั้น
autoRenewingPlan

object (AutoRenewingPlan)

รายการนี้ต่ออายุอัตโนมัติ

prepaidPlan

object (PrepaidPlan)

รายการนี้เป็นแบบชำระล่วงหน้า

offerDetails

object (OfferDetails)

รายละเอียดข้อเสนอสำหรับรายการนี้

ฟิลด์ Union deferred_item_change ฟิลด์นี้จะปรากฏขึ้นเมื่อรายการมีการเปลี่ยนแปลงที่เลื่อนออกไป โดยคุณสามารถนำออกหรือแทนที่ได้ deferred_item_change ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้เท่านั้น
deferredItemReplacement

object (DeferredItemReplacement)

ข้อมูลสำหรับการเปลี่ยนทดแทนสินค้าที่เลื่อนออกไป

deferredItemRemoval

object (DeferredItemRemoval)

ข้อมูลสำหรับการนำรายการออกที่เลื่อนออกไป

signupPromotion

object (SignupPromotion)

รายละเอียดโปรโมชันเกี่ยวกับสินค้านี้ ตั้งค่าเฉพาะในกรณีที่มีการใช้โปรโมชันในระหว่างการลงชื่อสมัครใช้

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 เสมอ และใช้ตัวเลขเศษส่วน 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 เสมอ และใช้ตัวเลขเศษส่วน 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 เสมอ และใช้ตัวเลขเศษส่วน 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.
}
ช่อง
ฟิลด์ Union promotion_type ประเภทของโปรโมชันที่ใช้กับสินค้า promotion_type ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้เท่านั้น
oneTimeCode

object (OneTimeCode)

มีการใช้รหัสแบบใช้ครั้งเดียว

vanityCode

object (VanityCode)

มีการใช้รหัสที่กำหนดเอง

OneTimeCode

ประเภทนี้ไม่มีฟิลด์

รหัสโปรโมชันแบบใช้ครั้งเดียว

VanityCode

รหัสโปรโมชันที่กำหนดไว้ล่วงหน้าซึ่งใช้ได้หลายครั้ง

การแสดง JSON
{
  "promotionCode": string
}
ช่อง
promotionCode

string

รหัสโปรโมชัน

เมธอด

cancel

ยกเลิกการซื้อการสมัครใช้บริการให้ผู้ใช้

get

รับข้อมูลเมตาเกี่ยวกับการสมัครใช้บริการ

revoke

เพิกถอนการซื้อการสมัครใช้บริการสำหรับผู้ใช้

รหัสข้อผิดพลาด

การดำเนินการของทรัพยากรนี้จะแสดงรหัสข้อผิดพลาด HTTP ต่อไปนี้

รหัสข้อผิดพลาด เหตุผล ความละเอียด
5xx ข้อผิดพลาดทั่วไปในเซิร์ฟเวอร์ Google Play ลองส่งคำขออีกครั้ง

หากยังคงพบปัญหาอยู่ โปรดติดต่อผู้จัดการลูกค้า Google Play หรือส่งคำขอรับการสนับสนุน โปรดตรวจสอบแดชบอร์ดสถานะของ Play เพื่อดูการหยุดทำงานที่ทราบ

409 ข้อผิดพลาดในการอัปเดตพร้อมกัน

มีการพยายามอัปเดตออบเจ็กต์ที่กำลังอัปเดตอยู่ เช่น การตอบรับการซื้อ จะทำได้โดยการเรียกใช้เมธอด acknowledgePurchase() ของ Play Billing Library และเรียกใช้ purchases.products.acknowledge ของ Play Developer API พร้อมกัน

ลองส่งคำขออีกครั้ง
410 คุณไม่สามารถค้นหาการซื้อการสมัครใช้บริการได้อีกต่อไปเนื่องจากหมดอายุไปนานแล้ว เกิดขึ้นเมื่อค้นหาการสมัครใช้บริการที่หมดอายุไปแล้วนานกว่า 60 วัน คุณไม่ควรค้นหาการสมัครใช้บริการเหล่านี้อีกต่อไป