SonarQube ataskaitų API#

Šis straipsnis aprašo, kaip programiškai pasiekti SonarQube saugumo ataskaitas, saugomas Procurize platformoje. Jame nagrinėjamas REST API, skirtas ataskaitų išvardijimui, gavimui ir jų archyvų atsisiuntimui.

Apžvalga#

SonarQube ataskaitų submodulis leidžia organizacijoms centralizuotai saugoti ir tvarkyti saugumo bei kodo kokybės ataskaitas, sukurtas SonarQube. Procurize platforma suteikia prieigą prie šių duomenų per:

  • REST API, skirta gauti metaduomenis apie saugomas ataskaitas
  • Puslapį (endpoint) ataskaitų artefaktams atsisiųsti ZIP archyvu

Šios galimybės leidžia integracijas su CI/CD konvejais, GRC sistemomis, vidiniais prietaisų skydeliais ir trečiųjų šalių rizikos valdymo įrankiais.

Autentifikavimas ir autorizacija#

Visi šiame straipsnyje aprašyti API užklausų nereikia autentifikacijos.

Organizacijos ID#

Visoms čia aprašytoms užklausoms reikalingas organizacijos ID. Jį galite rasti organizacijos nustatymų skydelyje adresu https://dashboard.procurize.ai. Atkreipkite dėmesį, kad prieiga prie nustatymų skydelio reikalauja autorizacijos, o prieiga prie organizacijos nustatymų skydelio – vartotojo rolės, kuri bent jau yra Administratoriaus, toje organizacijoje.

Kopijuoti ID mygtukas

Bazinis URL#

Visi REST API galutiniai taškai yra pasiekiami per šį bazinį URL:

https://api.procurize.com

SonarQube ataskaitų REST API#

Išvardyti ataskaitas#

Gauna puslapiuotą SonarQube saugumo ataskaitų sąrašą, saugomų platformoje.

Endpoint

GET /security/report/list

Užklausos parametrai

  • org (būtina): Organizacijos ID.
  • version (neprivaloma): Tikslus produktų versijos numeris semantinio versijavimo formatu.
  • minver (neprivaloma): Mažiausia produktų versija semantinio versijavimo formatu.
  • maxver (neprivaloma): Didžiausia produktų versija semantinio versijavimo formatu.

Atkreipkite dėmesį, kad bent vienas iš parametrų version, minver arba maxver yra privalomas užklausai.

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"
    }
  ]
}

Atsisiųsti ataskaitų archyvą#

Atsisiunčia ZIP archyvą, kuriame yra visi SonarQube ataskaitų artefaktai. Archyvas apima HTML ir PDF ataskaitas.

Endpoint

GET /security/report/files
  • org (būtina): Organizacijos ID.
  • reports (būtina): Ataskaitų ID masyvas.

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

  • Content-Type: application/zip
  • Atsakymo kūnas turi binarinį ZIP failą

Klientai turėtų srauti atsakymą ir išsaugoti jį diske.

Klaidos tvarkymas#

API naudoja standartinius HTTP būsenos kodus.

  • 200 OK: Užklausa sėkminga
  • 204 No Content: Ataskaita neegzistuoja
  • 400 Bad Request: Netinkami parametrai arba neteisinga užklausa
  • 500 Internal Server Error: Netikėta serverio klaida

Klaidų atsakymai apima mašinų skaitomą klaidos kodą ir žmogaus skaitomą pranešimą.

Taip pat žiūrėkite:#

Susiję straipsniai#

Kas yra saugumo ataskaitos?

Saugumo ataskaitų saugykla

Kaip konfigūruoti saugumo ataskaitas

į viršų
Pasirinkti kalbą