ar
التكنولوجيا المالية

وثائق API

يعمل موقع العميل والمكتب الخلفي وجميع وحدات النظام الأساسي مع ملفات قاعدة البيانات من خلال واجهة برمجة التطبيقات ، وليس بشكل مباشر. تتحكم واجهة برمجة التطبيقات في الوصول إلى البيانات الواردة وسلامتها وصحتها.

وصف عام

كيف تعمل API؟

API - العقدة الرئيسية للمنصة

توضح هذه الوثائق جميع طرق واجهة برمجة التطبيقات للإجراءات التالية:

  • الحصول على قوائم الكائنات (طريقة القائمة)
  • تصفية القائمة (طريقة القائمة مع بيانات التصفية)
  • الحصول على معلومات مفصلة عن كائن (طريقة العرض)
  • الحصول على بيانات لنموذج إضافة كائن (طريقة إضافة)
  • حفظ البيانات ككائن جديد (طريقة التخزين)
  • الحصول على بيانات لنموذج تحديث الكائن (طريقة التحرير)
  • حفظ بيانات الكائن المحدث (طريقة التحديث)

التحقق من خلال عنوان IP

لا تقبل واجهة برمجة التطبيقات (API) إلا الطلبات من قائمة محدودة من عناوين IP (على سبيل المثال ، من موقع حساب العميل أو موقع المكتب الخلفي).

سيتم رفض أي طلب إلى API من عنوان IP غير موجود في القائمة المسموح بها.

يتم ذلك لمنع هجمات DDoS على واجهة برمجة التطبيقات ، ومحاولات تزوير الطلبات وتجارب القراصنة.

يقوم المستخدمون دائمًا بالوصول إلى الموقع العام للمنصة (مكتب العميل أو المكتب الخلفي) ، ويطلب هذا الموقع نفسه البيانات اللازمة من واجهة برمجة تطبيقات النظام الأساسي. نظرًا لأنه تم إصلاح عنوان IP الخاص بالموقع ، فسيكون في القائمة المسموح بها.

URL والطريقة

يتم إجراء جميع طلبات واجهة برمجة التطبيقات باستخدام طرق HTTP التالية:

  • GET للحصول على قائمة وعرض وإضافة وتحرير
  • POST للتخزين
  • PUT للتحديث
  • DELETE للحذف

يحتوي كل قسم من أقسام واجهة برمجة التطبيقات على عنوان URL يتم من خلاله تقديم طلب للحصول على البيانات ذات الصلة.

يتم تحديد طريقة طلب HTTP أمام كل عنوان URL.

ارسال طلب

يجب أن يحتوي كل طلب واجهة برمجة تطبيقات دائمًا على 4 متغيرات:

  1. data (سلسلة json مع مصفوفة بيانات لـ API)
  2. user (سلسلة json مع مجموعة من البيانات حول المستخدم الحالي)
  3. time (الوقت الحالي بتوقيت UTC المنطقة الزمنية)
  4. hash (التوقيع الرقمي في شكل تجزئة للتحقق من أن الطلب إلى API هو بالتأكيد من مصدر معتمد)

الحصول على استجابة من API

في حالة نجاح الطلب ، تُرجع واجهة برمجة التطبيقات دائمًا متغيرين:

  1. status = true (حالة النجاح)
  2. data (سلسلة json مع مصفوفة بيانات من API)

إذا فشل الطلب ، تعرض واجهة برمجة التطبيقات المتغيرات:

  1. status = false (حالة الخطأ)
  2. error (سلسلة نصية تصف الخطأ)

توقيع إلكتروني

يجب أن يحتوي كل طلب واجهة برمجة تطبيقات على متغير تجزئة يمثل التوقيع الرقمي للطلب.

hash = md5($json . $time . $salt)

  • md5, sha256, bcrypt — خوارزميات التشفير المتاحة
  • $json — سلسلة json مع طلب البيانات
  • $time — الوقت بالتنسيق "DD.MM.YYYY HH: MM: SS"
  • $salt — قيمة فريدة ثابتة ("ملح") لواجهة برمجة تطبيقات النظام الأساسي

التكنولوجيا المالية

تحتوي الوثائق على أمثلة لطلبات API الحقيقية