Selamat datang di BigBox

BigBox adalah sebuah market place yang menyediakan berbagai API dengan kapabilitas beragam, yang membantu para developer dan startup membangun new business opportunities dengan fokus pada time to market. Secara umum, BigBox membantu developer membangun ide dan mewujudkannya dalam sebuah konsep yang nyata.

Selain itu, BigBox juga hadir sebagai solusi platform dan analisis big data on-premise secara universal untuk enterprise. BigBox menghasilkan pemahaman mendalam (insight) yang sesuai dengan kebutuhan operasional dan bisnis perusahaan sehingga dapat mendukung dalam pengambilan keputusan, tata kelola, strategi, dan kemajuan perusahaan client kami.

Overview

API (application programming interface) adalah suatu interface, terdiri dari command, function, dan protocol, yang memungkinkan suatu aplikasi dapat berkomunikasi dengan aplikasi lainnya. API mendefinisikan suatu fungsi yang tersedia di dalamnya, bagaimanan cara menggunakannya, format apa yang harus digunakan, input apa yang harus diberikan, dan output apa yang akan didapat.

Gambar di atas memvisualisasikan konsep dari API, di mana API merupakan perantara antara aplikasi yang dijalankan pada desktop atau mobile device, dengan sebuah backend di tempat yang menyediakan fungsi atau kapabilitas tertentu. Antarmuka API akan menerima request dari aplikasi, kemudian meneruskannya ke API backend untuk diproses. Hasil pemrosesan akan dikembalikan ke aplikasi melalui antarmuka API yang sama.

Secara umum dapat dikatakan bahwa setiap kali aplikasi membutuhkan data atau ingin menjalankan suatu fungsi tertentu maka aplikasi tinggal melakukan API call ke penyedia API service.

Developer Problem

  • Kesulitan memperoleh layanan API yang ready to consume
  • Terbatasnya waktu pengembangan aplikasi dan proses integrasi
  • Terbatasnya layanan API yang tersedia secara self service

Mengapa API sangat penting?

Semakin hari aplikasi yang dikembangkan oleh para developer semakin kompleks. Akan menjadi tidak efisien apabila harus membangun keseluruhan fungsi sementara fungsi-fungsi tersebut sudah tersedia baik secara gratis maupun berbayar. Fokus pengembangan aplikasi tetaplah time-to-market sehingga para developer harus dapat berpikir strategis bahwa dalam pengembangan aplikasi fokus pada core function sedangkan fungsi-fungsi pendukung cukup gunakan modul yang sudah tersedia dalam bentuk Open API.

Sebagai jawaban atas permasalahan yang dihadapi oleh para developer maka BigBox hadir sebagai marketplace API atau repository yang memfasilitasi atau mempertemukan para pelaku bisnis, perusahaan, developer, startup untuk dapat menggunakan semua kapabilitas API berdasarkan kebutuhan pengembangan aplikasi, produk atau service, dalam sistem environment yang aman dan scalable.

Keuntungan dan manfaat yang dapat diperoleh oleh para stake holder adalah sebagai berikut: 

API Publisher

API Publisher atau API Producer merupakan pemilik kapabilitas di mana dengan mengekspos kapabilitas yang dimiliki tersebut akan dapat meningkatkan trafik utilisasi dan dapat menjadi revenue stream baru. Mereka juga tidak perlu repot untuk menyiapkan infrastruktur dan platform pengelolaan API karena seluruh urusan API management sudah ditangani oleh BigBox.

API Consumer

API consumer adalah para developer yang menggunakan API di mana mereka dapat lebih fokus mengembangkan aplikasi secara lebih efektif dengan memanfaatkan resource dari API service tanpa perlu membangun sendiri kapabilitas yang dibutuhkan tersebut.

User

User adalah pengguna aplikasi di mana pemanfaatan API service dapat memberikan kemudahan dan kelengkapan fitur suatu aplikasi yang dapat berbentuk aplikasi pada perangkat mobile maupun website. Jika user sudah nyaman menggunakan suatu aplikasi maka pada akhirnya dapat meningkatkan utilisasi trafik dari aplikasi tersebut.

API Basic Call

Seluruh API yang ada di BigBox dapat diakses dengan menggunakan API- Key. Authentication adalah proses konfirmasi bahwa pengakses memiliki hak akses untuk menggunakan API. Sebelumnya, untuk melakukan verifikasi hak akses, aplikasi menggunakan cookies yang berisi session ID dan tersimpan pada sisi server. Hal ini mengharuskan developer untuk menyediakan media penyimpanan yang bersifat unik untuk masing-masing server atau dengan kata lain bahwa untuk server yang berbeda maka session management-nya pun berbeda.

Metoda API-Key merupakan metoda yang didisain untuk mengatasi masalah penyimpanan session ID yang tidak dapat dilakukan dengan metoda cookies. Penggunaan API-Key dapat menurunkan beban server, pengelolaan hak akses yang lebih fleksible, dan mendukung sistem terdistribusi atau infrastruktur berbasis cloud.

Mainapi Basic Call

Seperti dapat dilihat pada diagram di atas, API-Key akan dibangkitkan ketika proses verifikasi credential berhasil. API-Key dapat berbasis username-password atau pasangan key-secret, dalam hal ini BigBox mendukung keduanya. Setelah user memperoleh API-Key dari hasil authentication maka API-Key tersebut selanjutnya digunakan untuk memanggil API.

HTTP REST

REST (Representational State Transfer) adalah seperangkat aturan yang memungkinkan sebuah aplikasi untuk mengakses resources secara terdistribusi. REST dapat mempertukarkan berbagai format penulisan seperti XML maupun JSON dan pada umumnya menggunakan protokol HTTP dalam mekanisme pertukaran datanya.

REST bersifat stateless dalam arti bahwa tidak perlu ada koneksi yang harus dijaga selama komunikasi berlangsung antara server dengan client. Proses komunikasi hanya menggunakan session yang hanya terbentuk ketika client mengirimkan request berdasarkan context tertentu hingga server membalas dengan response sebagai hasil permintaan dari client.

Karena sifatnya yang stateless maka pada setiap request, client perlu menambahkan informasi sebagai indikator status dari client. Informasi tersebut adalah API-Key yang harus di sisipkan pada header HTTP.

Seluruh API yang ada di BigBox hanya dapat diakses menggunakan REST dengan method HTTP yang didukung adalah:

GET: digunakan untuk mengambil resource berdasarkan query dan filter dari client.

PUT: digunakan untuk melakukan update atau memodifikasi resource yang sudah ada.

POST: digunakan untuk membuat resource baru.

DELETE: digunakan untuk menghapus resource.

Authorization

BigBox menggunakan API-Key Authentication sebagai authorization framework. Authorization diberikan dalam bentuk API-Key dimana API-Key diperoleh melalui proses yang di dalamnya menyertakan key dan secret. Pasangan kunci ini diperoleh user pada saat user melakukan registrasi pada website BigBox.

Semua request untuk mengakses API di BigBox harus menyertakan parameter Authorization pada HTTP header dengan format X-API-KEY: Value, bila tidak maka response yang akan diterima adalah 401 Unauthorized atau 403 Forbidden bila API-Keyinvalid.

Account

API resource di BigBox adalah resource terproteksi sehingga diperlukan pencatatan akses dan transaksi guna kepentingan audit trail dan traffic management. Oleh sebab itu untuk dapat menggunakan API di BigBox maka syarat mandatory yang harus dipenuhi adalah memiliki akun di BigBox. Namun untuk sekedar melakukan eksplorasi API dapat dilakukan tanpa harus memiliki akun. Beberapa benefit yang diperoleh dengan membuat akun di BigBox adalah sebagai berikut:

  • Mendapat hak akses untuk menggunakan API atau hanya sekedar melakukan try out melalui web console di web
    https://developer.thebigbox.id.
  • Dapat mengakses fitur account management dan melakukan segala aktivitas sebagai API consumer seperti create apps, subscribe/unsubscribe, API usage dashboard, billing transaction, update profile, dan lain-lain.
  • Berhak untuk ikut serta dalam program promo dan community event.

Membuat akun BigBox tidak dikenakan biaya apapun alias gratis. Pada saat melakukan registrasi akun di BigBox, sistem akan mengirimkan email yang berisi link aktivasi. Untuk itu perlu diingat bahwa alamat email yang didaftarkan harus valid dan benar-benar dapat diakses, kalau tidak maka akun yang didaftarkan tidak akan pernah aktif.