ממשק 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: שגיאה בלתי צפויה בשרת
תגובות השגיאה כוללות קוד שגיאה קריא למכונה והודעה קריאה לבני אדם.
