API de Relatórios SonarQube
Este artigo descreve como acessar programaticamente os relatórios de segurança SonarQube armazenados na plataforma Procurize. Ele cobre a API REST para listar e recuperar relatórios e baixar arquivos de relatório.
Visão geral
Os submódulos de Relatórios SonarQube permitem que organizações armazenem e gerenciem centralmente relatórios de segurança e qualidade de código gerados pelo SonarQube. A plataforma Procurize expõe esses dados através de:
- Uma API REST para recuperar metadados sobre relatórios armazenados
- Um endpoint para baixar artefatos de relatórios como arquivos ZIP
Essas capacidades permitem integrações com pipelines CI/CD, sistemas GRC, dashboards internos e ferramentas de gerenciamento de risco de terceiros.
Autenticação e Autorização
Todas as requisições API descritas neste artigo não requerem autenticação.
ID da Organização
Um ID de organização é necessário para todas as requisições descritas aqui.
Você pode encontrá‑lo no painel de configurações da organização em https://dashboard.procurize.ai.
Observe que o acesso ao painel de configurações requer autorização, e o acesso ao painel de configurações da organização requer que o usuário tenha, no mínimo, a função de Administrador nessa organização.
{title=“Botão Copiar ID”}
URL Base
Todos os endpoints da API REST são servidos sob a seguinte URL base:
https://api.procurize.com
API REST de Relatórios SonarQube
Listar Relatórios
Recupera uma lista paginada de relatórios de segurança SonarQube armazenados na plataforma.
Endpoint
GET /security/report/list
Parâmetros de Consulta
org(obrigatório): ID da organização.version(opcional): A versão exata dos produtos no formato Semantic Versioning.minver(opcional): A versão mínima dos produtos no formato Semantic Versioning.maxver(opcional): A versão máxima dos produtos no formato Semantic Versioning.
Observe que pelo menos um dos parâmetros version, minver ou maxver é obrigatório para a requisição.
Exemplo de Requisição
curl "https://api.procurize.com/security/report/list?org=00000000-0000-0000-0000-000000000001&version=1.0"
Exemplo de Resposta
{
"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"
}
]
}
Baixar Arquivo de Relatório
Baixa um arquivo ZIP contendo todos os artefatos do relatório SonarQube completo. O arquivo inclui relatórios em HTML e PDF.
Endpoint
GET /security/report/files
org(obrigatório): ID da organização.reports(obrigatório): Array de IDs de relatórios.
Exemplo de Requisição
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"
Resposta
- Content-Type:
application/zip - O corpo da resposta contém o arquivo ZIP binário
Os clientes devem fazer streaming da resposta e salvá‑la no disco.
Tratamento de Erros
A API usa códigos de status HTTP padrão.
200 OK: Requisição bem‑sucedida204 No Content: Relatório não existe400 Bad Request: Parâmetros inválidos ou requisição malformada500 Internal Server Error: Erro interno inesperado do servidor
Respostas de erro incluem um código de erro legível por máquina e uma mensagem legível por humanos.
Veja também:
Artigos relacionados
O que são Relatórios de Segurança?
