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 masa berlaku atau membatalkan pembelian paket tarif, jika diinginkan, menggunakan API.

Membeli paket tarif yang dipublikasikan menggunakan API

Setelah paket tarif dipublikasikan, developer atau perusahaan dapat membeli (atau "menerimanya") dengan mengeluarkan permintaan POST untuk /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 membebaskan biaya penyiapan saat membeli paket tarif, tetapkan parameter kueri waivefees ke true. Tanda ini berguna ketika Anda memigrasikan developer ke monetisasi, karena yang dijelaskan dalam Memigrasikan developer ke monetisasi.

Tabel berikut meringkas properti konfigurasi yang dapat Anda tetapkan dalam isi permintaan, nilai defaultnya, dan apakah wajib atau tidak.

Nama Deskripsi Default Wajib?
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. Misalnya, jika Anda ingin mengakhiri masa berlaku paket tarif pada 1 Desember 2017, Anda harus menetapkan nilai endDate ke 30-11-2017. Di sini jika demikian, paket tarif akan berakhir pada penghujung hari pada 30 November 2017; semua permintaan pada tanggal 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 {i>if <i}dan saat notifikasi dikirim berdasarkan persentase jumlah target yang tercapai, seperti 90%, 100%, atau 150%. Transaksi tambahan tidak diblokir setelah jumlah target tercapai.

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

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 Mempelajari halaman paket tarif.

T/A Ya
suppressWarning

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

  • true - Monetisasi menghentikan semua paket tarif yang dibeli yang pengembang harus paket API yang berisi produk API yang bertentangan. Kemudian membeli paket API baru untuk pengembang.
  • false - Error ditampilkan jika terjadi tumpang-tindih paket tarif.
T/A Tidak
waveTerminationCharge

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

  • true - Bebaskan biaya penghentian saat paket tarif aktif dihentikan sebagai bagian dari pengaktifan paket tarif baru.
  • false - Jangan membebaskan biaya penghentian jika paket tarif aktif adalah 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. Di beberapa dalam hal ini, pesan error akan ditampilkan jika terjadi konflik. Misalnya, jika developer mencoba membeli paket tarif yang tumpang-tindih dengan paket tarif lain yang dibeli, akan muncul error. Ini mengaktifkan aplikasi yang menyediakan antarmuka pengguna untuk monetisasi guna menangkap kesalahan dan tampilkan produk yang bertentangan kepada developer untuk dikonfirmasi (sebagaimana diperlukan). Jika suppressWarning disetel ke true, monetisasi akan menghentikan semua pembelian paket tarif yang harus diterapkan developer ke paket API yang berisi produk yang bertentangan. Kemudian membeli paket API baru untuk pengembang.

Permintaan berikut membeli paket tarif notifikasi yang dapat disesuaikan dan menetapkan jumlah target transaksi menjadi 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
  }'

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

Developer legal name not specified. 

Kemudian, Anda harus menyetel atribut monetisasi MINT_DEVELOPER_ADDRESS dan MINT_DEVELOPER_LEGAL_NAME, lalu ulangi panggilan API.

Berakhirnya paket tarif yang dibeli oleh developer menggunakan API

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

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

{developer_rateplan_id} ditampilkan dalam respons saat Anda melakukan pembelian rencana 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 bisa mendapatkan {developer-rateplan-id} untuk paket tarif developer dengan mengajukan permintaan GET kepada /organizations/{org_name}/developers/{developer_id}/developer-accepted-rateplans, dengan {developer_id} adalah alamat email developer. Untuk selengkapnya informasi, lihat Melihat semua paket tarif yang dibeli oleh developer.

Permintaan berikut memperbarui tanggal akhir menjadi 1 Desember 2017. Artinya, paket tarif akan berakhir pada penghujung 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
  }'