إنتقل إلى المحتوى الرئيسي

التوطين

طلب واحد، مفتاح واحد — اللغة تتبع الترويسة.

كيف يعمل

أرسل ترويسة Accept-Language مع كل طلب. يُعيد الـ API نفس بنية JSON مع حقول النص المُحلَّلة تعكس اختيار لغتك. لا توجد مفاتيح منفصلة name_ar / name_en في الاستجابة — مفتاح name يظهر دائماً، وقيمته باللغة المطلوبة.

قيمة الترويسةاللغة المُعادة
Accept-Language: en (الافتراضي)الإنجليزية
Accept-Language: arالعربية

إذا حُذفت الترويسة أو ضُبطت على لغة غير مدعومة، يعود الـ API إلى الإنجليزية.

الحقول المُحلَّلة حسب المورد

الموردالحقول المُحلَّلة
التلاوةname، description
القارئname، bio
الروايةname، bio
القراءةname
الناشرname

الموارد المرتبطة المدمجة (publisher.name، reciter.name، إلخ) داخل استجابة التلاوة مُحلَّلة أيضاً — تحصل على أسماء عربية في جميع أنحاء الحمولة بترويسة واحدة.

مثال

نفس واجهة /reciters/ مع قيمتين مختلفتين لـ Accept-Language:

# الإنجليزية (الافتراضي)
curl -H "Accept-Language: en" https://staging.api.cms.itqan.dev/reciters/

# العربية
curl -H "Accept-Language: ar" https://staging.api.cms.itqan.dev/reciters/

الاستجابة بالإنجليزية:

{
"count": 42,
"results": [
{ "id": 1, "name": "Mishary Rashid Alafasy", "bio": "...", "recitations_count": 5 }
]
}

الاستجابة بالعربية:

{
"count": 42,
"results": [
{ "id": 1, "name": "مشاري راشد العفاسي", "bio": "...", "recitations_count": 5 }
]
}

نفس id، نفس البنية — قيم النص فقط تختلف.


انظر أيضاً: مبادئ التصميم · تضمين الكائنات المرتبطة · معالجة الأخطاء