HouseMuslim
Referensi API

Al-Qur'an

Surah, ayat, terjemahan multibahasa, kata per kata (8 bahasa), tafsir, audio per qari, dan pencarian — semuanya publik dan hanya-baca.

Semua endpoint Al-Qur'an berada di bawah /api/v1/quran dan bersifat publik.

Daftar surah

GET /quran/surahs
GET/quran/surahsLangsung
GET /quran/surahs
curl "https://api.housemuslim.org/api/v1/quran/surahs"
const res = await fetch('https://api.housemuslim.org/api/v1/quran/surahs');
const { data } = await res.json();
console.log(data[0].name_latin); // Al-Fatihah
{
  "success": true,
  "data": [
    {
      "id": 1,
      "name_arabic": "الفاتحة",
      "name_latin": "Al-Fatihah",
      "name_translation": "Pembukaan",
      "revelation_type": "makki",
      "ayah_count": 7
    }
  ]
}

Detail surah — terjemahan & kata per kata

GET /quran/surahs/{id}

Ini endpoint utamanya: mengembalikan ayat dan dapat menyertakan terjemahan, kata per kata, tafsir, serta markup tajwid dalam satu panggilan.

Parameter kueri

ParamDescription
page, per_pageMembagi ayat ke dalam halaman
tajweedtrue → sertakan markup text_tajweed
translationsID resource terjemahan dipisah koma (mis. 33 = Kemenag)
tlangBahasa terjemahan dipisah koma (mis. indonesian,english)
tafsirID resource tafsir dipisah koma
wordstrue → sertakan kata per kata
word_langBahasa kata per kata: id,en,ur,bn,tr,fa,hi,ta

Menemukan ID resource

Gunakan GET /quran/translations dan GET /quran/tafsirs untuk mendaftar nilai resource_id. Terjemahan yang umum disertakan antara lain 33 Indonesia (Kemenag), 134 Indonesia (King Fahad), 20 Inggris (Sahih International), 22 Inggris (Yusuf Ali), dan 85 Inggris (Abdel Haleem). Kirim beberapa sekaligus, mis. translations=33,20.

GET/quran/surahs/{id}Langsung
GET /quran/surahs/1?per_page=1&translations=33&words=true&word_lang=id&tajweed=false

Setiap ayat kemudian membawa translations[] dan words[]:

curl "https://api.housemuslim.org/api/v1/quran/surahs/1?per_page=1&words=true&word_lang=id&translations=33"
const params = new URLSearchParams({
  per_page: '1', words: 'true', word_lang: 'id', translations: '33',
});
const res = await fetch(`https://api.housemuslim.org/api/v1/quran/surahs/1?${params}`);
const { data } = await res.json();
const ayah = data.ayahs[0];
console.log(ayah.translations[0].text, ayah.words[0].translation);
{
  "id": 1,
  "surah_id": 1,
  "number_in_surah": 1,
  "juz": 1,
  "page": 1,
  "text_uthmani": "بِسْمِ ٱللَّهِ ٱلرَّحْمَـٰنِ ٱلرَّحِيمِ",
  "translations": [
    {
      "ayah_id": 1,
      "resource_id": 33,
      "language": "indonesian",
      "source": "Indonesian Islamic Affairs Ministry",
      "text": "Dengan nama Allah Yang Maha Pengasih, Maha Penyayang."
    }
  ],
  "words": [
    { "position": 1, "text_arabic": "بِسْمِ", "translation": "dengan nama", "transliteration": "bis'mi" },
    { "position": 2, "text_arabic": "ٱللَّهِ", "translation": "Allah", "transliteration": "l-lahi" },
    { "position": 3, "text_arabic": "ٱلرَّحْمَـٰنِ", "translation": "Maha Pengasih", "transliteration": "l-raḥmāni" }
  ]
}

Kata per kata bersifat multibahasa

Satu kata yang sama membawa translation untuk tiap bahasa. Ganti word_lang pada playground di atas untuk melihat bahasa Indonesia, Inggris, Urdu, Bengali, Turki, Persia, Hindi, atau Tamil.

Resource terjemahan & tafsir

GET /quran/translations
GET /quran/tafsirs
GET/quran/translationsLangsung
GET /quran/translations
curl "https://api.housemuslim.org/api/v1/quran/translations"
const res = await fetch('https://api.housemuslim.org/api/v1/quran/translations');
const { data } = await res.json();
const indonesian = data.filter((t) => t.language === 'indonesian');
{
  "success": true,
  "data": [
    { "resource_id": 33, "language": "indonesian", "source": "Indonesian Islamic Affairs Ministry" },
    { "resource_id": 131, "language": "english", "source": "Dr. Mustafa Khattab, The Clear Qur'an" }
  ]
}

Audio

GET /quran/audio?reciter={id}&surah={id}

GET /quran/reciters mendaftar para qari ({ id, name, style, audio_base_url }). Responsnya berupa array { ayah_id, reciter_id, url }.

GET/quran/audioLangsung
GET /quran/audio?reciter=1&surah=1

Pencarian

GET /quran/search?q={query}&lang={lang}
GET/quran/searchLangsung
GET /quran/search?q=rahman&lang=id&page=1

Pembacaan lain

EndpointDescription
GET /quran/ayahs/{id}Satu ayat berdasarkan ID global
GET /quran/juz/{n}Semua ayat dalam Juz n (1–30)
GET /quran/page/{n}Semua ayat pada Halaman Mushaf n
GET /quran/recitersDaftar qari yang tersedia

Di halaman ini