Paket rasio pembelian menggunakan API

Anda 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 membelinya (atau "menerimanya") dengan mengirimkan permintaan POST ke /mint/organizations/{org_name}/developers/{developer_or_company_id}/developer-rateplans, dengan {org_name} adalah nama organisasi dan {developer_or_company_id} adalah ID developer atau perusahaan.

Untuk menghapus biaya penyiapan saat membeli paket tarif, tetapkan parameter kueri waivefees ke true. Flag 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 defaultnya, dan apakah properti tersebut wajib atau tidak.

Nama Deskripsi Default Wajib?
startDate

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

T/A Ya
endDate

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

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

T/A Tidak
developer

Properti 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 diblokir setelah jumlah target tercapai.

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

0 Tidak
ratePlan

Properti id yang menentukan ID paket tarif.

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

T/A Ya
suppressWarning

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

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

Flag yang menentukan apakah biaya penghentian akan dihapus saat paket tarif aktif dihentikan sebagai bagian dari aktivasi paket tarif baru. Nilainya dapat berupa salah satu dari berikut:

  • true - Hapus biaya penghentian saat paket tarif aktif dihentikan sebagai bagian dari aktivasi paket tarif baru.
  • false - Jangan hapus biaya penghentian saat paket tarif aktif dihentikan sebagai bagian dari aktivasi paket tarif baru.
T/A Tidak

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

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 ditetapkan 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 ditampilkan. Hal ini memungkinkan aplikasi yang menyediakan antarmuka pengguna untuk monetisasi mencegat error dan menampilkan produk yang bertentangan kepada developer untuk dikonfirmasi (sebagaimana mestinya). Jika suppressWarning ditetapkan ke true, monetisasi akan menghentikan semua paket tarif yang dibeli developer untuk paket API yang berisi produk yang bertentangan. Kemudian, monetisasi membeli paket API baru untuk developer.

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

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 ulangi panggilan API.

Mengakhiri 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 dalam 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. Misalnya, jika Anda ingin mengakhiri paket tarif pada 1 Desember 2017, Anda harus menetapkan nilai endDate ke 2017-11-30. Dalam hal ini, paket tarif akan berakhir pada akhir hari pada 30 November 2017; semua permintaan pada 1 Desember 2017 akan diblokir.

{developer_rateplan_id} ditampilkan dalam 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 mengirimkan permintaan GET ke /organizations/{org_name}/developers/{developer_id}/developer-accepted-rateplans, dengan {developer_id} adalah alamat email developer. Untuk mengetahui informasi selengkapnya, lihat Melihat semua paket tarif yang dibeli oleh developer.

Permintaan berikut memperbarui tanggal akhir menjadi 1 Desember 2017. Artinya, paket tarif akan berakhir pada akhir hari pada 30 November 2017; semua permintaan pada 1 Desember 2017 akan di blokir.

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
  }'