مرجع API · الكتالوج

قائمة الفئات الفرعية لفئة

GET/v1/wallets/{walletId}/catalog/categories/{categoryId}/subcategories

الفئات الفرعية تحت فئة واحدة. مقسّمة إلى صفحات بمؤشر.

الصلاحيةcatalogue:read
المصادقةقراءة موقَّعة
ردّ أنيسغير موقَّع
حدود الموظفين التي يُحتسب ضمنهاكل الاستدعاءات
حزمة SDK لـ ‎.NETanis.Catalogue.ListSubcategoriesAsync(walletId, categoryId)

المعاملات

الاسمالموضعالنوعملاحظات
walletIdإلزاميpathUUIDمعرّف UUID بأحرف صغيرة مع الشرطات.
categoryIdإلزاميpathUUIDمعرّف UUID بأحرف صغيرة مع الشرطات.
cursorاختياريquerystringقيمة nextCursor من الصفحة السابقة، تُعاد كما استُلمت بالضبط. اتركها للصفحة الأولى.

الاستدعاء

موقَّعة بمفتاحك. بلا محتوى وبلا رقم استخدام لمرة واحدة (nonce).

الترويسات: Signature-Input، Signature، X-Anis-Date، Accept-Language (اختياري). تضبطها حزم SDK كلها نيابةً عنك.

المحتوى: لا يوجد.

الردود

الحالةالمعنىالمحتوى
200نجاح.CatalogueCollection
400مرفوض: الاستدعاء الموقّع غير سليم البنية.مشكلة
401مرفوض: لم تتم المصادقة.مشكلة
403مرفوض: غير مسموح.مشكلة
404مرفوض: غير موجود، أو ليس لك.مشكلة
422مرفوض: الاستدعاء يخالف قاعدة.مشكلة
429مرفوض: بلغتَ حدًا.مشكلة
503لا قرار: خدمة مطلوبة غير متاحة.مشكلة

ردود هذا الاستدعاء غير موقَّعة — لا ترويسة Signature ولا Signature-Input، سواء في النجاح أو الرفض. لا شيء تتحقق منه؛ فحماية TLS تكفيها. وتبقى Content-Digest و X-Request-Id موجودتين.

حالات الرفض

رفض هذا الاستدعاء مشكلةٌ بلا توقيع. ابنِ منطقك على رمزها code؛ وكلٌّ منها يرتبط بصفحة تشرح معناه وما عليك فعله.

الخطأالرمزالحالة
بيانات اعتماد غير صالحةinvalid_credentials401
استدعاء موقّع غير سليم البنيةmalformed_signed_request400
صلاحية غير كافيةinsufficient_scope403
عنوان المصدر غير مسموحsource_ip_not_allowed403
تجاوزت حدّ الاستدعاءاتrate_limited429
الحساب غير مخوَّلbinding_not_authorized403
الحساب غير فعّالaccount_inactive403
المحفظة غير ممنوحةwallet_not_granted404
غير موجودresource_not_found404
فشل التحققvalidation_failed422
الخدمة غير متاحةdependency_unavailable503
انتهت مهلة الاستدعاءrequest_timeout504
خطأ داخليinternal_error500

الأنواع

CatalogueCollection

الحقلالنوعملاحظات
itemsموجود دائمًاlist of CatalogueObjectالفئات أو الفئات الفرعية أو البطاقات في هذه الصفحة — كل مسار قائمة يُرجع نوعًا واحدًا.
nextCursorstringمرّره في cursor للحصول على الصفحة التالية. غير موجود في الصفحة الأخيرة.

CatalogueObject

واحد من: CatalogueCategory, CatalogueSubcategory, CatalogueCard — كل مسار يُرجع نوعًا واحدًا منها بالضبط.

CatalogueCategory

الحقلالنوعملاحظات
idموجود دائمًاUUIDمعرّف الفئة.
nameLocalizedTextاسم الفئة، بالعربية والإنجليزية.
descriptionLocalizedTextوصف، بالعربية والإنجليزية.
logostringعنوان صورة شعار الفئة.
typestringهل الفئة محلية أم دولية. القيم: local, international
inStockموجود دائمًاbooleanهل يمكن شراء أي شيء فيها الآن.
displayOrderموجود دائمًاintegerترتيب عرض الفئات — الأصغر أولًا.

LocalizedText

الحقلالنوعملاحظات
arstringالنص العربي؛ يُحذف حين يكون فارغًا.
enstringالنص الإنجليزي؛ يُحذف حين يكون فارغًا.

CatalogueSubcategory

الحقلالنوعملاحظات
idموجود دائمًاUUIDمعرّف الفئة الفرعية.
categoryIdموجود دائمًاUUIDالفئة التي تتبع لها.
categoryTypestringهل الفئة التي تتبع لها محلية أم دولية. لا يظهر إن لم تحدده أنيس. القيم: local, international
nameLocalizedTextاسم الفئة الفرعية، بالعربية والإنجليزية.
descriptionLocalizedTextوصف، بالعربية والإنجليزية.
disclaimeranyملاحظة أنيس الحالية لمشتري بطاقات هذه الفئة الفرعية، بالعربية والإنجليزية. اعرضها على عميلك النهائي قبل أن يشتري. غير موجودة حين لا توجد ملاحظة.
logostringعنوان صورة شعار الفئة الفرعية.
isBestSellingموجود دائمًاbooleanعلّمتها أنيس بأنها من الأكثر مبيعًا.
displayOrderموجود دائمًاintegerترتيب عرض الفئات الفرعية — الأصغر أولًا.
availableموجود دائمًاbooleanهل يمكن الشراء منها الآن.

CatalogueCard

الحقلالنوعملاحظات
idموجود دائمًاUUIDمعرّف البطاقة — وهو cardId الذي يحمله طلب الشراء.
subcategoryIdموجود دائمًاUUIDالفئة الفرعية التي تتبع لها.
nameLocalizedTextاسم البطاقة، بالعربية والإنجليزية.
faceValuestringالقيمة المطبوعة على البطاقة، إن وُجدت.
unitPriceMoneyالسعر الذي تدفعه هذه المحفظة. أرسله دون تغيير في expectedUnitPrice لطلب الشراء. البطاقة التي لا تملكه لا يمكن بيعها لهذه المحفظة.
businessPriceMoneyللعرض فقط. طلب الشراء بهذا السعر قد يُرفض بـ price_changed.
personalPriceMoneyسعر التجزئة، ويُعرض فقط ما دام أعلى من سعر الأعمال. للعرض فقط.
hasSpecialOfferموجود دائمًاbooleanهل يوجد عرض خاص.
specialOfferPriceMoneyسعر العرض، ويُعرض فقط مع العرض الخاص. للعرض فقط.
availableموجود دائمًاbooleanهل يمكن شراء البطاقة الآن.
minimumQuantityموجود دائمًاintegerدائمًا 1: الحد الأدنى لطلب الشراء على المنصة.
maximumQuantityموجود دائمًاintegerحدّ طلب الشراء على المنصة: 100. ويُفحص المخزون والإتاحة بصورة مستقلة.
logostringعنوان URL مطلق لشعار الفئة الفرعية؛ يُحذف حين يكون فارغًا.
categoryobjectالفئة، بمعرّفها واسمها المحلي.
category.idUUIDمعرّف الفئة.
category.nameLocalizedTextاسم الفئة بالعربية والإنجليزية.
category.typestringهل الفئة محلية أم دولية. لا يظهر إن لم تحدده أنيس. القيم: local, international

Money

الحقلالنوعملاحظات
amountموجود دائمًاstringنص عشري، وليس عدد JSON. قد يكون رصيد المحفظة سالبًا عند استخدام الدين المسموح. تتبع الأسعار والإجماليات قواعد المبلغ لكل مسار.
currencyموجود دائمًاstringرمز عملة من ثلاثة أحرف كبيرة، مثل LYD. اقرأ عملة المحفظة من balance.currency.
asOfstring (date-time)وقت قراءة هذا السعر أو الرصيد.