Apidog

منصة تطوير API تعاونية متكاملة

تصميم API

توثيق API

تصحيح أخطاء API

محاكاة API

اختبار API الآلي

كيفية استخدام واجهة برمجة تطبيقات OpenSubtitles

@apidog

@apidog

Updated on أبريل 14, 2025

تُعتبر الترجمات جزءًا لا غنى عنه من تجربة الوسائط الحديثة. فهي تتجاوز حواجز اللغة، وتعزز الوصول لذوي الإعاقة السمعية، وتساعد متعلمي اللغات في جميع أنحاء العالم. في قلب إمكانية الوصول إلى الترجمات تكمن OpenSubtitles، واحدة من أكبر وأشهر المستودعات عبر الإنترنت لملفات الترجمة. ولكن OpenSubtitles أكثر من مجرد موقع ويب؛ حيث يقدم واجهة برمجة تطبيقات REST قوية تتيح للمطورين دمج قاعدة بيانات الترجمة الضخمة الخاصة به مباشرة في تطبيقاتهم.

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

💡
هل ترغب في أداة رائعة لاختبار واجهة برمجة التطبيقات تُولّد وثائق واجهة برمجة التطبيقات جميلة؟

هل ترغب في منصة متكاملة، All-in-One لفريق المطورين لديك للعمل معًا بأقصى إنتاجية؟

توفر Apidog كافة مطالبك، و تستبدل Postman بسعر أكثر ملاءمة!
button

ما هي واجهة برمجة تطبيقات OpenSubtitles؟

واجهة برمجة تطبيقات OpenSubtitles هي مجموعة من واجهات برمجة التطبيقات التي تسمح للمطورين بالتفاعل برمجيًا مع قاعدة بيانات OpenSubtitles. بدلاً من البحث يدويًا وتنزيل الترجمات من الموقع، يمكن للتطبيقات استخدام واجهة برمجة التطبيقات لأداء هذه الإجراءات تلقائيًا. يفتح هذا عالمًا من الاحتمالات لإنشاء تجارب مستخدم سلسة وغنية بالميزات.

القدرات الرئيسية:

البحث: ابحث عن الترجمات بناءً على معايير متنوعة مثل عنوان الفيلم/البرنامج، رقم IMDB، رقم TMDB، هاش الملف، اللغة، والمزيد. التنزيل: استرجع ملفات الترجمة المحددة التي تم التعرف عليها من خلال نتائج البحث. الترجمة باستخدام الذكاء الاصطناعي: استفد من الذكاء الاصطناعي لترجمة الترجمات الموجودة إلى لغات مختلفة. استرجاع المعلومات: الوصول إلى البيانات الوصفية حول الترجمات والوسائط.

بدء الاستخدام: خطواتك الأولى

قبل أن تتمكن من إجراء مكالمات إلى واجهة برمجة التطبيقات، هناك بعض المتطلبات الأساسية والمفاهيم الأساسية التي يجب فهمها.

1. نقطة نهاية واجهة برمجة التطبيقات:

تكمن جميع التفاعلات مع واجهة برمجة تطبيقات OpenSubtitles REST في عنوان URL أساسي واحد:

https://api.opensubtitles.com/api/v1

يتم إلحاق جميع نقاط النهاية المحددة (مثل البحث أو التنزيل) بهذا عنوان URL الأساسي.

2. التسجيل ومفتاح واجهة برمجة التطبيقات:

يتطلب الوصول إلى واجهة برمجة التطبيقات مصادقة. تتضمن الطريقة الرئيسية استخدام مفتاح واجهة برمجة التطبيقات.

التسجيل: تحتاج أولاً إلى حساب على OpenSubtitles. إذا لم يكن لديك واحد، قم بالتسجيل على موقعهم. الحصول على مفتاح واجهة برمجة التطبيقات: بعد التسجيل، سوف تحتاج إلى توليد مفتاح واجهة برمجة التطبيقات. عادةً ما يتم ذلك من خلال ملف تعريف المستخدم الخاص بك أو قسم المطورين المخصص على موقع OpenSubtitles. احفظ مفتاح واجهة برمجة التطبيقات الخاص بك بشكل آمن، لأنه يحدد طلبات تطبيقك.

3. المصادقة:

تدعم واجهة برمجة التطبيقات طريقتين رئيسيتين للمصادقة:

مفتاح واجهة برمجة التطبيقات: أبسط طريقة. قم بتضمين مفتاح واجهة برمجة التطبيقات في رأس Api-Key لكل طلب. Api-Key: YOUR_API_KEY  رمز JWT: للوصول المحتمل إلى ميزات محددة للمستخدم أو حدود معدلات مختلفة (اعتمادًا على تصميم واجهة برمجة التطبيقات)، يمكنك تسجيل الدخول عبر نقطة النهاية /login (الموضحة لاحقًا) للحصول على رمز ويب JSON (JWT). يتم تضمين هذا الرمز بعد ذلك في رأس Authorization كرمز Bearer. Authorization: Bearer YOUR_JWT_TOKEN
لا تزال بحاجة عمومًا إلى تقديم رأس Api-Key حتى عند استخدام رمز JWT لتحديد التطبيق.

4. الرؤوس الأساسية:

بخلاف رؤوس المصادقة، يجب أن تتضمن كل طلب واجهة برمجة التطبيقات بالضرورة:

Content-Type: بالنسبة للطلبات التي تحتوي على جسم (مثل طلبات POST)، ينبغي أن تكون عادةً application/json. Content-Type: application/json  **User-Agent:** هذا أمر حاسم. تتطلب واجهة برمجة التطبيقات سلسلة وصفية من User-Agent التي تحدد تطبيقك. قد يتم حظر User-Agents غير الواضحة أو الافتراضية (مثل python-requests). شكل جيد هو YourAppName v1.0. User-Agent: MySubtitleApp v1.2.3

5. تحديد المعدلات:

مثل معظم واجهات برمجة التطبيقات العامة، تفرض OpenSubtitles حدود معدلات لضمان الاستخدام العادل واستقرار الخادم. ستؤدي تجاوز هذه الحدود إلى حدوث استجابات أخطاء (غالبًا 429 Too Many Requests). انتبه جيدًا للتبعيات التالية لإدارة معدل طلبك:

X-RateLimit-Limit: الحد الأقصى لعدد الطلبات المسموح بها في النافذة الحالية. X-RateLimit-Remaining: عدد الطلبات المتبقية في النافذة الحالية. X-RateLimit-Reset: طابع الزمن (غالبًا زمن تاريخ يونكس) عند إعادة تعيين نافذة الحد من المعدلات. Retry-After: إذا تلقيت خطأ 429، تشير هذه الرأس إلى عدد الثواني التي يجب عليك الانتظار قبل المحاولة مرة أخرى.

يعد تنفيذ المنطق في تطبيقك لتRespect هذه الرؤوس ضروريًا لعملية موثوقة.

التحقق العميق: نقطة النهاية /login

في حين أن استخدام مفتاح واجهة برمجة التطبيقات فقط غالبًا ما يكفي، فإن نقطة النهاية /login تسمح لتطبيقك بالتحقق كمستخدم محدد لOpenSubtitles، مما يمنحك JWT.

نقطة النهاية: POST /login

الغرض: تبادل بيانات اعتماد المستخدم (اسم المستخدم/كلمة المرور) للحصول على رمز مصادقة JWT.

جسم الطلب:

{
  "username": "your_opensubtitles_username",
  "password": "your_opensubtitles_password"
}

الرؤوس:

Content-Type: application/jsonAccept: application/jsonApi-Key: YOUR_API_KEYUser-Agent: YourAppName v1.0

الاستجابة الناجحة (مثال):

{
  "user": {
    "allowed_downloads": 100,
    "level": "Sub leecher",
    "user_id": 123456,
    "ext_installed": false,
    "vip": false
  },
  "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...", // هذا هو JWT
  "status": 200
}

استخدام JWT:

بمجرد الحصول عليها، قم بتضمين قيمة token في رأس Authorization للطلبات اللاحقة:

Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...

قد يمنح استخدام JWT الوصول إلى حصص تحميل محددة للمستخدم أو ميزات أخرى مرتبطة بمستوى حساب المستخدم أو حالة VIP. تذكر أن الـ JWT عادةً ما يكون له وقت انتهاء، لذا قد تحتاج إلى إعادة المصادقة بشكل دوري.

الوظائف الأساسية: البحث عن الترجمات (/subtitles)

ربما تكون هذه هي نقطة النهاية الأكثر استخدامًا. تتيح لك الاستعلام في قاعدة بيانات OpenSubtitles الواسعة.

نقطة النهاية: GET /subtitles

الغرض: العثور على ترجمات بناءً على معايير بحث متنوعة.

المصادقة: تتطلب رأس Api-Key (وخيارًا Authorization: Bearer <token>).

معلمات الاستعلام الرئيسية:

تكمن قوة البحث في معلماته المرنة. يمكنك دمجها حسب الحاجة:

query=<string>: البحث حسب عنوان الفيلم أو الحلقة (مثل query=The Matrix، query=Game of Thrones S01E01). imdb_id=<string>: البحث باستخدام رقم IMDb (مثل imdb_id=tt0133093). عادةً ما يكون هذا أكثر دقة من query. tmdb_id=<integer>: البحث باستخدام رقم قاعدة بيانات الأفلام (TMDb) (مثل tmdb_id=603). دقيق أيضًا جدًا. parent_tmdb_id=<integer>: للبحث عن الحلقات، استخدم رقم TMDb لـ عرض (مثل parent_tmdb_id=1399 لـ Game of Thrones). season_number=<integer>: دمج مع parent_tmdb_id (أو imdb_id الخاص بالعرض) للعثور على الترجمات لموسم معين. episode_number=<integer>: دمج مع parent_tmdb_id (أو imdb_id الخاص بالعرض) وseason_number لحلقة معينة. languages=<string>: التصفية حسب رموز اللغة (مفصولة بفواصل، مثل languages=en,es، languages=fr). استخدم رموز ISO 639-2B (مثل eng، spa، fre). moviehash=<string>: البحث باستخدام هاش فريد محسوب من ملف الفيديو. يوفر هذا المطابقة الأكثر دقة إذا كان لديك ملف الفيديو نفسه. يتطلب حساب هذا الهاش عادةً مكتبات أو أدوات محددة. type=<string>: التصفية حسب النوع (movie أو episode). hearing_impaired=<include|exclude|only>: التصفية للترجمات المصممة لذوي الإعاقة السمعية. machine_translated=<include|exclude|only>: التصفية بناءً على ما إذا كانت الترجمات قد تمت ترجمتها آليًا. ai_translated=<include|exclude|only>: التصفية بناءً على ما إذا كانت الترجمات قد تمت باستخدام ميزة الذكاء الاصطناعي لواجهة برمجة التطبيقات. order_by=<field>: ترتيب النتائج (مثل order_by=download_count). order_direction=<asc|desc>: تحديد اتجاه الترتيب.

مثال على طلب البحث (البحث عن الترجمات الإنجليزية لـ "Inception" عبر رقم TMDb):

GET /api/v1/subtitles?tmdb_id=27205&languages=en HTTP/1.1
Host: api.opensubtitles.com
Api-Key: YOUR_API_KEY
User-Agent: MySubtitleApp v1.0
Accept: application/json

تفسير نتائج البحث:

الاستجابة هي كائن JSON يحتوي على مصفوفة data. يمثل كل عنصر في المصفوفة تطابقًا للترجمة.

{
  "total_pages": 10,
  "total_count": 195,
  "per_page": 20,
  "page": 1,
  "data": [
    {
      "id": "1234567", // معرف الترجمة (مفيد ولكن ليس للتنزيل)
      "type": "subtitles",
      "attributes": {
        "subtitle_id": "1234567", // معرف العصور السابقة
        "language": "en",
        "download_count": 500000,
        "new_download_count": 150000,
        "hearing_impaired": false,
        "hd": true,
        "format": "srt",
        "fps": 23.976,
        "votes": 120,
        "points": 10,
        "ratings": 8.5,
        "from_trusted": true,
        "foreign_parts_only": false,
        "ai_translated": false,
        "machine_translated": false,
        "upload_date": "2010-10-25T12:00:00Z",
        "release": "Inception.2010.720p.BluRay.x264-REWARD",
        "comments": "مزامنة وتصحيح بواسطة ...",
        "legacy_subtitle_id": 987654,
        "uploader": {
          "uploader_id": 54321,
          "name": "UploaderName",
          "rank": "Administrator"
        },
        "feature_details": { // معلومات حول الفيلم/الحلقة
          "feature_id": 5555,
          "feature_type": "Movie",
          "year": 2010,
          "title": "Inception",
          "movie_name": "Inception",
          "imdb_id": "tt1375666",
          "tmdb_id": 27205
        },
        "url": "<https://www.opensubtitles.org/en/subtitles/1234567/inception-en>",
        "related_links": [
          // ... روابط للمحتويات ذات الصلة ...
        ],
        "files": [ // مُهِم: تحتوي هذه المصفوفة على الملفات الخاصة بهذا الإدخال من الترجمة
          {
            "file_id": 998877, // <<< هذا هو المعرف المطلوب لنقطة النهاية /download
            "cd_number": 1,
            "file_name": "Inception.2010.720p.BluRay.x264-REWARD.srt"
          }
          // قد تكون هناك ملفات إضافية إذا كانت الترجمة متعددة الأجزاء (مثل، CD1، CD2)
        ]
      }
    },
    // ... المزيد من نتائج الترجمات ...
  ]
}

أهم قطعة من المعلومات اللازمة للتنزيل هي file_id الذي يتم العثور عليه ضمن مصفوفة attributes.files. لاحظ أن إدخال ترجمة واحد (data عنصر المصفوفة) قد يحتوي على ملفات متعددة (مثل الإصدارات القديمة CD1/CD2). يجب على تطبيقك عادةً اختيار file_id المناسب بناءً على معايير مثل cd_number أو file_name.

الوظائف الأساسية: تنزيل الترجمات (/download)

بمجرد أن تحدد ملف الترجمة المطلوب باستخدام نقطة النهاية /subtitles واستخرجت file_id الخاصة به، يمكنك استخدام نقطة النهاية /download للحصول على رابط مؤقت لملف الترجمة الفعلي.

نقطة النهاية: POST /download

الغرض: طلب رابط تنزيل لملف ترجمة محدد.

المصادقة: تتطلب رأس Api-Key و مصادقة مستخدم صالحة (إما رمز JWT متصل في رأس Authorization أو ربما أذونات مفتاح API محددة، اعتمادًا على سياسة API – غالبًا ما يُفضل/يتطلب JWT لتحميل البيانات لمتابعة الحصص).

جسم الطلب:

{
  "file_id": 998877 // الـ file_id الذي تم الحصول عليه من نتائج البحث
  // قد تكون هناك معلمات اختيارية مثل "sub_format"، "file_name"، "in_fps"، "out_fps" متاحة للتحويل الفوري
}

الرؤوس:

Content-Type: application/jsonAccept: application/jsonApi-Key: YOUR_API_KEYAuthorization: Bearer YOUR_JWT_TOKEN (قد يكون مطلوبًا) User-Agent: YourAppName v1.0

استجابة ناجحة (مثال):

{
  "link": "<https://dl.opensubtitles.org/en/download/sub/1234567?uk=USER_KEY&uuid=RANDOM_UUID&filename=>...", // URL مؤقت للتنزيل
  "file_name": "Inception.2010.720p.BluRay.x264-REWARD.srt",
  "requests": 5, // عدد الطلبات المتاحة لهذا الرابط/الملف المحدد؟ (تحقق من الوثائق)
  "remaining": 95, // حصة تنزيل المستخدم المتبقية لليوم/الفترة
  "message": "كان عدد التنزيلات ناجحًا.",
  "reset_time": "2023-10-27T12:00:00Z", // متى قد يتم إعادة تعيين حصة التنزيل
  "reset_time_utc": "2023-10-27T12:00:00Z"
}

التعامل مع التنزيل:

قم بعمل طلب POST إلى /download مع file_id الصحيح. تحقق من رمز حالة الاستجابة للنجاح (مثل، 200 OK). استخرج قيمة link من استجابة JSON. قم بعمل طلب HTTP GET قياسي إلى هذا link URL. لا يتطلب هذا الطلب عادةً رؤوس مفتاح واجهة برمجة التطبيقات أو المصادقة، حيث أن الرابط نفسه مُصرح مسبقًا. ستكون الاستجابة لطلب GET على link URL هي المحتوى الفعلي لملف الترجمة (مثل، نص ملف SRT). احفظ هذا المحتوى في ملف (مثل، باستخدام file_name المقدم).

مهم: روابط التنزيل (link) عادةً ما تكون مؤقتة وقد تنتهي بعد فترة قصيرة أو عدد معين من الاستخدامات. لا تخزن هذه الروابط للاستخدام طويل الأمد؛ احصل على رابط جديد عبر نقطة النهاية /download كلما لزم الأمر. أيضًا، راقب عدد التنزيلات remaining لتجنب استنفاد حصة المستخدم.

المميزات المتقدمة: الترجمة باستخدام الذكاء الاصطناعي (/ai-translation)

إضافة أكثر حداثة إلى مجموعة أدوات OpenSubtitles هي ميزة الترجمة المدعومة بالذكاء الاصطناعي.

نقطة النهاية: POST /ai-translation (أو شيء مشابه، تحقق من نقطة النهاية الدقيقة في الوثائق)

الغرض: لترجمة ملف ترجمة موجود إلى لغة أخرى باستخدام نماذج الذكاء الاصطناعي.

كيف يعمل (مفهومي):

من المحتمل أن تقدم file_id للترجمة المصدر التي تريد ترجمتها. تحدد target_language (مثل target_language=de للألمانية). تقوم واجهة برمجة التطبيقات بمعالجة الطلب، مما قد يؤدي إلى تتابع وظيفة الترجمة. قد تشير الاستجابة إلى حالة الوظيفة أو توفر file_id جديد أو رابط تنزيل للترجمة بعد الانتهاء.

استخدامات:

توفير الترجمات في لغات غير متاحة أصلًا في قاعدة البيانات. تقديم خيارات ترجمة عند الطلب للمستخدمين في تطبيقك.

الاعتبارات:

قد تكون هناك تكاليف مرتبطة بترجمات الذكاء الاصطناعي أو حدود/حصص محددة، مرتبطة على الأرجح بمستويات VIP أو الاشتراكات. يمكن أن تتفاوت جودة الترجمة باستخدام الذكاء الاصطناعي اعتمادًا على زوج اللغة وتعقيد النص المصدر. قد تتطلب هذه الميزة أذونات مستخدم محددة أو مستويات اشتراك. يرجى الاطلاع على الوثائق الرسمية للواجهة حول الاستخدام والمعلمات والقيود.

أفضل الممارسات لدمج واجهة برمجة التطبيقات

لضمان تفاعل تطبيقك بسلاسة وبشكل مسؤول مع واجهة برمجة التطبيقات OpenSubtitles، اتبع هذه الممارسات الجيدة:

تخزين الاستجابات: خصوصًا لنتائج البحث (/subtitles) التي لا تتغير بسرعة. إذا قام المستخدم بالبحث عن نفس الفيلم/الحلقة عدة مرات، قدّم النتيجة المخزنة بدلاً من الضغط على واجهة برمجة التطبيقات بشكل متكرر. نفذ تخزينًا ذكيًا وقت الانتهاء بشكل معقول. احترام حدود المعدل: راقب بنشاط X-RateLimit-* و Retry-After الرؤوس. نفذ استراتيجيات التراجع الأسّي في حال تعرضت للحد (انتظر لفترة أطول بعد تحديد المعدل بشكل متكرر). لا تقم بالتحقق من واجهة برمجة التطبيقات بشكل عدائي. استخدم معرفات محددة: كلما أمكن، ابحث باستخدام imdb_id أو tmdb_id بدلاً من query. توفر هذه نتائج أكثر دقة وتقلل من الغموض. استخدم moviehash للحصول على أعلى دقة إذا كان ملف الفيديو متاحًا. توفير User-Agent واضح: استخدم سلسلة User-Agent فريدة ووصفية (مثل MyMediaPlayerApp/2.1 (contact@myapp.com)). هذا يساعد OpenSubtitles على تحديد مصادر الحركة وحل المشكلات. قد يتم حظر الوكلاء العامة. تعامل برفق مع الأخطاء: تحقق من رموز حالة HTTP لكل استجابة. نفذ منطقًا للتعامل مع الأخطاء الشائعة مثل 401 Unauthorized (مفتاح واجهة برمجة التطبيقات/رمز JWT غير صالح)، 403 Forbidden (الترخيص مرفوض)، 404 Not Found، 429 Too Many Requests، و5xx أخطاء الخادم. قدم ردودًا مفيدة للمستخدم. إدارة حصص التحميل: كن واعيًا للحدود اليومية/الدورية لتنزيل الملفات المرتبطة بحساب المستخدم (أو مفتاح API). أعلم المستخدمين إذا كانوا يقتربون أو تجاوزوا حصتهم. استخدم حقل remaining في استجابة /download. تحسين عمليات البحث: لا تطلب بيانات غير ضرورية. استخدم معلمات مثل languages، type، hearing_impaired، وما إلى ذلك، لتضييق النتائج من جانب الخادم بدلاً من تصفية مجموعات بيانات كبيرة على جانب العميل. احمِ مفتاح واجهة برمجة التطبيقات الخاصة بك: اعتبر مفتاح واجهة برمجة التطبيقات مثل كلمة المرور. لا تدرجه مباشرة في الشيفرة على جانب العميل. قم بتخزينه بأمان على خادمك.

الأغلفة، السكربتات، والموارد المجتمعية

بينما يغطي هذا الدليل التفاعل المباشر مع واجهة برمجة التطبيقات، غالبًا ما تتضمن مجموعة أدوات OpenSubtitles موارد تم تطويرها بواسطة المجتمع.

أغلفة واجهة برمجة التطبيقات: ابحث عن المكتبات أو SDKs للغة البرمجة الخاصة بك (مثل، Python، JavaScript، Java) على منصات مثل GitHub أو مديري الحزم (PyPI، npm). يمكن أن تسهل هذه الأغلفة استدعاءات واجهة برمجة التطبيقات، وتتعامل مع المصادقة، وتقوم بتحليل الاستجابات. السكربتات: قد توجد أدوات أو سكربتات موجهة من سطح المكتب مختلفة للتفاعل مع واجهة برمجة التطبيقات، مفيدة لأغراض الأتمتة أو البحث السريع. المنتديات/المجتمعات: تحقق من منتديات OpenSubtitles أو المجتمعات المطورين ذات الصلة للقيام بمناقشات، وأمثلة، وأدوات محتملة من طرف ثالث تستخدم واجهة برمجة التطبيقات.

يمكن أن تسرع استخدامWrapper حال الاحتفاظ به بشكل جيد بيانات تطوير التطبيق، ولكن فهم استدعاءات واجهة برمجة التطبيقات الأساسية (كما هو موضح في هذا الدليل) يبقى حاسماً لاستكشاف الأخطاء وإصلاحها والاستخدام المتقدم.

الاشتراك في واجهة برمجة التطبيقات والأسعار

تقدم OpenSubtitles عادةً مستويات مختلفة من الوصول إلى واجهة برمجة التطبيقات:

الحد الأدنى المجاني: يوفر عادةً وصولًا أساسيًا مع حدود معدلات صارمة وحصص تنزيل. مناسب للتطبيقات ذات الحجم المنخفض أو للتطوير/الاختبار. المستويات المدفوعة/الـ VIP: تقدم حدود معدلات أعلى بشكل ملحوظ، حصص تنزيل أكبر، وصول إلى ميزات متميزة (مثل إمكانية الترجمة باستخدام الذكاء الاصطناعي أو دعم أسرع)، ومخصصة للتطبيقات التجارية أو ذات حركة مرور عالية.

يرجى الرجوع إلى الوثائق الرسمية لواجهة برمجة التطبيقات OpenSubtitles أو الموقع للحصول على أحدث التفاصيل حول خطط الاشتراك، والأسعار، والحدود/الميزات المرتبطة بكل مستوى. اختر الخطة التي تتناسب بشكل أفضل مع الاستخدام المتوقع لتطبيقك ومتطلباته الوظيفية.

الخاتمة

تعد واجهة برمجة تطبيقات OpenSubtitles بوابة قوية واحدة من أكبر مجموعات الترجمات في العالم. من خلال فهم هيكلها، وأساليب المصادقة، ونقاط النهاية الأساسية مثل /subtitles و/download، والالتزام بأفضل الممارسات، يمكن للمطورين دمج وظائف الترجمة بسلاسة في تطبيقاتهم. من عمليات البحث البسيطة في مشغلات الوسائط إلى الميزات المعقدة التي تشمل الترجمة الذكاء الاصطناعي، توفر واجهة برمجة التطبيقات اللبنات الأساسية لتجارب مبتكرة وسهلة الاستخدام. تذكر أن تستشير الوثائق الرسمية لواجهة برمجة التطبيقات OpenSubtitles للحصول على أحدث تفاصيل نقاط النهاية والمعلمات والسياسات أثناء بدء رحلتك في تطوير التطبيقات. برمجة سعيدة!