SonarQube-rapporter API och Webhooks
Denna artikel beskriver hur man programatiskt får åtkomst till SonarQube‑säkerhetsrapporter som lagras i Procurize‑plattformen. Den täcker REST‑API‑et för att lista och hämta rapporter, ladda ner rapportarkiv samt prenumerera på webhook‑notifikationer när nya rapporter tas in.
Översikt
SonarQube‑rapporter‑submodulen låter organisationer centralt lagra och hantera säkerhets‑ och kodkvalitetsrapporter som genereras av SonarQube. Procurize‑plattformen exponerar dessa data via:
- Ett REST‑API för att hämta metadata om lagrade rapporter
- En endpoint för att ladda ner rapportartefakter som ZIP‑arkiv
- Webhooks för när‑nära‑realtime‑notifikationer när nya rapporter blir tillgängliga
Dessa funktioner möjliggör integrationer med CI/CD‑pipelines, GRC‑system, interna instrumentpaneler och tredjepartsverktyg för riskhantering.
Autentisering och Auktorisation
Alla API‑förfrågningar som beskrivs i den här artikeln kräver ingen autentisering.
Organisations‑ID
Ett organisations‑ID krävs för alla förfrågningar som beskrivs här.
Du kan hitta det i organisationens inställningspanel på https://dashboard.procurize.ai.
Observera att åtkomst till inställningspanelen kräver behörighet, och åtkomst till organisationens inställningspanel kräver en användarroll på minst Administratör i den organisationen.

Bas‑URL
Alla REST‑API‑endpoints tillhandahålls under följande bas‑URL:
https://api.procurize.com
SonarQube‑rapporter REST API
Lista rapporter
Hämtar en paginerad lista över SonarQube‑säkerhetsrapporter som lagras i plattformen.
Endpoint
GET /security/report/list
Query Parameters
org(required): Organisations‑ID.version(optional): Den exakta versionen av produkterna i Semantic Versioning‑format.minver(optional): Minimum version av produkterna i Semantic Versioning‑format.maxver(optional): Maximum version av produkterna i Semantic Versioning‑format.
Observera att minst en av parametrarna version, minver eller maxver krävs för förfrågan.
Request Example
curl "https://api.procurize.com/security/report/list?org=00000000-0000-0000-0000-000000000001&version=1.0"
Response Example
{
"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"
}
]
}
Ladda ner rapportarkiv
Laddar ner ett ZIP‑arkiv som innehåller hela SonarQube‑rapportartefakterna. Arkivet inkluderar HTML‑ och PDF‑rapporter.
Endpoint
GET /security/report/files
org(required): Organisations‑ID.reports(required): Array med rapport‑ID:n.
Request Example
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"
Response
- Innehållstyp:
application/zip - Svarsbody innehåller den binära ZIP‑filen
Klienter bör strömma svaret och spara det på disk.
Felhantering
API‑et använder standard‑HTTP‑statuskoder.
200 OK: Förfrågan lyckades204 No Content: Rapporten finns inte400 Bad Request: Ogiltiga parametrar eller felaktig förfrågan500 Internal Server Error: Oväntat serverfel
Felrespons inkluderar en maskinläsbar felkod och ett mänskligt läsbart meddelande.
Webhooks
Procurize‑webhooks låter externa system få notifikationer när nya SonarQube‑rapporter tas in eller uppdateras.
Konfigurera webhooks
Webhooks kan läggas till eller redigeras i organisationens inställningspanel, avsnittet Security reports på https://dashboard.procurize.ai.
Observera att åtkomst till inställningspanelen kräver behörighet, och åtkomst till organisationens inställningspanel kräver en användarroll på minst Administratör i den organisationen.

För att testa webhooks kan du använda populära onlinetjänster såsom https://webhook-test.com
Webhook‑payload
Webhook‑händelser levereras som HTTP POST‑förfrågningar med en JSON‑payload.
Example Payload
{
"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"
}
]
}
Webhook‑säkerhet
För att säkerställa äkthet inkluderar webhook‑förfrågningar ett signatur‑header som genereras med en delad hemlighet.
- Signaturen beräknas med HMAC‑SHA256
- Klienter bör verifiera signaturen innan de bearbetar payloaden
Detta förhindrar obehöriga eller förfalskade webhook‑leveranser.
Leverans och omförsök
- Webhooks förväntar sig ett
2xx‑svar för att anses levereras framgångsrikt - Misslyckade leveranser försöks automatiskt igen varje timme.
- Händelser kan levereras flera gånger; konsumenter bör implementera idempotent bearbetning
Vanliga användningsfall
- Automatisk import av SonarQube‑fynd till interna säkerhetsdashboards
- Aktivera compliance‑arbetsflöden när kvalitetsgrindar misslyckas
- Arkivera säkerhetsrapporter för revisioner och leverantörsriskgranskningar
- Håll tredjepartssystem synkroniserade med den senaste kodsäkerhetsstatusen
