# List assessments

```
GET https://www.example.com/api/v2/assessments
```

Returns paginated list of assessments with optional filtering. Only returns current versions — superseded assessments are excluded.

## Request

### Query Parameters

**status** string

Filter by assessment status:

- `not_started`
- `in_progress`
- `pending_approval`
- `approved`

**system_id** string

Filter by linked system UUID

**template_id** string

Filter by assessment template UUID

**created_at[gte]** string

Filter assessments created at or after this timestamp (ISO 8601)

**created_at[lte]** string

Filter assessments created at or before this timestamp (ISO 8601)

**page_size** integer

Number of results per page (1-1000, default 50)

**after** string

Cursor token for next page

**before** string

Cursor token for previous page

**sort_by** string

Field to sort by (default: created_at)

**sort_direction** string

Sort direction (default: DESC)

### Header Parameters

**authorization** stringrequired

**Example:** `Bearer privacy_api_key.abc123`

## Responses

- 200

Assessments list returned

- application/json

- Schema
- Example (auto)

**Schema**

**data** object[]

Array [

**id** uuid

**name** string

**Example:** `Vendor Risk Assessment - Acme Analytics`

**status** string

**Possible values:** [`not_started`, `in_progress`, `pending_approval`, `approved`]

**template_id** uuid

**template_name** string

**Example:** `Vendor Risk Assessment`

**due_date** datenullable

**systems** object[]

Array [

**system_id** uuidnullable

**display_name** string

**Example:** `Acme Analytics`

]

**last_updated** string

Optimistic concurrency token (millisecond epoch) for use with submit_answers

**Example:** `1714500000000`

**created_at** date-time

**updated_at** date-time

**progress** object

**total_questions** integer

**Example:** `24`

**answered_questions** integer

**Example:** `12`

**required_remaining** integer

**Example:** `5`

]

**metadata** object

**page_size** integer

**next_page** string | nullnullable

**previous_page** string | nullnullable

**sort_by** string

**sort_direction** string

```json
{
  "data": [
    {
      "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
      "name": "Vendor Risk Assessment - Acme Analytics",
      "status": "not_started",
      "template_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
      "template_name": "Vendor Risk Assessment",
      "due_date": "2024-07-29",
      "systems": [
        {
          "system_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
          "display_name": "Acme Analytics"
        }
      ],
      "last_updated": "1714500000000",
      "created_at": "2024-07-29T15:51:28.071Z",
      "updated_at": "2024-07-29T15:51:28.071Z",
      "progress": {
        "total_questions": 24,
        "answered_questions": 12,
        "required_remaining": 5
      }
    }
  ],

"metadata": {
    "page_size": 0,
    "next_page": "string",
    "previous_page": "string",
    "sort_by": "string",
    "sort_direction": "string"
  }
}
```

### Example Curl Command

```bash
curl -L 'https://www.example.com/api/v2/assessments' \
-H 'Accept: application/json'
```
