Apa itu ekosistem API?

Tumbuhan dengan cabang-cabang yang saling terjalin

Penjelasan ekosistem API

Ekosistem API mengacu pada jaringan antarmuka pemrograman aplikasi (API) yang saling terhubung dan semua elemen yang terkait. Elemen-elemen tersebut termasuk tim yang membangun dan menerapkannya, pengembang yang menggunakannya, aplikasi, database, dan platform yang mengandalkan API untuk pertukaran data, portal pengembang, dan struktur keamanan serta tata kelola yang memfasilitasi integrasi yang aman dan berharga.

Fokus pada ekosistem API berguna baik sebagai bagian dari transformasi digital organisasi maupun dalam pembentukan strategi API dan model bisnis yang mengutamakan API. Dengan membangun ekosistem API sebagai pusat fokus, bukan hanya API itu sendiri, organisasi dapat menciptakan keuntungan strategis dan bisnis, termasuk pengalaman pengembang dan pelanggan yang lebih baik, pengurangan penyebaran API, keamanan TI yang lebih baik, dan peningkatan efisiensi pengembangan aplikasi.

Apa saja komponen utama dari ekosistem API?

Komponen kunci dari ekosistem API umumnya dapat dibagi menjadi tiga kategori utama: teknologi (API dan infrastruktur terkait), orang (penyedia, konsumen dan komunitas), dan tata kelola (standar, kebijakan, sistem pendukung dan aset.)

Teknologi: API dan infrastruktur pendukung

Ada beberapa komponen berbeda dari infrastruktur teknis ekosistem API, semuanya terhubung dengan berbagai cara seperti jaring laba-laba. API itu sendiri adalah rangkaian radial yang menghubungkan bagian-bagian web bersama-sama, sementara API Gateway, database, aplikasi dan layanan dan infrastruktur lainnya membentuk persimpangan, hub, dan bingkai web.

API

API adalah seperangkat aturan atau protokol yang memungkinkan program perangkat lunak untuk berkomunikasi satu sama lain untuk bertukar data, fitur, dan fungsionalitas. API memungkinkan pemilik aplikasi untuk secara sederhana dan aman membuat data dan layanan mereka tersedia untuk konsumen internal dan eksternal.

API makin penting bagi pengguna perusahaan saat ini; perusahaan memiliki rata-rata lebih dari 600 titik akhir API dalam produksi, dan seluruh bisnis dimulai sebagai API, termasuk perusahaan pemrosesan pembayaran, perusahaan pengayaan data email, dan perusahaan jasa keuangan.  

API gateway

Gateway API adalah lapisan perangkat lunak yang menyajikan titik masuk tunggal bagi klien (seperti aplikasi web atau seluler) untuk mengakses beberapa layanan backend, sekaligus mengelola interaksi klien/server.

API Gateway menerima panggilan API, kadang-kadang dikenal sebagai permintaan API, dan merutekan ke satu atau lebih layanan backend, tergantung pada sifat permintaan. Gateway kemudian mengompilasi data yang diminta dan memberikannya ke klien dalam satu respons. Gateway memungkinkan klien untuk mengirim kueri ke beberapa sumber daya dalam satu panggilan, daripada harus mengirim kueri ke beberapa titik akhir dengan beberapa panggilan.

Misalnya, API Gateway yang mengatur layanan dalam sistem perawatan kesehatan mungkin memungkinkan aplikasi untuk menarik data dari berbagai sumerb daya—seperti catatan medis pasien, riwayat pembayaran, dan penjadwalan saat ini—dengan satu panggilan API.

Gateway API juga memusatkan tugas-tugas penting lainnya, seperti:

  • Penyeimbangan beban: mendistribusikan lalu lintas untuk mencegah kelebihan beban pada satu server.

  • Pembatasan jumlah: membatasi jumlah permintaan per pengguna untuk mengurangi risiko jenis serangan tertentu, seperti serangan denial-of-service terdistribusi (serangan DDoS), yang mengandalkan kelebihan lalu lintas untuk membanjiri protokol keamanan.

  • Autentikasi: menggunakan metode verifikasi dan protokol seperti OAuth (Otorisasi Terbuka) untuk menetapkan token akses, memungkinkan akses sementara dan spesifik.

Basis Data

Database adalah bagian integral dari ekosistem API—mereka menyimpan data mentah yang dibutuhkan aplikasi untuk berfungsi. API berfungsi sebagai perantara dan dengan demikian memungkinkan aplikasi untuk berinteraksi dengan database dengan cara yang stabil dan aman. API menyediakan antarmuka yang memungkinkan aplikasi melakukan operasi—seperti membuat, membaca, memperbarui, atau menghapus (CRUD)—dalam database.

API juga menyediakan lapisan keamanan dengan mengautentikasi dan memvalidasi akses untuk membantu memastikan bahwa sumber daya hanya dapat diakses oleh klien yang berwenang untuk melakukannya. Dan API membawa interoperabilitas ke sistem, memungkinkan aplikasi yang ditulis dalam bahasa pemrograman yang berbeda atau dibangun di platform yang berbeda untuk mengakses database yang sama.

Aplikasi dan layanan

Aplikasi adalah front end teknologi dari seluruh ekosistem API; pengguna, baik digital atau manusia, akan berinteraksi dengan aplikasi, seperti aplikasi mobile, aplikasi web, atau aplikasi desktop, (bukan berinteraksi dengan API itu sendiri).

Di dalam aplikasi, pengguna dapat memilih tindakan yang mengharuskan aplikasi untuk menjangkau sumber eksternal agar data atau layanan dapat menyelesaikan tindakan. Pertukaran ini diselesaikan melalui API. Permintaan, sering disebut sebagai panggilan atau kueri API, dikirim ke API, yang merutekan permintaan ke layanan back end yang bertanggung jawab atas sumber daya yang diminta. Data yang diminta kemudian diberikan ke klien melalui API.

Layanan mikro

Layanan mikro, atau arsitektur layanan mikro, adalah pendekatan untuk membangun aplikasi yang memecah aplikasi menjadi banyak layanan independen yang berbeda yang dapat dibangun dan dioperasikan secara terpisah. Layanan mikro bukanlah “layanan kecil,” tetapi pendekatan arsitektur untuk mengintegrasikan banyak layanan dalam satu aplikasi. Layanan mikro berguna karena fleksibilitasnya, memungkinkan layanan untuk diskalakan dan digunakan kembali secara independen.

Semua layanan ini bekerja bersama, sering berkomunikasi melalui API atau melalui rangkaian layanan. API juga digunakan untuk menghubungkan layanan mikro ke aplikasi dan sistem eksternal, memungkinkan interoperabilitas dan integrasi yang lancar.

Dalam banyak kasus, API Gateway digunakan di depan layanan ini untuk mengirimkan permintaan API yang masuk, merutekan ke layanan (atau beberapa layanan) yang sesuai, dan memberikan jawaban ke klien dalam satu respons komprehensif.

Pipeline CI/CD

Pipeline Integrasi Berkelanjutan/Pengiriman Berkelanjutan (CI/CD) adalah bagian dari ekosistem tersebut karena pipeline ini sering digunakan untuk mengembangkan, menerapkan, dan memperbarui API.

Pipeline CI/CD adalah alur kerja yang mengotomatiskan proses penulisan, integrasi, pengujian, dan penerapan kode. Pengembang dapat secara mandiri menulis kode, melacak perubahan dengan alat seperti Git, dan kode beralih secara otomatis melalui pipeline untuk pengujian dan validasi. Kode yang divalidasi kemudian diintegrasikan ke dalam lingkungan pengujian atau repositori seperti GitHub. Pipeline CI/CD adalah cara untuk mengurangi waktu pengembangan API atau perangkat lunak, mengurangi biaya, mendeteksi kesalahan lebih awal, dan meningkatkan kolaborasi tim.

Pipeline CI/CD tidak terlihat oleh pengguna akhir; ini adalah metodologi umum yang digunakan untuk mengalihkan kode dari pengembangan ke penerapan dan terus meningkatkan perangkat lunak dan API melalui pembaruan rutin.

Portal pengembang

Portal pengembang adalah hub yang berisi semua yang mungkin diperlukan pengembang untuk memahami, menggunakan, mengintegrasikan, dan mengoptimalkan API. Ini adalah bagian mendasar dari ekosistem API secara keseluruhan. Portal pengembang biasanya mencakup sebagian besar atau semua hal berikut:

  • Dokumentasi API: Repositori semua titik akhir API, metode HTTP dan parameter permintaan, kode kesalahan, contoh permintaan dan respons, kredentif autentikasi, dan informasi lain tentang API.

  • Panduan dan tutorial: Pilihan dokumen bermanfaat untuk memulai, sering kali termasuk contoh dan praktik terbaik.

  • Alat interaktif: Sarana eksperimen atau sandbox tempat pengembang dapat mencoba API tanpa harus menulis kode apa pun.

  • Analytics: Dasbor bagi pengembang untuk melacak penggunaan API mereka, termasuk volume panggilan, waktu respons, batas tarif, kuota penggunaan, dan metrik lainnya.

  • Dukungan: Pilihan dokumen yang berguna seperti FAQ, log perubahan, white paper, webinar, catatan rilis, dan informasi kontak.
Platform API Management

Platform API Management itu seperti versi internal dari portal pengembang versi eksternal. Sistem manajemen API menawarkan kontrol untuk tim yang bertanggung jawab atas pengawasan API, dengan alat untuk menerapkan dan menyiapkan penghentian sepanjang siklus hidup API, mengelola lalu lintas, melacak kesalahan, menegakkan kebijakan keamanan dan tata kelola, dan, sering kali, mengelola penagihan dan langganan.

Orang: Penyedia layanan, konsumen, komunitas

Elemen manusia dari ekosistem API juga dapat dibagi menjadi tiga kelompok:

Penyedia

Penyedia API adalah orang dan tim yang bertanggung jawab untuk membuat dan menerbitkan API di inti ekosistem. Mereka mungkin termasuk:

  • Pengembang yang memilih kerangka kerja, menulis kode, membuat, mengonfigurasi dan membangun titik akhir API, dan menemukan dan memperbaiki bug, serta tugas-tugas lainnya.

  • Manajer produk yang mengarahkan tim pengembangan API, menanyakan dan menjawab pertanyaan besar, seperti, “Untuk siapa ini?” “Apa yang harus dilakukan API ini?” “Bagaimana API ini cocok dengan lingkungan TI kita yang ada?” dan “Fitur apa yang harus dimilikinya?” Manajer produk API sering mengelola kemitraan dan beroperasi sebagai penghubung antara pengembang dan pemangku kepentingan lainnya.

  • Insinyur DevOps yang membantu membangun dan mengotomatiskan pipeline integrasi berkelanjutan/pengiriman berkelanjutan (CI/CD), alur kerja DevOps otomatis yang digunakan untuk merampingkan pengiriman, pengujian, dan pengoptimalan API.

  • Insinyur keamanan yang mengkhususkan diri dalam perlindungan terhadap pelanggaran data dan ancaman keamanan lainnya. API dirancang untuk mengekspos data, meskipun dengan cara terbatas, yang menjadikannya vektor umum untuk serangan. Insinyur keamanan API memainkan peran penting dalam mengamankan API dan aplikasi serta sistem yang mereka hubungkan.

Konsumen

Ini adalah pengembang yang menggunakan API untuk mengintegrasikan aplikasi dan sistem dan membangun produk dan layanan baru. Konsumen API adalah bagian penting dari ekosistem—lagi pula, kohort inilah yang dirancang untuk dilayani oleh API.

Konsumen dapat berupa pihak internal, bagian dari organisasi yang sama yang menyediakan API, pihak eksternal dengan akses terbatas, atau konsumen publik dengan akses penuh. Desain dan dokumentasi API mungkin berbeda tergantung pada siapa pengguna yang dituju.

Misalnya, pengalaman pengguna yang mampu memahami secara mandiri dapat bermanfaat bagi API publik, karena organisasi penyedia mungkin lebih suka mengurangi kebutuhan akan pemecahan masalah dan dukungan ekstensif.

Komunitas

Khusus untuk API publik, komunitas—kelompok yang lebih luas yang terdiri dari konsumen dan pemangku kepentingan lainnya—dapat menjadi bagian penting dari ekosistem API secara keseluruhan. Komunitas biasanya terdiri dari pengembang internal, kontributor sumber terbuka dan penghobi, mitra bisnis, dan pengguna sehari-hari aplikasi yang mengandalkan API untuk mengakses data atau layanan. Komunitas dapat memainkan peran dalam meningkatkan dan melakukan inovasi API dengan:

  • Membuat atau menemukan contoh penggunaan baru untuk API

  • Memantau, menemukan bug, kesalahan, atau peluang untuk perbaikan

  • Membuat sistem dukungan dan dokumentasi ad-hoc pada platform seperti Reddit, Stack Overflow, dan GitHub

  • Membantu memperkuat dan terus menjaga praktik terbaik dan standar lainnya

  • Mempromosikan API ke pengembang, pengguna, dan pelanggan lain

Tata kelola API

Tata kelola API mengacu pada standar, kebijakan, dan praktik yang mengarahkan bagaimana organisasi mengembangkan, menerapkan, dan menggunakan API-nya. Tujuan menciptakan tata kelola API adalah untuk mendorong konsistensi, keandalan, keamanan, dan efisiensi.

Tata kelola API mungkin mencakup panduan gaya, kebijakan keamanan, konvensi penamaan, strategi pembuatan versi, standar kualitas, kebijakan insiden dan tanggap bencana, dan banyak lagi. Untuk banyak industri, termasuk perawatan kesehatan, tata kelola juga mencakup keputusan terkait kepatuhan hukum, seperti persyaratan HIPAA atau peraturan khusus industri atau wilayah lainnya.

Manfaat ekosistem API yang kuat

Ekosistem API yang sukses memberikan manfaat yang signifikan bagi perusahaan dan pengembang:

Manfaat bagi perusahaan

  • Inovasi yang lebih cepat: Perusahaan dapat mengembangkan layanan yang sudah ada, sehingga mempercepat waktu peluncuran untuk produk baru.

  • Jangkauan yang lebih luas: Pengembang pihak ketiga membuat integrasi yang memperkenalkan layanan perusahaan ke platform dan pengguna baru.

  • Mitigasi penyebaran API: Pustaka API yang terorganisir dan dokumentasi yang menyertainya membantu tim untuk menemukan dan menggunakan layanan yang ada, mencegah pembuatan layanan dan API yang berlebihan.

  • Nilai bisnis dan monetisasi: API dapat menjadi penghasil laba melalui biaya penggunaan, tingkatan premium, atau dengan mendorong adopsi produk inti.

  • Peningkatan keamanan: Ekosistem API yang efektif mempertahankan penegakan standar dan protokol keamanan API yang konsisten, seperti penggunaan OAuth. Manajemen ekosistem yang kuat membantu mengurangi pembuatan API bayangan—API ad-hoc yang dibangun tanpa pertimbangan atau bahkan pengakuan dari tim TI.

  • Keunggulan kompetitif dan efek jaringan: Integrasi API perusahaan oleh pengembang eksternal mendorong biaya peralihan dan menciptakan efek keterkaitan dan penguncian. Makin banyak pengembang membangun platform, makin berharga platform tersebut, sehingga menciptakan siklus penguatan diri yang sulit diatasi oleh pesaing.

Manfaat bagi pengembang

  • Mengurangi kompleksitas: Akses fungsionalitas yang canggih melalui antarmuka yang sederhana tanpa keahlian domain yang mendalam.

  • Fokus pada diferensiasi: Fokus pada penciptaan fitur unik daripada infrastruktur komoditas.

  • Kemudahan komposisi: Memanfaatkan layanan dari penyedia yang berbeda untuk membuat aplikasi baru yang inovatif.

  • Fleksibilitas karier: Mentransfer keterampilan dengan API populer di seluruh perusahaan dan proyek.
Dan Nosowitz

Staff Writer, Automation & ITOps

IBM Think

Michael Goodwin

Staff Editor, Automation & ITOps

IBM Think

Solusi terkait
IBM API Connect

Mengembangkan, mengelola, mengamankan, dan mensosialisasikan semua jenis antarmuka pemrograman aplikasi (API) Anda dengan lancar, di mana pun mereka berada.

Jelajahi API Connect
Solusi integrasi IBM

Berdayakan bisnis Anda melalui konektivitas dan otomatisasi yang mulus dengan perangkat lunak platform integrasi.

Jelajahi solusi integrasi IBM
Layanan konsultasi cloud

Buka potensi penuh hybrid cloud di era AI agen.

Jelajahi konsultasi cloud
Ambil langkah selanjutnya

IBM API Connect mendukung semua jenis antarmuka pemrograman aplikasi (API) modern sekaligus meningkatkan keamanan dan tata kelola. Kemampuan AI Generatif (Gen AI) mengotomatiskan tugas manual, menghemat waktu, dan membantu memastikan kualitas. 

  1. Jelajahi IBM API Connect
  2. Jelajahi solusi integrasi IBM®