Brale أطلقت مؤخرًا نسخة محدثة من واجهات برمجة تطبيقات "stablecoin". بدأ المشروع بمرحلة التصميم في الربع الأول، وانتقل إلى مرحلة التطوير في الربع الثاني، ودخل مرحلة الإنتاج مع عملاء حقيقيين بعد ذلك بوقت قصير.
تقوم واجهة برمجة التطبيقات "API" بالعديد من المهام. لا يهدف هذا المنشور إلى تفصيل كل هذه الوظائف. إنه مجرد سجل لكيفية قيامي باختبار هذه الوظائف، في الغالب من أجل المتعة، وجزئيًا لفهم كيفية تعامل الآخرين معها عند استخدامها لأول مرة.
استخدام نماذج اللغة الكبيرة (LLMs) للعمل من خلال "API"
في المرة الأخيرة التي كنت أعمل فيها على شيء من هذا القبيل، لم تكن نماذج اللغة الكبيرة جزءًا من سير العمل. لكن هذا تغير. باستخدام Cursor وبعض التوجيهات الجيدة، أصبح من السهل الآن تجميع نماذج أولية فعالة واختبار الافتراضات في الوقت الفعلي.
ما زلت أحب استخدام Postman لاستكشاف واجهات برمجة التطبيقات (APIs)، لكنني أردت أن أرى كيف سيكون الشعور عند استخدام واجهة برمجة التطبيقات (Brale) API داخل شيء أقرب قليلاً إلى واجهة حقيقية.
الاختبار الأول: المصادقة
بدأت بتدفق مصادقة أساسي — باستخدام client_id و client_secret للحصول على رمز حامل. لا شيء معقد. فقط ما يكفي لإثبات أن بيانات الاعتماد تعمل وأن نطاقها صحيح.
هذا الاختبار الصغير موجود هنا: github.com/superduperdot/auth-app
الاختبار الثاني: الأرصدة
اتضح أن هذا الأمر أكثر تعقيدًا بعض الشيء. يدعم Brale API أنواعًا متعددة من القيم (كل منها يمثل أصلًا مميزًا) وأنواعًا متعددة من التحويلات (كل منها يمثل سلسلة أو شبكة). لذا كانت عملية استرداد الأرصدة كما يلي:
- احصل على account_id المرتبط ببيانات اعتمادك
- استخدم هذا المعرف لسحب قائمة العناوين
- تصفية النتائج حسب النوع: "داخلي" لعزل المحافظ الوديعة
- تكرار كل تركيبة معروفة من أنواع القيم وأنواع التحويل
- الاستعلام عن الأرصدة وتسجيل النتائج
هذا التطبيق موجود هنا: github.com/superduperdot/balance-app
البحث عن الأنواع المدعومة
أنواع التحويل (TransferTypes) موثقة جيدًا. أما أنواع القيم (ValueTypes) فلم يتم عرضها مباشرة في الوثائق بعد، لذا قمت بسحبها من التطبيق الحي ووضعت كلا القائمتين في GitHub للرجوع إليهما مستقبلًا:
- قائمة أنواع التحويل (Brale)
- قائمة أنواع القيم (ValueTypes) لـ Brale
كما نجحت عملية الحصول على الأسعار من نقطة نهاية البيانات.
ملاحظات أخرى
- إذا كنت تعمل محليًا، فتوقع حدوث مشكلات CORS، واستخدم وكيلًا.
- تتم المصادقة على auth.brale.xyz؛ أما كل شيء آخر فيتم على api.brale.xyz.
- لا يزال التمييز بين account_id و address_id يسبب لي أخطاء بسيطة إذا لم أكن حريصًا.
- تخزن تطبيقات الاختبار هذه بيانات الاعتماد محليًا وليست آمنة للاستخدام في الإنتاج. وهذا مقصود
لا شيء هنا نهائي. كانت هذه الاختبارات تتعلق في الغالب بالسرعة وسهولة الاستخدام. كان الهدف هو معرفة مدى السرعة التي يمكنك بها الانتقال من بيانات الاعتماد إلى شيء حقيقي، دون الاعتماد على أدوات داخلية أو معرفة عميقة بالمنصة.
إذا كنت تستكشف Brale API، فربما يقصر هذا المسار. إذا لم يكن الأمر كذلك، فقد كان الأمر يستحق الوقت لمعرفة كيف تتصرف الطبقة الجديدة في الواقع. يمكن أن تكون CLI مفيدة أيضًا في اختبار الأداء.