ממשק API לדוחות SonarQube#
מאמר זה מתאר כיצד לגשת באופן תכנותי לדוחות אבטחה של SonarQube המאוחסנים בפלטפורמת Procurize. הוא מכסה את ממשק ה‑REST לרשימה ולשחזור דוחות ולהורדת ארכיוני דוחות.
סקירה#
תת‑מודול SonarQube Reports מאפשר לארגונים לאחסן ולנהל מרכזית דוחות אבטחה ואיכות קוד שמופקים מ‑SonarQube. פלטפורמת Procurize חושפת נתונים אלה באמצעות:
- ממשק REST לקבלת מטה‑נתונים על דוחות מאוחסנים
- נקודת קצה להורדת קובצי דוח בתצורת ZIP
יכולות אלו מאפשרות אינטגרציה עם צינוריות CI/CD, מערכות GRC, לוחות מחוונים פנימיים, וכלים חיצוניים לניהול סיכונים.
אימות והרשאות#
כל בקשות ה‑API המתוארות במאמר זה אינן דורשות אימות.
מזהה ארגון#
מזהה ארגון נדרש לכל בקשה המתוארת כאן.
ניתן למצוא אותו בלוח ההגדרות של הארגון בכתובת https://dashboard.procurize.ai.
שימו לב כי הגישה ללוח ההגדרות דורשת הרשאה, והגישה ללוח ההגדרות של הארגון דורשת תפקיד משתמש של לפחות מנהל (Administrator) באותו ארגון.
{ alt=“כפתור העתקת מזהה” }
כתובת בסיס#
כל נקודות הקצה של ה‑REST API מוגשות תחת כתובת הבסיס הבאה:
https://api.procurize.com
ממשק REST של SonarQube Reports#
רשימת דוחות#
מקבל רשימה מדורגת של דוחות אבטחה של 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"
תגובה
- Content-Type:
application/zip - גוף התגובה מכיל קובץ ZIP בינרי
הקלאיינטים צריכים לשדר את התגובה ולשמור אותה לדיסק.
טיפול בשגיאות#
ה‑API משתמש בקודי סטטוס HTTP סטנדרטיים.
200 OK: הבקשה הצליחה204 No Content: הדוח אינו קיים400 Bad Request: פרמטרים לא חוקיים או בקשה פגומה500 Internal Server Error: שגיאה בלתי צפויה בשרת
תגובות השגיאה כוללות קוד שגיאה קריא למכונה והודעה קריאה לבני אדם.
