API отчетов SonarQube

Эта статья описывает, как программно получать отчеты по безопасности SonarQube, хранящиеся на платформе Procurize. Она охватывает REST API для вывода списка и получения отчетов, а также загрузки архивов отчетов.

Обзор

Подмодуль Отчеты SonarQube позволяет организациям централизованно хранить и управлять отчетами по безопасности и качеству кода, генерируемыми SonarQube. Платформа Procurize предоставляет эти данные через:

  • REST API для получения метаданных о сохранённых отчетах
  • Конечную точку для скачивания артефактов отчетов в виде ZIP‑архивов

Эти возможности позволяют интегрировать отчёты в CI/CD‑конвейеры, системы GRC, внутренние дашборды и сторонние инструменты управления рисками.

Аутентификация и авторизация

Все запросы API, описанные в этой статье, не требуют аутентификации.

Идентификатор организации

Идентификатор организации требуется для всех запросов, описанных здесь.
Вы можете найти его в панели настроек организации по адресу https://dashboard.procurize.ai.
Обратите внимание, что доступ к панели настроек требует авторизации, а доступ к панели настроек организации требует роли пользователя не ниже Администратор в этой организации.

Кнопка копировать ID

Базовый URL

Все конечные точки REST API обслуживаются по следующему базовому URL:

https://api.procurize.com

REST API отчетов SonarQube

Список отчетов

Возвращает постраничный список отчетов по безопасности SonarQube, хранящихся в платформе.

Endpoint

GET /security/report/list

Параметры запроса

  • org (required): Идентификатор организации.
  • version (optional): Точная версия продукта в формате Semantic Versioning.
  • minver (optional): Минимальная версия продукта в формате Semantic Versioning.
  • maxver (optional): Максимальная версия продукта в формате 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).

Endpoint

GET /security/report/files
  • org (required): Идентификатор организации.
  • reports (required): Массив идентификаторов отчётов.

Пример запроса

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: неожиданная ошибка сервера

Ответы с ошибками включают машинно‑читаемый код ошибки и понятное человеку сообщение.

Смотрите также:

Связанные статьи

Что такое отчёты по безопасности?

Репозиторий отчётов по безопасности

Как настроить отчёты по безопасности

наверх
Выберите язык