واجهة برمجة تطبيقات تقارير SonarQube#

تصف هذه المقالة كيفية الوصول برمجيًا إلى تقارير أمان SonarQube المخزنة في منصة Procurize. تغطي واجهة برمجة التطبيقات REST لسرد واسترجاع التقارير وتنزيل أرشيفات التقارير.

نظرة عامة#

يسمح الوحدة الفرعية لتقارير SonarQube للمؤسسات بتخزين وإدارة تقارير الأمان وجودة الشيفرة التي يولدها SonarQube مركزيًا. تقوم منصة Procurize بتوفير هذه البيانات عبر:

  • واجهة برمجة تطبيقات REST لاسترجاع بيانات التعريف حول التقارير المخزنة
  • نقطة نهاية لتنزيل ملفات التقرير كأرشيفات ZIP

تتيح هذه الإمكانيات دمجًا مع خطوط أنابيب CI/CD، وأنظمة GRC، ولوحات المعلومات الداخلية، وأدوات إدارة المخاطر الخارجية.

المصادقة والتفويض#

جميع طلبات واجهة برمجة التطبيقات الموضحة في هذه المقالة لا تتطلب مصادقة.

معرف المؤسسة#

يتطلب جميع الطلبات المذكورة هنا معرف المؤسسة. يمكنك العثور عليه في لوحة إعدادات المؤسسة على https://dashboard.procurize.ai. يرجى ملاحظة أن الوصول إلى لوحة الإعدادات يتطلب تفويضًا، ويتطلب الوصول إلى لوحة إعدادات المؤسسة دور مستخدم يساوي على الأقل مشرفًا في تلك المؤسسة.

زر نسخ المعرف

عنوان URL الأساسي#

جميع نقاط نهاية واجهة برمجة التطبيقات REST تُقدم تحت عنوان URL الأساسي التالي:

https://api.procurize.com

واجهة برمجة تطبيقات تقارير SonarQube REST#

سرد التقارير#

تسترجع قائمة صفحات من تقارير أمان SonarQube المخزنة في المنصة.

نقطة النهاية

GET /security/report/list

معلمات الاستعلام

  • org (مطلوب): معرف المؤسسة.
  • version (اختياري): الإصدار الدقيق للمنتجات بتنسيق Semantic Versioning.
  • minver (اختياري): الحد الأدنى لإصدار المنتجات بتنسيق Semantic Versioning.
  • maxver (اختياري): الحد الأقصى لإصدار المنتجات بتنسيق Semantic Versioning.

يرجى ملاحظة أن أحد المعلمات version أو minver أو maxver يجب أن يكون موجودًا على الأقل في الطلب.

مثال على الطلب

curl "https://api.procurize.com/security/report/list?org=00000000-0000-0000-0000-000000000001&version=1.0"

مثال على الاستجابة

{
  "organizationId": "00000000-0000-0000-0000-000000000001",
  "reports": [
    {
      "projectName": "Test product",
      "id": "00000000-0000-0000-0000-000000000002",
      "reportType": "CWE Top 25",
      "reportVersion": 2024,
      "projectVersion": "1.0",
      "date": "2025-12-17T09:05:48.5946432+00:00",
      "uploadDate": "2025-12-17T09:05:48.5946432+00:00",
      "vulnerabilitiesCount": 0,
      "securityRating": "A"
    }
  ]
}

تنزيل أرشيف التقرير#

يقوم بتنزيل أرشيف ZIP يحتوي على جميع ملفات تقرير SonarQube الكاملة. يتضمن الأرشيف تقارير HTML وPDF.

نقطة النهاية

GET /security/report/files
  • org (مطلوب): معرف المؤسسة.
  • reports (مطلوب): مصفوفة من معرّفات التقارير.

مثال على الطلب

curl "https://api.procurize.com/security/report/files?org=00000000-0000-0000-0000-000000000001&reports=00000000-0000-0000-0000-000000000002&reports=00000000-0000-0000-0000-000000000003"

الاستجابة

  • نوع المحتوى: application/zip
  • يحتوي جسم الاستجابة على ملف ZIP ثنائي

يجب على العملاء بث الاستجابة وحفظها على القرص.

التعامل مع الأخطاء#

تستخدم الواجهة رموز حالة HTTP القياسية.

  • 200 OK: تم تنفيذ الطلب بنجاح
  • 204 No Content: لا يوجد تقرير
  • 400 Bad Request: معلمات غير صالحة أو طلب غير مكوَّن بشكل صحيح
  • 500 Internal Server Error: خطأ غير متوقع في الخادم

تتضمن استجابات الأخطاء رمز خطأ مقروء آليًا ورسالة قابلة للقراءة البشرية.

انظر أيضًا:#

مقالات ذات صلة#

ما هي تقارير الأمان؟

مستودع تقارير الأمان

كيفية تكوين تقارير الأمان

إلى الأعلى
اختر اللغة