الانتقال إلى المحتوى الرئيسي
ستتضمن واجهة REST API استجابة بقائمة الأخطاء إن وُجدت.
للأخطاء رمز حالة مُعاد 400 أو 401 أو 402 أو 403 أو 404 أو 429 أو 500 أو 502 أو 503 أو 504. النجاح له رمز حالة مُعاد 200. راجع هنا للتفاصيل.
قد يُعيد كل استدعاء API أخطاءً مختلفة بحسب الطلب المحدد وأي مشكلات تُواجه في الشبكة الاجتماعية. ستحتوي استجابة الخطأ على تفاصيل حول ما حدث من خلل خلال استدعاء API. على سبيل المثال، منشور يعتبره Twitter وFacebook تكرارًا سيُعيد الاستجابة التالية.
يُرجى ملاحظة:
  • يحتوي حقل errors على مصفوفة الأخطاء، خطأ واحد لكل شبكة اجتماعية واجهت خطأً.
  • يشير action إلى نوع الخطأ المُعاد.
  • سيكون حقل status على المستوى الأعلى “error” إذا فشل استدعاء API. على سبيل المثال، لاستدعاء /post إذا نجحت جميع عمليات النشر على الشبكات الاجتماعية، فسيكون حقل status “success”، وإلا فسيكون حقل status “error”.
  • يحتوي حقل code على رمز خطأ Ayrshare المرجعي.
  • حقل message هو التفاصيل المحددة للخطأ.

التعامل مع الأخطاء

يجب أن تتعامل مع أي استجابات خطأ وتتخذ الإجراء المناسب. حدث خطأ إذا:
  • كان رمز إرجاع الاستجابة ليس 200
  • كانت حالة استجابة JSON error
على سبيل المثال، إذا أزال المستخدم رابط Facebook — غيّر كلمة المرور أو أزال وصول Ayrshare — ستحدث الاستجابة التالية عند النشر مع رمز استجابة 400 Bad Request.
قد يكون الإجراء إشعار المستخدم عبر لوحة التحكم أو الرسائل النصية أو البريد الإلكتروني. مثال آخر إذا كانت صورة Instagram المنشورة بأبعاد أو نسبة خاطئة مع رمز استجابة 400 Bad Request:
قد يكون الإجراء إعادة إرسال الصور بالنسبة الصحيحة.

رموز الأخطاء الخاصة بـ Instagram

توفر رموز الأخطاء التالية تفاصيل محددة حول إخفاقات النشر على Instagram، وتحل محل الخطأ العام 138 حيثما أمكن. الرمز 435 — حد معدل Instagram (HTTP 429) تخضع حسابات Instagram الاحترافية (Business / Creator) لحد متحرك مدته 24 ساعة يبلغ 50 منشورًا في واجهة Meta لنشر المحتوى (لا يمكن للحسابات الشخصية النشر عبر API إطلاقًا وبالتالي لا تصل إلى هذا الحد أبدًا). عند تجاوز الحد، تُعيد Meta خطأ حدّ معدل. يُظهر Ayrshare أيضًا code: 435 عندما تُعيد نقطة نهاية Meta للنشر HTTP 429 مباشرةً أو عندما يشير رمز الخطأ الفرعي الأساسي (1390008) إلى تقييد نشر / تعليق.
الإجراء: انتظر حتى تُعاد نافذة حد المعدل قبل إعادة المحاولة. عندما توفر Meta ترويسة Retry-After، تُمرَّر القيمة (بالثواني) في حقل details — انتظر ذلك على الأقل قبل إعادة الإرسال. الرمز 436 — انتهاء مهلة معالجة وسائط Instagram (HTTP 400) استغرقت Instagram وقتًا طويلًا لمعالجة الوسائط المُحمَّلة. يمكن أن يحدث هذا مع ملفات الفيديو الكبيرة أو خلال فترات الحمل العالي على خوادم Meta.
الإجراء: أعد محاولة المنشور باستخدام نقطة نهاية retry post. إذا استمرت المشكلة، حاول تقليل حجم ملف الوسائط. الرمز 447 — Instagram Trial Reels: graduationStrategy مفقود (HTTP 400) يُعاد عندما يُقدَّم instagramOptions.trialParams على طلب /post لكن graduationStrategy مفقود أو null أو سلسلة فارغة. تتطلب Trial reels استراتيجية تخرّج صريحة — راجع Trial Reels.
الإجراء: عيّن instagramOptions.trialParams.graduationStrategy إلى "MANUAL" أو "SS_PERFORMANCE" وأعد المحاولة، أو أزل trialParams إن لم تكن تنوي نشر trial reel. الرمز 448 — Instagram Trial Reels: graduationStrategy غير صالح (HTTP 400) يُعاد عندما يكون graduationStrategy موجودًا لكنه ليس بالضبط "MANUAL" أو "SS_PERFORMANCE". الفحص حساس لحالة الأحرف — القيم مثل "manual" أو "ss_performance" تُرفض. يعكس حقل details المدخل المرفوض (مقتطعًا إلى 64 حرفًا) للمساعدة في التصحيح.
الإجراء: أرسل graduationStrategy كـ "MANUAL" أو "SS_PERFORMANCE" بالضبط (بأحرف كبيرة، نوع نصي). الرمز 449 — Instagram Trial Reels: وسائط غير متوافقة (HTTP 400) يُعاد عندما لا يكون شكل الوسائط أو المنشور مؤهلًا لـ trial reel. يجب أن تكون trial reels فيديو .mp4 أو .mov واحد — carousels (أكثر من URL واحد) وStories (instagramOptions.stories: true) والامتدادات غير الفيديو كلها مرفوضة. يوضح حقل details أي حالة فرعية أُطلقت.
الإجراء: أرسل عنوان URL واحد لفيديو .mp4 أو .mov بدون علامة stories: true. احذف إدخالات mediaUrls الإضافية، أو أزل trialParams إذا كنت تنوي منشور carousel/story عاديًا. الرمز 258 — خطأ حالة حساب Instagram (HTTP 400) فشل عام في حالة حساب Instagram برسالة أساسية “Error with Instagram.” يظهر هذا عندما ترفض Meta الطلب بسبب حالة حساب Instagram المتصل وليس بسبب محتوى المنشور.
عندما يكون error_subcode الأساسي لـ Meta هو 2207085، تُعيّن الاستجابة أيضًا relink: true وretryAvailable: true، وتوجّه الرسالة المستخدم إلى إلغاء ربط حساب Instagram وإعادة ربطه، مع منح جميع الأذونات:
الإجراء: للحالة الفرعية 2207085، اطلب من المستخدم إلغاء ربط حساب Instagram وإعادة ربطه في Social Accounts، مع منح جميع الأذونات المطلوبة، ثم إعادة محاولة المنشور. لأخطاء حالة الحساب الأخرى، تحقق من أن حساب Instagram في وضع جيد لدى Meta وأعد المحاولة.

إعادة المحاولة متاحة

أحيانًا تواجه الشبكات الاجتماعية خطأً غير قابل للاسترداد، مثل مشكلات الخادم لديها، ويفشل الاستدعاء في نهاية المطاف حتى بعد العديد من المحاولات. في تلك الحالات، سيحدد نظامنا ما إذا كان الخطأ قابلًا للإعادة، وإذا كان الأمر كذلك، فسيكون حقل retryAvailable true.
يمكنك بعد ذلك إعادة الاستدعاء بنفس الحمولة. إذا كانت منشورًا، يمكنك استخدام نقطة نهاية retry post.

أخطاء مفاتيح X/Twitter BYO

رموز الأخطاء التالية خاصة بعمليات مفاتيح X/Twitter BYO (Bring Your Own): الرمز 272 - فشل التحقق من هوية BYO Twitter (HTTP 400) لم يتمكن Ayrshare من تأكيد هويتك على X/Twitter باستخدام مفاتيح المستهلك BYO وعلامات OAuth المخزّنة وقت الربط. يختلف شكل الاستجابة بحسب الاستدعاء الذي أطلقها؛ يُطابق كلا الشكلين نفس الحالات الفرعية الثلاث أدناه. تحقق من أي منها ينطبق بتسجيل الدخول إلى x.com بالحساب الذي يملك BYO Developer App. مسار النشر يُصدر استجابة موجزة:
يُصدر مسار التحليلات رسالة أطول وذاتية التوثيق وقد يتضمن حقل details يحمل نص خطأ X الأصلي:
عند حضوره، يعكس details تلميح جانب X ويُعدّ الإشارة الأكثر موثوقية لأي حالة فرعية أدناه تنطبق. الحساب موقوف. تسجيل الدخول إلى x.com يعرض إشعار إيقاف. الإجراء: اتصل بدعم X. لن تُعيد إعادة الربط الوصول حتى تُعيد X تفعيل الحساب. الحساب مقفل. تسجيل الدخول إلى x.com يعرض تحدي فتح (CAPTCHA، تحقق هاتف، إلخ). الإجراء: أكمل تحدي الفتح على x.com، ثم أعد الطلب. لا يلزم إعادة الربط. عدم تطابق الهوية أو المفتاح. حسابك X في وضع جيد على x.com، لكن مفاتيح المستهلك BYO تنتمي إلى تطبيق X Developer مختلف عن علامات OAuth المخزّنة وقت الربط. الإجراء: أعد ربط X ضمن Social Accounts وصرّح بنفس حساب X الذي يملك BYO Developer App. الرمز 416 — نفاد أرصدة X (HTTP 402) لا يوجد لحساب X Developer الخاص بك أي أرصدة API مُحمَّلة. تتطلب جميع استدعاءات X API أرصدة.
الإجراء: اذهب إلى console.x.com → Billing → Credits واشترِ أرصدة. حتى $5 كافية لمئات استدعاءات API. الرمز 417 — أذونات تطبيق OAuth 1.0a (HTTP 403) لا يمتلك X Access Token الأذونات الصحيحة للعملية المطلوبة.
قد ترى أيضًا ترويسة الاستجابة x-access-level: read، والتي تؤكد أن Access Token الخاص بك تم توليده بأذونات للقراءة فقط. الإجراء: في X Developer Console، حدّث أذونات تطبيقك إلى Read and write and Direct message، ثم أعد توليد Access Token تحت Keys and tokens. سيرث الرمز الجديد الأذونات المُحدَّثة. راجع دليل إعداد مفاتيح X BYO للتفاصيل. الرمز 419 - بيانات اعتماد BYO مفقودة (HTTP 400) تتطلب عمليات X/Twitter بيانات اعتماد API الخاصة بـ BYO في ترويسات الطلب. يُعيد Ayrshare الرمز 419 عندما تكون كلتا الترويستين مفقودتين، وكذلك عندما يكون واحد فقط من الزوج موجودًا. تختلف سلسلة message بحسب أي ترويسة/ترويسات مفقودة. عندما يكون كل من X-Twitter-OAuth1-Api-Key وX-Twitter-OAuth1-Api-Secret مفقودَين:
عندما يكون واحد فقط من الزوج موجودًا (مثلًا، المفتاح دون السر):
الإجراء: أرسل كلًا من X-Twitter-OAuth1-Api-Key وX-Twitter-OAuth1-Api-Secret على كل طلب مُوجَّه إلى X. إذا قدّمت أحدهما دون الآخر، فسيُرفض الطلب بنفس الرمز. راجع مرجع ترويسات مفاتيح X BYO للقائمة الكاملة للترويسات. الرمز 423 — OAuth القديم لـ X/Twitter لم يعد مدعومًا (HTTP 403) يُعاد عندما يعتمد طلب X/Twitter على مسار OAuth القديم (غير BYO)، الذي لم يعد مدعومًا. يتطلب وصول X API الآن بيانات اعتماد X Developer App الخاصة بك، المُقدَّمة عبر ترويسات الطلب.
الإجراء: هيّئ X Developer App وأرسل ترويسات X-Twitter-OAuth1-Api-Key وX-Twitter-OAuth1-Api-Secret في كل طلب مُوجَّه إلى X. راجع دليل إعداد مفاتيح X BYO لخطوات الإعداد الكاملة.

أخطاء تحسين التسميات التوضيحية

الرمز 441 — فشل تحسين التسمية التوضيحية (HTTP 502) يُعاد عندما يفشل تحسين تسمية توضيحية (مثل shortenLinks) لمنصة واحدة أو أكثر أثناء تحضير منشور. تظهر كل منصة متأثرة في مصفوفة errors مع source: "handlePostAdditions" وcode: 441. عندما تفشل بعض المنصات فقط، تُنشر المنصات الأخرى بنجاح وتظهر نتائجها في postIds. في تلك الحالة يكون status على المستوى الأعلى "error" لكن postIds غير فارغ — يجب أن يعامل العملاء status وerrors[] كمتكاملَين وليس متنافيَين.
إذا فشل جميع المنصات في التحسين، تكون الاستجابة code: 441 على المستوى الأعلى مع HTTP 502 ولا يُنشأ أي منشور:
الإجراء: إخفاقات تحسين التسميات التوضيحية عابرة عادةً (خدمة الاختصار أو التحسين الأساسية أعادت خطأً).
  • إذا كان postIds غير فارغ (نشرت بعض المنصات بنجاح)، لا تعِد إرسال مجموعة المنصات الكاملة — سيؤدي ذلك إلى تكرار المنشور على المنصات الناجحة. بدلًا من ذلك، افحص errors[] لتحديد المنصات الفاشلة وأعد الطلب مع تلك المنصات فقط، أو اعتمد على تدفق إعادة المحاولة الآمن من التكرار لديك.
  • إذا كان postIds فارغًا أو مفقودًا (فشل تام وقت الجدولة/النشر)، أعد إرسال الطلب الكامل بأمان.
  • إذا استمر الفشل، أرسل المنشور بدون علامة التحسين (مثلًا، احذف shortenLinks) أو اتصل بالدعم.

أخطاء جلب الوسائط / وصول الزاحف

الرمز 440 — لم تتمكن الشبكة الاجتماعية من تنزيل الوسائط (HTTP 400) يُعاد عندما لا يستطيع زاحف نشر المنصة تنزيل mediaUrl الذي قدّمته — الأسباب الأكثر شيوعًا هي أن robots.txt أو قاعدة WAF / bot-fight تحجب الزاحف (مثل facebookexternalhit من Meta). تأتي سلسلة details من المنصة الأعلى، وغالبًا ما تكون نص الخطأ 2207052 من Meta/Instagram.
الرمز 138 — جلب وسائط Instagram محجوب (HTTP 400) الرمز الاحتياطي لإخفاقات جلب وسائط Instagram عندما تكون الاستجابة الأعلى أقل تحديدًا من تلك التي تُطلق الرمز 440. تحتوي سلسلة details عادةً على "Restricted by robots.txt" أو "HTTP error code 403". يُستخدم الرمز 138 أيضًا لمشكلات نسبة العرض / التنسيق وأخطاء Instagram عامة أخرى، لذا يمكن التعرف على النسخة الخاصة بجلب الوسائط عبر سلسلة details.
الرمز 379 — خطأ نشر Threads يُعاد عندما يفشل النشر على Threads. غالبًا ما يكون السبب هو نفس مشكلة جلب الوسائط الخاصة بالرموز 440 / 138 عند النشر على كلا المنصتين بنفس mediaUrl. لا تُعيد Threads API سلاسل تفاصيل، لذا يتطلب التشخيص عادةً التحقق من وجود 440 أو 138 مصاحب لـ Instagram في نفس النشر.
الإجراء: راجع Meta Media Crawler Blocked لاستكشاف الأخطاء الكامل، بما في ذلك مقتطفات robots.txt وأمر تحقق.

حد معدل تحليلات Facebook

الرمز 444 — حد معدل تحليلات صفحة Facebook (HTTP 429) يُعاد عندما تكون صفحة Facebook قد تجاوزت حد معدل Meta لكل صفحة على نقطة نهاية التحليلات. خطأ Meta الأساسي هو 80001 (“There have been too many calls to this Page account.”). تبقى الصفحة مرتبطة ويستمر النشر بالعمل — تُقيَّد فقط تفرعات التحليلات لتلك الصفحة. عند اكتشاف التقييد لمنشور واحد في استجابة /history/facebook أو analytics، يحمل كل منشور متأثر code: 444 عند facebook.code مع errCode: 80001:
الإجراء: انتظر بضع دقائق وأعد المحاولة. تُحلّ نافذة حد المعدل لكل صفحة من Meta عادةً خلال ساعة دون أي إجراء على الصفحة. لا تطلب من المستخدم إعادة ربط الحساب — هذا تقييد عابر من جانب Meta وليس فشل تصريح.
إذا كنت تتعامل مع هذه الحالة سابقًا كـ code: 161 (“Facebook authorization error … unlink and re-link”)، فحدّث تكاملك للتعرف على code: 444 وأعد المحاولة مع تراجع تصاعدي بدلًا من بدء تدفق إعادة ربط. تم تصحيح تصنيف 161 في أبريل 2026.

التحقق من هوية Meta

الرمز 326 — مطلوب التحقق من هوية Meta (HTTP 403) يُعاد عندما تتطلب Meta تحققًا إضافيًا من الهوية للحساب المتصل قبل قبول الطلب. ينطبق ذلك عبر منصات Meta — Facebook وInstagram وFacebook Groups وThreads وMessenger. إعادة توصيل الحساب لا تحل هذا؛ يجب إكمال التحقق من جانب Meta.
الإجراء: اطلب من مالك الحساب إكمال التحقق من هوية Meta في Meta Business Support، ثم أعد الطلب. لا تطلب من المستخدم إعادة ربط الحساب — إعادة الربط لن تُزيل هذا المطلب.

تقييد حساب Facebook

الرمز 476 — تقييد حساب Facebook (HTTP 400) يُعاد عندما يفشل منشور إلى Facebook لأن Meta وضعت تقييدًا على الحساب (رموز Meta الفرعية 2424009 و1404078، أو صياغة التقييد من Meta عندما لا يحمل الخطأ رمزًا فرعيًا). هذا تقييد على مستوى الحساب، وليس عارضًا مؤقتًا في النشر — إنه غير قابل للإعادة ولا يحمل علامة retryAvailable. إعادة إرسال نفس المنشور لن تنجح حتى يُحل التقييد مع Meta. يبقى الحساب مرتبطًا بـ Ayrshare؛ لا يلزم إعادة ربط. لا تُعيد Meta سبب التقييد المحدد عبر API، لذا يجب على العميل التحقق من صفحة حالة حساب Meta مباشرةً لرؤية السبب والاستئناف. عندما تقدم Meta نصها الخاص، يعرضه Ayrshare في حقل details. يُرسل Ayrshare أيضًا بريدًا إلكترونيًا إخطاريًا لمالك الحساب عند اكتشاف التقييد.
الإجراء: سجّل الدخول إلى Facebook، انقر على صورة ملفك الشخصي (أعلى اليمين)، افتح قسم Help وحدد Account Status. يعرض مساعد الدعم من Meta هناك سبب التقييد المحدد ويتيح لك الاستئناف. نظرًا لأن التقييد تفرضه Meta على مستوى الحساب، فإن هذا الرمز غير قابل للإعادة — لا تُبنِ منطق إعادة المحاولة التلقائية حوله؛ حُل التقييد مع Meta أولًا.

أخطاء تحويل تنسيق الصورة

يحوّل Ayrshare تلقائيًا صور WebP وHEIC وAVIF إلى JPEG قبل النشر على المنصات التي لا تقبلها (Instagram وLinkedIn وTikTok وGoogle My Business وThreads وSnapchat لـ WebP؛ جميع المنصات لـ HEIC وAVIF). يعمل التحويل بشفافية وقت الإرسال. تُطلق الأخطاء الثلاثة أدناه فقط عندما لا يستطيع خط التحويل نفسه الإكمال؛ إذا كانت الصورة المصدر بالفعل بتنسيق مدعوم، فلن تُحاول أي تحويل ولن تظهر هذه الرموز. الرمز 450 — فشل تحويل تنسيق الصورة (HTTP 400) نُزّلت الصورة لكن لم يُتمكن من إعادة ترميزها كـ JPEG. الأسباب الأكثر شيوعًا ملف مصدر تالف، أو تنسيق داخلي غير متوقع داخل الحاوية، أو صورة تتجاوز الحد الأقصى لحجم التحويل.
الإجراء: افتح mediaUrl المصدر مباشرةً في متصفح للتأكد من عرضه. إذا فُتح، أعد تصدير الصورة إلى JPEG أو PNG نظيف وأعد المحاولة. الرمز 451 — فشل تنزيل الصورة للتحويل (HTTP 400) لم يتمكن خط التحويل من جلب الصورة المصدر. الأسباب النموذجية تشمل استجابة 4xx/5xx من الأصل، أو انتهاء مهلة الشبكة، أو سلسلة إعادة توجيه تتجاوز حد القفزات، أو URL يُحل إلى عنوان غير عام (محجوب بحارس SSRF). يحمل حقل details، عند حضوره، سلسلة السبب الأساسي.
الإجراء: تأكد من أن mediaUrl قابل للوصول عامًا (بدون تصريح، بدون حجوبات robots.txt، يُحل عبر HTTPS). إذا أعاد الـ URL توجيهًا، تأكد من أن الوجهة النهائية عامة أيضًا وليست على شبكة خاصة. الرمز 452 — فشل تحميل الصورة المُحوَّلة (HTTP 500) نجح التحويل لكن Ayrshare لم يتمكن من تخزين JPEG المُحوَّل مؤقتًا في حاوية التخزين المؤقتة. هذا فشل داخلي في جانب Ayrshare وقابل للإعادة.
الإجراء: أعد محاولة المنشور. إذا استمر الخطأ عبر عدة محاولات، اتصل بالدعم مع mediaUrl والطابع الزمني التقريبي.

أخطاء تحميل YouTube العابرة

توفر رموز الأخطاء التالية إشارات محددة لإخفاقات تحميل YouTube العابرة عادةً والآمنة للإعادة. تتضمن كلتا الاستجابتين retryAvailable: true، بحيث يمكن للتكاملات التفرّع على تلك القيمة المنطقية بدلًا من رمز حالة HTTP. معظم استجابات code: 176 السابقة لتحميلات YouTube تُوَّجّه الآن إلى 453 (انتهاء مهلة عابر) أو 454 (خدمة غير متوفرة عابرة)، وكلاهما مع retryAvailable: true. إذا كان تكاملك يُصفّي على HTTP 500 لإعادة تحميلات YouTube، فبدّل إلى التصفية على حقل retryAvailable في جسم الاستجابة. الرمز 453 — انتهت مهلة تحميل YouTube (HTTP 504) يُعاد عندما تنتهي مهلة خط استيعاب YouTube من Google أثناء قبول التحميل. عادةً ما يكون هذا عابرًا ويحل نفسه في غضون دقيقة أو دقيقتين.
الإجراء: أعد محاولة المنشور بعد 1-2 دقيقة مع تراجع تصاعدي. تفرّع على حقل retryAvailable في جسم الاستجابة بدلًا من حالة HTTP لاكتشاف الإخفاقات القابلة للإعادة. يمكنك استخدام نقطة نهاية retry post لإعادة إرسال نفس الحمولة. الرمز 454 — خدمة تحميل YouTube غير متوفرة مؤقتًا (HTTP 503) يُعاد عندما تعيد نقطة نهاية تحميل YouTube حالة 5xx، أو عندما يُعاد تعيين الاتصال بـ YouTube أو تنتهي مهلته على مستوى المقبس (ECONNRESET، ETIMEDOUT، ESOCKETTIMEDOUT). هذه الحالات عابرة.
الإجراء: أعد محاولة المنشور مع تراجع تصاعدي. تفرّع على حقل retryAvailable في جسم الاستجابة بدلًا من حالة HTTP لاكتشاف الإخفاقات القابلة للإعادة. يمكنك استخدام نقطة نهاية retry post لإعادة إرسال نفس الحمولة.

أخطاء صور YouTube المصغّرة الرمز 307

يُعاد الرمز 307 عندما لا يمكن تطبيق thumbNail مخصص لـ YouTube. عندما ينشر الفيديو نفسه بنجاح، فإن هذا لا يُفشل المنشور — تبقى نتيجة YouTube بحالة status: "success" ويظهر الفشل بشكل إضافي في مصفوفة warnings (feature: "thumbnail"، code: 307). يُحتفظ بالكائن الفرعي القديم thumbnail للتوافق العكسي. السبب الأكثر شيوعًا هو قناة YouTube غير مُتحقّق منها. عندما لم تُكمل قناة التحقق الهاتفي، يُعيد YouTube 403 أعلى مع الرسالة العامة "The authenticated user doesn't have permissions to upload and set custom video thumbnails". تبدو تلك الصياغة مثل مشكلة OAuth، لكنها عمليًا مشكلة تحقق دائمًا تقريبًا، لذا تحقق من القناة أولًا. إعادة ربط حساب YouTube هو سبب ثانوي.
يتحقق Ayrshare أيضًا من الصورة المصغّرة قبل النشر حيثما أمكن: يجب أن يكون الملف PNG أو JPG/JPEG، و2 ميجابايت أو أقل، ومُقدَّمًا من URL يمكن الوصول إليه. لا تُفشل مشكلة الصورة المصغّرة المنشور أبدًا — يُنشر الفيديو دائمًا ويظهر الفشل دائمًا كإدخال warnings غير قاتل (يبقى status على المستوى الأعلى "success"). يصح ذلك بغض النظر عن متى تُكتشف المشكلة:
  • مُلتقطة قبل التحميل. عندما يستطيع التحقق قبل النشر أن يجزم أن الصورة المصغّرة غير صالحة (نوع ملف خاطئ، أكثر من 2 ميجابايت مؤكدًا، أو URL غير قابل للوصول)، يتخطى Ayrshare الصورة المصغّرة، لا يزال ينشر الفيديو، ويُبلّغ عن السبب الدقيق في warnings — لذا تتجنب محاولة تحميل محكوم عليها بالفشل وتحصل على رسالة أوضح من تلك التي يُعيدها المزود.
  • مُلتقطة بعد التحميل. عندما يمكن اكتشاف الفشل فقط بمجرد أن يعالج YouTube الطلب (مثلًا 403 القناة غير المُتحقّق منها، أو 413 لصورة كبيرة الحجم)، فإن الفيديو مباشر بالفعل ويظهر الفشل في نفس مصفوفة warnings.
في كلتا الحالتين، تبدو الاستجابة مثل مثال status: "success" + warnings الموضّح سابقًا في هذا القسم. الإجراء: تحقق من قناة YouTube الخاصة بك على https://www.youtube.com/verify (تحقق هاتفي). إذا كانت قناتك مُتحقّقة بالفعل ولا تزال الصور المصغّرة تفشل، فألغِ ربط حساب YouTube وأعد ربطه في Social Accounts وامنح جميع الأذونات. راجع YouTube Thumbnail Not Applied (Unverified Channel) لدليل استكشاف الأخطاء الكامل.

أخطاء النشر على Reddit

الرمز 442 — Subreddit محظور على Reddit (HTTP 400) يُعاد عندما يُحظر الحساب من النشر على الـ subreddit المستهدف. لا يمكن إعادة المحاولة — لن ينجح المنشور إذا أُعيد إرساله كما هو. تتضمن الرسالة اسم الـ subreddit المتأثر (مثل r/news).
الإجراء: أزل الـ subreddit المحظور من الـ subreddits المستهدفة. إعادة محاولة المنشور دون تغيير لن تنجح. الرمز 443 — كلمة غير مسموح بها في عنوان Reddit (HTTP 400) يُعاد عندما يرفض subreddit المنشور لأن عنوانه يحتوي على كلمة غير مسموح بها. عدّل العنوان قبل إعادة المحاولة — إعادة الإرسال كما هو لن تنجح. تتضمن الرسالة اسم الـ subreddit المتأثر (مثل r/news).
الإجراء: عدّل عنوان المنشور لإزالة الكلمة غير المسموح بها، ثم أعد المحاولة.

أخطاء الاعتدال

الرمز 438 — مدخل الاعتدال مرفوض (HTTP 400) يُعاد بواسطة POST /validate/moderation عندما يرفض مزود الذكاء الاصطناعي المدخل المُقدَّم — على سبيل المثال، نوع ملف غير مدعوم. هذه مشكلة مدخلات مع الطلب، وليست فشل معالجة عابر.
الإجراء: تحقق من أن مدخل الاعتدال صالح ويستخدم نوع ملف مدعوم، ثم أعد الإرسال.
قارن الرمز 438 مع الرمز 331. يغطي الرمز 331 نفس سيناريو الاعتدال لكنه يمثّل فشل معالجة حقيقيًا من جانب المزود (HTTP 500، الرسالة “There was an issue with the AI processing. Please try again.”). الرمز 331 فشل عابر من جانب الخادم يمكنك إعادة محاولته، بينما يشير الرمز 438 إلى أن المدخل نفسه رُفض ويجب تصحيحه قبل إعادة المحاولة.

أخطاء تحليلات LinkedIn

الرمز 475 — أعد ربط ملف LinkedIn للحصول على التحليلات (HTTP 403) يُعاد بواسطة POST /analytics/post وPOST /analytics/social لملف LinkedIn شخصي (عضو) رُبط قبل شحن تحليلات الأعضاء. تفتقر هذه الملفات إلى نطاقات تحليلات أعضاء LinkedIn (r_member_postAnalytics، r_member_profileAnalytics)، لذا يرفض LinkedIn طلب التحليلات. لا يتأثر النشر.
الإجراء: اطلب من مالك الحساب إعادة ربط ملف LinkedIn الخاص به في Social Accounts لمنح نطاقات التحليلات الجديدة، ثم أعد محاولة طلب التحليلات. بعد إعادة الربط، انتظر بضع دقائق قبل أن يُمسح الخطأ: يُخزّن Ayrshare هذا الخطأ مؤقتًا لفترة قصيرة كما يُخزّن LinkedIn أيضًا أذونات الرمز، لذا يمكن لملف تمت إعادة ربطه أن يستمر في إعادة الرمز 475 لمدة تصل إلى ~5-10 دقائق قبل نجاح التحليلات.

أخطاء تعليقات TikTok

الرمز 288 — تعليق TikTok مؤجل / المنشور لا يزال في المعالجة (HTTP 400) يعالج TikTok الفيديوهات بشكل غير متزامن، لذا فإن id للمنشور المُنشور حديثًا هو "pending" حتى يحل webhook post.publish.publicly_available من TikTok معرّف الفيديو الحقيقي. يُرفض طلب get-comments أو تعليق أو رد على منشور لا يزال في المعالجة (أو id هو "failed") قبل أي استدعاء لـ TikTok ويُعاد الرمز 288 بدلًا من فشل عام.
الإجراء: انتظر حتى ينتهي TikTok من المعالجة، ثم أعد المحاولة. استمع إلى tikTokPublished Scheduled Action webhook أو استعلم /history حتى يصبح id المنشور معرّف الفيديو الرقمي المحلول. يُنشر تعليق أول تلقائيًا بمجرد أن يُحل المنشور، لذا لا يلزم إعادة محاولته. لمنشور "failed" بدلًا من ذلك تُشير الرسالة إلى أن الفيديو فشل في النشر ولن يُنفَّذ الإجراء.

ترجمة رسالة الخطأ

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