Request payload containing filters, pagination and sorting options.
Minimum required payload :
{}
Since this is a POST search endpoint, an empty JSON object is accepted.
Filtering
Filters must be passed inside the filter object.
Supported fields:
status
treatment
owner.email
program_name — program names (eq:ISO-27001:2022 or ISO-27001:2022); unknown name → 400
Each risk in the response includes objectives[] with program_name (direct and control-mediated mappings; indirect rows set indirect_mapping: true) and top-level programs[{id,name}].
Examples
"filter": {
"status": "eq:Not Assessed",
"treatment": "eq:Avoid",
"owner.email": "eq:[email protected]",
"program_name": "eq:ISO-27001:2022"
}
Supported status values
Assessed, Assessment in progress, Closed, Needs Remediation, Not Assessed, Remediated
Supported treatment values
Avoid, Reduce, Transfer, Share, Accept
Supported operators
eq — exact match
in — comma-separated list
Example:
"status": "in:Not Assessed,Assessment in progress"
Pagination
page_size default = 50
page_size max = 200
Cursor Pagination
cursor must be Base64 encoded.
Sorting
Allowed fields:
id, name, current_risk, owner.name
Sorting rules:
- Ascending →
name or +name
- Descending →
-name