Pengantar produk API

Halaman ini berlaku untuk Apigee dan Apigee Hybrid.

Baca dokumentasi Apigee Edge.

Bagian berikut memperkenalkan produk API dan konsep terkait, seperti kuota dan kunci API.

Apa yang dimaksud dengan produk API?

Sebagai penyedia API, Anda membuat produk API untuk memaketkan API dan menyediakannya bagi developer aplikasi agar dapat digunakan. Anda dapat menganggap produk API sebagai lini produk.

Secara khusus, produk API menggabungkan satu atau beberapa operasi. Sebuah operasi menentukan proxy API dan jalur resource yang dapat diakses pada proxy tersebut. Operasi juga dapat membatasi akses berdasarkan metode HTTP dan kuota.

Produk API adalah mekanisme sentral untuk kontrol akses ke API Anda. Dengan menentukan satu atau beberapa produk API di aplikasi developer, Anda dapat membatasi akses ke proxy dengan kunci API. Di Apigee, kunci API disediakan, bukan untuk API itu sendiri, tetapi untuk produk API. Dengan kata lain, kunci API disediakan untuk paket operasi yang menentukan lini produk atau paket layanan tertentu.

Kasus penggunaan umum

Anda dapat membuat beberapa produk API yang berisi operasi untuk menangani kasus penggunaan tertentu. Misalnya, Anda dapat membuat produk API yang menggabungkan sejumlah operasi yang berisi resource pemetaan agar developer dapat mengintegrasikan peta ke dalam aplikasi dengan mudah.

Selain itu, Anda dapat menggunakan produk API untuk menentukan tingkat harga berdasarkan kriteria seperti:

Jumlah permintaan:

  • Premium: Permintaan tak terbatas per hari
  • Dasar: Hingga 1.000 permintaan per hari
  • Gratis: Hingga 100 permintaan per hari

Atau tingkat akses:

  • Premium: Membaca, menulis, memperbarui, dan menghapus
  • Dasar: Membaca dan memperbarui
  • Gratis: Hanya baca

Atau kombinasi dari hal di atas:

  • Premium Tambahan: Baca dan tulis tanpa batas waktu per hari
  • Premium: Membaca dan menulis hingga 1.000 permintaan per hari
  • Dasar: Akses baca dan tulis hingga 100 kali per hari
  • Gratis: Baca hingga 1.000 kali per hari
  • Gratis: Akses hanya baca dibatasi hingga 100 permintaan per hari

Persyaratan

Produk API yang merupakan bagian dari Bayar sesuai penggunaan harus mencakup:

Operasi

Operasi adalah sekelompok atribut yang membatasi akses ke satu atau beberapa proxy API berdasarkan kriteria seperti jalur resource, metode HTTP, dan kuota. Sebuah operasi menyertakan atribut berikut:

Atribut Wajib? Deskripsi
Proxy API Diperlukan Setiap grup operasi harus menetapkan proxy API. Hanya satu proxy yang diizinkan per grup operasi.
Layanan Jarak Jauh Tergantung Diperlukan hanya jika Anda menginstal dan berencana menggunakan Adaptor Apigee untuk Envoy.
Jalur resource Diperlukan Setiap grup operasi harus menentukan satu atau beberapa jalur resource. Jalur resource dalam suatu operasi membatasi akses ke resource tertentu pada proxy API. (Jalur resource adalah bagian dari URL permintaan proxy API yang muncul setelah jalur dasar proxy.)
Metode HTTP Opsional Anda juga dapat membatasi akses ke proxy dengan metode HTTP. Misalnya, jika Anda menentukan metode GET dan POST untuk sebuah grup operasi, maka hanya permintaan GET dan POST HTTP yang dapat mengakses proxy untuk jalur resource yang ditentukan. Jika tidak ada metode yang ditentukan, semua metode akan diizinkan.
Kuota Opsional Anda dapat menentukan kuota untuk grup operasi. Kuota yang ditentukan dalam grup operasi lebih diprioritaskan daripada kuota tingkat produk API, jika ditentukan.
Atribut khusus Opsional Atribut khusus berguna untuk metrik, pemantauan, atau kasus ketika Anda ingin menyimpan informasi tambahan dengan produk API yang dapat diakses atau diambil nanti. Atribut kustom yang terkait dengan operasi tersedia sebagai tambahan untuk atribut khusus level produk API mana pun dan dapat diakses di runtime sebagai variabel alur dengan awalan apiproduct.operation.attributes.

Kunci API

Saat mendaftarkan aplikasi developer di organisasi Anda, aplikasi tersebut harus dikaitkan dengan setidaknya satu produk API. Setelah suatu aplikasi disambungkan dengan satu atau beberapa produk API, Apigee menetapkan kunci konsumen unik ke aplikasi tersebut. Lihat juga Mengontrol akses ke API Anda dengan mendaftarkan aplikasi.

Kunci konsumen atau token akses berfungsi sebagai kredensial permintaan. Developer aplikasi menyematkan kunci konsumen ke dalam aplikasi, sehingga saat aplikasi membuat permintaan ke API yang dihosting oleh Apigee, aplikasi akan meneruskan kunci konsumen dalam permintaan dengan salah satu cara berikut:

  • Jika API menggunakan verifikasi kunci API, aplikasi harus meneruskan kunci konsumen secara langsung.
  • Jika API menggunakan verifikasi Token OAuth, aplikasi harus meneruskan token yang telah berasal dari kunci konsumen.

Penerapan kunci API tidak terjadi secara otomatis. Baik menggunakan kunci konsumen atau token OAuth sebagai kredensial permintaan, proxy API memvalidasi kredensial permintaan di proxy API Anda dengan menyertakan kebijakan VerifyAPIKey atau konfigurasi kebijakan VerifyAccessToken (lihat kebijakan OAuthv2) dalam alur yang sesuai. Jika Anda tidak menyertakan kebijakan penerapan kredensial di Proxy API, semua pemanggil dapat memanggil API Anda.

Untuk memverifikasi kredensial yang diteruskan dalam permintaan, Apigee melakukan langkah-langkah berikut:

  1. Mendapatkan kredensial yang diteruskan dengan permintaan. Dalam kasus verifikasi token OAuth, Apigee memverifikasi bahwa masa berlaku token belum habis, lalu mencari kunci konsumen yang digunakan untuk membuat token.
  2. Ambil daftar produk API yang dikaitkan dengan kunci konsumen.
  3. Pastikan bahwa Proxy API saat ini disertakan dalam Produk API, jika jalur resource saat ini (jalur URL) diaktifkan di Produk API dan, jika disertakan dalam produk, permintaan tersebut menggunakan kata kerja HTTP yang ditentukan.
  4. Verifikasi bahwa kuota, jika ditentukan belum terlampaui.
  5. Pastikan kunci konsumen belum habis masa berlakunya atau dicabut, periksa apakah aplikasi tidak dicabut, dan periksa apakah developer aplikasi aktif.

Jika semua pemeriksaan di atas lulus, verifikasi kredensial akan berhasil.

Pada intinya, Apigee otomatis menghasilkan kunci konsumen, tetapi penayang API harus menerapkan pemeriksaan kunci di proxy API menggunakan kebijakan yang sesuai.

Persetujuan kunci

Secara default, semua permintaan untuk mendapatkan kunci guna mengakses produk API dari aplikasi akan otomatis disetujui. Atau, Anda dapat mengonfigurasi produk API sehingga Anda harus menyetujui kunci secara manual. Setelan untuk ini dijelaskan dalam Mengelola produk API. Dalam hal ini, Anda harus menyetujui permintaan kunci dari aplikasi apa pun yang menambahkan produk API. Untuk mengetahui informasi selengkapnya, lihat Mengontrol akses ke API Anda dengan mendaftarkan aplikasi.

Kuota

Kuota dapat melindungi server backend Anda dari varian traffic yang tinggi dan membedakan lini produk Anda. Misalnya, Anda dapat menggabungkan resource dengan kuota tinggi sebagai produk premium, dan menggunakan paket yang sama dengan kuota lebih rendah sebagai produk dasar. Kuota dapat membantu melindungi server Anda dari kewalahan jika suatu produk populer dan menerima banyak permintaan dalam waktu singkat.

Anda dapat menentukan kuota yang berlaku untuk semua proxy API yang disertakan dengan produk API, atau menentukan kuota tingkat operasi. Kuota yang ditentukan dalam operasi lebih diprioritaskan daripada kuota yang ditetapkan pada level produk API.

Menetapkan batas kuota pada produk API tidak menerapkan kuota secara otomatis. Ini hanyalah batas default yang dapat dirujuk dalam kebijakan kuota. Berikut ini beberapa keuntungan menetapkan kuota pada produk untuk kebijakan kuota sebagai referensi:

  • Gunakan Kebijakan kuota untuk menerapkan setelan yang seragam di semua proxy API dalam produk API.
  • Jika Anda mengubah setelan kuota produk API saat runtime, kebijakan Kuota akan otomatis merujuk pada setelan kuota yang telah diperbarui.

Untuk informasi selengkapnya, lihat referensi berikut:

Cakupan OAuth

Anda dapat menentukan cakupan OAuth sebagai daftar yang dipisahkan koma yang harus ada dalam token akses yang terkait dengan produk. Untuk informasi selengkapnya tentang penggunaan cakupan dengan kebijakan OAuth Apigee, lihat Menggunakan cakupan OAuth2.

Tingkat akses

Ketika menentukan produk API, Anda dapat menetapkan tingkat akses berikut:

Tingkat Akses Deskripsi
Public Produk API yang tersedia untuk semua developer. Anda dapat menambahkannya ke portal developer terintegrasi atau berbasis Drupal.
Private atau Internal only Produk API yang didesain untuk penggunaan pribadi atau internal.

Untuk portal terintegrasi, Anda dapat menambahkan produk API Private atau Internal only dan menyediakannya untuk developer aplikasi, sesuai kebutuhan.

Untuk portal developer berbasis Drupal, Anda dapat mengelola akses ke produk API Private atau Internal only di portal developer, seperti yang dijelaskan di bagian berikut:

  • Untuk portal developer Drupal 10, Anda dapat mengonfigurasi akses ke produk API Private atau Internal only di portal developer, seperti yang dijelaskan dalam Mengonfigurasi izin akses ke produk API.
  • Untuk portal developer Drupal 7, Anda tidak dapat menambahkan produk API Private atau Internal only ke portal developer.

    Agar produk API Private atau Internal only tersedia bagi developer aplikasi, Anda harus menambahkannya secara manual ke aplikasi yang terdaftar dari UI atau API Apigee, seperti yang dijelaskan dalam Mengontrol akses ke API Anda dengan mendaftarkan aplikasi.

    Setelah ditambahkan, developer akan melihat produk API yang terkait dengan aplikasi di portal Anda, seperti yang dijelaskan dalam Mengelola produk API di aplikasi. Jika developer aplikasi menonaktifkan akses ke produk API yang berupa Private atau Internal only, produk API tersebut akan dihapus dari aplikasi dan harus ditambahkan kembali secara manual oleh administrator portal.