السياسات
كيف تُدار إصدارات Data API، وكيف يُعلَن عن إيقاف الدعم وكم تستمر مهلته، وكيفية الإبلاغ عن ثغرة أمنية.
تُحدَّد إصدارات API في المسار: كل نقطة نهاية تقع ضمن /api/v1. ويتبع الحقل info.version في العقد (وهو حاليًا 1.3.1) سجل التغييرات، فيرتفع الرقم الثانوي عند إضافة شيء، ورقم التصحيح عند إصلاح شيء، ولا يصدر أي تغيير كاسر إلا عبر إصدار مسار جديد (/api/v2).
تواكب حِزم SDK الرسمية الثماني واجهة API، فنقطة النهاية الجديدة تعني إصدارًا ثانويًا من حزمة SDK، وحذف نقطة نهاية أو إعادة تسميتها تعني إصدارًا رئيسيًا.
لا يحدث أي مما يلي داخل إصدار المسار الواحد:
{ data, meta } أو غلاف الأخطاء أو معنى رمز خطأ قائم.قد يحدث أي مما يلي في أي وقت، ويُعلَن عنه في سجل التغييرات:
error.code، لا على نص الرسالة.عند جدولة حذف نقطة نهاية أو معامل أو حقل، يُعلَن عن ذلك في سجل التغييرات وعبر البريد الإلكتروني إلى كل مالك مفتاح، وتردّ نقطة النهاية منذ ذلك اليوم بترويستَي Deprecation وSunset (RFC 9745 وRFC 8594) تحملان تاريخ الحذف. ويضع عقد OpenAPI عليها العلامة deprecated: true.
لا يقع الحذف قبل مرور ستة أشهر على الإعلان. ويعمل إصدار المسار الجديد جنبًا إلى جنب مع الإصدار السابق ستة أشهر على الأقل قبل إيقاف القديم بالطريقة نفسها.
حدود الاندفاع في الدقيقة والحصص الشهرية جزء من خطتك، وتظهر مع كل استجابة في ترويسات X-RateLimit-* وX-Quota-*، وهي موثَّقة في المرجع. ورفع أي حد ليس تغييرًا كاسرًا أبدًا، أما خفضه داخل الخطة فهو تغيير كاسر يخضع للمهلة الزمنية لإيقاف الدعم.
إذا كنت تعتقد أنك عثرت على ثغرة أمنية في bitculator.com أو Data API أو خادم MCP أو حِزم SDK، فراسل contact@bitculator.com وأرفق عنوان URL أو نقطة النهاية المتأثرة وخطوات إعادة إظهار المشكلة والأثر الذي تراه. وسيصلك الرد خلال ثلاثة أيام عمل.
نرجو إبقاء البلاغ سريًا إلى أن تُصلَح الثغرة، وعدم الوصول إلى بيانات لا تخصك أو تعديلها، وعدم تنفيذ هجمات حجب الخدمة أو الفحص الآلي على بيئة الإنتاج. ولن تُتخذ أي إجراءات قانونية بشأن البلاغات المقدَّمة بحسن نية وفق هذه الشروط. ولا يوجد برنامج مكافآت مدفوع، ويُذكر اسم المُبلِّغ عند الطلب.
وتُنشر بيانات الاتصال نفسها بصيغة مقروءة آليًا على /.well-known/security.txt (RFC 9116).
تجد الحالة المباشرة للمكوّنات والأعطال المفتوحة وانقطاعات آخر 30 يومًا على صفحة الحالة وعلى /status.json.