REST Resource: monetization.subscriptions.basePlans.offers

Resource: SubscriptionOffer

Satu penawaran sementara

Representasi 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)
    }
  ]
}
Kolom
packageName

string

Wajib diisi. Tidak dapat diubah. Nama paket aplikasi yang memiliki langganan induk.

productId

string

Wajib diisi. Tidak dapat diubah. ID langganan induk yang memiliki penawaran ini.

basePlanId

string

Wajib diisi. Tidak dapat diubah. ID paket dasar tempat penawaran ini merupakan ekstensi.

offerId

string

Wajib diisi. Tidak dapat diubah. ID unik dari penawaran langganan ini. Harus unik dalam paket dasar.

state

enum (State)

Hanya output. Status penawaran saat ini. Dapat diubah menggunakan tindakan Aktifkan dan Nonaktifkan. Catatan: status paket dasar menggantikan status ini, sehingga penawaran aktif mungkin tidak tersedia jika paket dasar tidak aktif.

phases[]

object (SubscriptionOfferPhase)

Wajib diisi. Fase-fase dalam penawaran langganan ini. Harus berisi setidaknya satu entri, dan dapat berisi paling banyak lima entri. Pengguna akan selalu menerima semua fase ini dalam urutan tertentu. Fase tidak dapat ditambahkan, dihapus, atau diurutkan ulang setelah pembuatan awal.

targeting

object (SubscriptionOfferTargeting)

Persyaratan yang harus dipenuhi pengguna agar memenuhi syarat untuk penawaran ini. Mewakili persyaratan yang akan dievaluasi Play untuk memutuskan apakah penawaran harus ditampilkan. Developer dapat memfilter penawaran ini lebih lanjut sendiri.

regionalConfigs[]

object (RegionalSubscriptionOfferConfig)

Wajib diisi. Konfigurasi spesifik per wilayah untuk penawaran ini. Harus berisi setidaknya satu entri.

otherRegionsConfig

object (OtherRegionsSubscriptionOfferConfig)

Konfigurasi untuk lokasi baru mana pun yang dapat diluncurkan Play pada masa mendatang.

offerTags[]

object (OfferTag)

Daftar hingga 20 tag kustom yang ditentukan untuk penawaran ini, dan ditampilkan ke aplikasi melalui library penagihan.

Negara Bagian

Status penawaran langganan saat ini.

Enum
STATE_UNSPECIFIED Nilai default, tidak boleh digunakan.
DRAFT Penawaran langganan tidak dan tidak pernah tersedia untuk pengguna.
ACTIVE Penawaran langganan tersedia untuk pengguna baru dan lama.
INACTIVE Penawaran langganan tidak tersedia untuk pengguna baru. Pengguna yang sudah ada tetap memiliki akses.

SubscriptionOfferPhase

Fase tunggal dari penawaran langganan.

Representasi JSON
{
  "recurrenceCount": integer,
  "duration": string,
  "regionalConfigs": [
    {
      object (RegionalSubscriptionOfferPhaseConfig)
    }
  ],
  "otherRegionsConfig": {
    object (OtherRegionsSubscriptionOfferPhaseConfig)
  }
}
Kolom
recurrenceCount

integer

Wajib diisi. Berapa kali fase ini diulang. Jika fase penawaran ini tidak gratis, setiap pengulangan akan mengenakan biaya kepada pengguna untuk fase penawaran ini.

duration

string

Wajib diisi. Durasi pengulangan tunggal fase ini. Ditentukan dalam format ISO 8601.

regionalConfigs[]

object (RegionalSubscriptionOfferPhaseConfig)

Wajib diisi. Konfigurasi khusus wilayah untuk fase penawaran ini. Daftar ini harus berisi tepat satu entri untuk setiap region yang penawaran langganannya memiliki konfigurasi regional.

otherRegionsConfig

object (OtherRegionsSubscriptionOfferPhaseConfig)

Informasi harga untuk lokasi baru yang mungkin diluncurkan Play.

RegionalSubscriptionOfferPhaseConfig

Konfigurasi untuk satu fase penawaran langganan di satu region.

Representasi 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.
}
Kolom
regionCode

string

Wajib diisi. Tidak dapat diubah. Region tempat konfigurasi ini diterapkan.

Kolom union price_override. Penggantian harga fase ini. Wajib diisi. price_override hanya dapat berupa salah satu dari berikut:
price

object (Money)

Harga mutlak yang dibayarkan pengguna untuk fase penawaran ini. Harga tidak boleh lebih kecil dari harga minimum yang diizinkan untuk wilayah ini.

relativeDiscount

number

Bagian harga paket dasar secara prorata selama durasi fase yang dibayar pengguna untuk fase penawaran ini. Misalnya, jika harga paket dasar untuk wilayah ini adalah $12 untuk jangka waktu 1 tahun, maka diskon 50% untuk fase durasi 3 bulan akan setara dengan harga $1,50. Diskon harus ditentukan sebagai pecahan yang benar-benar lebih besar dari 0 dan benar-benar lebih kecil dari 1. Harga yang dihasilkan akan dibulatkan ke unit terdekat yang dapat ditagih (misalnya sen untuk USD). Diskon relatif dianggap tidak valid jika harga diskon ternyata lebih kecil dari harga minimum yang diizinkan di wilayah ini.

absoluteDiscount

object (Money)

Jumlah absolut uang yang dikurangi dari harga paket dasar secara prorata selama durasi fase yang dibayarkan pengguna untuk fase penawaran ini. Misalnya, jika harga paket dasar untuk wilayah ini adalah $12 untuk jangka waktu 1 tahun, maka diskon mutlak $1 untuk fase durasi 3 bulan akan setara dengan harga $2. Harga yang dihasilkan mungkin tidak lebih kecil dari harga minimum yang diizinkan untuk wilayah ini.

free

object (RegionalSubscriptionOfferPhaseFreePriceOverride)

Tetapkan untuk menentukan penawaran ini dapat diperoleh secara gratis.

RegionalSubscriptionOfferPhaseFreePriceOverride

Jenis ini tidak memiliki kolom.

Mewakili konfigurasi penggantian harga gratis untuk satu fase penawaran langganan

OtherRegionsSubscriptionOfferPhaseConfig

Konfigurasi untuk lokasi baru yang dapat diluncurkan Play untuk fase penawaran tunggal.

Representasi 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.
}
Kolom
Kolom union price_override. Penggantian harga fase ini. Wajib diisi. price_override hanya dapat berupa salah satu dari berikut:
otherRegionsPrices

object (OtherRegionsSubscriptionOfferPhasePrices)

Harga mutlak yang dibayarkan pengguna untuk fase penawaran ini. Harga tidak boleh lebih kecil dari harga minimum yang diizinkan untuk lokasi baru yang mungkin diluncurkan Play.

relativeDiscount

number

Bagian harga paket dasar secara prorata selama durasi fase yang dibayar pengguna untuk fase penawaran ini. Misalnya, jika harga paket dasar untuk wilayah ini adalah $12 untuk jangka waktu 1 tahun, maka diskon 50% untuk fase durasi 3 bulan akan setara dengan harga $1,50. Diskon harus ditentukan sebagai pecahan yang benar-benar lebih besar dari 0 dan benar-benar lebih kecil dari 1. Harga yang dihasilkan akan dibulatkan ke unit terdekat yang dapat ditagih (misalnya sen untuk USD). Diskon relatif dianggap tidak valid jika harga diskon ternyata lebih kecil dari harga minimum yang diizinkan di lokasi baru tempat Play dapat diluncurkan.

absoluteDiscounts

object (OtherRegionsSubscriptionOfferPhasePrices)

Jumlah absolut uang yang dikurangi dari harga paket dasar secara prorata selama durasi fase yang dibayarkan pengguna untuk fase penawaran ini. Misalnya, jika harga paket dasar untuk wilayah ini adalah $12 untuk jangka waktu 1 tahun, maka diskon mutlak $1 untuk fase durasi 3 bulan akan setara dengan harga $2. Harga yang dihasilkan tidak boleh lebih kecil dari harga minimum yang diizinkan untuk lokasi baru yang mungkin diluncurkan Play.

free

object (OtherRegionsSubscriptionOfferPhaseFreePriceOverride)

Tetapkan untuk menentukan penawaran ini dapat diperoleh secara gratis.

OtherRegionsSubscriptionOfferPhasePrices

Informasi harga untuk lokasi baru yang mungkin diluncurkan Play.

Representasi JSON
{
  "usdPrice": {
    object (Money)
  },
  "eurPrice": {
    object (Money)
  }
}
Kolom
usdPrice

object (Money)

Wajib diisi. Harga dalam USD yang dapat digunakan untuk lokasi baru yang dapat diluncurkan Play.

eurPrice

object (Money)

Wajib diisi. Harga dalam EUR untuk digunakan di lokasi baru yang mungkin diluncurkan Play.

OtherRegionsSubscriptionOfferPhaseFreePriceOverride

Jenis ini tidak memiliki kolom.

Mewakili konfigurasi penggantian harga gratis untuk lokasi baru yang dapat diluncurkan Play untuk satu fase penawaran.

SubscriptionOfferTargeting

Menentukan aturan yang harus dipenuhi pengguna untuk menerima penawaran ini.

Representasi 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.
}
Kolom
Kolom union rule. Biarkan kosong untuk kelayakan penawaran yang ditentukan developer. rule hanya dapat berupa salah satu dari berikut:
acquisitionRule

object (AcquisitionTargetingRule)

Aturan penargetan penawaran untuk akuisisi pengguna baru.

upgradeRule

object (UpgradeTargetingRule)

Tawarkan aturan penargetan untuk mengupgrade pengguna paket yang sudah ada.

AcquisitionTargetingRule

Mewakili aturan penargetan dalam bentuk: Pengguna belum pernah memiliki {scope} sebelumnya.

Representasi JSON
{
  "scope": {
    object (TargetingRuleScope)
  }
}
Kolom
scope

object (TargetingRuleScope)

Wajib diisi. Cakupan langganan yang dipertimbangkan oleh aturan ini. Hanya izinkan "langganan ini" dan "langganan apa pun dalam aplikasi".

TargetingRuleScope

Menentukan cakupan langganan yang dapat dicocokkan oleh aturan penargetan untuk menargetkan penawaran kepada pengguna berdasarkan hak sebelumnya atau saat ini.

Representasi 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.
}
Kolom

Kolom union scope.

scope hanya dapat berupa salah satu dari yang berikut:

thisSubscription

object (TargetingRuleScopeThisSubscription)

Cakupan aturan penargetan saat ini adalah langganan tempat penawaran ini ditentukan.

anySubscriptionInApp

object (TargetingRuleScopeAnySubscriptionInApp)

Cakupan aturan penargetan saat ini adalah langganan apa pun di aplikasi induk.

specificSubscriptionInApp

string

Cakupan aturan penargetan saat ini adalah langganan dengan ID langganan yang ditentukan. Harus merupakan langganan dalam aplikasi induk yang sama.

TargetingRuleScopeThisSubscription

Jenis ini tidak memiliki kolom.

Mewakili cakupan aturan penargetan yang sesuai dengan langganan tempat penawaran ini ditentukan.

TargetingRuleScopeAnySubscriptionInApp

Jenis ini tidak memiliki kolom.

Mewakili cakupan aturan penargetan yang sesuai dengan langganan apa pun di aplikasi induk.

UpgradeTargetingRule

Merepresentasikan aturan penargetan dalam format: Pengguna saat ini memiliki {scope} [dengan periode penagihan {billing_period}].

Representasi JSON
{
  "oncePerUser": boolean,
  "scope": {
    object (TargetingRuleScope)
  },
  "billingPeriodDuration": string
}
Kolom
oncePerUser

boolean

Batasi penawaran ini hanya satu kali per pengguna. Jika kebijakan disetel ke benar (true), pengguna tidak akan memenuhi syarat untuk penawaran ini lagi jika mereka pernah berlangganan penawaran ini.

scope

object (TargetingRuleScope)

Wajib diisi. Cakupan langganan yang dipertimbangkan oleh aturan ini. Hanya izinkan "langganan ini" dan "langganan tertentu dalam aplikasi".

billingPeriodDuration

string

Durasi periode penagihan spesifik, yang ditentukan dalam format ISO 8601, yang saat ini harus menjadi langganan pengguna agar memenuhi syarat untuk aturan ini. Jika tidak ditentukan, pengguna yang berlangganan periode penagihan apa pun akan dicocokkan.

RegionalSubscriptionOfferConfig

Konfigurasi untuk penawaran langganan di satu region.

Representasi JSON
{
  "regionCode": string,
  "newSubscriberAvailability": boolean
}
Kolom
regionCode

string

Wajib diisi. Tidak dapat diubah. Kode wilayah tempat konfigurasi ini diterapkan, sebagaimana didefinisikan oleh ISO 3166-2, mis. "AS".

newSubscriberAvailability

boolean

Apakah penawaran langganan di wilayah yang ditentukan tersedia untuk pelanggan baru. Langganan pelanggan yang ada tidak akan dibatalkan jika nilai ini disetel ke false. Jika tidak ditentukan, nilai defaultnya adalah false (salah).

OtherRegionsSubscriptionOfferConfig

Konfigurasi untuk lokasi baru yang dapat diluncurkan Play pada penawaran langganan.

Representasi JSON
{
  "otherRegionsNewSubscriberAvailability": boolean
}
Kolom
otherRegionsNewSubscriberAvailability

boolean

Apakah penawaran langganan di lokasi baru Play dapat diluncurkan pada masa mendatang. Jika tidak ditentukan, nilai defaultnya adalah false (salah).

Metode

activate

Mengaktifkan penawaran langganan.

batchGet

Membaca satu atau beberapa penawaran langganan.

batchUpdate

Memperbarui batch penawaran langganan.

batchUpdateStates

Memperbarui batch status penawaran langganan.

create

Membuat penawaran langganan baru.

deactivate

Menonaktifkan penawaran langganan.

delete

Menghapus penawaran langganan.

get

Membaca satu penawaran

list

Mencantumkan semua penawaran dalam langganan tertentu.

patch

Memperbarui penawaran langganan yang ada.