QuranEnc.com API

Available translations

GET / https://quranenc.com/api/v1/translations/list/[[{language}]]/?localization={language_iso_code}

Description:  Lists available translations. If the optional path param {language} is provided (ISO code) the list is filtered to that language only.

language (optional path): Filter by a specific language ISO code (see available languages / iso codes). If omitted, all translations are returned.

localization (optional query): Defaults to en. Localizes "title" & "description" into the specified locale (see available locales)

Returns: JSON array of objects. Each object: "key", "language_iso_code", "version", "last_update" (timestamp), "title", "description" (localized).

Examples:
/api/v1/translations/list
/api/v1/translations/list/es (Spanish only, default English localization)
/api/v1/translations/list/es?localization=es (Spanish list localized in Spanish)

Sura translation

GET / https://quranenc.com/api/v1/translation/sura/{translation_key}/{sura_number}

Description:  Returns all ayat of a sura for the specified translation.

Parameters:

translation_key: Translation key (e.g. english_saheeh)

sura_number: 1–114

Returns: JSON array: each item has "sura", "aya", "translation", "footnotes".

Aya translation

GET / https://quranenc.com/api/v1/translation/aya/{translation_key}/{sura_number}/{aya_number}

Description:  Returns a single aya translation.

Parameters:

translation_key: Translation key

sura_number: 1–114

aya_number: 1–… (within sura)

Returns: JSON object: "sura", "aya", "translation", "footnotes".

Add a note

POST / https://quranenc.com/api/v1/translations/note

Description:  Submit a user note / feedback on a specific Aya translation.

Request body (JSON or form-data):

translation_key*: string

sura*: 1–114

aya*: 1–…

note*: string (content)

version: optional translation version

suggested_translation: optional alternative text

name: optional author name

email: optional author email

* required

Returns:
201: {"status":1}
400: {"status":0,"error":"Missing required parameters"}
500: {"status":0,"error":"Failed to save note"}

Example (JSON):

{
  "translation_key":"english_saheeh",
  "sura":1,
  "aya":7,
  "note":"This is my note",
  "version":"1.0.9",
  "name":"Mostafa",
  "email":"[email protected]"
}

Example (form-data):

translation_key=english_saheeh
sura=1
aya=7
note=This is my note
version=1.0.9
name=Mostafa
[email protected]