---
title: "List forms"
method: GET
path: "/forms"
tags: ["Forms"]
---

# List forms

`GET /forms`

Retrieves forms accessible to the current user, with support for filtering, sorting, and pagination.

## Query parameters

- `role` 'view' | 'respond' | 'comment' | 'analyze' | 'edit' | 'manage'
- `sort` 'modified' | 'title'
- `order` 'asc' | 'desc'
- `limit` integer
- `offset` integer

## Response `200`

A paginated list of forms.

- object
  - `data` Form[]
    - `id` string, ulid, required
    - `owner` string, ulid, required
    - `title` string, required
    - `slug` string, required
    - `description` string, nullable
    - `structure` string, kdl, required
    - `live` boolean, required
    - `opens` string, date-time, nullable
    - `closes` string, date-time, nullable
    - `anonymous` boolean
    - `max_responses` integer, nullable
    - `individual_limit` integer
    - `editable_responses` boolean
  - `pagination` Pagination
    - `offset` integer, required
    - `limit` integer, required
    - `total` integer, required

## Other responses

- `401` — Unauthorized
- `422` — Unprocessable Entity

## Changes

- **2025-07-14** `3fcd68b489c2` — 4 info
  - added the optional property `data/items/anonymous` to the response with the `200` status
  - the `editable_responses` response's property default value `false` was added for the status `200`
  - the `individual_limit` response's property default value `1` was added for the status `200`
  - the `live` response's property default value `false` was added for the status `200`
- **2025-07-13** `434dd7ec37b5` — 1 breaking, 1 info
  - removed the required property `data/items/specification` from the response with the `200` status
  - added the required property `data/items/structure` to the response with the `200` status
- **2025-07-13** `0d7f3c750979` — 1 breaking, 3 warning, 4 info
  - removed the required property `data/items/structure` from the response with the `200` status
  - deleted the `query` request parameter `owner`
  - deleted the `query` request parameter `title`
  - removed the optional property `data/items/anonymous` from the response with the `200` status
  - …4 more

[Change history](https://skmtc.dev/osdg-iiith/apis/forms-portal-api/changes/forms/get.md)

---

[API](https://skmtc.dev/osdg-iiith/apis/forms-portal-api.md) · [All operations](https://skmtc.dev/osdg-iiith/apis/forms-portal-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/osdg-iiith/forms-portal-api/revisions/3fcd68b489c2/schema)
