Tak dapat dipungkiri bahwa kehadiran Application Program Interface (API) telah memudahkan para developer untuk mengembangkan aplikasi, karena dengan adanya API, proses pembuatan aplikasi/perangkat lunak yang dulu harus dibuat dari nol, kini dapat dipermudah dengan cara menghubungkan aplikasi Anda ke lebih dari 20.000 program yang sudah siap digunakan. Namun, semakin banyak API yang Anda gunakan, berarti semakin tinggi juga resiko keamanan dan kelancaran system yang mungkin saja terjadi. Disitu lah Anda membutuhkan manajemen API, untuk memastikan API yang Anda sebar digunakan untuk fungsi yang seharusnya dan tidak dieksploitasi oleh oknum yang tidak bertanggung jawab. Untuk itu, i3 mengadakan sesi Q&A mengenai cara mengelola API dengan mengintegrasikan program 3scale pada API Anda pada 15 November lalu yang diikuti oleh para customer dan salah satu konsultan dari i3 yaitu Tobias Marsena.
Q: Apa itu API?
A: Application Programming Interface atau lebih sering disingkat API adalah sebuah penghubung antara dua aplikasi, dimana API berfungsi sebagai access point ke suatu database yang ada. Sebagai contoh, apabila Anda menggunakan aplikasi ataupun website online travel untuk membandingkan harga tiket pesawat, API maskapai akan ‘berinteraksi’ dengan jasa online travel tersebut untuk memberikan Anda informasi terbaru dan relevan.
Q: Apa itu 3Scale API Management?
A: 3Scale API Management adalah salah satu tool dari Red Hat yang dapat Anda gunakan untuk mengelola API secara efisien. Dengan tool tersebut, Anda bisa menggunakan API secara aman, memonitor dan membatasi penggunaan API agar tidak dieksploitasi, dan menjadikan API sebagai sumber pendapatan bisnis. 3Scale dapat diimplementasikan secara on-premise di atas OpenShift, di cloud sebagai Software as a Service (SaaS), ataupun hybrid. Adapun fitur-fitur yang dimiliki 3Scale adalah sebagai berikut:
• Access Control
3Scale mengamankan akses ke API backend dengan menggunakan autentikasi pada API Gateway. Terdapat beberapa opsi autentikasi yang bisa digunakan, antara lain App-key, App-id + App-key, atau Oauth 2.0.
• Rate Limiting
Membatasi jumlah penggunaan API menggunakan Application Plan. Aturan terkait pembatasan bisa dibedakan pada masing-masing endpoint. Aturan yang diatur adalah jumlah penggunaan endpoint selama periode tertentu.
• Analytics
Setiap penggunaan API melalui 3Scale bisa dimonitor menggunakan metric pada admin portal yang ada. Selain itu, admin juga bisa menyediakan alert kepada pengguna API ketika penggunaan API sudah mencapai batas tertentu sesuai plan yang digunakan.
• Developer Portal
3Scale menyediakan CMS agar para developer dapat membangun dan mengakses dokumentasi API yang ada di 3Scale. Dokumentasi API pada 3Scale berbasis Swagger 2.0.
• Monetization
Selain limiting, Application Plan juga menyediakan aturan harga untuk penggunaan API. Terdapat tiga payment gateway yang telah terintegrasi dengan 3Scale, yaitu Stripe, Braintree, dan Adyen.
Q: Selain 3Scale, apakah ada tool management API yang lain?
A: Tentunya ada tool management lain yang tersedia di pasaran, seperti Kong API berbasis open source atau Apigee dari Google. Namun, mereka berfokus pada pasar yang berbeda. Kong lebih berfokus kepada API aplikasi yang menganut model microservices, sedangkan Apigee berfokus pada API yang generik. Perlu diingat pula bahwa Apigee tidak dapat mendukung aplikasi yang di-containerized. Maka dari itu, apabila Anda telah menggunakan OpenShift, disarankan untuk menggunakan 3Scale.
Q: Apakah penggunaan tool management bisa digabungkan?
A: Sebenarnya tidak dianjurkan untuk menggabungkan tool management API yang berbeda, karena akan bersifat pengulangan, mengingat mereka memiliki fungsi yang sama, yaitu mengelola API. Namun, mereka memiliki target pasar dan karakteristik masing-masing, seperti yang sudah saya jelaskan sebelumnya.
Q: Dari segi bisnis adakah manfaat lain untuk penggunaan API, seperti memonetisasi API yang kita buat?
A: API sendiri dapat dimanfaatkan oleh bisnis untuk memonetisasi database yang dimiliki dengan membebankan biaya ke pengguna komersial untuk setiap akses ke database, Kita ambil contoh Google Maps API, apabila pengguna mengakses maps untuk keperluan pribadi yang notabenenya jarang digunakan maka akan gratis. Namun, untuk keperluan komersial seperti pada aplikasi Gojek atau Grab yang sangat tinggi intensitas penggunaannya, maka Google akan membebankan biaya pada perusahaan tersebut untuk setiap akses ke database yang Google miliki, dengan itu ada sisi monetisasi yang didapat oleh penyedia API dengan cara menjual akses ke database yang dimiliki.
Untuk monetisasi API itu sendiri bisa dalam berbagai bentuk seperti memberikan biaya penggunaan per endpoint (seperti pada contoh Google diatas), biaya pengaturan awal (setup fee) dan juga biaya berlangganan (subscription fee) yang dibebankan ke pengguna API tergantung dari jenis penggunaannya.
Memang benar, API membawa beberapa manfaat bagi developer dan bisnis. Namun, dengan begitu banyaknya akses tiap harinya, memonitor penggunaan API haruslah menjadi prioritas bagi bisnis agar API tidak dieksploitasi ataupun disalahgunakan. Untuk itulah penggunaan tool manajemen API seperti 3scale dapat sangat membantu untuk mengamankan sistem Anda, karena adanya proses autentikasi di setiap akses. Namun, tidak hanya berfungsi untuk mengamankan, 3scale juga dapat dimanfaatkan untuk mengelola backend yang nantinya bisa dimanfaatkan untuk memonetisasi database dan memberikan manfaat tambahan dari API itu sendiri untuk bisnis. Sebagai authorized partner dari Red Hat, i3 berkomitmen untuk selalu membantu memonitor dan mengamankan API Anda dari akses-akses ilegal.
Tentang i3
PT. Inovasi Informatika Indonesia (i3) dikenal sebagai perusahaan penyedia solusi dan layanan TI yang berfokus pada 7 pilar berikut: DevOps, Infrastructure, Middleware, Cloud, Application Integration, dan Data Management. i3 menyediakan layanan TI yang komprehensif, meliputi konsultasi, migrasi dan implementasi, pelatihan, troubleshooting, dan managed services. Untuk informasi lebih lanjut perihal layanan dan solusi yang ditawarkan, Anda dapat menghubungi kami melalui info@i-3.co.id.