REST API

وثائق API

دمج ترجمة المانغا في تطبيقك باستخدام REST API بسيط.

البدء السريع

1

احصل على مفتاح API

أنشئ مفتاحاً من إعدادات لوحة التحكم الخاصة بك. تبدأ المفاتيح بـ mg_live_ أو mg_test_.

2

ارفع صورة

اطلب URL موقعاً مسبقاً، ثم أرسل بيانات الصورة إليه باستخدام PUT.

3

أنشئ مهمة

أرسل مفتاح الرفع لبدء الترجمة. استعلم عن المهمة حتى تكتمل.

المصادقة

ضمّن مفتاح API الخاص بك كـ Bearer token في رأس Authorization.

Authorization: Bearer mg_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
  • مفاتيح الوضع المباشر (mg_live_) تستخدم رصيدك الحقيقي.
  • مفاتيح وضع الاختبار (mg_test_) تستخدم GPU وهمياً -- لا يتم استهلاك رصيد.

مرجع نقاط النهاية

URL الأساسي: https://api.mangagloss.com

POST/v1/uploads/presignالحصول على URL رفع موقع مسبقاً

يُرجع URL موقعاً مسبقاً لرفع صورة إلى مساحة تخزين R2.

Request

{
  "count": 1
}

Response

{
  "uploads": [
    { "key": "abc123...", "url": "https://..." }
  ]
}
PUT/v1/uploads/direct/:keyرفع صورة

ارفع بيانات الصورة الخام إلى URL الموقع مسبقاً. أرسل نوع محتوى الصورة في الرأس.

Request

Raw image bytes (Content-Type: image/png or image/jpeg)

Response

{ "ok": true }
POST/v1/jobsإنشاء مهمة ترجمة

ابدأ مهمة ترجمة للصور المرفوعة. يتطلب رصيداً (1 لكل صفحة).

Request

{
  "pages": ["abc123..."],
  "source_lang": "JPN",
  "target_lang": "ENG",
  "engine": "premium"
}

Response

{ "job_id": "x7k9m2..." }
GET/v1/jobs/:idالحصول على حالة المهمة

استعلم عن نقطة النهاية هذه حتى تصبح الحالة مكتملة أو فاشلة. تتضمن النتائج URLs الصور المترجمة ومناطق النص.

Response

{
  "id": "x7k9m2...",
  "status": "completed",
  "pages": [
    {
      "id": "p1...",
      "status": "completed",
      "output_url": "https://...",
      "regions": [...]
    }
  ]
}

أمثلة الأكواد

سير عمل كامل لترجمة صفحة واحدة بلغة برمجتك المفضلة.

# 1. Get a presigned upload URL
PRESIGN=$(curl -s -X POST https://api.mangagloss.com/v1/uploads/presign \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"count": 1}')

KEY=$(echo $PRESIGN | jq -r '.uploads[0].key')
URL=$(echo $PRESIGN | jq -r '.uploads[0].url')

# 2. Upload the image
curl -s -X PUT "$URL" \
  -H "Content-Type: image/png" \
  --data-binary @page.png

# 3. Create a translation job
JOB=$(curl -s -X POST https://api.mangagloss.com/v1/jobs \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d "{\"pages\": [\"$KEY\"], \"source_lang\": \"JPN\", \"target_lang\": \"ENG\", \"engine\": \"premium\"}")

JOB_ID=$(echo $JOB | jq -r '.job_id')

# 4. Poll until complete
curl -s https://api.mangagloss.com/v1/jobs/$JOB_ID \
  -H "Authorization: Bearer YOUR_API_KEY"

حدود المعدل والأخطاء

مفاتيح API محدودة بـ 30 طلباً في الدقيقة. الرصيد هو الحاجز الحقيقي.

الحالةالمعنى
200نجح
400طلب خاطئ -- تحقق من معاملاتك
401غير مصرح -- مفتاح API مفقود أو غير صالح
402رصيد غير كافٍ
404المورد غير موجود
429تجاوز الحد -- انتظر وأعد المحاولة
500خطأ في الخادم -- أعد المحاولة مع تأخير تصاعدي

هل أنت مستعد للتكامل؟

أنشئ مفتاح API وابدأ ترجمة المانغا برمجياً.

أنشئ مفتاح API
API Documentation -- MangaGloss REST API | MangaGloss