الحصول على حالة الاستيراد#
تقوم نقطة نهاية الحالة بإرجاع مهمة الاستيراد الحالية أو الأحدث للمتجر.
GET https://sdkapi.ideal.house/product-import/products/status?shopId=<SHOP_ID>
معلمات الاستعلام#
| الميدان | النوع | مطلوب | القيود | الوصف |
|---|---|---|---|---|
shopId | string | نعم | الحد الأقصى 64 حرفا | معرف المتجر المستخدم عند إرسال الدفعة. (Shop ID) |
مثال cURL#
curl --request GET \
'https://sdkapi.ideal.house/product-import/products/status?shopId=shop_123' \
--header 'X-Client-Id: <YOUR_CLIENT_ID>' \
--header 'X-Client-Secret: <YOUR_CLIENT_SECRET>'
حقول الاستجابة#
| الميدان | النوع | الوصف |
|---|---|---|
jobId | string | معرف مهمة الاستيراد. |
shopId | string | المتجر المرتبط بالمهمة. |
status | string | واحد من pending, running, completedأو failed. |
totalCount | number | إجمالي عدد المنتجات المقدمة. |
processedCount | number | عدد المنتجات التي تمت معالجتها حتى الآن. |
successCount | number | عدد المنتجات التي تم إنشاؤها أو تحديثها بنجاح. |
failedCount | number | عدد المنتجات التي فشلت أثناء المعالجة على مستوى العنصر. |
failures | array | حالات الفشل على مستوى العنصر. يكون فارغًا عند عدم حدوث أي فشل على مستوى العنصر. |
createdAt | string | وقت إنشاء المهمة بتنسيق ISO 8601. |
startedAt | string or null | وقت بدء المعالجة بتنسيق ISO 8601. |
updatedAt | string | آخر وقت لتحديث المهمة بتنسيق ISO 8601. |
completedAt | string or null | وقت انتهاء المهمة بتنسيق ISO 8601. |
error | string or null | خطأ على مستوى المهمة. يُملأ هذا الحقل عادةً فقط عندما تكون قيمة status هي failed. |
processedCount يساوي successCount + failedCount.
يؤكد successCount إنشاء المنتج أو تحديثه في الكتالوج. لا يعني ذلك بالضرورة نجاح معالجة الصورة أو جاهزية المنتج للعرض فورًا.
كل كائن في failures يحتوي على:
| الميدان | النوع | الوصف |
|---|---|---|
index | number | موضع المنتج في المصفوفة الأصلية products، مع بدء العد من الصفر. |
sku | string | SKU للمنتج الفاشل. |
message | string | وصف الفشل. لا تقم ببناء منطق التطبيق الذي يعتمد على نص الرسالة الدقيق. |
حالات المهمة#
| الحالة | معنى | الإجراء الموصى به |
|---|---|---|
pending | قُبل الطلب وهو ينتظر بدء التنفيذ. | واصل الاستعلام عن الحالة دوريًا. |
running | تجري معالجة المنتجات. | واصل الاستعلام عن الحالة واستخدم حقول العد لعرض التقدم. |
completed | انتهت معالجة الدفعة. قد تكون معالجة بعض المنتجات قد فشلت. | تحقّق من failedCount وfailures. |
failed | أدى خطأ على مستوى المهمة إلى منع اكتمال الدفعة بشكل طبيعي. | افحص error، ثم أعد المحاولة كما هو موضح أدناه. |
مهمة مكتملة مع فشل على مستوى العنصر#
{
"jobId": "1930000000000000000",
"shopId": "shop_123",
"status": "completed",
"totalCount": 2,
"processedCount": 2,
"successCount": 1,
"failedCount": 1,
"failures": [
{
"index": 1,
"sku": "SKU-10002",
"message": "Unable to import the remote image"
}
],
"createdAt": "2026-07-21T06:30:00.000Z",
"startedAt": "2026-07-21T06:30:00.010Z",
"updatedAt": "2026-07-21T06:30:08.000Z",
"completedAt": "2026-07-21T06:30:08.000Z",
"error": null
}
تعني الحالة completed انتهاء سير عمل الدفعة؛ ولا تعني نجاح كل منتج. لا يوقف فشل عنصر معالجة المنتجات الأخرى في الدفعة نفسها.