OutSystems Findings Summary API
The Findings Summary API from OutSystems — 1 operation(s) for findings summary.
The Findings Summary API from OutSystems — 1 operation(s) for findings summary.
openapi: 3.2.0
info:
title: Code Quality Findings Summary API
description: Provides APIs to submit code analysis requests and retrieve information about code quality findings, application scores, and analysis results.
version: v1
servers:
- url: https://ODC_PORTAL_DOMAIN/api/code-quality/v1
description: Replace ODC_PORTAL_DOMAIN with the domain of your organization.
- url: https://{odc-portal-domain}/api/code-quality/v1
description: Replace {odc-portal-domain} with the domain of your organization.
variables:
odc-portal-domain:
default: ODC_PORTAL_DOMAIN
description: The domain of your organization
tags:
- name: Findings Summary
paths:
/findings-summary:
get:
tags:
- Findings Summary
summary: Retrieves a multi-dimensional findings summary.
description: 'Retrieves a multi-dimensional summary of findings, aggregated by customizable grouping parameters such as category, status, and severity.
Example: GET /code-quality/v1/findings-summary?groupBy=Category,Status,Severity&categories=Security
API Client needs the **Analyze > View Code Quality findings** permission.'
operationId: FindingsOverviewControllerV_GetFindingsSummary
parameters:
- name: AssetKeys
in: query
description: Filter by asset keys (unique identifiers).
schema:
type: array
items:
type: string
- name: GroupBy
in: query
description: Grouping parameters for organizing the findings summary.
schema:
type: array
items:
type: string
- name: FetchChange
in: query
description: Include changes compared to previous analysis.
schema:
type: boolean
example: true
example: true
- name: AssetType
in: query
description: Filter by asset type.
schema:
type: string
example: WebApplication
example: WebApplication
- name: Categories
in: query
description: Filter by finding categories.
schema:
type: array
items:
$ref: '#/components/schemas/Categories'
- name: Severities
in: query
description: Filter by finding severity levels.
schema:
type: array
items:
$ref: '#/components/schemas/FindingSeverity'
- name: Since
in: query
description: 'Start date for filtering findings by discovery time. Default: if omitted, 14 days before `To` (or 14 days before now, if `To` is also omitted).'
schema:
type: string
example: '2022-06-01T00:00:00'
example: '2022-06-01T00:00:00'
- name: To
in: query
description: 'End date for filtering findings by discovery time. Default: if omitted, now (current UTC time).'
schema:
type: string
example: '2022-12-31T23:59:59'
example: '2022-12-31T23:59:59'
- name: ScoreRanges
in: query
description: 'Filter by quality score ranges. Default: includes all scores.'
schema:
type: string
example: 0-49,50-84,85-100
example: '"0-49,50-84,85-100"'
- name: Limit
in: query
description: Number of records to return per page.
schema:
maximum: 1000
minimum: 1
type: integer
format: int32
example: 50
example: 50
- name: Offset
in: query
description: Number of records to skip for pagination.
schema:
maximum: 2147483647
minimum: 0
type: integer
format: int32
example: 100
example: 100
- name: PortfolioKey
in: query
description: Filter by portfolio key.
schema:
type: string
format: uuid
example: 12345678-1234-1234-1234-123456789abc
example: 12345678-1234-1234-1234-123456789abc
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/FindingsSummaryResponseV1'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/FindingsSummaryResponseV1'
security:
- bearerAuth: []
x-os-permissions: API Client needs the **Analyze > View Code Quality findings** permission.
components:
schemas:
FindingsSummaryResponseV1:
title: FindingsSummaryResponse
type: object
properties:
totalFindings:
title: FindingsSummaryMetricResponse
allOf:
- $ref: '#/components/schemas/FindingsSummaryMetricResponseV1'
description: Total count of findings across all groups.
results:
type:
- object
- 'null'
description: 'Hierarchical breakdown of findings grouped by the requested parameters (e.g., Category → Status → Severity).
Each level contains either nested groups (as dictionaries) or leaf metrics with count information.
The structure depth and keys depend on the GroupBy parameter specified in the request.'
additionalProperties: false
description: Summary response containing total findings count and hierarchical breakdown based on grouping parameters.
example:
totalFindings:
latestFindingsCount: 150
findingsDifferenceCount: 12
results:
Security:
Open:
High:
latestFindingsCount: 25
findingsDifferenceCount: 3
Critical:
latestFindingsCount: 8
findingsDifferenceCount: 0
Resolved:
Medium:
latestFindingsCount: 42
findingsDifferenceCount: 9
Performance:
Open:
Low:
latestFindingsCount: 35
findingsDifferenceCount: 5
Medium:
latestFindingsCount: 18
findingsDifferenceCount: 2
Maintainability:
Dismissed:
Low:
latestFindingsCount: 22
findingsDifferenceCount: 7
ProblemDetails:
type: object
properties:
type:
type:
- string
- 'null'
description: A URI reference that identifies the problem type.
title:
type:
- string
- 'null'
description: A short, human-readable summary of the problem.
status:
type:
- integer
- 'null'
description: The HTTP status code applicable to the problem.
format: int32
detail:
type:
- string
- 'null'
description: A human-readable explanation of the error.
instance:
type:
- string
- 'null'
description: A URI that identifies the specific occurrence of the problem.
traceId:
type: string
description: This field helps OutSystems support track and investigate specific error occurrences. Providing this identifier when reporting an issue allows for more precise and faster troubleshooting.
errorCode:
type: string
description: This error code serves the purpose to communicate with OutSystems Support and help diagnose errors.
description: A standardized error response as per RFC 7807 (Problem Details for HTTP APIs).
FindingSeverity:
enum:
- Low
- Medium
- High
- Critical
type: string
FindingsSummaryMetricResponseV1:
title: FindingsSummaryMetricResponse
type: object
properties:
latestFindingsCount:
type: integer
description: Number of findings in the current/latest analysis.
format: int32
findingsDifferenceCount:
type: integer
description: Change in findings count compared to the previous analysis.
format: int32
additionalProperties: false
Categories:
enum:
- performance
- security
- architecture
- maintainability
type: string
securitySchemes:
bearerAuth:
type: http
description: Enter your bearer token in the format 'Bearer {token}'
scheme: bearer
bearerFormat: JWT