REST Resource: monetization.subscriptions

Resource: Langganan

Satu langganan untuk satu aplikasi.

Representasi JSON
{
  "packageName": string,
  "productId": string,
  "basePlans": [
    {
      object (BasePlan)
    }
  ],
  "listings": [
    {
      object (SubscriptionListing)
    }
  ],
  "archived": boolean,
  "taxAndComplianceSettings": {
    object (SubscriptionTaxAndComplianceSettings)
  },
  "restrictedPaymentCountries": {
    object (RestrictedPaymentCountries)
  }
}
Kolom
packageName

string

Tidak dapat diubah. Nama paket aplikasi induk.

productId

string

Tidak dapat diubah. ID unik produk dari produk. Unik dalam aplikasi induk. ID produk harus terdiri dari huruf kecil (a-z), angka (0-9), garis bawah (_), dan titik (.). Nama harus diawali dengan huruf atau angka kecil, dan panjangnya antara 1 hingga 40 karakter (inklusif).

basePlans[]

object (BasePlan)

Kumpulan paket dasar untuk langganan ini. Menampilkan harga dan durasi langganan jika tidak ada penawaran lain yang berlaku.

listings[]

object (SubscriptionListing)

Wajib diisi. Daftar listingan yang dilokalkan untuk langganan ini. Harus berisi setidaknya entri untuk bahasa default aplikasi induk.

archived
(deprecated)

boolean

Hanya output. Tidak digunakan lagi: pengarsipan langganan tidak didukung.

taxAndComplianceSettings

object (SubscriptionTaxAndComplianceSettings)

Detail tentang pajak dan kepatuhan hukum.

restrictedPaymentCountries

object (RestrictedPaymentCountries)

Opsional. Negara tempat pembelian langganan ini dibatasi untuk metode pembayaran yang terdaftar di negara yang sama. Jika kosong, tidak ada pembatasan lokasi pembayaran yang diberlakukan.

BasePlan

Satu paket dasar untuk langganan.

Representasi JSON
{
  "basePlanId": string,
  "state": enum (State),
  "regionalConfigs": [
    {
      object (RegionalBasePlanConfig)
    }
  ],
  "offerTags": [
    {
      object (OfferTag)
    }
  ],
  "otherRegionsConfig": {
    object (OtherRegionsBasePlanConfig)
  },

  // Union field base_plan_type can be only one of the following:
  "autoRenewingBasePlanType": {
    object (AutoRenewingBasePlanType)
  },
  "prepaidBasePlanType": {
    object (PrepaidBasePlanType)
  },
  "installmentsBasePlanType": {
    object (InstallmentsBasePlanType)
  }
  // End of list of possible types for union field base_plan_type.
}
Kolom
basePlanId

string

Wajib diisi. Tidak dapat diubah. ID unik paket dasar ini. Harus unik dalam langganan, dan sesuai dengan RFC-1034. Artinya, ID ini hanya boleh berisi huruf kecil (a-z), angka (0-9), dan tanda hubung (-), serta tidak boleh melebihi 63 karakter.

state

enum (State)

Hanya output. Status paket dasar, yaitu aktif tidaknya paket tersebut. Paket dasar draf dan tidak aktif dapat diaktifkan atau dihapus. Paket dasar yang aktif dapat dinonaktifkan. Paket dasar yang tidak aktif dapat dibatalkan. Kolom ini tidak dapat diubah dengan memperbarui fasilitas. Gunakan endpoint khusus sebagai gantinya.

regionalConfigs[]

object (RegionalBasePlanConfig)

Informasi spesifik per wilayah untuk paket dasar ini.

offerTags[]

object (OfferTag)

Menampilkan hingga 20 tag kustom yang ditentukan untuk paket dasar ini, dan ditampilkan ke aplikasi melalui library penagihan. Penawaran langganan untuk paket dasar ini juga akan menerima tag penawaran ini di koleksi penagihan.

otherRegionsConfig

object (OtherRegionsBasePlanConfig)

Informasi harga untuk lokasi baru yang mungkin diluncurkan Play pada masa mendatang. Jika dihapus, BasePlan tidak akan otomatis tersedia di lokasi baru yang mungkin diluncurkan Play pada masa mendatang.

Kolom union base_plan_type. Jenis paket dasar ini. Hanya satu harus ditetapkan. base_plan_type hanya dapat berupa salah satu dari berikut:
autoRenewingBasePlanType

object (AutoRenewingBasePlanType)

Tetapkan kapan paket dasar diperpanjang otomatis dengan interval reguler.

prepaidBasePlanType

object (PrepaidBasePlanType)

Tetapkan kapan paket dasar tidak diperpanjang secara otomatis pada akhir periode penagihan.

installmentsBasePlanType

object (InstallmentsBasePlanType)

Ditetapkan untuk paket dasar cicilan saat pengguna berkomitmen untuk melakukan pembayaran dalam jumlah tertentu.

Negara Bagian

Status paket dasar saat ini.

Enum
STATE_UNSPECIFIED Status tidak ditentukan.
DRAFT Paket dasar saat ini dalam status draf, dan belum diaktifkan. Foto dapat dihapus dengan aman di tahap ini.
ACTIVE Paket dasar aktif dan tersedia untuk pelanggan baru.
INACTIVE Paket dasar tidak aktif dan hanya tersedia untuk pelanggan lama.

AutoRenewingBasePlanType

Merepresentasikan paket dasar yang diperpanjang secara otomatis pada akhir periode langganannya.

Representasi JSON
{
  "billingPeriodDuration": string,
  "gracePeriodDuration": string,
  "accountHoldDuration": string,
  "resubscribeState": enum (ResubscribeState),
  "prorationMode": enum (SubscriptionProrationMode),
  "legacyCompatible": boolean,
  "legacyCompatibleSubscriptionOfferId": string
}
Kolom
billingPeriodDuration

string

Wajib diisi. Periode langganan, ditentukan dalam format ISO 8601. Untuk mengetahui daftar periode penagihan yang dapat diterima, lihat pusat bantuan.

gracePeriodDuration

string

Masa tenggang langganan, yang ditentukan dalam format ISO 8601. Nilai yang dapat diterima adalah P0D (nol hari), P3D (3 hari), P7D (7 hari), P14D (14 hari), dan P30D (30 hari). Jika tidak ditentukan, nilai default akan digunakan berdasarkan durasi periode berulang.

accountHoldDuration

string

Opsional. Periode penangguhan akun dalam langganan, yang ditentukan dalam format ISO 8601. Nilai yang dapat diterima harus dalam DAYS dan dalam rentang P0D (nol hari) hingga P30D (30 hari). Jika tidak ditentukan, nilai defaultnya adalah P30D (30 hari).

resubscribeState

enum (ResubscribeState)

Apakah pengguna harus dapat berlangganan lagi ke paket dasar ini di platform Google Play. Jika tidak ditentukan, setelan defaultnya adalah RESUBSCRIBE_State_ACTIVE.

prorationMode

enum (SubscriptionProrationMode)

Mode penghitungan prorata untuk paket dasar menentukan hal yang akan terjadi saat pengguna beralih ke paket ini dari paket dasar lain. Jika tidak ditentukan, setelan defaultnya adalah CHARGE_ON_NEXT_BILLING_DATE.

legacyCompatible

boolean

Apakah paket dasar perpanjangan kompatibel dengan versi lama.

Paket dasar yang kompatibel dengan versi lama ditampilkan oleh metode querySkuDetailsAsync() Library Layanan Penagihan Google Play yang tidak digunakan lagi.

Hanya satu paket dasar dengan perpanjangan yang dapat ditandai sebagai kompatibel dengan versi lama untuk langganan tertentu.

legacyCompatibleSubscriptionOfferId

string

ID penawaran langganan yang kompatibel dengan versi lama.

Penawaran langganan yang kompatibel dengan versi lama ditampilkan oleh metode querySkuDetailsAsync() Library Layanan Penagihan Google Play yang tidak digunakan lagi.

Hanya satu penawaran langganan yang dapat ditandai sebagai kompatibel dengan versi lama untuk paket dasar dengan perpanjangan tertentu.

Jika tidak ada penawaran Langganan sebagai kompatibel dengan versi lama, tetapkan kolom ini sebagai string kosong.

ResubscribeState

Status berlangganan lagi paket dasar.

Enum
RESUBSCRIBE_STATE_UNSPECIFIED Status tidak ditentukan.
RESUBSCRIBE_STATE_ACTIVE Berlangganan lagi aktif.
RESUBSCRIBE_STATE_INACTIVE Berlangganan lagi tidak aktif.

SubscriptionProrationMode

Mode penghitungan prorata yang digunakan untuk memperpanjang paket dasar.

Enum
SUBSCRIPTION_PRORATION_MODE_UNSPECIFIED Mode tidak ditentukan.
SUBSCRIPTION_PRORATION_MODE_CHARGE_ON_NEXT_BILLING_DATE Pengguna akan ditagih untuk paket dasar baru pada akhir periode penagihan saat ini.
SUBSCRIPTION_PRORATION_MODE_CHARGE_FULL_PRICE_IMMEDIATELY Pengguna akan langsung ditagih untuk paket dasar baru mereka secara penuh. Sisa periode langganan yang sudah ada akan digunakan untuk memperpanjang durasi paket penagihan baru.

PrepaidBasePlanType

Merepresentasikan paket dasar yang tidak diperpanjang secara otomatis pada akhir paket dasar, dan harus diperpanjang secara manual oleh pengguna.

Representasi JSON
{
  "billingPeriodDuration": string,
  "timeExtension": enum (TimeExtension)
}
Kolom
billingPeriodDuration

string

Wajib diisi. Periode langganan, ditentukan dalam format ISO 8601. Untuk mengetahui daftar periode penagihan yang dapat diterima, lihat pusat bantuan.

timeExtension

enum (TimeExtension)

Apakah pengguna harus dapat memperpanjang paket dasar prabayar ini di platform Google Play. Jika tidak ditentukan, setelan defaultnya adalah TIME_EXTENSION_ACTIVE.

TimeExtension

Perpanjangan waktu paket dasar.

Enum
TIME_EXTENSION_UNSPECIFIED Status tidak ditentukan.
TIME_EXTENSION_ACTIVE Ekstensi waktu aktif. Pengguna diizinkan untuk menambah saldo atau memperpanjang paket prabayar mereka.
TIME_EXTENSION_INACTIVE Ekstensi waktu tidak aktif. Pengguna tidak dapat menambah saldo atau memperpanjang paket prabayar mereka.

InstallmentsBasePlanType

Merepresentasikan paket dasar cicilan tempat pengguna berkomitmen pada jumlah pembayaran tertentu.

Representasi JSON
{
  "billingPeriodDuration": string,
  "committedPaymentsCount": integer,
  "renewalType": enum (RenewalType),
  "gracePeriodDuration": string,
  "accountHoldDuration": string,
  "resubscribeState": enum (ResubscribeState),
  "prorationMode": enum (SubscriptionProrationMode)
}
Kolom
billingPeriodDuration

string

Wajib diisi. Periode langganan, ditentukan dalam format ISO 8601. Untuk mengetahui daftar periode penagihan yang dapat diterima, lihat pusat bantuan.

committedPaymentsCount

integer

Wajib diisi. Jumlah pembayaran yang menjadi komitmen pengguna.

renewalType

enum (RenewalType)

Wajib diisi. Jenis perpanjangan paket dasar cicilan. Menentukan perilaku di akhir komitmen awal.

gracePeriodDuration

string

Masa tenggang langganan, yang ditentukan dalam format ISO 8601. Nilai yang dapat diterima adalah P0D (nol hari), P3D (3 hari), P7D (7 hari), P14D (14 hari), dan P30D (30 hari). Jika tidak ditentukan, nilai default akan digunakan berdasarkan durasi periode berulang.

accountHoldDuration

string

Opsional. Masa penangguhan akun dalam langganan, yang ditentukan secara eksklusif dalam hitungan hari dan dalam format ISO 8601. Nilai yang dapat diterima adalah P0D (nol hari) hingga P30D (30 hari). Jika tidak ditentukan, nilai defaultnya adalah P30D (30 hari).

resubscribeState

enum (ResubscribeState)

Apakah pengguna harus dapat berlangganan lagi ke paket dasar ini di platform Google Play. Jika tidak ditentukan, setelan defaultnya adalah RESUBSCRIBE_State_ACTIVE.

prorationMode

enum (SubscriptionProrationMode)

Mode penghitungan prorata untuk paket dasar menentukan hal yang akan terjadi saat pengguna beralih ke paket ini dari paket dasar lain. Jika tidak ditentukan, setelan defaultnya adalah CHARGE_ON_NEXT_BILLING_DATE.

RenewalType

Jenis perpanjangan paket dasar cicilan. Menentukan perilaku di akhir komitmen awal.

Enum
RENEWAL_TYPE_UNSPECIFIED Status tidak ditentukan.
RENEWAL_TYPE_RENEWS_WITHOUT_COMMITMENT Diperpanjang secara berkala selama durasi periode penagihan tanpa komitmen.
RENEWAL_TYPE_RENEWS_WITH_COMMITMENT Diperpanjang dengan komitmen dengan durasi yang sama dengan durasi awal.

RegionalBasePlanConfig

Konfigurasi untuk paket dasar khusus untuk suatu wilayah.

Representasi JSON
{
  "regionCode": string,
  "newSubscriberAvailability": boolean,
  "price": {
    object (Money)
  }
}
Kolom
regionCode

string

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

newSubscriberAvailability

boolean

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

price

object (Money)

Harga paket dasar di wilayah yang ditentukan. Harus ditetapkan jika paket dasar tersedia untuk pelanggan baru. Harus ditetapkan dalam mata uang yang ditautkan dengan wilayah yang ditentukan.

OtherRegionsBasePlanConfig

Informasi harga untuk lokasi baru yang mungkin diluncurkan Play.

Representasi JSON
{
  "usdPrice": {
    object (Money)
  },
  "eurPrice": {
    object (Money)
  },
  "newSubscriberAvailability": boolean
}
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.

newSubscriberAvailability

boolean

Apakah paket dasar tersedia untuk pelanggan baru di lokasi baru yang mungkin menjadi lokasi peluncuran Play. Jika tidak ditentukan, nilai defaultnya adalah false (salah).

SubscriptionListing

Metadata langganan yang terlihat oleh konsumen.

Representasi JSON
{
  "languageCode": string,
  "title": string,
  "benefits": [
    string
  ],
  "description": string
}
Kolom
languageCode

string

Wajib diisi. Bahasa listingan ini, seperti yang ditetapkan oleh BCP-47, mis. "id-ID".

title

string

Wajib diisi. Judul langganan ini dalam bahasa listingan ini. Teks biasa.

benefits[]

string

Daftar manfaat yang ditampilkan kepada pengguna di platform seperti Play Store dan dalam alur pemulihan dalam bahasa listingan ini. Teks biasa. Mengurutkan daftar berisi maksimal empat manfaat.

description

string

Deskripsi langganan ini dalam bahasa listingan ini. Panjang maksimum - 80 karakter. Teks biasa.

RestrictedPaymentCountries

Negara tempat pembelian produk ini dibatasi untuk metode pembayaran yang terdaftar di negara yang sama. Jika kosong, tidak ada pembatasan lokasi pembayaran yang diberlakukan.

Representasi JSON
{
  "regionCodes": [
    string
  ]
}
Kolom
regionCodes[]

string

Wajib diisi. Kode wilayah yang akan dikenai batasan pembayaran, seperti yang ditentukan oleh ISO 3166-2, misalnya "AS".

Metode

archive
(deprecated)

Tidak digunakan lagi: pengarsipan langganan tidak didukung.

batchGet

Membaca satu atau beberapa langganan.

batchUpdate

Memperbarui batch langganan.

create

Membuat langganan baru.

delete

Menghapus langganan.

get

Membaca satu langganan.

list

Mencantumkan semua langganan dalam aplikasi tertentu.

patch

Memperbarui langganan yang ada.