REST Resource: monetization.subscriptions.basePlans.offers

แหล่งข้อมูล: SubscriptionOffer

ข้อเสนอชั่วคราวแบบครั้งเดียว

การแสดง JSON
{
  "packageName": string,
  "productId": string,
  "basePlanId": string,
  "offerId": string,
  "state": enum (State),
  "phases": [
    {
      object (SubscriptionOfferPhase)
    }
  ],
  "targeting": {
    object (SubscriptionOfferTargeting)
  },
  "regionalConfigs": [
    {
      object (RegionalSubscriptionOfferConfig)
    }
  ],
  "otherRegionsConfig": {
    object (OtherRegionsSubscriptionOfferConfig)
  },
  "offerTags": [
    {
      object (OfferTag)
    }
  ]
}
ฟิลด์
packageName

string

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

productId

string

ต้องระบุ เปลี่ยนแปลงไม่ได้ รหัสของการสมัครใช้บริการหลักที่ข้อเสนอนี้เป็นของ

basePlanId

string

ต้องระบุ เปลี่ยนแปลงไม่ได้ รหัสของแพ็กเกจเริ่มต้นที่ข้อเสนอนี้เป็นส่วนขยาย

offerId

string

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

state

enum (State)

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

phases[]

object (SubscriptionOfferPhase)

ต้องระบุ ระยะเวลาของข้อเสนอการสมัครใช้บริการนี้ ต้องมีรายการอย่างน้อย 1 รายการและไม่เกิน 2 รายการ ผู้ใช้จะได้รับทั้ง 3 เฟสตามลำดับที่ระบุเสมอ

targeting

object (SubscriptionOfferTargeting)

ข้อกำหนดที่ผู้ใช้ต้องปฏิบัติตามจึงจะมีสิทธิ์รับข้อเสนอนี้ แสดงข้อกำหนดที่ Play จะประเมินเพื่อตัดสินใจว่าจะแสดงข้อเสนอหรือไม่ นักพัฒนาแอปอาจกรองข้อเสนอเหล่านี้เพิ่มเติมด้วยตนเอง

regionalConfigs[]

object (RegionalSubscriptionOfferConfig)

ต้องระบุ การกำหนดค่าเฉพาะภูมิภาคของข้อเสนอนี้ ต้องมีรายการอย่างน้อย 1 รายการ

otherRegionsConfig

object (OtherRegionsSubscriptionOfferConfig)

การกำหนดค่าสำหรับสถานที่ตั้งใหม่ที่ Play อาจเปิดตัวในอนาคต

offerTags[]

object (OfferTag)

รายการแท็กที่กำหนดเองสูงสุด 20 รายการที่ระบุสำหรับข้อเสนอนี้ และส่งคืนไปยังแอปผ่าน Billing Library

รัฐ

สถานะปัจจุบันของข้อเสนอการสมัครใช้บริการ

Enum
STATE_UNSPECIFIED ค่าเริ่มต้น ไม่ควรใช้
DRAFT ข้อเสนอการสมัครใช้บริการไม่พร้อมใช้งานและไม่เคยพร้อมใช้งานสำหรับผู้ใช้
ACTIVE ข้อเสนอการสมัครใช้บริการพร้อมให้บริการแก่ผู้ใช้ใหม่และผู้ใช้เดิม
INACTIVE ข้อเสนอการสมัครใช้บริการไม่พร้อมใช้งานสำหรับผู้ใช้ใหม่ ผู้ใช้ปัจจุบันจะยังคงมีสิทธิ์เข้าถึง

SubscriptionOfferPhase

ระยะเดียวของข้อเสนอการสมัครใช้บริการ

การแสดง JSON
{
  "recurrenceCount": integer,
  "duration": string,
  "regionalConfigs": [
    {
      object (RegionalSubscriptionOfferPhaseConfig)
    }
  ],
  "otherRegionsConfig": {
    object (OtherRegionsSubscriptionOfferPhaseConfig)
  }
}
ฟิลด์
recurrenceCount

integer

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

duration

string

ต้องระบุ ระยะเวลาของการเกิดซ้ำครั้งเดียวของระยะนี้ ระบุในรูปแบบ ISO 8601

regionalConfigs[]

object (RegionalSubscriptionOfferPhaseConfig)

ต้องระบุ การกำหนดค่าเฉพาะภูมิภาคของระยะข้อเสนอนี้ รายการนี้ต้องมีรายการเดียวสำหรับแต่ละภูมิภาคที่ข้อเสนอการสมัครใช้บริการมีการกำหนดค่าระดับภูมิภาค

otherRegionsConfig

object (OtherRegionsSubscriptionOfferPhaseConfig)

ข้อมูลราคาสำหรับสถานที่ใหม่ที่ Play อาจเปิดตัว

RegionalSubscriptionOfferPhaseConfig

การกำหนดค่าสำหรับระยะเดียวของข้อเสนอการสมัครใช้บริการในภูมิภาคเดียว

การแสดง JSON
{
  "regionCode": string,

  // Union field price_override can be only one of the following:
  "price": {
    object (Money)
  },
  "relativeDiscount": number,
  "absoluteDiscount": {
    object (Money)
  },
  "free": {
    object (RegionalSubscriptionOfferPhaseFreePriceOverride)
  }
  // End of list of possible types for union field price_override.
}
ฟิลด์
regionCode

string

ต้องระบุ เปลี่ยนแปลงไม่ได้ ภูมิภาคที่ใช้การกำหนดค่านี้

ฟิลด์ Union price_override การลบล้างราคาของขั้นตอนนี้ ต้องระบุ price_override ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้เท่านั้น
price

object (Money)

ราคาที่แน่นอนซึ่งผู้ใช้จ่ายสำหรับระยะของข้อเสนอนี้ ราคาต้องไม่ต่ำกว่าราคาขั้นต่ำที่อนุญาตสำหรับภูมิภาคนี้

relativeDiscount

number

เศษส่วนของราคาแพ็กเกจเริ่มต้นตามสัดส่วนตลอดระยะเวลาของเฟสที่ผู้ใช้ชำระเงินสำหรับเฟสข้อเสนอนี้ ตัวอย่างเช่น หากราคาแพ็กเกจเริ่มต้นสำหรับภูมิภาคนี้คือ $12 เป็นระยะเวลา 1 ปี ส่วนลด 50% สำหรับระยะเวลา 3 เดือนจะสอดคล้องกับราคา $1.50 ต้องระบุส่วนลดเป็นเศษส่วนที่มากกว่า 0 และน้อยกว่า 1 ระบบจะปัดเศษราคาที่ได้เป็นหน่วยที่เรียกเก็บเงินได้ที่ใกล้ที่สุด (เช่น เซ็นต์สำหรับ USD) ส่วนลดแบบสัมพัทธ์จะถือว่าไม่ถูกต้องหากราคาที่ลดแล้วต่ำกว่าราคาขั้นต่ำที่อนุญาตในภูมิภาคนี้

absoluteDiscount

object (Money)

จำนวนเงินที่แน่นอนซึ่งหักออกจากราคาแพ็กเกจเริ่มต้นตามสัดส่วนตลอดระยะเวลาของช่วงที่ผู้ใช้ชำระเงินสำหรับช่วงข้อเสนอนี้ เช่น หากราคาแพ็กเกจเริ่มต้นสำหรับภูมิภาคนี้คือ $12 เป็นระยะเวลา 1 ปี ส่วนลดสัมบูรณ์ $1 สำหรับระยะเวลา 3 เดือนจะสอดคล้องกับราคา $2 ราคาที่ได้ต้องไม่ต่ำกว่าราคาขั้นต่ำที่อนุญาตสำหรับภูมิภาคนี้

free

object (RegionalSubscriptionOfferPhaseFreePriceOverride)

ตั้งค่าเพื่อระบุว่าข้อเสนอนี้รับได้ฟรี

RegionalSubscriptionOfferPhaseFreePriceOverride

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

แสดงการกำหนดค่าการลบล้างราคาฟรีสำหรับข้อเสนอการสมัครสมาชิกระยะเดียว

OtherRegionsSubscriptionOfferPhaseConfig

การกำหนดค่าสำหรับสถานที่ตั้งใหม่ที่ Play อาจเปิดตัวในระยะเวลาข้อเสนอเดียว

การแสดง JSON
{

  // Union field price_override can be only one of the following:
  "otherRegionsPrices": {
    object (OtherRegionsSubscriptionOfferPhasePrices)
  },
  "relativeDiscount": number,
  "absoluteDiscounts": {
    object (OtherRegionsSubscriptionOfferPhasePrices)
  },
  "free": {
    object (OtherRegionsSubscriptionOfferPhaseFreePriceOverride)
  }
  // End of list of possible types for union field price_override.
}
ช่อง
ฟิลด์ Union price_override การลบล้างราคาของขั้นตอนนี้ ต้องระบุ price_override ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้เท่านั้น
otherRegionsPrices

object (OtherRegionsSubscriptionOfferPhasePrices)

ราคาที่แน่นอนซึ่งผู้ใช้จ่ายสำหรับระยะของข้อเสนอนี้ ราคาต้องไม่ต่ำกว่าราคาขั้นต่ำที่อนุญาตสำหรับสถานที่ใหม่ที่ Play อาจเปิดตัว

relativeDiscount

number

เศษส่วนของราคาแพ็กเกจเริ่มต้นตามสัดส่วนตลอดระยะเวลาของเฟสที่ผู้ใช้ชำระเงินสำหรับเฟสข้อเสนอนี้ ตัวอย่างเช่น หากราคาแพ็กเกจเริ่มต้นสำหรับภูมิภาคนี้คือ $12 เป็นระยะเวลา 1 ปี ส่วนลด 50% สำหรับระยะเวลา 3 เดือนจะสอดคล้องกับราคา $1.50 ต้องระบุส่วนลดเป็นเศษส่วนที่มากกว่า 0 และน้อยกว่า 1 ระบบจะปัดเศษราคาที่ได้เป็นหน่วยที่เรียกเก็บเงินได้ที่ใกล้ที่สุด (เช่น เซ็นต์สำหรับ USD) ส่วนลดแบบสัมพัทธ์จะถือว่าไม่ถูกต้องหากราคาที่ลดแล้วต่ำกว่าราคาขั้นต่ำที่อนุญาตในสถานที่ใหม่ๆ ที่ Play อาจเปิดตัว

absoluteDiscounts

object (OtherRegionsSubscriptionOfferPhasePrices)

จำนวนเงินที่แน่นอนซึ่งหักออกจากราคาแพ็กเกจเริ่มต้นตามสัดส่วนตลอดระยะเวลาของช่วงที่ผู้ใช้ชำระเงินสำหรับช่วงข้อเสนอนี้ เช่น หากราคาแพ็กเกจเริ่มต้นสำหรับภูมิภาคนี้คือ $12 เป็นระยะเวลา 1 ปี ส่วนลดสัมบูรณ์ $1 สำหรับระยะเวลา 3 เดือนจะสอดคล้องกับราคา $2 ราคาที่ได้ต้องไม่ต่ำกว่าราคาขั้นต่ำที่อนุญาตสำหรับตำแหน่งใหม่ที่ Play อาจเปิดตัว

free

object (OtherRegionsSubscriptionOfferPhaseFreePriceOverride)

ตั้งค่าเพื่อระบุว่าข้อเสนอนี้รับได้ฟรี

OtherRegionsSubscriptionOfferPhasePrices

ข้อมูลราคาสำหรับสถานที่ใหม่ที่ Play อาจเปิดตัว

การแสดง JSON
{
  "usdPrice": {
    object (Money)
  },
  "eurPrice": {
    object (Money)
  }
}
ฟิลด์
usdPrice

object (Money)

ต้องระบุ ราคาใน USD ที่จะใช้สำหรับสถานที่ใหม่ๆ ที่ Play อาจเปิดตัว

eurPrice

object (Money)

ต้องระบุ ราคาในสกุลเงิน EUR ที่จะใช้สำหรับสถานที่ใหม่ๆ ที่ Play อาจเปิดตัว

OtherRegionsSubscriptionOfferPhaseFreePriceOverride

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

แสดงการกำหนดค่าการลบล้างราคาฟรีสำหรับสถานที่ตั้งใหม่ที่ Play อาจเปิดตัวในระยะเวลาของข้อเสนอเดียว

SubscriptionOfferTargeting

กำหนดกฎที่ผู้ใช้ต้องปฏิบัติตามเพื่อรับข้อเสนอนี้

การแสดง JSON
{

  // Union field rule can be only one of the following:
  "acquisitionRule": {
    object (AcquisitionTargetingRule)
  },
  "upgradeRule": {
    object (UpgradeTargetingRule)
  }
  // End of list of possible types for union field rule.
}
ช่อง
ฟิลด์ Union rule เว้นว่างไว้หากต้องการใช้การมีสิทธิ์รับข้อเสนอที่นักพัฒนาแอปกำหนด rule ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้เท่านั้น
acquisitionRule

object (AcquisitionTargetingRule)

กฎการกำหนดเป้าหมายข้อเสนอสำหรับการได้ผู้ใช้ใหม่

upgradeRule

object (UpgradeTargetingRule)

กฎการกำหนดเป้าหมายข้อเสนอสำหรับการอัปเกรดแพ็กเกจที่มีอยู่ของผู้ใช้

AcquisitionTargetingRule

แสดงกฎการกำหนดเป้าหมายในรูปแบบ: ผู้ใช้ไม่เคยมี {scope} มาก่อน

การแสดง JSON
{
  "scope": {
    object (TargetingRuleScope)
  }
}
ฟิลด์
scope

object (TargetingRuleScope)

ต้องระบุ ขอบเขตของการสมัครใช้บริการที่กฎนี้พิจารณา อนุญาตเฉพาะ "การสมัครใช้บริการนี้" และ "การสมัครใช้บริการใดก็ได้ในแอป"

TargetingRuleScope

กำหนดขอบเขตของการสมัครใช้บริการที่กฎการกำหนดเป้าหมายสามารถจับคู่เพื่อกำหนดเป้าหมายข้อเสนอไปยังผู้ใช้ตามสิทธิ์ที่ผ่านมาหรือปัจจุบัน

การแสดง JSON
{

  // Union field scope can be only one of the following:
  "thisSubscription": {
    object (TargetingRuleScopeThisSubscription)
  },
  "anySubscriptionInApp": {
    object (TargetingRuleScopeAnySubscriptionInApp)
  },
  "specificSubscriptionInApp": string
  // End of list of possible types for union field scope.
}
ช่อง

ฟิลด์ Union scope

scope ต้องเป็นค่าใดค่าหนึ่งต่อไปนี้เท่านั้น

thisSubscription

object (TargetingRuleScopeThisSubscription)

ขอบเขตของกฎการกำหนดเป้าหมายปัจจุบันคือการสมัครใช้บริการที่กำหนดข้อเสนอนี้

anySubscriptionInApp

object (TargetingRuleScopeAnySubscriptionInApp)

ขอบเขตของกฎการกำหนดเป้าหมายปัจจุบันคือการสมัครใช้บริการใดๆ ในแอปหลัก

specificSubscriptionInApp

string

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

TargetingRuleScopeThisSubscription

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

แสดงขอบเขตของกฎการกำหนดเป้าหมายที่สอดคล้องกับการสมัครใช้บริการที่กำหนดข้อเสนอนี้

TargetingRuleScopeAnySubscriptionInApp

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

แสดงขอบเขตของกฎการกำหนดเป้าหมายที่สอดคล้องกับการสมัครใช้บริการในแอปหลัก

UpgradeTargetingRule

แสดงกฎการกำหนดเป้าหมายในรูปแบบ: ปัจจุบันผู้ใช้มี {scope} [ที่มีช่วงเวลาที่เรียกเก็บเงิน {billing_period}]

การแสดง JSON
{
  "oncePerUser": boolean,
  "scope": {
    object (TargetingRuleScope)
  },
  "billingPeriodDuration": string
}
ช่อง
oncePerUser

boolean

จำกัดข้อเสนอนี้ให้ผู้ใช้ใช้ได้เพียงครั้งเดียว หากตั้งค่าเป็น "จริง" ผู้ใช้จะไม่มีสิทธิ์รับข้อเสนอนี้อีกเลยหากเคยสมัครใช้ข้อเสนอนี้

scope

object (TargetingRuleScope)

ต้องระบุ ขอบเขตของการสมัครใช้บริการที่กฎนี้พิจารณา อนุญาตเฉพาะ "การสมัครใช้บริการนี้" และ "การสมัครใช้บริการที่เฉพาะเจาะจงในแอป"

billingPeriodDuration

string

ระยะเวลาการเรียกเก็บเงินที่เฉพาะเจาะจงซึ่งระบุในรูปแบบ ISO 8601 ที่ผู้ใช้ต้องสมัครใช้บริการอยู่ในปัจจุบันจึงจะมีสิทธิ์ใช้กฎนี้ หากไม่ระบุ ระบบจะจับคู่ผู้ใช้ที่สมัครใช้บริการในช่วงการเรียกเก็บเงินใดก็ได้

RegionalSubscriptionOfferConfig

การกำหนดค่าสำหรับข้อเสนอพิเศษในการติดตามในภูมิภาคเดียว

การแสดง JSON
{
  "regionCode": string,
  "newSubscriberAvailability": boolean
}
ฟิลด์
regionCode

string

ต้องระบุ เปลี่ยนแปลงไม่ได้ รหัสภูมิภาคที่การกำหนดค่านี้ใช้ตามที่กำหนดโดย ISO 3166-2 เช่น "US"

newSubscriberAvailability

boolean

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

OtherRegionsSubscriptionOfferConfig

การกำหนดค่าสำหรับสถานที่ใหม่ที่ Play อาจเปิดตัวตามที่ระบุไว้ในข้อเสนอการสมัครใช้บริการ

การแสดง JSON
{
  "otherRegionsNewSubscriberAvailability": boolean
}
ช่อง
otherRegionsNewSubscriberAvailability

boolean

ข้อเสนอการสมัครใช้บริการในสถานที่ตั้งใหม่ที่ Play อาจเปิดตัวในอนาคต หากไม่ได้ระบุไว้ ระบบจะใช้ค่าเริ่มต้นเป็น "เท็จ"

เมธอด

activate

เปิดใช้งานข้อเสนอพิเศษในการติดตาม

batchGet

อ่านข้อเสนอการสมัครใช้บริการอย่างน้อย 1 รายการ

batchUpdate

อัปเดตข้อเสนอการสมัครใช้บริการแบบเป็นกลุ่ม

batchUpdateStates

อัปเดตสถานะข้อเสนอการสมัครใช้บริการแบบกลุ่ม

create

สร้างข้อเสนอพิเศษในการติดตามใหม่

deactivate

ปิดใช้งานข้อเสนอพิเศษในการติดตาม

delete

ลบข้อเสนอพิเศษในการติดตาม

get

อ่านข้อเสนอเดียว

list

แสดงรายการข้อเสนอทั้งหมดภายใต้การสมัครใช้บริการที่ระบุ

patch

อัปเดตข้อเสนอการสมัครใช้บริการที่มีอยู่

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

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

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

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

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

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

ลองส่งคำขออีกครั้ง