قبل استخدام هذه النقطة النهائية، أكمل دليل البدء السريع للحصول على مفتاح API ومعرّف الشركة.
المتطلبات الأساسية
- ✅ رمز Bearer صالح لعضو مساحة عمل معتمد
- ✅ معرّف الشركة المسترد من
GET {{URL}}/accounts/companies - ✅ معرّف الطلب (معرّف المشروع،
pid) للطلب الذي تريد تحديثه
النقطة النهائية
multipart/form-data — استخدم هذا حتى عند عدم إرفاق ملفات لإرضاء محلل multipart الخاص بالخادم.
الترويسات
| الترويسة | مطلوبة | الوصف |
|---|---|---|
Authorization | نعم | Bearer <ACCESS_TOKEN> — رمز وصول العضو المسجّل. |
companyid | نعم | معرّف Mongo ObjectId للشركة التي ينتمي إليها الطلب. |
clientid | اختياري | معرّف مقبس العميل في الوقت الفعلي. عند توفيره، تتضمنه الإشعارات. |
معاملات الاستعلام
معرّف الطلب / المشروع المراد تحديثه. مرر هذا كمعامل سلسلة استعلام.
حقول نص الطلب
يُحدِّث عنوان الطلب. الحد الأدنى حرفان.
الحالة الجديدة للطلب. يجب أن تكون إحدى:
Pending، Ongoing، Review، Completed، Cancelled.الانتقالات المسموح بها:Reviewلا يمكن أن يتبع إلاOngoingأوReviewأخرى. الانتقال منPendingمباشرةً إلىReviewيُعيد400 ValidationError.- الطلبات التي حالتها
CompletedأوCancelledبالفعل لا يمكن تحديثها. - لا يمكن للعملاء إلغاء طلب تجاوز مرحلة
Pending.
رقم الميزانية الإجمالية. يجب أن يكون
≥ 0. يستخدم العملة الحالية للطلب ما لم يتم توفير currency أيضًا.رمز العملة للميزانية. أمثلة:
USD، CAD، EUR.عدد الوحدات المشتراة للحزمة. يجب أن يكون
≥ 1.سلسلة تاريخ ISO 8601 لتاريخ استحقاق الطلب. مثال:
"2025-12-31T00:00:00.000Z".سلسلة تاريخ ISO 8601 لتاريخ بدء المشروع.
ملاحظات داخلية مرئية لفريقك.
موجز العميل أو ملخص المشروع.
القائمة الكاملة لمعرّفات أعضاء مديري المشاريع المراد تعيينهم لهذا الطلب. تُضاف المعرّفات الجديدة إلى الفريق؛ وتُحذف المعرّفات المُزالة. يجب أن ينتمي كل معرّف إلى عضو له دور
projectManager داخل نفس الشركة.مطلوب عندما تكون
status هي Completed أو Cancelled. عند تعيينه على true، تُحدَّث حالة جميع المهام في الطلب إلى منجزة بعد تغيير الحالة. عند false، تبقى المهام في حالتها الحالية.مسموح به فقط عندما تكون
status هي Completed أو Cancelled. عند تعيينه على true، تُرفض جميع مهام العملاء المعلقة بعد تحديث الحالة.مطلوب فقط لطلبات الاشتراك عند تغيير تكرار التكرار. اقرنه بـ
repeatDuration.مطلوب جنبًا إلى جنب مع
repeatCount لطلبات الاشتراك. إحدى: day، week، month، year.حد اختياري لدورات الفوترة المتكررة. الإعداد الافتراضي
0 (بلا حد).كيفية التعامل مع كل دورة فوترة. إحدى:
createOrderWithTask، noChange.صفر أو أكثر من مرفقات الملفات. تُضاف الملفات إلى مجلد النظام الخاص بالطلب؛ ولا تُستبدل الملفات الموجودة أبدًا. استخدم ترميز
multipart/form-data وأرفق كل ملف تحت حقل files.مثال على الطلب
الاستجابات
| حالة HTTP | الوصف |
|---|---|
200 OK | نجح التحديث. |
400 ValidationError | معرّف طلب غير صالح، أو انتقال حالة محظور، أو حمولة مشوهة. تتضمن الاستجابة fieldName عند الاقتضاء. |
403 PermissionError | المُستدعي ليس عضوًا معتمدًا، أو يفتقر إلى دور الشركة، أو انتهت صلاحية اشتراك مساحة العمل، أو حاول عميل إلغاءً محظورًا. |
500 Internal Server Error | استثناء غير معالج — تحقق من سجلات الخادم. |
استجابة النجاح
قواعد العمل والتأثيرات الجانبية
- انتقالات الحالة مقيّدة.
Reviewلا يمكن أن يتبع إلاOngoingأوReviewأخرى. محاولةPending → Reviewتُعيد400 ValidationError. - نقل الحالة من
PendingإلىOngoingأوReviewأوCompletedيُفعِّل مجلد ملفات الطلب حتى تصبح الملفات المرفوعة متاحة لفريق المشروع. - تعيين
statusإلىCompletedأوCancelledيتطلب تعيينmarkTasksAsDoneصراحةً إلىtrueأوfalse. - تغييرات الحالة إلى
ReviewأوCompletedأوCancelledتُشغّل تلقائيًا إشعارات العميل:- Review — يُخطر العميل بأن المراجعة مطلوبة.
- Completed — يرسل إشعار
orderCompletionللعميل. - Cancelled — يرسل إشعار
orderCancellationللعميل.
- كل تحديث ناجح يُشغّل حدث webhook
ORDER.UPDATEDمع وثيقة الطلب المحدّثة وبيانات تعريف المرفق، إذا كان لديك webhook نشط مشترك في ذلك الحدث.

