Paket rasio pembelian menggunakan API

Anda sedang melihat dokumentasi Apigee Edge.
Buka dokumentasi Apigee X.
info

Bagian ini menjelaskan cara membeli paket tarif yang dipublikasikan, dan mengakhiri atau membatalkan paket tarif yang dibeli, jika diinginkan, menggunakan API.

Membeli paket tarif yang dipublikasikan menggunakan API

Setelah paket tarif dipublikasikan, developer atau perusahaan dapat membeli (atau "menyetujui")nya dengan mengeluarkan permintaan POST ke /mint/organizations/{org_name}/developers/{developer_or_company_id}/developer-rateplans, dengan {org_name} sebagai nama organisasi dan {developer_or_company_id} adalah ID developer atau perusahaan.

Untuk membebaskan biaya penyiapan saat membeli paket tarif, tetapkan parameter kueri waivefees ke true. Tanda ini berguna saat Anda memigrasikan developer ke monetisasi, seperti yang dijelaskan dalam Memigrasikan developer ke monetisasi.

Tabel berikut merangkum properti konfigurasi yang dapat Anda tentukan dalam isi permintaan, nilai default-nya, dan apakah diperlukan atau tidak.

Nama Deskripsi Default Wajib diisi?
startDate

Tanggal saat paket tarif dimulai. Misalnya: 2017-03-24.

T/A Ya
endDate

Tanggal saat paket tarif berakhir. Misalnya: 2017-09-24.

Paket tarif akan berlaku hingga akhir hari pada tanggal yang ditentukan. Jika Anda ingin mengakhiri paket tarif pada 1 Desember 2017, misalnya, Anda harus menetapkan nilai endDate ke 2017-11-30. Dalam hal ini, paket tarif akan habis masa berlakunya pada penghujung hari pada 30 November 2017; semua permintaan pada 1 Desember 2017 akan diblokir.

T/A Tidak
developer

id yang menentukan ID developer atau perusahaan yang membeli paket tarif.

T/A Ya
quotaTarget

Jumlah target transaksi yang diizinkan untuk developer aplikasi. Anda dapat mengonfigurasi apakah dan kapan notifikasi dikirim berdasarkan persentase jumlah target yang telah tercapai, seperti 90%, 100%, atau 150%. Transaksi tambahan tidak akan diblokir setelah jumlah target tercapai.

Tetapkan nilai ini ke nilai bilangan bulat positif atau 0 untuk menonaktifkan notifikasi untuk developer aplikasi.

0 Tidak
ratePlan

id yang menentukan ID paket tarif.

ID paket tarif berbeda dari nama tampilan. Untuk melihat detail paket tarif termasuk ID, lihat Menjelajahi halaman paket tarif.

T/A Ya
suppressWarning

Tanda yang menentukan apakah akan menyembunyikan error jika developer mencoba membeli paket tarif yang tumpang-tindih dengan paket tarif lain yang dibeli. Nilainya bisa berupa salah satu dari berikut:

  • true - Monetisasi menghentikan semua paket tarif yang dibeli yang harus diikuti oleh developer ke paket API yang berisi produk API yang bertentangan. Kemudian, ia membeli paket API baru untuk developer.
  • false - Error ditampilkan jika ada paket tarif yang tumpang-tindih.
T/A Tidak
waveTerminationCharge

Tanda yang menentukan apakah biaya penghentian dibebaskan saat paket tarif aktif dihentikan sebagai bagian dari pengaktifan paket tarif baru. Nilainya bisa berupa salah satu dari berikut:

  • true - Mengabaikan biaya penghentian saat paket tarif aktif dihentikan sebagai bagian dari pengaktifan paket tarif baru.
  • false - Jangan abaikan biaya penghentian jika paket tarif aktif dihentikan sebagai bagian dari pengaktifan paket tarif baru.
T/A Tidak

Misalnya, permintaan berikut membeli paket tarif location_&_messaging untuk developer tertentu:

curl "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/developers/5cTWgdUvdr6JW3xU/developer-rateplans" \
  -X POST \
  -H "Content-Type:application/json" \
  -u email:password \
  -d '{
   "developer":{
     "id":"5cTWgdUvdr6JW3xU"
   },
   "startDate":"2017-08-30",
   "ratePlan":{
     "id":"location_&_messaging"
   },
   "suppressWarning":false
  }'

Dalam contoh ini, properti suppressWarning disetel ke false. Dalam hal ini, error akan ditampilkan jika terjadi konflik. Misalnya, jika developer mencoba membeli paket tarif yang tumpang-tindih dengan paket tarif lain yang dibeli, error akan muncul. Hal ini memungkinkan aplikasi yang menyediakan antarmuka pengguna ke monetisasi untuk menangkap error dan menampilkan produk yang bertentangan kepada developer untuk konfirmasi (jika perlu). Jika suppressWarning ditetapkan ke true, monetisasi akan menghentikan semua paket tarif yang dibeli dan dimiliki developer pada paket API yang berisi produk yang bertentangan. Kemudian, ia membeli paket API baru untuk developer.

Permintaan berikut membeli paket tarif notifikasi yang dapat disesuaikan dan menetapkan jumlah target transaksi ke 4000.

curl "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/developers/5cTWgdUvdr6JW3xU/developer-rateplans" \
  -X POST \
  -H "Content-Type:application/json" \
  -u email:password \
  -d '{
   "developer":{
     "id":"5cTWgdUvdr6JW3xU"
   },
   "ratePlan":{
     "id":"adjustable-notification-plan"
   },
   "startDate": "2017-03-24",
   "quotaTarget": 4000,
   "suppressWarning":false
  }'

Dalam salah satu contoh di atas, jika pesan error berikut ditampilkan:

Developer legal name not specified. 

Kemudian, Anda harus menetapkan atribut monetisasi MINT_DEVELOPER_ADDRESS dan MINT_DEVELOPER_LEGAL_NAME, lalu mengulangi panggilan API.

Berakhirnya paket tarif yang dibeli oleh developer menggunakan API

Untuk mengakhiri (atau membatalkan) paket tarif yang telah dibeli oleh developer, perbarui detail paket tarif yang dibeli dan tentukan properti endDate dalam isi permintaan pada permintaan PUT ke resource /organizations/{org_name}/developers/{developer_or_company_id}/developer-rateplans/{developer_rateplan_id}.

Paket tarif akan berlaku hingga akhir hari pada tanggal akhir yang ditentukan. Jika Anda ingin mengakhiri paket tarif pada 1 Desember 2017, misalnya, Anda harus menetapkan nilai endDate ke 2017-11-30. Dalam hal ini, paket tarif akan habis masa berlakunya pada penghujung hari pada tanggal 30 November 2017; semua permintaan pada tanggal 1 Desember 2017 akan diblokir.

{developer_rateplan_id} ditampilkan sebagai respons saat Anda membeli paket tarif yang dipublikasikan.

Contoh:

{
  "created": "2017-03-31 18:59:54",
  "developer": {
    ...
  },
  "id": "b1c600b8-f871-496d-8173-12b9950d6ab1",
  "quotaTarget": 3000,
  "ratePlan": {
    ...
  },
  "startDate": "2017-03-31 00:00:00",
  "updated": "2017-03-31 18:59:54",
  "waiveTerminationCharge": false
}

Atau, Anda dapat memperoleh {developer-rateplan-id} untuk paket tarif developer dengan mengajukan permintaan GET ke /organizations/{org_name}/developers/{developer_id}/developer-accepted-rateplans, dengan {developer_id} sebagai alamat email developer. Untuk informasi selengkapnya, lihat Melihat semua paket tarif yang dibeli oleh developer.

Permintaan berikut memperbarui tanggal akhir menjadi 1 Desember 2017. Artinya, paket tarif akan habis masa berlakunya pada penghujung hari pada tanggal 30 November 2017; semua permintaan pada tanggal 1 Desember 2017 akan diblokir.

curl "https://api.enterprise.apigee.com/v1/mint/organizations/myorg/developers/dev@mycompany.com/developer-rateplans/b1c600b8-f871-496d-8173-12b9950d6ab1"
  -X PUT \
  -H "Content-Type:application/json" \
  -u email:password \
  -d '{
   "id" : "b1c600b8-f871-496d-8173-12b9950d6ab1",
   "developer":{
     "id":"dev@mycompany.com"
   },
   "ratePlan":{
     "id":"p1_adjustable-notification-plan"
   },
   "startDate": "2017-04-15 00:00:00",
   "endDate": "2017-11-30",
   "quotaTarget": 3000,
   "suppressWarning":false
  }'