API звітів SonarQube#
Ця стаття описує, як програмно отримати доступ до звітів безпеки SonarQube, що зберігаються на платформі Procurize. Вона охоплює REST API для отримання списку звітів, їх отримання та завантаження архівів звітів.
Огляд#
Підмодуль звітів SonarQube дозволяє організаціям централізовано зберігати та керувати звітами безпеки та якості коду, створеними SonarQube. Платформа Procurize надає ці дані через:
- REST API для отримання метаданих про збережені звіти
- Кінцеву точку для завантаження артефактів звітів у вигляді ZIP-архівів
Ці можливості забезпечують інтеграцію з CI/CD‑конвеєрами, GRC‑системами, внутрішніми інформаційними панелями та інструментами управління ризиками сторонніх розробників.
Автентифікація та Авторизація#
Усі API‑запити, описані в цій статті, не вимагають автентифікації.
Ідентифікатор організації#
Ідентифікатор організації потрібен для всіх запитів, описаних тут.
Ви можете знайти його в панелі налаштувань організації за адресою https://dashboard.procurize.ai.
Зверніть увагу, що доступ до панелі налаштувань вимагає авторизації, а доступ до панелі налаштувань організації потребує ролі користувача не менше «Адміністратор» у цій організації.

Базовий URL#
Усі кінцеві точки REST API доступні за наступною базовою URL‑адресою:
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: Неочікувана помилка сервера
Відповіді з помилками містять машино-читабельний код помилки та людсько‑читабельне повідомлення.
