API Αναφορών SonarQube
Αυτό το άρθρο περιγράφει πώς να έχετε προγραμματιστική πρόσβαση στις αναφορές ασφαλείας SonarQube που αποθηκεύονται στην πλατφόρμα Procurize. Καλύπτει το REST API για την καταγραφή, την ανάκτηση αναφορών και τη λήψη αρχείων αρχείου αναφορών.
Επισκόπηση
Το υπο-μοντέλο SonarQube Reports επιτρέπει στις οργανώσεις να αποθηκεύουν κεντρικά και να διαχειρίζονται αναφορές ασφαλείας και ποιότητας κώδικα που δημιουργούνται από το SonarQube. Η πλατφόρμα Procurize εκθέτει αυτά τα δεδομένα μέσω:
- Ένα REST API για την ανάκτηση μεταδεδομένων σχετικά με τις αποθηκευμένες αναφορές
- Ένα σημείο τελικού για τη λήψη των τεχνητών αρχείων αναφοράς ως αρχεία ZIP
Αυτές οι δυνατότητες υποστηρίζουν ενσωματώσεις με pipelines CI/CD, συστήματα GRC, εσωτερικούς πίνακες ελέγχου και εργαλεία διαχείρισης κινδύνων τρίτων.
Έλεγχος ταυτότητας και εξουσιοδότηση
Καθολικές αιτήσεις API που περιγράφονται σε αυτό το άρθρο δεν απαιτούν έλεγχο ταυτότητας.
Αναγνωριστικό οργάνωσης
Απαιτείται αναγνωριστικό οργάνωσης για όλες τις αιτήσεις που περιγράφονται εδώ. Μπορείτε να το βρείτε στον πίνακα ρυθμίσεων της οργάνωσης στο https://dashboard.procurize.ai. Σημειώστε ότι η πρόσβαση στον πίνακα ρυθμίσεων απαιτεί εξουσιοδότηση· επιπλέον, η πρόσβαση στον πίνακα ρυθμίσεων της οργάνωσης απαιτεί ρόλο χρήστη τουλάχιστον Διαχειριστή στην εν λόγω οργάνωση.

Βασική διεύθυνση (Base URL)
Όλα τα σημεία τελικού του REST API εξυπηρετούνται υπό την ακόλουθη βασική διεύθυνση:
https://api.procurize.com
REST API Αναφορών SonarQube
Καταγραφή αναφορών
Ανακτά μια σελίδωση λίστας των αναφορών ασφαλείας 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: Μη αναμενόμενο σφάλμα διακομιστή
Οι αποκρίσεις σφαλμάτων περιλαμβάνουν έναν κωδικό σφάλματος μηχανικής ανάγνωσης και ένα μηνύμα ανθρώπινης ανάγνωσης.
