- 資源:OneTimeProductOffer
- 狀態
- OneTimeProductPreOrderOffer
- PreOrderPriceChangeBehavior
- OneTimeProductDiscountedOffer
- RegionalPricingAndAvailabilityConfig
- OneTimeProductOfferNoPriceOverrideOptions
- 優惠適用性
- 方法
資源:OneTimeProductOffer
單次產品的單一優惠。
| JSON 表示法 |
|---|
{ "packageName": string, "productId": string, "purchaseOptionId": string, "offerId": string, "state": enum ( |
| 欄位 | |
|---|---|
packageName |
必填。不可變動。父項產品所屬應用程式的套件名稱。 |
productId |
必填。不可變動。這項方案所屬的父項產品 ID。 |
purchaseOptionId |
必填。不可變動。此優惠擴充功能所屬的購買選項 ID。 |
offerId |
必填。不可變動。這項產品優惠的 ID。不得重複用於購買選項。只能使用小寫字母 (a-z)、數字 (0-9) 和連字號 (-),且開頭必須是數字或小寫字母。長度上限為 63 個半形字元。 |
state |
僅供輸出。這項優惠的目前狀態。這個欄位無法透過更新資源變更。請改用專屬端點。 |
regionalPricingAndAvailabilityConfigs[] |
這項商品的區域價格和供應情形資訊組合。項目不得重複,且必須具有相同的 regionCode。 |
offerTags[] |
選用。列出這項產品專屬的自訂標記,最多可達 20 個,並透過 Billing Library API 傳回應用程式。 |
regionsVersion |
僅供輸出。用於產生單次產品優惠的區域設定版本。 |
聯集欄位 offer_type。這項優惠的類型。必須設定一個選項。offer_type 只能是下列其中一項: |
|
preOrderOffer |
預購優惠。 |
discountedOffer |
折扣優惠。 |
狀態
優惠的目前狀態。
| 列舉 | |
|---|---|
STATE_UNSPECIFIED |
預設值,不應使用。 |
DRAFT |
延續過去做法,使用者無法享有這項優惠。 |
ACTIVE |
只要符合條件,使用者就能享有優惠。 |
CANCELLED |
此狀態僅適用於預購商品。優惠已取消,不再提供給使用者。與這項優惠相關的待處理訂單已取消。 |
INACTIVE |
這項狀態僅適用於折扣優惠。使用者無法再享有這項優惠。 |
OneTimeProductPreOrderOffer
預購優惠專用設定。
| JSON 表示法 |
|---|
{
"startTime": string,
"endTime": string,
"releaseTime": string,
"priceChangeBehavior": enum ( |
| 欄位 | |
|---|---|
startTime |
必填。預購開始時間。 使用 RFC 3339,產生的輸出內容一律會經過 Z 正規化,並使用 0、3、6 或 9 個小數位數,也接受「Z」以外的偏移值。範例: |
endTime |
必填。預購停止時間。 使用 RFC 3339,產生的輸出內容一律會經過 Z 正規化,並使用 0、3、6 或 9 個小數位數,也接受「Z」以外的偏移值。範例: |
releaseTime |
必填。與預購活動相關聯的產品發布時間,以及預購訂單的商品出貨時間。 使用 RFC 3339,產生的輸出內容一律會經過 Z 正規化,並使用 0、3、6 或 9 個小數位數,也接受「Z」以外的偏移值。範例: |
priceChangeBehavior |
必填。不可變動。指定價格異動對既有預購訂單的影響。 |
PreOrderPriceChangeBehavior
指定價格異動對既有預購訂單的影響。
| 列舉 | |
|---|---|
PRE_ORDER_PRICE_CHANGE_BEHAVIOR_UNSPECIFIED |
未指定價格異動行為。不得使用。 |
PRE_ORDER_PRICE_CHANGE_BEHAVIOR_TWO_POINT_LOWEST |
系統會比較預購時的初始價格和發售時的最終優惠價格,兩者取其低後,向買家收費。 |
PRE_ORDER_PRICE_CHANGE_BEHAVIOR_NEW_ORDERS_ONLY |
無論預購後價格是否異動,買家都會以預購時的價格付費。 |
OneTimeProductDiscountedOffer
折扣優惠專屬設定。
| JSON 表示法 |
|---|
{ "startTime": string, "endTime": string, "redemptionLimit": string } |
| 欄位 | |
|---|---|
startTime |
優惠開始生效時間。 使用 RFC 3339,產生的輸出內容一律會經過 Z 正規化,並使用 0、3、6 或 9 個小數位數,也接受「Z」以外的偏移值。範例: |
endTime |
優惠停止提供時間。 使用 RFC 3339,產生的輸出內容一律會經過 Z 正規化,並使用 0、3、6 或 9 個小數位數,也接受「Z」以外的偏移值。範例: |
redemptionLimit |
選用。這項優惠可兌換的次數。如果未設定或設為 0,表示可無限次兌換。否則必須是介於 1 到 50 之間的數字 (含這兩個數字)。 |
RegionalPricingAndAvailabilityConfig
單次產品優惠的區域價格和供應情形設定。
| JSON 表示法 |
|---|
{ "regionCode": string, "availability": enum ( |
| 欄位 | |
|---|---|
regionCode |
必填。這項設定適用的區域代碼,如 ISO 3166-2 所定義,例如「US」。 |
availability |
必填。這個區域的供應情形。 |
聯集欄位 price_override。這項優惠的價格覆寫。必須設定一個選項。price_override 只能是下列之一: |
|
noOverride |
系統會使用這個區域購買選項定義的價格。 |
relativeDiscount |
使用者為這項優惠支付的購買選項價格比例。舉例來說,如果這個區域的購買選項價格為 $12 美元,50% 的折扣就相當於 $6 美元。折扣比例必須指定為大於 0 且小於 1 的分數。計算出的價格會四捨五入至最接近的可計費單位 (例如「美分」)。如果折扣價低於該地區允許的最低價格,相對折扣就會視為無效。 |
absoluteDiscount |
從購買選項價格扣除的折扣絕對值。 應介於 0 和購買選項價格之間。 |
OneTimeProductOfferNoPriceOverrideOptions
這個類型沒有任何欄位。
單次產品優惠方案選項,不附帶區域價格覆寫。
優惠適用性
優惠供應情況。
| 列舉 | |
|---|---|
AVAILABILITY_UNSPECIFIED |
未指定供應情形。不得使用。 |
AVAILABLE |
這項優惠可提供給使用者。 |
NO_LONGER_AVAILABLE |
使用者無法再享有這項優惠。只有先前將供應情形設為「AVAILABLE」時,才能使用這個值。 |
方法 |
|
|---|---|
|
啟用單次產品優惠。 |
|
刪除一或多項單次產品優惠。 |
|
讀取一或多項單次產品優惠。 |
|
建立或更新一或多項單次產品優惠。 |
|
更新整批單次產品優惠狀態。 |
|
取消單次產品優惠。 |
|
停用單次產品優惠。 |
|
列出指定應用程式、產品或購買選項的所有方案。 |
錯誤代碼
這項資源的作業會傳回下列 HTTP 錯誤碼:
| 錯誤代碼 | 原因 | 說明 | 解決方法 |
|---|---|---|---|
400 |
invalidValue |
要求中提供的值無效。如果購買權杖格式有誤或無效,通常會傳回這個錯誤。 | 根據 API 參考資料,更正要求主體或參數中的無效欄位值。 |
400 |
required |
要求缺少必要欄位或參數。 | 請參閱 API 說明文件,確認已包含所有必填欄位和參數。 |
403 |
userInsufficientPermission |
使用者沒有足夠的權限可執行要求作業。 | 確認已驗證的使用者在 Google Play 管理中心具備必要權限。詳情請參閱「 使用服務帳戶」。 |
404 |
notFound |
找不到要求的資源。 | 確認 ID (例如購買憑證、套件名稱、產品 ID、訂閱 ID) 正確無誤。 |
409 |
concurrentUpdate |
嘗試更新正在同步更新的物件。 | 以指數輪詢方式重試要求。請避免同時修改相同資源。 |
5xx |
Generic error |
Google Play 伺服器發生一般錯誤。 | 請重試要求。 如果問題持續發生,請與 Google Play 帳戶管理員聯絡,或提交支援要求。建議查看 Play 狀態資訊主頁,瞭解是否已有服務中斷情形。 |