

وثائق عملية ومباشرة للوصول إلى المنتجات، إنشاء الطلبات، متابعة حالتها، وقراءة رصيد المحفظة باستخدام مفتاح API آمن.
Public API v1
nitroload API
X-API-KeyAccept-Language: ar | enIdempotency-Keyأرسل مفتاحك ضمن ترويسة X-API-Key في كل طلب.
استخدم Idempotency-Key عند إنشاء الطلب لمنع الخصم المكرر.
حدد اللغة المطلوبة عبر Accept-Language بقيمة ar أو en.
واجهة التكامل منفصلة عن واجهة الموقع الداخلية. استخدم المسار العام أدناه ومفتاح API صادر من حساب موثّق.
الرابط الأساسي
https://api.nitroload.net/api/public/v1ترويسة المصادقة
X-API-Key: {prefix}.{secret}ترويسة اللغة
Accept-Language: ar | enنوع المحتوى
Content-Type: application/jsonأنشئ مفاتيح منفصلة لكل متجر أو بوت، راقب آخر استخدام، وألغِ أي مفتاح لم تعد تحتاجه.
تستخدم المصادقة والصلاحيات وحدود المعدل الحقيقية، وتتحقق من المنتج والحقول المطلوبة والكميات، لكنها لا تخصم من المحفظة ولا تتواصل مع المورّد ولا تستهلك المخزون.
{
"uuid": "…",
"invoice_no": "TEST-2026-0001",
"status": "success",
"test": true
}ابدأ بقائمة المنتجات، ثم اقرأ المنتج مباشرة قبل الشراء للتحقق من التوفر والكميات والحقول المطلوبة.
/products/يتطلب X-API-Keyيعيد قائمة مرقمة بالأسعار الخاصة بحسابك، التوفر، قيم الكمية، والحقول الديناميكية.
أمثلة التنفيذ
مثال الاستجابة
application/json
/products/{id}/يتطلب X-API-Keyاستخدم معرّف المنتج للتحقق من أحدث بياناته قبل إرسال الطلب.
أمثلة التنفيذ
مثال الاستجابة
application/json
يُخصم المبلغ من المحفظة فور قبول الطلب، ثم تتم معالجة التسليم بشكل غير متزامن.
إذا انتهت مهلة الاتصال بعد الإرسال، أعد نفس الطلب بالمفتاح نفسه. سيعيد الخادم الطلب ذاته بدلاً من إنشاء طلب جديد وخصم الرصيد مرة ثانية.
/orders/يتطلب X-API-Keyأرسل product وqty وfield_values، مع Idempotency-Key فريد لكل عملية شراء منطقية.
X-API-Key
YOUR_PREFIX.YOUR_SECRETIdempotency-Key
your-order-9c09f6c4Content-Type
application/jsonأمثلة التنفيذ
مثال الاستجابة
application/json
اعرض طلبات التكامل أو تابع طلباً محدداً بواسطة uuid حتى يصل إلى حالة نهائية.
pendingتم قبول الطلب ووضعه في قائمة المعالجة.
processingيجري تنفيذ الطلب لدى نظام التسليم.
awaiting_acceptanceالطلب لدى فريق nitroload للمراجعة والتأكيد، ويبقى رصيد الطلب محجوزًا خلال ذلك.
price_approvalالحالة الوحيدة التي تتطلب إجراءً منك، وتوقّع حدوثها: نحن نبيعك دائماً أرخص مورد للمنتج، فإذا اعتذر هذا المورد كان كل مورد متبقٍ أغلى مما دفعت بالضرورة. لذلك نتوقف ونسألك بدل تنفيذ الطلب بخسارة أو إلغائه. أي انتقال إلى مورد بديل يصل إلى هذه الحالة — فهي نتيجة طبيعية وليست حالة نادرة، وهي الحالة الوحيدة التي تحتاج كوداً يتعامل معها لا مجرد استعلام متكرر. يحمل الطلب عندها كتلة price_approval فيها new_total و paid_total و extra_to_pay و expires_at. وافق عبر POST …/approve-price/ أو ارفض عبر POST …/decline-price/. مبلغك محجوز كما هو، ولا يُخصم شيء إضافي قبل موافقتك. وإن لم تجب حتى expires_at يُلغى الطلب ويُعاد المبلغ كاملاً — أي أن تجاهلها لا يكلفك سوى الصفقة نفسها. وأجب بسرعة: العرض مرتبط بمورد بديل محدّد قد ينفد مخزونه أثناء انتظارك، وعندها تفشل الموافقة بدل أن نخصم منك مقابل شيء لا نستطيع تسليمه، ويبقى بإمكانك الرفض واسترداد كامل المبلغ.
successاكتمل الطلب، وقد تظهر الأكواد في delivered_codes.
failed / provider_unreachableفشل نهائي وتتم إعادة كامل المبلغ تلقائياً.
refundedأُعيدت قيمة طلب مكتمل لاحقاً إلى المحفظة.
/orders/يتطلب X-API-Keyيعيد طلبات مفتاح API الحالي، ويمكن تصفيتها بحسب الحالة أو المنتج أو الفترة الزمنية.
أمثلة التنفيذ
مثال الاستجابة
application/json
/orders/{uuid}/يتطلب X-API-Keyاستعلم كل عدة ثوانٍ أثناء pending أو processing أو awaiting_acceptance أو price_approval، ثم توقف عند الحالة النهائية. الحالات النهائية هي success و failed و refunded فقط.
أمثلة التنفيذ
مثال الاستجابة
application/json
يعيد الرصيد الحالي القابل للإنفاق بالدولار. شحن المحفظة يتم من موقع nitroload وليس من واجهة التكامل العامة.
/balance/يتطلب X-API-Keyاستخدمه قبل إنشاء الطلب وبعد نجاح أو استرداد أي عملية لتحديث الرصيد في نظامك.
أمثلة التنفيذ
مثال الاستجابة
application/json
balance وunit_price وtotal_price سلاسل عشرية بدقة تصل إلى 8 منازل. استخدم مكتبة Decimal أو BigNumber في الخادم.
"125.50000000"اعتمد على error.code في منطق التطبيق، وليس على نص الرسالة لأنه قابل للترجمة والتغيير.
application/json
| HTTP | error.code | المعنى | الإجراء المقترح |
|---|---|---|---|
| 400 | validation_error | كمية أو حقول غير صحيحة | اعرض أخطاء details بجانب الحقول |
| 400 | insufficient_funds | الرصيد غير كافٍ | اطلب من العميل شحن المحفظة |
| 401 | invalid_api_key | المفتاح غير صحيح أو ملغى | راجع X-API-Key أو أنشئ مفتاحاً جديداً |
| 401 | malformed_api_key | صيغة المفتاح غير صحيحة | أرسل المفتاح الكامل prefix.secret |
| 404 | not_found | المورد غير موجود أو لا يخص الحساب | اعرض حالة غير موجود |
| 429 | throttled | تم تجاوز معدل الطلبات | انتظر حسب Retry-After ثم أعد المحاولة |
| 500 | error | خطأ غير متوقع | سجّل رقم العملية وأعد المحاولة تدريجياً |