المصادقة ومفاتيح API
إرسال مفتاحك
الترويسة القياسية هي X-API-Key:
curl -X POST 'https://api.cognivolabs.io/v1/api/intel/risk' \
-H 'X-API-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{"chain":"eth","address":"0xTOKEN_CONTRACT"}'
كما تُقبل Authorization: Bearer YOUR_API_KEY كبديل لمكتبات العملاء التي تفضلها.
كيف تُخزَّن المفاتيح
لا يخزّن Cognivo مفتاحك الكامل أبداً. يُحتفظ فقط بتجزئة أحادية الاتجاه (one-way hash) مع البادئة وآخر أربعة أحرف، ولهذا يمكن عرض المفتاح الكامل مرة واحدة بالضبط عند الإنشاء. تعامل معه كما تتعامل مع كلمة مرور.
مفاتيح Sandbox مقابل المفاتيح الحية
| البادئة | الغرض | التحصيل | حد المعدل |
|---|---|---|---|
cogv_test_ | Sandbox: عروض توضيحية محدودة واختبار تكامل فقط، موسومة بوضوح بأنها Sandbox؛ لا يمكنها تشغيل الذكاء الحي | لا يُحصَّل عليها شيء أبداً | حد صارم قدره 25 طلباً/ساعة و100/يوم و1/ثانية |
cogv_live_ | الإنتاج؛ خدمة ذاتية، يعمل فوراً | الدفع حسب الاستخدام: أرصدة Cognivo لكل استدعاء ناجح من رصيد أرصدتك؛ والاستدعاءات الفاشلة لا يُحصَّل عليها شيء أبداً | حد نمط وصولك، ويبدأ بـ 1,000 طلب/ساعة |
جرّب أشكال الطلبات بمفتاح sandbox إذا شئت، ثم انشر بمفتاح حي. المفتاح الحي الجديد لا يحتاج إلى موافقة ولا إلى وصول تجريبي: يبدأ بالعمل لحظة إنشائه، ما دام حسابك يملك أرصدة.
أنماط الوصول ببساطة
- الحي (القياسي) - خدمة ذاتية بالدفع حسب الاستخدام. المفتاح الحي الجديد يعمل فوراً، ويُحصَّل بأرصدة Cognivo لكل استدعاء ناجح وفق الأسعار المنشورة لكل نقطة نهاية. إذا لم يستطع رصيدك تغطية استدعاء، فستحصل على
402 payment_required(لا يُحصَّل شيء): اشحن رصيدك في صفحة الفوترة لحساب Cognivo الخاص بك وأعد المحاولة. - Sandbox - مفاتيح
cogv_test_؛ للعروض التوضيحية/الاختبار المحدود فقط، ولا يمكنها تشغيل الذكاء الحي. تجيب الاستدعاءات الحية بـ403 sandbox_limited. - التجريبي (Trial) - مخصص تقييم اختياري يمنحه مسؤول (محدود ومنتهي الصلاحية). غير مطلوب للاستخدام المدفوع العادي.
- الشراكة (Partner) - ترتيب يديره المسؤولون.
- المؤسسي (Enterprise) - مسار طلب الوصول: تسعير مخصص وحدود مخصصة وأحجام كبيرة. اطلبه من بوابة المطورين.
- المعلّق (Suspended) - لا يمكن للمفتاح تنفيذ أي شيء؛ وتعرض البوابة السبب.
- المفاتيح القديمة المقتصرة على البيانات الوصفية - عدد صغير من المفاتيح الأقدم يسبق فوترة الخدمة الذاتية ولا يمكنه سوى استدعاء نقاط نهاية البيانات الوصفية؛ تجيب الاستدعاءات الحية بـ
403 access_required. أنشئ مفتاحاً حياً جديداً للانتقال إلى الدفع حسب الاستخدام.
تخبرك GET /v1/api/me بالنمط الذي يعمل به مفتاحك (access_mode)، إضافة إلى رصيد credits_balance الخاص بحسابك وإرشادات top_up.
النطاقات (الصلاحيات)
المفاتيح تعمل بمبدأ الرفض الافتراضي: لا يستطيع المفتاح استدعاء سوى مجموعات نقاط النهاية التي منحتها له عند إنشائه. هناك ثلاثة نطاقات، وكل نطاق يفتح ببساطة مجموعة من نقاط النهاية.
intel:read - ذكاء التوكنات والمحافظ
النطاق اليومي. يتيح لمفتاحك أن يسأل "ماذا يجري مع هذا التوكن أو هذه المحفظة؟": محركات انخفاض السعر، إشارات المخاطر، سلوك محافظ الفريق، الأرباح والخسائر المحققة (PnL)، والتحركات الدقيقة.
يفتح: POST /v1/api/intel/why-down وPOST /v1/api/intel/team-wallets وPOST /v1/api/intel/risk وPOST /v1/api/wallet/pnl وPOST /v1/api/wallet/exact-movements
security:read - فحوصات أمان المحافظ
يتيح لمفتاحك التحقق مما وافقت عليه محفظة: أي العقود يمكنها إنفاق توكناتها، مع الإشارة إلى الموافقات غير المحدودة. قراءة فقط؛ لا يستطيع مفتاح بهذا النطاق أبداً تحريك أموال أو إبطال أي شيء.
يفتح: POST /v1/api/wallet/approvals
liquidity:read - قراءات السيولة و LP
يتيح لمفتاحك التحقق مما إذا كانت سيولة توكن حقيقية وأين تقع توكنات LP: سياق المجمع، حيازة LP، وسياق القفل والحرق.
يفتح: POST /v1/api/intel/liquidity
لا تحتاج GET /v1/api/health إلى أي مفتاح على الإطلاق، وتعمل GET /v1/api/me وGET /v1/api/discover بـ أي مفتاح صالح، أياً كانت نطاقاته.
يمكنك تعديل نطاقات مفتاح في أي وقت في البوابة. إذا فشل استدعاء بالخطأ 403 scope_denied، فهذا يعني ببساطة أن المفتاح لا يحمل النطاق الذي تحتاجه نقطة النهاية تلك.
التدوير والإبطال
- الإبطال (Revoke) يقتل المفتاح. يتوقف عن المصادقة خلال دقيقة.
- التدوير (Rotate) ينشئ مفتاحاً بديلاً بنفس الاسم والنطاقات والفئة، ويعرضه مرة واحدة، ويُبطل المفتاح القديم في الخطوة نفسها. استخدمه عند أي اشتباه بتسرب وعلى جدول منتظم.
قيود اختيارية
لكل مفتاح، يمكنك إضافياً وضع قائمة سماح لما يلي:
- الأصول (Origins) (أصول محددة أو نطاقات فرعية بعلامة بدل مثل
https://*.yourapp.com) - تُرفض الطلبات التي تقدّمOriginمختلفاً. - عناوين IP / نطاقات CIDR - تُرفض الطلبات القادمة من عناوين أخرى.
القوائم الفارغة تعني عدم وجود قيود.
من أين تأتي المفاتيح
تُنشأ المفاتيح فقط في بوابة المطورين ذات الخدمة الذاتية باستخدام حساب Cognivo الحالي الخاص بك. لا يوجد إصدار مفاتيح يدوي/قديم للتكاملات الجديدة.