API Al-Quran Indonesia: 114 Surah JSON untuk Aplikasi Islami
Integrasi data 114 surah Al-Quran ke aplikasi Islami via REST API: daftar surah, detail ayat, nama Arab, Latin, dan arti. Tanpa scraping, satu API key.
Membangun aplikasi Al-Quran, widget ayat harian, atau fitur verifikasi teks surah biasanya berawal dari satu pertanyaan: dari mana datanya? Scraping situs ayat itu rapuh dan rawan salah ketik. API Al-Quran dari API Indonesia menyediakan data 114 surah lengkap dalam JSON siap pakai.
Data bersumber dari quran.gading.dev yang sudah rapi dan terstruktur: nomor surah, nama Arab, nama Latin, arti dalam Bahasa Indonesia, jumlah ayat, dan tempat turun (Makkiyah/Madaniyah). Karena datanya statis dan sudah terverifikasi, response cepat dan cocok untuk caching di sisi aplikasi.
Endpoint yang Dipakai
Base URL: https://use.apiindonesia.id/api/v1/quran
| Method | Endpoint | Keterangan |
|---|---|---|
| GET | /list-surah |
Daftar seluruh 114 surah, diurutkan berdasarkan nomor |
| GET | /surah/:id |
Detail satu surah berdasarkan nomor (1 sampai 114) |
Contoh Request dan Response
Ambil daftar semua surah:
curl "https://use.apiindonesia.id/api/v1/quran/list-surah" \
-H "x-api-key: aip_live_xxx"
Response (dipotong):
{
"data": [
{
"number": 1,
"name": "الفاتحة",
"latinName": "Al-Fatihah",
"meaning": "Pembukaan",
"numberOfVerses": 7,
"revelation": "Makkiyah"
}
]
}
Ambil detail satu surah, misalnya Al-Fatihah (nomor 1):
curl "https://use.apiindonesia.id/api/v1/quran/surah/1" \
-H "x-api-key: aip_live_xxx"
Contoh Integrasi JavaScript
Widget ayat acak untuk website sekolah atau aplikasi komunitas:
const API_KEY = process.env.API_INDONESIA_KEY;
const BASE = "https://use.apiindonesia.id/api/v1/quran";
async function getSurahList() {
const r = await fetch(`${BASE}/list-surah`, {
headers: { "x-api-key": API_KEY },
});
const j = await r.json();
return j.data;
}
async function getRandomAyat() {
const surahs = await getSurahList();
const random = surahs[Math.floor(Math.random() * surahs.length)];
const r = await fetch(`${BASE}/surah/${random.number}`, {
headers: { "x-api-key": API_KEY },
});
const j = await r.json();
return j.data;
}
Contoh Python untuk generate materi kajian mingguan:
import os, requests
BASE = "https://use.apiindonesia.id/api/v1/quran"
HEADERS = {"x-api-key": os.environ["API_INDONESIA_KEY"]}
def surah_detail(nomor: int):
r = requests.get(f"{BASE}/surah/{nomor}", headers=HEADERS)
r.raise_for_status()
return r.json()["data"]
# Print info Al-Baqarah
info = surah_detail(2)
print(info["latinName"], "-", info["meaning"], f"({info['numberOfVerses']} ayat)")
Use Case yang Cocok
- Aplikasi Al-Quran mobile dan web: list surah, navigasi per surah, jumlah ayat.
- Widget "ayat hari ini" di website masjid, pesantren, atau komunitas.
- Aplikasi kajian: generate materi harian atau mingguan secara otomatis.
- Verifikasi teks: cocokkan nama surah dan jumlah ayat di konten UGC.
Tips Implementasi
- Data surah tidak berubah, jadi aman di-cache lokal (localStorage/Redis) berhari-hari.
- Gabungkan dengan API Jadwal Sholat untuk aplikasi Islami lengkap: ayat setelah adzan.
- Pasangkan dengan API Kalender Hijriah untuk fitur "kajian malam ini" berdasarkan tanggal Hijriah.
- Mulai dari halaman produk API Al-Quran untuk lihat detail response field lengkap.
FAQ
Apakah termasuk audio murottal? Tidak, API ini menyediakan data teks dan metadata surah. Audio bisa Anda sambungkan dari penyedia terpisah.
Berapa batas gratisnya? 1.000 request per bulan di tier gratis, cukup untuk development dan aplikasi kecil.
Datanya dari mana? quran.gading.dev, dataset terbuka yang sudah umum dipakai aplikasi Islami.
