
Apa Itu Hasura? Solusi API Instan untuk Perusahaan Modern
Apa Itu Hasura?
Hasura adalah platform open source yang memungkinkan perusahaan membangun API secara instan dan otomatis dari database mereka, baik yang baru maupun yang sudah ada. Dengan Hasura, Anda dapat menghubungkan database seperti PostgreSQL, SQL Server, BigQuery, Snowflake, MySQL, dan Oracle, lalu langsung mendapatkan API GraphQL atau REST yang siap digunakan di lingkungan produksi, tanpa perlu menulis kode backend secara manual.
Fitur Utama Hasura
- Instant API: Otomatis menghasilkan API GraphQL dan REST dari model data di database Anda hanya dalam hitungan menit.
- Dukungan Multi-Database: Mendukung berbagai jenis database populer, sehingga cocok untuk arsitektur data modern yang terdistribusi.
- CRUD Otomatis: Membuat endpoint CRUD (Create, Read, Update, Delete) secara otomatis dari struktur database.
- Realtime & Subscriptions: Mendukung query real-time melalui GraphQL subscriptions, sehingga aplikasi dapat merespons perubahan data secara langsung.
- Otorisasi Tingkat Lanjut: Memiliki mesin otorisasi yang memungkinkan aturan akses berbasis peran (role-based access control) hingga tingkat baris data (row-level authorization).
- Integrasi Otentikasi: Mudah diintegrasikan dengan sistem otentikasi yang sudah ada, termasuk JWT dan webhook kustom.
- Kinerja Tinggi: API yang dihasilkan sangat cepat, berkat caching query, query yang sudah dipersiapkan, dan optimisasi arsitektural lainnya.
- Event Engine: Mendukung event-driven architecture untuk menjalankan logika bisnis eksternal seperti webhook atau serverless function saat terjadi perubahan data.
- Unified Data Access Layer: Menggabungkan berbagai sumber data (database, REST API, GraphQL API lain) ke dalam satu endpoint API terpadu.
Manfaat untuk Perusahaan Modern
- Pengembangan API 10x Lebih Cepat: Menghemat waktu dan biaya pengembangan backend karena API dihasilkan secara otomatis dari database.
- Skalabilitas Otomatis: Dengan Hasura Cloud, aplikasi dapat diskalakan secara otomatis tanpa intervensi manual.
- Mudah Diadopsi Bertahap: Bisa diintegrasikan secara bertahap ke sistem yang sudah ada, tanpa perlu migrasi besar-besaran.
- Keamanan Data: Otorisasi dan audit akses data terintegrasi langsung di level API, memudahkan pengawasan dan kepatuhan.
- Fleksibel untuk Berbagai Kebutuhan: Cocok untuk API publik, internal, maupun eksternal dengan kontrol akses yang granular.
Cara Kerja Hasura
- Koneksi ke Database: Hubungkan Hasura ke database Anda.
- Otomatisasi API: Hasura membaca skema database dan secara otomatis membuat endpoint GraphQL/REST.
- Pengaturan Otorisasi: Atur aturan akses berbasis peran atau atribut pengguna langsung dari antarmuka Hasura.
- Integrasi Lanjutan: Tambahkan logika bisnis khusus melalui Actions, event triggers, atau gabungkan dengan API eksternal lainnya.
Cara Menghubungkan Hasura dengan Database Anda
Hasura dapat dihubungkan ke berbagai database seperti PostgreSQL, SQL Server, MySQL, dan lainnya, baik di Hasura Cloud maupun instalasi lokal (Docker, bare-metal, dsb). Berikut langkah-langkah umumnya:
1. Melalui Hasura Cloud
- Buka Hasura Console: Setelah membuat project di Hasura Cloud, klik tombol Launch Console.

2. Navigasi ke Menu Data: Pada sidebar, pilih tab Data.

3. Pilih “Connect Database”: Klik tombol Manage lalu pilih Connect Database.

4. Masukkan Detail Koneksi:
a. Jika ingin membuat database baru (misal PostgreSQL di Neon), pilih opsi Create New Database dan ikuti instruksi.
b. Jika sudah punya database sendiri, pilih Connect Existing Database dan masukkan Database URL (connection string) atau parameter koneksi yang sesuai.
5. Simpan dan Hubungkan: Setelah mengisi detail, klik Connect Database. Database Anda kini terhubung ke Hasura dan siap digunakan.

2. Melalui Instalasi Lokal (Docker, Bare-metal, dsb)
- Akses Hasura Console: Buka browser ke alamat Hasura Anda, misal http://localhost:8080.
- Masuk ke Tab Data: Pilih tab Data.
- Klik “Connect Database”: Masukkan nama database, pilih tipe database, dan isi detail koneksi (bisa menggunakan connection string seperti postgresql://username:password@host:port/dbname).
- Klik Connect Database: Database akan langsung terhubung ke Hasura.

3. Menggunakan CLI atau Metadata File
- Anda juga bisa menambahkan database melalui file metadata (databases.yaml) atau API Metadata Hasura, cocok untuk kebutuhan deployment otomatis atau CI/CD.
4. Tips Keamanan
- Gunakan Environment Variable: Untuk keamanan, sebaiknya simpan connection string di environment variable dan referensikan di Hasura, bukan menulis langsung di metadata. Ini mencegah detail koneksi terekspos di metadata Hasura.
Contoh Connection String PostgreSQL
text
postgresql://username:password@host:port/dbname
Misal:
text
postgresql://postgres:mysecretpassword@localhost:5432/hasura
Untuk database lain, sesuaikan format connection string-nya sesuai dokumentasi database terkait.
Kesimpulan
Hasura adalah solusi API instan yang sangat relevan untuk perusahaan modern yang ingin mempercepat pengembangan aplikasi, meningkatkan keamanan data, dan mengoptimalkan integrasi antar sistem. Dengan kemampuan untuk menghasilkan API real-time, otorisasi granular, dan dukungan multi-database, Hasura membantu tim IT dan developer fokus pada logika bisnis, bukan pada kerumitan membangun dan memelihara API secara manual.
Source:
https://hasura.io/docs/promptql/index/