Mengonfigurasi paket tarif dengan atribut khusus

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

Pengantar

Dalam beberapa kasus, Anda mungkin perlu penghitung transaksi didasarkan pada variabel atau nilai kustom. Misalnya, Anda mungkin perlu:

  • Mengenakan biaya kepada developer dengan jumlah yang berbeda-beda berdasarkan nilai yang diberikan dalam pesan API panggilan telepon. Misalnya, Anda mungkin ingin mengenakan biaya kepada developer aplikasi berdasarkan jumlah byte ditransmisikan dalam permintaan API.
  • Gabungkan beberapa panggilan API ke dalam satu transaksi.

Dengan menggunakan paket tarif dengan atribut khusus, Anda dapat mengidentifikasi nilai dalam pesan API yang bertindak sebagai penghitung, dan digunakan untuk menghitung jumlah dan biaya transaksi.

Paket tarif berikut dengan atribut khusus didukung:

  • Kartu tarif dengan atribut khusus
  • Notifikasi yang dapat disesuaikan dengan atribut khusus

Anda dapat menetapkan maksimum sepuluh atribut khusus per paket tarif.

Memahami penghitungan atribut khusus

Cara nilai atribut khusus diperhitungkan dalam jumlah dan tagihan transaksi paket tarif bergantung pada model pengisian daya, seperti yang diringkas dalam tabel berikut.

Model pengisian daya Penghitungan atribut khusus
Tarif Tetap dan Volume Berikat

custom attribute number * rate = charge to developer

Untuk Tarif Tetap, nomor atribut khusus menjadi jumlah transaksi yang dikalikan dengan kurs. Untuk Volume yang Diikat, jumlah transaksi dalam sebuah tali ditambahkan dengan nomor atribut khusus, dan developer dikenai biaya untuk itu jumlah transaksi. Misalnya, jika nilai atribut khusus di pesan adalah 10, maka pengembang dikenakan biaya untuk 10 transaksi, dan 10 transaksi ditambahkan ke jumlah band saat ini. Jika developer hanya memiliki 6 transaksi tersisa dalam transaksi saat ini pita, 6 dikalikan dengan laju untuk pita tersebut. 4 sisanya akan masuk ke band berikutnya dan dikalikan dengan nilai-nilai {i>band<i} tersebut.

Dalam paket Volume Band, jika band volume terakhir memiliki batas (bukan "tidak terbatas") dan transaksi melebihi batas tersebut, dua hal berikut terjadi:

Bundles

Karena paket dibebankan oleh grup, bukan berdasarkan transaksi, hal berikut penghitungan terjadi:

custom attribute number = amount added to bundle count

Misalnya, jika nomor atribut khusus dalam pesan adalah 10, 10 ditambahkan ke jumlah transaksi yang digunakan dalam paket. Jika pengembang hanya memiliki 6 transaksi yang tersisa dalam paket saat ini, maka paket tersebut akan diisi dan jumlah paket bertambah 4. Tarif untuk paket berikutnya, jika ada, adalah terisi.

Jika paket terakhir memiliki batas (bukan "tidak terbatas") dan transaksi melebihi batas tersebut batas, dua hal terjadi:

Notifikasi yang dapat disesuaikan

Untuk notifikasi yang dapat disesuaikan, penghitungan berikut akan terjadi:

custom attribute number = amount added to transaction count

Misalnya, jika nomor atribut khusus dalam pesan adalah 10, 10 ditambahkan ke jumlah total transaksi.

Tempat paket tarif mendapatkan nilai atribut khusus

Kebijakan Perekaman Transaksi (pada paket produk API) memberi tahu monetisasi tempat untuk memeriksa untuk nilai atribut khusus. Anda menentukan atribut khusus dalam Atribut Khusus dalam kebijakan pencatatan transaksi untuk paket produk API.

Kemudian, Anda dapat memilih atribut khusus tersebut dalam paket tarif—setelah membuat API paket produk yang berisi kebijakan pencatatan transaksi dengan atribut khusus yang ditentukan.

Berikut adalah alur tingkat tingginya:

  1. Tentukan atribut khusus saat menambahkan produk API.
  2. Buat paket produk API yang berisi produk tersebut.
    Dalam kebijakan pencatatan transaksi untuk paket produk API, tambahkan atribut khusus yang akan yang digunakan untuk menentukan paket tarif.
  3. Buat paket tarif jenis kartu tarif atau notifikasi yang dapat disesuaikan untuk paket produk API dan tentukan parameter rating kustom.

Gambar berikut menunjukkan hubungan antara atribut khusus yang didefinisikan dalam kebijakan pencatatan transaksi, dan konfigurasi paket kartu tarif. Tujuan notifikasi yang dapat disesuaikan dengan hubungan paket tarif atribut khusus serupa, meskipun nilai volume berdasarkan band tidak berlaku.

Cara membuat nilai atribut dalam pesan

Kebijakan pencatatan transaksi dapat mencari nilai atribut khusus di beberapa tempat, seperti header respons, isi respons, atau variabel alur yang telah ditentukan sebelumnya dalam respons. (Permintaan ini tidak tersedia, karena sebuah transaksi belum resmi hingga Anda berhasil response.) Berikut adalah contoh yang menunjukkan cara menambahkan header respons dengan nilai numeriknya pada pesan. Dalam kedua kasus tersebut, kita akan menggunakan kebijakan Tetapkan Pesan di bersama dengan variabel.

Menambahkan ukuran payload permintaan ke header respons

Di setiap permintaan pesan, ada variabel client.received.content.length yang berisi jumlah byte dalam payload permintaan. Dengan melampirkan kebijakan Tetapkan Pesan ke Respons Endpoint Proxy, kita dapat menghasilkan header respons yang disebut messageSize yang berisi nilai length:

<AssignMessage async="false" continueOnError="false" enabled="true" name="Assign-Message-1">
    <DisplayName>Assign Message 1</DisplayName>
    <Set>
        <Headers>
          <Header name="messageSize">{client.received.content.length}</Header> 
        </Headers>  
    </Set>
    <IgnoreUnresolvedVariables>true</IgnoreUnresolvedVariables>
    <AssignTo createNew="false" transport="http" type="request"/>
</AssignMessage>

Menambahkan nilai atribut khusus aplikasi ke header

Dengan cara yang sama, kita dapat menghasilkan header dengan nilai atribut khusus di aplikasi. Misalnya, jika Anda menyertakan atribut khusus yang disebut apprating pada setiap developer aplikasi, sebagai berikut:

Saat menggunakan kebijakan Verify API Key (yang diperlukan untuk monetisasi), nilai ini adalah disimpan dalam variabel yang disebut verifyapikey.{policy_name}.apprating. Menggunakan Tugas Kebijakan pesan yang dilampirkan ke respons Endpoint Proxy, Anda dapat membuat header yang disebut apprating yang berisi nilai apprating aplikasi:

<AssignMessage async="false" continueOnError="false" enabled="true" name="Assign-Message-1">
    <DisplayName>Assign Message 1</DisplayName>
    <Set>
        <Headers>
          <Header name="apprating">{verifyapikey.Verify-API-Key-1.apprating}</Header> 
        </Headers>  
    </Set>
    <IgnoreUnresolvedVariables>true</IgnoreUnresolvedVariables>
    <AssignTo createNew="false" transport="http" type="request"/>
</AssignMessage>

Menyiapkan rencana tarif

Selain penyiapan atribut khusus yang dijelaskan di atas, paket tarif disiapkan dengan cara yang sama seperti biasa (untuk paket tarif tanpa atribut khusus), tetapi harus mematuhi persyaratan berikut.

Mengonfigurasi paket kartu tarif dengan atribut khusus menggunakan UI

Mengonfigurasi paket kartu tarif dengan atribut khusus menggunakan UI Edge atau UI Edge Klasik, seperti yang dijelaskan di bagian berikut.

Edge

Untuk mengonfigurasi paket kartu tarif dengan atribut khusus menggunakan UI Edge:

  1. Tentukan atribut khusus saat menambahkan produk API.
  2. Buat paket produk API yang berisi produk tersebut. Lihat Membuat paket produk API.
    Dalam kebijakan pencatatan transaksi untuk paket produk API, tambahkan atribut khusus yang akan yang digunakan untuk menentukan paket tarif. Untuk detailnya, lihat pengantar dalam topik ini, serta Buat kebijakan pencatatan transaksi.
  3. Buat paket tarif untuk paket produk API dan tentukan parameter rating kustom.

Untuk informasi selengkapnya, lihat Mengonfigurasi detail paket kartu tarif menggunakan UI.

Edge Klasik (Private Cloud)

Gunakan langkah-langkah berikut untuk membuat Kartu Tarif dengan paket Atribut Khusus menggunakan UI Edge Klasik:

  1. Dalam kebijakan pencatatan transaksi produk API, tambahkan atribut khusus yang akan yang digunakan untuk menentukan paket tarif. Untuk detailnya, lihat pengantar dalam topik ini, serta artikel Membuat transaksi kebijakan perekaman. Lakukan hal ini untuk setiap produk API yang ingin Anda sertakan dalam paket API.
  2. Setelah produk API dan kebijakan pencatatan transaksi dikonfigurasi persis seperti yang menginginkannya, buat paket API yang berisi produk. Lihat Membuat paket API.
  3. Buat paket tarif untuk paket API, dengan memilih jenis paket tarif Kartu Tarif dengan Atribut Khusus.
  4. Klik link Kartu Tarif. Tindakan ini akan membuka jendela Kartu Tarif.

  5. Pilih atribut khusus di menu drop-down Atribut Khusus. Menu ini mencantumkan kustom yang dibuat untuk produk dalam kebijakan pencatatan transaksi. Developer dikenai biaya berdasarkan nilai atribut khusus yang dipilih dalam setiap transaksi.
    (Nilai atribut * tarif = tagih ke developer)
  6. Jika perlu, siapkan paket freemium seperti yang dijelaskan dalam Menentukan paket kartu tarif detail.
  7. Siapkan model penagihan seperti yang dijelaskan di Menentukan paket kartu tarif detail. Namun, perhatikan bahwa untuk jenis paket tarif Kartu Tarif dengan Atribut Khusus, model pengisian daya didasarkan pada atribut khusus yang Anda pilih. Misalnya, jika Anda memilih Datar Tarif sebagai model pengisian daya, developer akan dikenai tarif tetap berdasarkan , seperti jumlah byte yang ditransmisikan dalam setiap transaksi (bukan tarif tetap untuk setiap transaksi). Lihat Penghitungan untuk informasi selengkapnya.
  8. Klik Simpan Draf.
    Publikasikan rencana hanya ketika Anda benar-benar yakin itu sudah final. Lihat Memublikasikan paket tarif untuk mengetahui informasi tentang cara menetapkan Tanggal Publikasi dan publikasi rencana Anda sendiri.

Untuk informasi selengkapnya, lihat Menentukan detail paket kartu tarif menggunakan UI.

Mengonfigurasi paket notifikasi yang dapat disesuaikan dengan atribut khusus menggunakan UI

Mengonfigurasi paket notifikasi yang dapat disesuaikan dengan atribut khusus, seperti yang dijelaskan di bawah ini.

Edge

Untuk mengonfigurasi paket kartu tarif dengan atribut khusus menggunakan UI Edge:

  1. Tentukan atribut khusus saat menambahkan produk API.
  2. Buat paket produk API yang berisi produk tersebut. Lihat Membuat paket produk API.
    Dalam kebijakan pencatatan transaksi untuk paket produk API, tambahkan atribut khusus yang akan yang digunakan untuk menentukan paket tarif. Untuk detailnya, lihat pengantar dalam topik ini, serta Buat kebijakan pencatatan transaksi.
  3. Buat paket tarif untuk paket produk API dan tentukan parameter rating kustom.

Untuk mengetahui informasi selengkapnya, lihat Mengonfigurasi paket notifikasi yang dapat disesuaikan menggunakan UI.

Edge Klasik (Private Cloud)

Untuk mengonfigurasi paket kartu tarif dengan atribut khusus menggunakan UI Edge Klasik:

  1. Dalam kebijakan pencatatan transaksi produk API, tambahkan atribut khusus yang akan yang digunakan untuk menentukan paket tarif. Untuk detailnya, lihat pengantar dalam topik ini, serta artikel Membuat transaksi kebijakan perekaman. Lakukan hal ini untuk setiap produk API yang ingin Anda sertakan dalam paket API.
  2. Setelah produk API dan kebijakan pencatatan transaksi dikonfigurasi persis seperti yang menginginkannya, buat paket API yang berisi produk. Lihat Membuat paket API.
  3. Buat paket tarif untuk paket API, dengan memilih jenis paket tarif Adjustable Notifikasi dengan Atribut Khusus.
  4. Klik link Detail. Tindakan ini akan membuka Notifikasi yang Dapat Disesuaikan jendela.

  5. Pilih atribut khusus di menu drop-down Atribut Khusus. Menu mencantumkan atribut khusus yang dibuat untuk produk dalam kebijakan pencatatan transaksi. Tujuan jumlah total transaksi pengembang dihitung pada nilai transaksi dalam setiap transaksi.
  6. Tetapkan Dasar Agregasi ke periode waktu saat volume transaksi akan digabungkan. Pilih angka antara 1 dan 24 bulan. Nilai ini ditetapkan secara default ke 1 bulan.
  7. Klik Terapkan dan Tutup.
  8. Klik Simpan Draf.
    Publikasikan rencana hanya ketika Anda benar-benar yakin itu sudah final. Lihat Memublikasikan paket tarif untuk mengetahui informasi tentang cara menetapkan Tanggal Publikasi dan publikasi rencana Anda sendiri.

Untuk informasi selengkapnya, lihat Menentukan detail paket notifikasi yang dapat disesuaikan menggunakan UI.

Menentukan detail untuk paket tarif dengan atribut khusus menggunakan API

Lakukan langkah-langkah prasyarat berikut:

  1. Dalam kebijakan pencatatan transaksi produk API, tambahkan atribut khusus yang akan yang digunakan untuk menentukan paket tarif. Untuk detailnya, lihat pengantar dalam topik ini, serta artikel Membuat transaksi kebijakan perekaman. Lakukan hal ini untuk setiap produk API yang ingin Anda sertakan dalam paket API.
  2. Setelah produk API dan kebijakan pencatatan transaksi dikonfigurasi persis seperti yang menginginkannya, buat paket API yang berisi produk. Lihat Membuat paket API.

Selanjutnya, gunakan API untuk membuat paket tarif.

Anda menentukan detail untuk paket tarif dengan atribut khusus saat membuat paket tarif. Anda tentukan detail di properti ratePlanDetails dalam isi permintaan dalam panggilan ke /organizations/{org_name}/monetization-packages/{package_id}/rate-plans. Di beberapa detailnya, tentukan nilai parameter rating yang mengidentifikasi nama . Anda juga dapat menentukan nilai parameter rating yang menggabungkan atribut khusus selama interval waktu tertentu.

Lihat Paket tarif setelan konfigurasi detail untuk mengetahui daftar lengkap opsi detail paket tarif.

Misalnya, kode berikut akan membuat Kartu Tarif dengan paket Atribut Khusus berdasarkan yang bernama messageSize (lihat item dalam tebal).

$ curl -H "Content-Type:application/json" -X POST -d \
'{
   "name": "Custom attribute-based rate card plan",
   "developer":null,
   "developerCategory":null,
   "currency": {
     "id" : "usd"
     },     
   "description": "Custom attribute-based rate card plan",
   "displayName" : "Custom attribute-based rate card plan",
   "frequencyDuration": "1",
   "frequencyDurationType": "MONTH",
   "earlyTerminationFee": "10",
   "monetizationPackage": {
      "id": "location"
        },
      "organization": {
       "id": "{org_name}"
      },    
   "paymentDueDays": "30",
   "prorate": "false",
   "published": "false",     
   "ratePlanDetails":[
      {
        "currency":{
           "id":"usd"
        },
      "duration":1,
      "durationType":"MONTH",
      "meteringType":"VOLUME",
      "paymentDueDays":"30",
      "ratingParameter":"messageSize",
      "ratingParameterUnit":"MB",
      "organization":{
         "id":"{org_name}"
      },
      "ratePlanRates":[
         {
           "rate":0.15,
           "startUnit":0,
           "type":"RATECARD",
           "endUnit":1000
         },
         {
           "rate":0.1,
           "startUnit":1000,
           "type":"RATECARD",
           "endUnit":null
         }
      ],
      "freemiumUnit":0,
      "freemiumDuration":0,
      "freemiumDurationType":"MONTH",
      "type":"RATECARD",
      "customPaymentTerm":false
      }
    ],
    "freemiumUnit":0,
    "freemiumDuration":0,
    "freemiumDurationType":"MONTH",
    "contractDuration":"1",
    "contractDurationType":"YEAR", 
    "recurringStartUnit": 1,
    "recurringType": "CALENDAR",
    "recurringFee": "10",
    "setUpFee": "10",
    "startDate": "2013-09-15 00:00:00",
    "type": "STANDARD"
}' \
"https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/monetization-packages/location/rate-plans" \
-u email:password

Berikut ini akan membuat Notifikasi yang Dapat Disesuaikan dengan paket tarif Atribut Khusus berdasarkan atribut khusus bernama messageSize (lihat item dalam tebal).

$ curl -H "Content-Type:application/json" -X POST -d \
'{
     "name": "AdjustableNotification",
     "displayName": "Custom attribute-based adjustable notification plan",
     "description": "Custom attribute-based adjustable notification plan",
     "published": "true",  
     "organization": {
      "id": "myorg"
     },
     "startDate": "2016-04-15 00:00:00",
     "type": "STANDARD",
     "monetizationPackage": {
        "id": "p1",
        "name": "test"
     },
     "currency": {
        "id" : "usd",
        "name" : "USD"
     },
     "ratePlanDetails": [
        {
           "type": "USAGE_TARGET",
           "meteringType": "DEV_SPECIFIC",
           "duration": 1,
           "durationType": "MONTH",
           "ratingParameter": "messageSize",
           "ratingParameterUnit": "MB",
           "organization": {
             "id": "myorg"
           },
           "currency": {
             "id": "usd",
             "name": "USD"
           }
        }
     ]
}' \
"https://api.enterprise.apigee.com/v1/mint/organizations/myorg/monetization-packages/p1/rate-plans"  \
-u email:password