التوثيق

توثيق API

واجهة REST عامة من imagetranslate.ai. تتم المصادقة عبر رمز Bearer، ثم تُرسَل الصورة بترميز base64 لاسترداد الصورة المترجمة.

ترجمة النص داخل الصورة مع الحفاظ على التخطيط الأصلي وإعادة رسمه في الصورة نفسها.

بدء سريع

إنشاء API key

أنشئ المفتاح من صفحة API Keys.

إرسال الطلب الأول

curl -X POST https://api.imagetranslate.ai/translate/image \
  -H "Authorization: Bearer YOUR_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{
    "imageBase64": "iVBORw0KGgoAAAANSUhEUgAA...",
    "sourceLanguage": "ja",
    "targetLanguage": "en",
    "mode": "general",
    "translator": "Grok"
  }'

التعامل مع الاستجابة

الحقل response.resultImage يحتوي على صورة PNG بترميز base64 مسبوقة بالبادئة data:image/png;base64, (وليس رابط HTTP). لعرضها في المتصفح مباشرة، استخدم <img src={response.resultImage} />. لحفظها كملف، احذف البادئة ثم فُكَّ ترميز base64.

المصادقة

أضف API key إلى رأس Authorization بصيغة Bearer مع كل طلب:

Authorization: Bearer YOUR_KEY

API key عبارة عن سلسلة عشوائية بطول 32 بايت مسبوقة بالبادئة sk_imagetranslate_. تعامل معها كما تتعامل مع كلمة المرور: احفظها في مدير أسرار على الخادم، ولا تُدرجها ضمن المستودع، ولا تكشفها في كود الواجهة الأمامية.

Idempotency

عند إعادة محاولة الطلب بعد انقطاع الشبكة، أرسل الرأس Idempotency-Key نفسه لتجنّب خصم الكريدت مرتين:

Idempotency-Key: <your-uuid>
  • أول استدعاء بمفتاح معيّن: يُعالَج كالمعتاد.
  • أي استدعاء لاحق بالمفتاح نفسه (ضمن API key واحد): يُرجع 409 Conflict مع recordId الأصلي. لا تستهلك إعادة المحاولة أي رصيد.
  • المفاتيح المختلفة تعني استدعاءات مختلفة.

أنشئ المفتاح من جهة العميل (UUIDv4 مناسب). من دونه، تستهلك كل إعادة محاولة رصيدًا جديدًا وتُشغّل Torii من جديد.

ترجمة الصورة

نقطة نهاية متزامنة تُرجع الصورة المترجمة بترميز base64 (مسبوقة بالبادئة data:image/png;base64,).

Base URL

https://api.imagetranslate.ai

جسم الطلب

الحقلالنوعإلزاميالوصف
imageBase64stringنعمالصورة بترميز base64. يقبل سلسلة base64 مجردة أو data URL كاملة (data:image/png;base64,...). الحجم الأقصى 20 ميغابايت بعد فك الترميز.
sourceLanguagestringنعمرمز لغة ISO، أو auto للكشف التلقائي. راجع رموز اللغات.
targetLanguagestringنعمرمز لغة ISO. راجع رموز اللغات.
modestringلانمط العرض. القيمة الافتراضية general. راجع قيم mode.
translatorstringلانموذج الترجمة المستخدم. القيمة الافتراضية grok-4. راجع نماذج translator.
customPromptstringلاتعليمات إضافية تُمرَّر إلى النموذج. الحد الأقصى 1000 حرف.

الاستجابة

الحقلالنوعالوصف
successbooleanتأخذ القيمة true عند نجاح الترجمة.
recordIdstringمعرّف فريد لسجل هذا الاستدعاء. أرفقه عند التواصل مع الدعم.
resultImagestringالصورة المترجمة بترميز base64 مسبوقة بالبادئة data:image/png;base64, (وليست رابط HTTP). اعرضها مباشرة عبر <img src={...} />، أو احفظها كملف بحذف البادئة وفك ترميز base64.
remainingCreditnumberرصيد advanced credit المتبقي بعد هذا الاستدعاء.

أمثلة

curl -X POST https://api.imagetranslate.ai/translate/image \
  -H "Authorization: Bearer $IMAGETRANSLATE_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{
    "imageBase64": "YOUR_BASE64_IMAGE",
    "sourceLanguage": "ja",
    "targetLanguage": "en",
    "mode": "general",
    "translator": "Grok"
  }'

مثال على الاستجابة

{
  "success": true,
  "recordId": "Z3l4abc...",
  "resultImage": "data:image/png;base64,iVBORw0KGgoAAAANSU...",
  "remainingCredit": 9990
}

رموز الأخطاء

Statusالمعنى
400تنسيق الطلب غير صحيح، أو أن imageBase64 ليس base64 صالحًا.
401API key مفقود أو غير صالح. أنشئ مفتاحًا جديدًا من API Keys.
402رصيد advanced credit غير كافٍ. أعد الشحن من صفحة الأسعار. لم يُخصم أي رصيد من هذا الاستدعاء.
403الباقة الحالية لا تتضمن الوصول إلى API. يلزم الترقية إلى Professional أو ما فوق من صفحة الأسعار.
409Idempotency-Key مُستخدم من قبل. يُرجَع { "error": "idempotency_replay", "recordId": "<id>" }. لم يُخصم أي رصيد.
413حجم الصورة يتجاوز 20 ميغابايت بعد فك ترميز base64. اضغط الصورة أو قلّل حجمها.
422فشل التحقق من صحة جسم الطلب (حقل مفقود/غير صالح). يحتوي الجسم على مصفوفة detail مع موقع الخطأ.
429تجاوزت حد المعدل لباقتك. لم يُخصم رصيد.
500فشل في الترجمة. يُعاد الرصيد تلقائيًا.

شكل استجابة الخطأ

  • 4xx / 500: { "detail": "<رسالة>" }
  • 422: { "detail": [{ "loc": [...], "msg": "...", "type": "..." }] }
  • 409: { "error": "idempotency_replay", "recordId": "<id>", "message": "..." }

حدود المعدل

عدد الطلبات لكل API key في الدقيقة، بحسب الباقة:

الباقةالحد
Freeغير متاح
Starterغير متاح
Professional60 req/min
Enterprise300 req/min

هل تحتاج إلى حد أعلى؟ تواصل عبر [email protected].

التسعير

10 advanced credits لكل استدعاء ترجمة. للاطلاع على الخطط وحزم الكريدت، راجع صفحة الأسعار.

الملحق

رموز اللغات

يقبل sourceLanguage رمز ISO 639-1 / BCP-47، أو auto للكشف التلقائي. ويقبل targetLanguage المجموعة نفسها من الرموز، باستثناء auto.

الرموز الأكثر شيوعًا:

CodeاللغةCodeاللغة
autoالكشف التلقائي (لـ source فقط)ptالبرتغالية
enالإنجليزيةruالروسية
zhالصينيةarالعربية
zh-cnالصينية المبسطةhiالهندية
zh-twالصينية التقليديةthالتايلاندية
jaاليابانيةviالفيتنامية
koالكوريةidالإندونيسية
esالإسبانيةtrالتركية
frالفرنسيةitالإيطالية
deالألمانيةnlالهولندية
القائمة الكاملة — أكثر من 130 لغة مصنفة حسب المنطقة

شرق آسيا

Codeاللغة
zhالصينية
zh-cnالصينية المبسطة
zh-twالصينية التقليدية
jaاليابانية
koالكورية
mnالمنغولية
jvالجاوية
suالسوندية

جنوب شرق آسيا

Codeاللغة
viالفيتنامية
thالتايلاندية
idالإندونيسية
msالملايو
myالبورمية
kmالخميرية
loاللاوية
filالفلبينية
cebالسيبوانو
iloالإيلوكانو

جنوب آسيا

CodeاللغةCodeاللغة
hiالهنديةneالنيبالية
bnالبنغاليةsiالسنهالية
urالأرديةasالأسامية
taالتاميليةbhoالبوجبورية
teالتيلوغوdvالديفيهية
mlالماليالاميةdoiالدوغرية
guالغوجاراتيةgomالكونكانية
knالكاناديةmaiالميثيلية
mrالماراثيةlusالميزو
orالأوريةpaالبنجابية
saالسنسكريتيةsdالسندية

أفريقيا

CodeاللغةCodeاللغة
amالأمهريةkriالكريو
swالسواحيليةlnاللينغالا
haالهوساnsoالسوتو الشمالية
yoاليوروباomالأورومو
zuالزولوstالسيسوتو
xhالكوساsnالشونا
afالأفريقانيةtiالتغرينية
mgالملغاشيةtsالتسونغا
soالصوماليةakالتوي
bmالبامباراeeالإيوي
nyالتشيشيواlgاللوغندا
igالإيغبوrwالكينيارواندية

أوروبا

CodeاللغةCodeاللغة
frالفرنسيةltالليتوانية
deالألمانيةlvاللاتفية
esالإسبانيةetالإستونية
itالإيطاليةisالآيسلندية
ruالروسيةsqالألبانية
plالبولنديةhyالأرمنية
ukالأوكرانيةazالأذرية
nlالهولنديةeuالباسكية
ptالبرتغاليةbeالبيلاروسية
elاليونانيةbsالبوسنية
csالتشيكيةcaالكتالانية
huالمجريةcoالكورسيكية
svالسويديةfyالفريزية
daالدنماركيةglالغاليسية
fiالفنلنديةkaالجورجية
noالنرويجيةkkالكازاخية
roالرومانيةkyالقيرغيزية
bgالبلغاريةlbاللوكسمبورغية
hrالكرواتيةmkالمقدونية
skالسلوفاكيةmtالمالطية
slالسلوفينيةsrالصربية
tgالطاجيكيةttالتترية
tkالتركمانيةugالأويغورية
uzالأوزبكية

الشرق الأوسط

Codeاللغة
arالعربية
faالفارسية
trالتركية
heالعبرية
kuالكردية
ckbالكردية السورانية
psالباشتو

الأمريكتان وأوقيانوسيا

Codeاللغة
ayالأيمارا
gnالغوارانية
htالكريولية الهايتية
hawالهاواي
quالكيتشوا
smالساموية
miالماورية

أخرى

Codeاللغة
eoالإسبرانتو
laاللاتينية
cyالويلزية
gaالأيرلندية
gdالغيلية الإسكتلندية
hmnالهمونغ
yiاليديشية

قيم mode

يحدد mode نمط العرض. اختر النمط الأنسب لمحتوى صورتك.

Valueالوصف
general (الافتراضي)الوضع الافتراضي بدون عرض خاص.
mangaالحفاظ على التخطيط الأصلي مع إضافة حد حول النص.
e-commerceالحفاظ على التخطيط الأصلي بدون حد حول النص.
light-novelوضع النص المترجم فوق الصورة الأصلية.

نماذج translator

يحدد translator نموذج الذكاء الاصطناعي الذي ينفذ الترجمة. تبلغ تكلفة كل نموذج 10 كريدت لكل استدعاء.

  • Grok (الافتراضي)
  • Gemini
  • Deepseek
  • ChatGPT
  • Claude

ابدأ الآن

هل أنت مستعد للدمج؟ أنشئ أول API key ←