---
title: "Get All Risks"
method: GET
path: "/projectRisks"
tags: ["Project Risks"]
---

# Get All Risks

`GET /projectRisks`

## Query parameters

- `filter` 'active' | 'deleted' | 'all'

## Response `200`

Success

- object
  - `message` string
  - `data` ProjectRiskResponse[]
    - `risk_name` string, required — Name/title of the risk.
    - `risk_owner` integer, required — User ID of the risk owner (must be >= 1).
    - `ai_lifecycle_phase` 'Problem definition & planning' | 'Data collection & processing' | 'Model development & training' | 'Model validation & testing' | 'Deployment & integration' | 'Monitoring & maintenance' | 'Decommissioning & retirement' | 'null', nullable
    - `risk_description` string, nullable, required — Detailed description of the risk.
    - `risk_category` string[] — Array of category labels.
    - `impact` string, nullable
    - `assessment_mapping` string, nullable
    - `controls_mapping` string, nullable
    - `likelihood` 'Rare' | 'Unlikely' | 'Possible' | 'Likely' | 'Almost Certain' | 'null', nullable
    - `severity` 'Negligible' | 'Minor' | 'Moderate' | 'Major' | 'Catastrophic' | 'null', nullable
    - `risk_level_autocalculated` 'No risk' | 'Very low risk' | 'Low risk' | 'Medium risk' | 'High risk' | 'Very high risk' | 'null', nullable
    - `review_notes` string, nullable
    - `mitigation_status` 'Not Started' | 'In Progress' | 'Completed' | 'On Hold' | 'Deferred' | 'Canceled' | 'Requires review' | 'null', nullable
    - `current_risk_level` 'No risk' | 'Very low risk' | 'Low risk' | 'Medium risk' | 'High risk' | 'Very high risk' | 'null', nullable
    - `deadline` string, date-time, nullable
    - `mitigation_plan` string, nullable
    - `implementation_strategy` string, nullable
    - `mitigation_evidence_document` string, nullable
    - `likelihood_mitigation` 'Rare' | 'Unlikely' | 'Possible' | 'Likely' | 'Almost Certain' | 'null', nullable
    - `risk_severity` 'Negligible' | 'Minor' | 'Moderate' | 'Major' | 'Critical' | 'null', nullable
    - `final_risk_level` string, nullable
    - `risk_approval` integer, nullable — User ID of the approver.
    - `approval_status` string, nullable
    - `date_of_assessment` string, date-time, nullable
    - `is_demo` boolean
    - `projects` integer[] — Array of project IDs to link this risk to.
    - `frameworks` integer[] — Array of framework IDs to link this risk to.
    - `event_frequency_min` number, nullable
    - `event_frequency_likely` number, nullable
    - `event_frequency_max` number, nullable
    - `loss_regulatory_min` number, nullable
    - `loss_regulatory_likely` number, nullable
    - `loss_regulatory_max` number, nullable
    - `loss_operational_min` number, nullable
    - `loss_operational_likely` number, nullable
    - `loss_operational_max` number, nullable
    - `loss_litigation_min` number, nullable
    - `loss_litigation_likely` number, nullable
    - `loss_litigation_max` number, nullable
    - `loss_reputational_min` number, nullable
    - `loss_reputational_likely` number, nullable
    - `loss_reputational_max` number, nullable
    - `control_effectiveness` number, nullable — Percentage 0-100.
    - `mitigation_cost_annual` number, nullable
    - `benchmark_id` integer, nullable
    - `currency` string, nullable
    - `id` integer
    - `created_at` string, date-time
    - `updated_at` string, date-time
    - `total_loss_likely` number, nullable
    - `ale_estimate` number, nullable
    - `residual_ale` number, nullable
    - `roi_percentage` number, nullable
    - `subClauses` object[]
    - `annexCategories` object[]
    - `controls` object[]
    - `assessments` object[]
    - `annexControls_27001` object[]
    - `subClauses_27001` object[]
    - `organization_id` integer, nullable
    - `is_deleted` boolean
    - `deleted_at` string, date-time, nullable
    - `custom_fields` object[]

## Other responses

- `401` — Unauthorized
- `500` — Internal server error

## Changes

> 70 revisions in range; 1 could not be searched.

- **2026-04-21** `55cdc040840c` — 2 info
  - added the new optional `query` request parameter `filter`
  - added the media type `application/json` for the response with the status `200`
- **2026-04-05** `ac49160fcab0` — 1 breaking, 1 info
  - api path removed without deprecation
  - endpoint added
- **2026-04-05** `c419b1e72a65` — 1 info
  - endpoint added
- **2025-09-11** `cfa9ae933c17` — 1 breaking
  - api removed without deprecation
- **2025-08-29** `af64a3a9480e` — 1 breaking, 26 info
  - the `data/items/` response's property type/format changed from ``/`` to `object`/`` for status `200`
  - added the optional property `data/items/ai_lifecycle_phase` to the response with the `200` status
  - added the optional property `data/items/approval_status` to the response with the `200` status
  - added the optional property `data/items/assessment_mapping` to the response with the `200` status
  - …23 more

[Full history](https://skmtc.dev/verifywise-ai/apis/verifywise-api/changes/projectRisks/get.md)

---

[API](https://skmtc.dev/verifywise-ai/apis/verifywise-api.md) · [All operations](https://skmtc.dev/verifywise-ai/apis/verifywise-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/verifywise-ai/verifywise-api/revisions/3b138b306b5b/schema)
