مرجع API · طلبات الشراء

قراءة طلب شراء

GET/v1/orders/{operationId}

أين وصل طلب الشراء، وأي طلب هو: مرجعك والبطاقة والكمية — والإجمالي بعد أن يكتمل. لا يحمل رموز البطاقات أبدًا ولا يدفع الطلب إلى الأمام — لاستئناف طلب شراء أرسله مجددًا.

الصلاحيةorders:read
المصادقةقراءة موقَّعة
ردّ أنيسموقَّع
حدود الموظفين التي يُحتسب ضمنهاكل الاستدعاءات
حزمة SDK لـ ‎.NETanis.Orders.GetAsync(operationId)
  • مسموح بصلاحية orders:read، أو بصلاحية orders:create لطلباتك أنت.
  • في طلب شراء فشل، يقول failureCode السبب.

المعاملات

الاسمالموضعالنوعملاحظات
operationIdإلزاميpathUUIDمعرّف UUID بأحرف صغيرة مع الشرطات.

الاستدعاء

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

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

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

الردود

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

كل ردّ على هذا الاستدعاء موقَّع من أنيس — النجاح وكل رفض. اشترط وجود التوقيع وتحقّق منه قبل أن تتصرف بناءً على الردّ؛ والردّ بلا توقيع فشل، لا يُعدّ ردًّا (كيف).

حالات الرفض

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

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

الأنواع

Order

الحقلالنوعملاحظات
operationIdموجود دائمًاUUIDمعرّف العملية الذي اخترته وأرسلته في Idempotency-Key.
statusموجود دائمًاstringprocessing: قُبل ولا نتيجة بعد. completed: تمّ الشراء. failed: رفضته قاعدة عمل، ولم يُشترَ شيء. recoveryExhausted: لم تتمكن أنيس بعد من معرفة النتيجة — ربما اكتمل؛ واصل الاستئناف ببطء واكتب إلى support@anis.ly واذكر معرّف العملية. القيم: processing, recoveryExhausted, completed, failed
invoiceIdUUIDالفاتورة التي عليها البطاقات. استخدمه لكشفها مجددًا لاحقًا.
walletIdUUIDالمحفظة التي دُفع منها طلب الشراء.
cardIdanyبطاقة الكتالوج المطلوبة. موجودة في كل ردّ على طلب الشراء — الأول وتكراره والقراءة.
quantityintegerعدد البطاقات المطلوبة. موجود في كل ردّ على طلب الشراء، بما فيه التكرار والقراءة.
totalanyتكلفة طلب الشراء. موجودة في كل ردّ تكون فيه status مساوية لـ completed، بما فيه التكرار والقراءة؛ وغير موجودة ما دام processing أو بعد أن failed.
externalReferencestringمرجعك الخاص كما أرسلته تمامًا. موجود في كل ردّ على طلب الشراء، بما فيه التكرار والقراءة — ويخبرك أي عملية بيع لديك هذه. غير موجود حين لا يحمل الطلب مرجعًا.
failureCodestringسبب فشل طلب الشراء: رمز الرفض الذي سجّلته أنيس، وهو أحد رموز الأخطاء. يظهر فقط في قراءة طلب شراء قيمة status فيه failed. غير موجود حين لا يكون لذلك الرفض رمز علني.
codesWithheldbooleanتساوي true فقط في الرد الذي يعلن أول مرة طلب شراء مدفوعًا ومكتملًا تعذّر إصدار رموزه. لا تشترِه مرة أخرى، واكتب إلى support@anis.ly واذكر معرّف العملية. لا تساوي false أبدًا: في كل رد آخر هي غير موجودة، وفي التكرار أو القراءة يعني غيابها «غير مذكور».
soldCardslist of RevealedCredentialرموز البطاقات. موجودة فقط في الرد الذي يعلن اكتمال طلب الشراء أول مرة — احفظها قبل أي شيء آخر.
completedAtstring (date-time)وقت اكتمال طلب الشراء.

RevealedCredential

الحقلالنوعملاحظات
soldCardIdموجود دائمًاUUIDالبطاقة المبيعة التي تخصها هذه الرموز.
serialNumberstringالرقم التسلسلي للبطاقة. سرّ: احفظه حيث تحفظ الأسرار ولا تسجّله في السجلات أبدًا.
voucherstringرمز القسيمة للبطاقة. سرّ: احفظه حيث تحفظ الأسرار ولا تسجّله في السجلات أبدًا.
revealedAtstring (date-time)وقت كشفها.
expiryDatestring (date)آخر يوم يمكن فيه استخدام البطاقة، بصيغة yyyy-MM-dd. أبلغ به عميلك النهائي. غير موجود حين لا يكون للبطاقة تاريخ انتهاء.
invoiceIdanyالفاتورة التي عليها البطاقة. يظهر أيضًا داخل soldCards في طلب الشراء.
cardCardSummaryبطاقة الكتالوج التي بيعت، لتعرف لأي بطاقة هذه الرموز. تظهر أيضًا داخل soldCards في طلب الشراء.
purchasedAtstring (date-time)وقت شراء البطاقة. يظهر أيضًا داخل soldCards في طلب الشراء.

CardSummary

الحقلالنوعملاحظات
idUUIDمعرّف بطاقة الكتالوج.
nameLocalizedTextاسم البطاقة بالعربية والإنجليزية؛ يُحذف النص المحلي الفارغ.
faceValuestringالقيمة المطبوعة الاختيارية؛ تُحذف حين تكون فارغة.
logostringعنوان URL مطلق واختياري لشعار الفئة الفرعية؛ يُحذف حين يكون فارغًا.
subcategoryobjectالفئة الفرعية للبطاقة، بمعرّفها واسمها المحلي.
subcategory.idUUIDمعرّف الفئة الفرعية.
subcategory.nameLocalizedTextاسم الفئة الفرعية بالعربية والإنجليزية.
categoryobjectفئة البطاقة، بمعرّفها واسمها المحلي.
category.idUUIDمعرّف الفئة.
category.nameLocalizedTextاسم الفئة بالعربية والإنجليزية.

LocalizedText

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