تخطَّ إلى المحتوى

الموسوعات

تضم الواجهة 12 موسوعة، منها الأحاديث، والأسئلة والأجوبة، والمصطلحات الإسلامية، وأسماء الله الحسنى، والأماكن، والتعريف بالإسلام. تتكون كل موسوعة من بطاقات تحتوي على حقول بلغة أو أكثر. ويمكن تصفية البطاقات حسب تصنيفاتها وخصائصها.

GET/enc
المعامل الحالة الوصف
lang اختياري يحسب عدد البطاقات المتاحة بهذه اللغة فقط. بدونه يحسب كل البطاقات.
نافذة طرفيّة
curl "https://islamenc.com/api/enc?lang=en"
[
{ "external_id": "101", "name": "موسوعة الأحاديث", "description": null, "cards_count": 839 },
{ "external_id": "102", "name": "موسوعة الأسئلة والأجوبة للمسلمين", "description": null, "cards_count": 0 },
{ "external_id": "105", "name": "موسوعة المصطلحات", "description": null, "cards_count": 0 }
]

عند استخدام lang، تعني القيمة 0 عدم وجود بطاقات باللغة المحددة. للحصول على العدد الكامل للبطاقات بالعربية، أرسل الطلب دون lang.

المعرّف الموسوعة
101 الأحاديث: الأكثر ترجمة، 839 بطاقة بلغات تصل إلى 67 لغة.
102 الأسئلة والأجوبة للمسلمين.
103 الأماكن.
104 أسماء الله الحسنى.
105، 109 المصطلحات الإسلامية.
108 الأنبياء والرسل.
110، 113، 114، 115، 116 التعريف بالإسلام: الأركان، والعقائد، والأسئلة الشائعة، والرسائل، وغيرها.
GET/enc/{encId}/cards
المعامل الحالة الوصف
page، limit اختياري تقسيم النتائج إلى صفحات. الحد الأقصى لـlimit هو 100. عند عدم تحديد page، تُرجع الاستجابة جميع البطاقات.
lang اختياري اللغة المطلوبة إلى جانب العربية. يُستخدم النص العربي عند عدم توفر الترجمة. إذا لم تحدد هذا المعامل، تُرجع الاستجابة النص العربي فقط.
translated اختياري 1: البطاقات المتاحة بلغة lang فقط.
fields اختياري أسماء الحقول المطلوبة، مفصولة بفواصل، مثل (عنوان الحديث,متن الحديث). تُرجع الاستجابة هذه الحقول فقط، مع إبقاء البطاقات التي لا تحتوي عليها ضمن النتائج. يقلل ذلك حجم الاستجابة الكاملة إلى الثلث.
category اختياري مفتاح تصنيف "<table>:<item>": البطاقات التابعة لهذا التصنيف أو لتصنيفاته الفرعية فقط.
prop اختياري شرط خاصية "<id>=<value>" (t40=40:1). يمكن تكراره للحصول على البطاقات التي تحقق جميع الشروط.

مع page:

نافذة طرفيّة
curl "https://islamenc.com/api/enc/101/cards?page=1&limit=2&lang=en"
{
"cards": [
{
"external_id": "14294",
"title": "لو أنكم كنتم توكلون على الله حق توكله لرزقكم كما يرزق الطير تغدو خماصا وتروح بطانا",
"is_hidden": false,
"categories": ["11:280", "11:3002", "11:5"],
"properties": { "t46": ["46:5", "46:6", "46:8", "46:9", "46:19"] },
"versions": [
{
"id": 2529,
"version_string": "2",
"sentences": [
{ "id": 35227, "field_name": "متن الحديث", "content": "«لَوْ أَنَّكُمْ كُنْتُمْ تَوَكَّلُونَ عَلَى اللهِ حَقَّ تَوَكُّلِهِ ...»", "language": "ar", "sentence_id": "7ad332b8-..." },
{ "id": 35228, "field_name": "Hadith text", "content": "If you were to rely on Allah as He should be relied on ...", "language": "en", "sentence_id": "7ad332b8-..." }
]
}
],
"displayed_properties": [
{ "id": "t11", "label": "التصنيف الشرعي", "values": [ { "key": "11:5", "name": "..." } ] }
]
}
],
"total": 839
}

عند عدم تحديد page، تكون الاستجابة مصفوفة من البطاقات مباشرة. يبلغ حجمها لموسوعة الأحاديث نحو 2.6 ميجابايت عند استخدام fields، و7.5 ميجابايت بدونه. تُرجع الواجهة هذه البيانات من ذاكرتها المؤقتة. استخدم هذا الأسلوب إذا كان تطبيقك يحتاج إلى جميع البطاقات في طلب واحد.

الحقل المعنى
versions[].sentences محتوى البطاقة. كل جملة حقل واحد بلغة واحدة. اربط الجملة العربية بترجمتها عبر sentence_id. حقول موسوعة الأحاديث: عنوان الحديث، بادئة الحديث، متن الحديث، درجة الحديث، التخريج، الشرح، الفوائد وغيرها. وتحمل الجملة المترجمة اسم الحقل مترجمًا أيضًا.
categories مفاتيح "<table>:<item>" وتشمل التصنيفات الأعلى. الأسماء من مسار التصنيفات.
properties مجموعة خصائص، لكل منها مفتاح يمثل معرّفها. تكون القيمة مفاتيح عناصر إذا كانت الخاصية مرتبطة بجدول (t46)، أو نصًا إذا كانت حرة (book، chapter).
displayed_properties الخصائص التي يعرضها الموقع لهذه البطاقة، بأسمائها الجاهزة للعرض وبترتيب العرض.
GET/enc/cards/{cardId}
المعامل الحالة الوصف
lang مطلوب اللغة المطلوبة إلى جانب العربية.
نافذة طرفيّة
curl "https://islamenc.com/api/enc/cards/7913?lang=en"

تتبع الاستجابة بنية البطاقة في القائمة، وتضيف الحقول التالية:

{
"external_id": "7913",
"encyclopedia": { "external_id": "101", "name": "موسوعة الأحاديث", "description": null },
"available_languages": ["ar", "am", "as", "bs", "en", "..."],
"versions": [ { "sentences": [ { "field_name": "...", "content": "...", "language": "en", "links": [] } ] } ],
"displayed_properties": [ ... ]
}

يحتوي sentences[].links على الروابط الداخلية التي اكتشفها الموقع في الجملة. وتكون هذه القائمة فارغة في أغلب الجمل.

GET/enc/{encId}/categories
المعامل الحالة الوصف
lang اختياري لغة أسماء التصنيفات، إذا توفرت ترجمتها.
translated اختياري 1: يحسب البطاقات المتاحة بلغة lang فقط.

يعرض تصنيفات الموسوعة في قائمة واحدة. يتضمن كل تصنيف معرّف التصنيف الأعلى (parent)، وعدد البطاقات التابعة له ولتصنيفاته الفرعية.

[
{ "key": "11:1", "name": "القرآن الكريم وعلومه", "parent": null, "count": 37 },
{ "key": "11:2", "name": "الحديث وعلومه", "parent": null, "count": 9 },
{ "key": "11:4", "name": "العقيدة", "parent": null, "count": 148 }
]

رقم الجدول قبل النقطتين يحدد الشجرة: 11 التصنيف الشرعي، 43 الموضوعات، 18 محاور التعريف بالإسلام. أرسل المفتاح في معامل category لقائمة البطاقات أو للبحث.

GET/enc/{encId}/properties
المعامل الحالة الوصف
lang اختياري اللغة المستخدمة لحساب أعداد البطاقات.
translated اختياري 1: يحسب البطاقات المتاحة بلغة lang فقط.

يعرض الخصائص المتاحة لتصفية بطاقات الموسوعة، مع قيمها وعدد البطاقات لكل قيمة. تتوفر قيم الخصائص الشجرية (tree: true) في مسار التصنيفات، وتظهر قيم بقية الخصائص في هذا المسار.

[
{ "id": "t11", "label": "التصنيف الشرعي", "table": 11, "tree": true },
{ "id": "t30", "label": "الفئة المستهدفة", "values": [ { "key": "30:33", "name": "المسلم", "count": 109 }, { "key": "30:34", "name": "غير مسلم", "count": 1 } ] },
{ "id": "t40", "label": "حجم المحتوى", "values": [ { "key": "40:1", "name": "مختصر", "count": 58 }, { "key": "40:2", "name": "متوسط", "count": 33 } ] }
]

للتصفية، استخدم prop=<id>=<key>: يعرض GET /enc/101/cards?page=1&limit=20&prop=t40=40:1 البطاقات المختصرة. كرّر prop لتطبيق أكثر من شرط.

GET/enc/{encId}/card-languages

يعرض اللغات المتاحة لكل بطاقة في الموسوعة، باستخدام معرّف البطاقة مفتاحًا (نحو 200 كيلوبايت لموسوعة الأحاديث).

{ "7913": ["ar", "am", "as", "bs", "en", "..."], "7914": ["ar", "en", "fr", "..."] }

مفردات موسوعة الأحاديث

Section titled “مفردات موسوعة الأحاديث”
GET/enc-meta
GET/enc-meta/{projectKey}
GET/enc-meta/{projectKey}/values

أسماء الحقول والقيم في موسوعة الأحاديث مترجمةً إلى أكثر من 100 لغة: أسماء الحقول، وأسماء الدرجات، وأسماء الكتب التي يُروى فيها الحديث. مجموعتان: hadeethenc لأسماء الحقول، وhadeethenc_meta لأسماء القيم. ويعرضهما GET /enc-meta مع عدد اللغات والعبارات في كل منهما.

المعامل الحالة الوصف
lang مطلوب اللغة المطلوبة. إذا لم تتوفر ترجمة العبارة بهذه اللغة، تُعرض بالإنجليزية، ثم بالعربية إذا لم تتوفر الإنجليزية. يوضح chain هذا الترتيب.
نافذة طرفيّة
curl "https://islamenc.com/api/enc-meta/hadeethenc_meta/values?lang=en"
{
"project_key": "hadeethenc_meta",
"language": "en",
"chain": ["en"],
"resolved_from": { "en": 120 },
"labels": { "attrib_7": "Narrated by Ibn Hibbaan", "attrib_11": "Narrated by Ibn Maajah" },
"values": [ { "key": "attrib_7", "ar": "رواه ابن حبان", "text": "Narrated by Ibn Hibbaan" } ]
}

يجعل /values النص العربي (ar) مفتاحًا لكل عبارة. استخدمه لعرض ترجمة درجة الحديث أو تخريجه بلغة القارئ.