توثيق واجهة برمجة التطبيقات API للبحث عن الترجمات (نسخة تجريبية)
نظرة عامة
تتيح واجهة برمجة التطبيقات API للبحث عن الترجمات للمستخدمين البحث عن ترجمات الأفلام والبرامج التلفزيونية بناءً على معايير مختلفة مثل اسم الفيلم واسم الملف ومعرفات محددة (IMDB، TMDB، SubDL) وأرقام المواسم والحلقات والنوع (فيلم وبرنامج تلفزيوني) وسنة الإصدار واللغات.
العنوان: https://api.subdl.com/api/v1/subtitles
نوع الطلب: GET
معلمات الطلب (Parameters)
أرسل واحدة من هذه المتغيرات كعنوان URL GET
- api_key (مطلوب): مفتاح API من حساب subdl
- film_name (اختياري): بحث نصي باسم العمل.
- file_name (اختياري): البحث باسم الملف.
- sd_id (اختياري): البحث بمعرف SubDL.
- imdb_id (اختياري): البحث بمعرف IMDB.
- tmdb_id (اختياري): البحث بمعرف TMDB.
- season_number (اختياري): رقم موسم محدد للبرامج التلفزيونية.
- episode_number (اختياري): رقم حلقة محددة للبرامج التلفزيونية.
- type (اختياري): نوع المحتوى، إما movie أو tv.
- year (اختياري): سنة إصدار الفيلم أو البرنامج التلفزيوني.
- languages (اختياري): رموز اللغات مفصولة بفواصل للغات الترجمة.
- subs_per_page (اختياري): حد عدد الترجمات التي ستظهر في النتائج، الافتراضي هو 10، (الحد الأقصى يمكن أن يكون 30)
- comment (اختياري): أرسل comment=1 للحصول على تعليق الناشر المرفق مع الترجمة
- releases (اختياري): أرسل releases=1 للحصول على قائمة الإصدارات للترجمة
- hi (اختياري): أرسل hi=1 للحصول على معلومات ما إذا كانت الترجمة للصم وضعاف السمع
- full_season (اختياري): أرسل full_season=1 للحصول على المواسم الكاملة فقط
استجابة الطلب الناجحة
إذا نجح الطلب فسيرجع Subdl إليك كائن JSON يحتوي على الحقول التالية:
- status: قيمة منطقية تشير إلى حالة النجاح (true).
- results: مصفوفة Array من الأفلام أو البرامج التلفزيونية المطابقة لمعايير البحث.
- subtitles: مصفوفة Array من الترجمات المطابقة لمعايير البحث للفيلم/البرنامج التلفزيوني الأول في النتائج.
استجابة الطلب الفاشلة
إذا فشل الطلب يتم إرجاع استجابة الخطأ ككائن JSON يحتوي على الحقول التالية:
- status: قيمة منطقية تشير إلى حالة النجاح (false).
- error: رسالة خطأ توضح سبب الفشل.
مثال على رابط التحميل
أضف رابط الترجمة إلى عنوان dl.subdl.com كما في هذا المثال:
https://dl.subdl.com/subtitle/3197651-3213944.zip
سيتم توفير تحميل ملف srt قريبًا...
مثال الاستخدام
الطلب
{
"query": {
"api_key": "abcdefghisubdl",
"film_name": "Inception",
"type": "movie",
"languages": "EN,FR"
}
}
محتوى الاستجابة
{
"status": true,
"results": [
{
"imdb_id": "tt1375666",
"tmdb_id": 27205,
"type": "movie",
"name": "Inception",
"sd_id": 123456,
"first_air_date": null,
"year": 2010
}
],
"subtitles": [
{
// تفاصيل الترجمة
}
]
}
ملاحظات
- يتم تطبيق تحديد معدل طلبات API؛ تأكد من إدارة عدد الطلبات وفقًا لحدود مفتاح API الخاص بك.
- تم تحسين البحث للبحث أولاً عن التطابقات الدقيقة في قاعدة البيانات ثم الانتقال إلى معايير أوسع إذا لزم الأمر.
- يجب أن تتبع رموز اللغات التنسيق المحدد المقدم في وثائق API لضمان التصفية الدقيقة للترجمات.
تعتبر هذه الواجهة البرمجية API أداة ذكية للمطورين لدمج وظائف البحث عن الترجمات في تطبيقاتهم، مع تقديم خيارات تصفية عديدة لتلبية تفضيلات المستخدمين واحتياجاتهم.
مثال طلب CURL
curl -X GET "https://api.subdl.com/api/v1/subtitles?api_key=example-api-key&film_name=Inception&type=movie&languages=EN"
مثال طلب بكود JavaScript
fetch(
"https://api.subdl.com/api/v1/subtitles?api_key=example-api-key&film_name=Inception&type=movie&languages=ar",
{
method: "GET",
headers: {
Accept: "application/json",
},
}
)
.then((response) => response.json())
.then((data) => console.log(data))
.catch((error) => console.error("خطأ:", error));