Anda sedang melihat dokumentasi Apigee Edge.
Buka
dokumentasi Apigee X. info
Gabungkan satu atau beberapa produk API ke dalam satu penampung yang dimonetisasi, disebut sebagai paket produk API, seperti yang dijelaskan di bagian berikut.
Apa yang dimaksud dengan paket produk API?
Paket produk API adalah kumpulan produk API yang ditampilkan kepada developer sebagai satu grup, dan biasanya dikaitkan dengan satu atau beberapa paket tarif untuk monetisasi. Anda dapat membuat beberapa paket produk API dan menyertakan satu atau beberapa produk API dalam setiap paket produk. Anda dapat menempatkan produk API atau produk yang sama dalam paket yang berbeda dan mengaitkannya dengan paket tarif yang berbeda (atau sama).
Developer dapat mendaftarkan aplikasi mereka untuk menggunakan paket produk API hanya dengan membeli salah satu paket tarif yang saat ini berlaku. Paket produk API tidak akan terlihat oleh developer hingga Anda menambahkan dan memublikasikan (sebagai publik) paket tarif untuk paket produk tersebut (dengan tanggal mulai dari tanggal saat ini atau tanggal di masa mendatang), seperti yang dijelaskan dalam Mengelola paket tarif. Setelah Anda menambahkan dan memublikasikan paket tarif, developer yang login ke portal developer Anda akan dapat memilih paket produk API dan memilih paket tarif. Atau, Anda dapat menyetujui paket tarif untuk developer menggunakan API pengelolaan. Untuk informasi selengkapnya, lihat Beli paket tarif yang dipublikasikan menggunakan API.
Setelah menambahkan produk API ke paket produk API, Anda mungkin perlu menyiapkan titik harga untuk produk API. Anda hanya perlu melakukan ini jika semua hal berikut terpenuhi:
- Anda menyiapkan paket tarif pembagian keuntungan untuk produk API.
- Developer mengenakan biaya kepada pihak ketiga atas penggunaan resource di produk API.
- Ada batasan minimum atau maksimum terkait jumlah yang dapat ditagih oleh developer, dan Anda ingin memberi tahu developer tentang pembatasan tersebut.
Harga minimum dan maksimum ditampilkan dalam detail untuk paket produk API.
Menjelajahi halaman Paket Produk
Akses halaman Paket Produk, seperti yang dijelaskan di bawah.
Edge
Untuk mengakses halaman paket produk API menggunakan UI Edge, pilih Publikasikan > Monetisasi > Paket Produk di menu navigasi sebelah kiri.
Seperti yang disorot pada gambar sebelumnya, halaman Paket Produk memungkinkan Anda:
- Lihat informasi ringkasan untuk semua paket produk termasuk nama paket dan daftar produk API yang ada di dalamnya
- Menambahkan paket produk
- Mengedit paket produk
- Telusuri daftar paket produk di kolom yang terlihat
Anda dapat mengelola produk API dalam paket produk atau menghapus paket produk (jika tidak ada paket tarif yang ditentukan) hanya menggunakan API.
Edge Klasik (Private Cloud)
Untuk mengakses halaman paket API menggunakan UI Edge Klasik, pilih Publikasikan > Paket di menu navigasi atas.
Halaman Paket API memungkinkan Anda untuk:
- Lihat informasi ringkasan untuk semua paket API termasuk produk API yang ada di dalamnya dan paket tarif terkait
- Menambahkan paket API
- Mengedit paket API
- Menambahkan dan mengelola paket tarif
- Mengubah setelan akses paket tarif (publik/pribadi)
- Memfilter daftar paket
Anda dapat mengelola produk API dalam paket API atau menghapus paket API (jika tidak ada paket tarif yang ditentukan) hanya menggunakan API.
Menambahkan paket produk
Untuk menambahkan paket produk API:
- Klik + Paket Produk API di halaman Paket Produk.
- Masukkan nama untuk paket produk API.
Masukkan nama produk API di kolom Tambahkan Produk.
Saat Anda mengetik nama produk API, daftar produk API yang berisi string akan ditampilkan di drop-down. Klik nama produk API untuk menambahkannya ke paket. Ulangi untuk menambahkan produk API tambahan.
- Ulangi langkah 3 untuk menambahkan nama produk API tambahan.
- Untuk setiap produk API yang Anda tambahkan, konfigurasikan kebijakan pencatatan transaksi.
- Klik Simpan Paket Produk.
Mengedit paket produk
Untuk mengedit paket produk:
Di halaman Paket Produk, klik baris paket produk yang ingin Anda edit.
Panel paket produk ditampilkan.
Edit kolom paket produk, sebagaimana diperlukan.
Lihat mengonfigurasi kebijakan pencatatan transaksi untuk mengetahui informasi selengkapnya.
- Klik Perbarui Paket Produk.
Mengelola paket produk API menggunakan API
Bagian berikut menjelaskan cara mengelola paket produk API menggunakan API tersebut.
Membuat paket produk API menggunakan API
Untuk membuat paket produk API, kirimkan permintaan POST ke
/organizations/{org_name}/monetization-packages
. Saat mengajukan permintaan, Anda
harus:
- Identifikasi produk API yang akan disertakan dalam paket produk API.
- Tentukan nama dan deskripsi untuk paket produk API.
- Tetapkan indikator status untuk paket produk API. Indikator status dapat memiliki salah satu nilai berikut: CREATED, ACTIVE, INACTIVE. Saat ini, nilai indikator status yang Anda tentukan dipertahankan dalam paket produk API, tetapi tidak digunakan untuk tujuan apa pun.
(Opsional) Anda dapat menentukan organisasi.
Lihat Properti konfigurasi paket produk API untuk daftar opsi yang diekspos ke API.
Contoh:
$ curl -H "Content-Type:application/json" -X POST -d \ '{ "description": "payment messaging package", "displayName": "Payment Messaging Package", "name": "Payment Messaging Package", "organization": { "id": "{org_name}" }, "product": [ { "id": "messaging" }, { "id": "payment" } ], "status": "CREATED" }' \ "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/monetization-packages" \ -u email:password
Berikut adalah contoh responsnya:
{ "description" : "payment messaging package", "displayName" : "Payment Messaging Package", "id" : "payment_messaging_package", "name" : "Payment Messaging Package", "organization" : { "id" : "{org_name}", "separateInvoiceForFees" : false }, "product" : [ { "customAtt1Name" : "user", "description" : "Messaging", "displayName" : "Messaging", "id" : "messaging", "name" : "messaging", "organization" : { "id" : "{org_name}", "separateInvoiceForFees" : false }, "status" : "CREATED" }, { "customAtt1Name" : "user", "description" : "Payment", "displayName" : "Payment", "id" : "payment", "name" : "payment", "organization" : { "id" : "{org_name}", "separateInvoiceForFees" : false }, "status" : "CREATED" }], "status" : "CREATED" }
Perhatikan bahwa respons tersebut menyertakan informasi tambahan tentang produk API dan setiap atribut khusus yang ditentukan untuk produk API tersebut. (Atribut khusus ditentukan saat Anda membuat produk API.) Atribut khusus untuk produk API dapat diperhitungkan dalam berbagai paket tarif. Misalnya, jika Anda menyiapkan paket kartu tarif dan mengenakan biaya kepada developer untuk setiap transaksi, Anda dapat menetapkan tarif paket tersebut berdasarkan atribut khusus seperti jumlah byte yang dikirimkan dalam sebuah transaksi.
Mengelola produk API dalam paket produk API menggunakan API
Anda dapat menambahkan atau menghapus produk API dari paket produk API menggunakan API, seperti yang dijelaskan di bagian berikut.
Menambahkan produk API ke paket produk API
Untuk menambahkan produk API ke paket produk API, kirim permintaan POST ke
organizations/{org_name}/monetization-packages/{package_id}/products/{product_id}
,
dengan {org_name}
menentukan nama organisasi Anda, {package_id}
menentukan nama paket produk API, dan {product_id}
menentukan ID produk
API.
Contoh:
$ curl -H "Accept:application/json" -X POST -d \ '{}'\ "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/monetization-packages/{package_id}/products/{product_id}" \ -u email:password
Menambahkan produk API ke paket produk API dengan paket tarif khusus produk API
Untuk menambahkan produk API ke paket produk API yang memiliki satu atau beberapa paket tarif khusus produk API
yang ditentukan (kartu tarif atau pembagian keuntungan), kirim permintaan POST ke
organizations/{org_name}/monetization-packages/{package_id}/products/{product_id}
,
dengan {org_name}
menentukan nama organisasi Anda, {package_id}
menentukan nama paket produk API, dan {product_id}
menentukan ID produk
API.
Anda harus meneruskan detail paket tarif untuk produk API baru dalam isi permintaan. Kecuali untuk array ratePlanRates
, nilai paket tarif harus cocok dengan yang ditentukan untuk semua produk API lainnya. Untuk informasi selengkapnya tentang atribut paket tarif yang dapat ditentukan, lihat
Properti konfigurasi
untuk paket tarif.
Contoh:
$ curl -H "Content-Type:application/json" -X POST -d \ '{ "ratePlan": [ { "id": "mypackage_rateplan1", "ratePlanDetails": [ { "currency": { "id": "usd" }, "duration": 1, "durationType": "MONTH", "meteringType": "UNIT", "organization" : { "id": "{org_name}", "paymentDueDays": "30", "ratePlanRates": [ { "rate": "1.99", "startUnit": "0", "type": "RATECARD" } ], "ratingParameter": "VOLUME", "type": "RATECARD" } ] } ] }' \ "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/monetization-packages/{package_id}/products/{product_id}" \ -u email:password
Menghapus produk API dari paket produk API
Untuk menghapus produk API dari paket produk API, keluarkan permintaan DELETE ke
organizations/{org_name}/monetization-packages/{package_id}/products/{product_id}
,
dengan {org_name}
menentukan nama organisasi Anda, {package_id}
menentukan nama paket produk API, dan {product_id}
menentukan ID produk
API.
Contoh:
$ curl -H "Accept:application/json" -X DELETE \ "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/monetization-packages/{package_id}/products/{product_id}" \ -u email:password
Melihat paket produk API menggunakan API
Anda dapat mengambil paket produk API tertentu atau semua paket produk API dalam organisasi. Anda juga dapat mengambil paket produk API yang memiliki transaksi dalam rentang tanggal tertentu, yaitu hanya paket yang penggunanya memanggil aplikasi yang mengakses API dalam paket tersebut dalam tanggal mulai dan akhir yang ditentukan.
Melihat paket produk API tertentu: Untuk mengambil paket produk API tertentu, kirimkan permintaan GET ke /organizations/{org_name}/monetization-packages/{package_id}
, dengan {package_id} adalah identifikasi paket produk API (ID ditampilkan dalam respons saat Anda membuat paket produk API). Contoh:
$ curl -H "Accept:application/json" -X GET \ "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/monetization-packages/payment_messaging_package" \ -u email:password
Melihat semua paket produk API: Untuk mengambil semua paket produk API untuk organisasi, kirim permintaan GET ke /organizations/{org_name}/monetization-packages
. Contoh:
$ curl -H "Accept:application/json" -X GET \ "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/monetization-packages" \ -u email:password
Anda dapat meneruskan parameter kueri berikut untuk memfilter hasil:
Parameter Kueri | Deskripsi |
---|---|
all |
Tanda yang menentukan apakah akan menampilkan semua paket produk API atau tidak. Jika ditetapkan ke false, jumlah paket produk API yang ditampilkan per halaman ditentukan oleh parameter kueri size . Nilai defaultnya adalah false. |
size |
Jumlah paket produk API yang ditampilkan per halaman. Default-nya adalah 20. Jika parameter kueri all ditetapkan ke true , parameter ini akan diabaikan. |
page |
Jumlah halaman yang ingin ditampilkan (jika konten diberi nomor halaman). Jika
parameter kueri all ditetapkan ke true , parameter
ini akan diabaikan. |
Respons untuk melihat semua paket produk API di organisasi akan terlihat seperti ini (hanya sebagian respons yang ditampilkan):
{ "monetizationPackage" : [ { "description" : "payment messaging package", "displayName" : "Payment Messaging Package", "id" : "payment_messaging_package", "name" : "Payment Messaging Package", "organization" : { ... }, "product" : [ { "customAtt1Name" : "user", "description" : "Messaging", "displayName" : "Messaging", "id" : "messaging", "name" : "messaging", "organization" : { ... }, "status" : "CREATED" }, { "customAtt1Name" : "user", "description" : "Payment", "displayName" : "Payment", "id" : "payment", "name" : "payment", "organization" : { ... }, "status" : "CREATED" } ], "status" : "CREATED" }, { "description" : "Communications", "displayName" : "Communications", "id" : "communications", "name" : "Communications", "organization" : { ... }, "product" : [ { "customAtt1Name" : "user", "description" : "Location", "displayName" : "Location", "id" : "location", "name" : "location", "organization" : { ... }, "status" : "CREATED" }, { "customAtt1Name" : "user", "description" : "Messaging", "displayName" : "Messaging", "id" : "messaging", "name" : "messaging", "organization" : { ... }, "status" : "CREATED" } ], "status" : "CREATED" }, { "description" : "Payment", "displayName" : "Payment", "id" : "payment", "name" : "Payment", "organization" : { ... }, "product" : [ { "customAtt1Name" : "user", "description" : "Payment", "displayName" : "Payment", "id" : "payment", "name" : "payment", "organization" : { ... }, "status" : "CREATED" } ], "status" : "CREATED" } ], "totalRecords" : 3 }
Melihat paket produk API dengan transaksi: Untuk mengambil paket produk API dengan transaksi dalam rentang tanggal tertentu, kirim permintaan GET ke /organizations/{org_name}/packages-with-transactions
. Saat mengajukan permintaan,
Anda harus menentukan tanggal mulai dan tanggal akhir untuk rentang tanggal sebagai parameter kueri. Misalnya, permintaan berikut mengambil paket produk API dengan transaksi selama bulan Agustus 2013.
$ curl -H "Accept:application/json" -X GET \ "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/packages-with-transactions?START_DATE=2013-08-01&END_DATE=2013-08-31" \ -u email:password
Responsnya akan terlihat seperti ini (hanya sebagian respons yang ditampilkan):
{ "monetizationPackage" : [ { "description" : "Payment Package", "displayName" : "Payment Package", "id" : "payment_package", "name" : "Payment Package", "organization" : { ... }, "product" : [ { "customAtt1Name" : "user", "customAtt2Name" : "response size", "customAtt3Name" : "content-length", "description" : "payment api product", "displayName" : "payment", "id" : "payment", "name" : "payment", "organization" : { ... }, "status" : "CREATED", "transactionSuccessCriteria" : "status == 'SUCCESS'" } ], "status" : "CREATED" }, { "description" : "messaging package", "displayName" : "Messaging Package", "id" : "messaging_package", "name" : "Messaging Package", "organization" : { ... }, "product" : [ { "customAtt1Name" : "user", "customAtt2Name" : "response size", "customAtt3Name" : "content-length", "description" : "messaging api product", "displayName" : "messaging", "id" : "messaging", "name" : "messaging", "organization" : { ... }, "status" : "CREATED", "transactionSuccessCriteria" : "status == 'SUCCESS'" } ], "status" : "CREATED" }, ... } ] }
Melihat paket produk API yang diterima oleh developer atau perusahaan yang menggunakan API
Lihat paket produk API yang diterima oleh developer atau perusahaan tertentu dengan masing-masing mengajukan permintaan GET ke API berikut:
/organizations/{org_name}/developers/{developer_id}/monetization-packages
, dengan {developer_id} adalah ID (alamat email) developer./organizations/{org_name}/companies/{company_id}/monetization-packages
, dengan {company_id} adalah ID perusahaan.
Saat mengajukan permintaan, Anda dapat secara opsional menentukan parameter kueri berikut:
Parameter Kueri | Deskripsi | Default |
---|---|---|
current |
Tanda yang menentukan apakah hanya akan mengambil paket produk API yang aktif (current=true ) atau semua
paket (current=false ). Semua paket tarif dalam paket aktif akan dianggap
tersedia. |
current=false |
allAvailable |
Tanda yang menentukan apakah akan mengambil semua paket produk API yang tersedia (allAvailable=true ) atau
hanya paket produk API yang tersedia khusus untuk developer atau perusahaan (allAvailable=false ).
Semua yang tersedia mengacu pada paket produk API yang tersedia untuk developer atau perusahaan yang ditentukan selain
developer atau perusahaan lain. Paket produk API yang tersedia khusus untuk perusahaan atau developer hanya berisi paket tarif yang tersedia secara eksklusif untuk perusahaan atau developer tersebut. |
allAvailable=true |
Misalnya, permintaan berikut mengambil semua paket produk API yang diterima oleh developer tertentu:
$ curl -H "Accept:application/json" -X GET \ "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/developers/dev1@myorg.com/monetization-packages" \ -u email:password
Permintaan berikut hanya mengambil paket API aktif yang diterima oleh perusahaan tertentu:
$ curl -H "Accept:application/json" -X GET \ "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/companies/myCompany/monetization-packages?current=true" \ -u email:password
Menghapus paket produk API menggunakan API
Anda dapat menghapus paket produk API hanya jika tidak memiliki paket tarif yang ditentukan.
Untuk menghapus paket produk API yang tidak memiliki paket tarif apa pun, kirim permintaan DELETE ke organizations/{org_name}/monetization-packages/{package_id}
, dengan {org_name}
menentukan nama organisasi Anda dan {package_id}
menentukan nama paket produk API.
Contoh:
$ curl -H "Accept:application/json" -X DELETE \ "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/monetization-packages/{package_id}" \ -u email:password
Properti konfigurasi paket produk API untuk API
Opsi konfigurasi paket produk API berikut diekspos ke API:
Nama | Deskripsi | Default | Wajib diisi? |
---|---|---|---|
description |
Deskripsi paket produk API. |
T/A | Ya |
displayName |
Nama yang akan ditampilkan untuk paket produk API (misalnya, dalam katalog paket API). |
T/A | Ya |
name |
Nama paket produk API. |
T/A | Ya |
organization |
Organisasi yang berisi paket produk API. |
T/A | Tidak |
product |
Array berisi satu atau beberapa produk dalam paket produk API. |
T/A | Tidak |
status |
Indikator status untuk paket produk API. Indikator status dapat memiliki salah satu nilai berikut: CREATED, ACTIVE, INACTIVE. |
T/A | Ya |