> ## Documentation Index
> Fetch the complete documentation index at: https://apidocs.neetoform.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Forms

> List forms and read their submissions from the terminal.

Commands for the forms in a workspace and the submissions they collected. For
fields and response details, see the API reference for
[Forms](/api-reference/forms/list) and
[Submissions](/api-reference/submissions/list).

Samples on this page use `--json`, which is the format you get when output is
piped as well. On a terminal without that flag the same data prints as a table.
See [Output formats](/cli/output-formats).

## List forms

Every form in the workspace, newest first. Use `--status` to narrow it to the
active, archived or favorited ones.

```bash theme={"system"}
neetoform forms list --status active --page-size 2 --json
```

| Flag          | Type     | Required | Default | Description                                  |
| ------------- | -------- | -------- | ------- | -------------------------------------------- |
| `--page`      | `int`    |          | `1`     | Page number                                  |
| `--page-size` | `int`    |          | `0`     | Items per page (max 100)                     |
| `--status`    | `string` |          |         | Filter by status: active, archived, favorite |

```json theme={"system"}
{
  "data": [
    {
      "id": "7db4b04a-6e17-4af6-a1d6-650c4cba3f91",
      "title": "Customer feedback",
      "is_published": true,
      "state": "active",
      "created_at": "2026-01-15T10:30:00.000Z",
      "updated_at": "2026-02-02T14:45:00.000Z",
      "attempt_url": "https://acme.neetoform.com/a06b5843f9e0faab8746",
      "submissions_count": 128,
      "is_archived": false,
      "is_disabled": false,
      "is_suspended": false,
      "created_by": "Oliver Smith"
    },
    {
      "id": "b4c8c9b6-7510-4d69-9a6b-37a92c3ae62b",
      "title": "Event registration",
      "is_published": false,
      "state": "draft",
      "created_at": "2026-02-11T09:02:00.000Z",
      "updated_at": "2026-02-11T09:20:00.000Z",
      "attempt_url": "https://acme.neetoform.com/2c1f7ad9e64b5a03bd11",
      "submissions_count": 0,
      "is_archived": false,
      "is_disabled": false,
      "is_suspended": false,
      "created_by": "Sam Smith"
    }
  ],
  "breadcrumbs": [
    {
      "label": "Submissions",
      "command": "neetoform forms submissions list <form-id>"
    }
  ],
  "pagination": {
    "current_page_number": 1,
    "total_pages": 12,
    "total_records": 23,
    "page_size": 2
  }
}
```

`--status` accepts only `active`, `archived` or `favorite`. Anything else is
rejected before a request is made.

The `id` in each record is the form id every other command and endpoint takes.
See [Getting the Form ID](/getting-started/getting-form-id) for the other ways
to find it.

## List submissions for a form

Completed submissions for one form, newest first, with each answer alongside the
question it responds to.

### Required arguments

* `<form-id>` - the form's UUID, from `neetoform forms list`.

```bash theme={"system"}
neetoform forms submissions list 7db4b04a-6e17-4af6-a1d6-650c4cba3f91 --json
```

| Flag          | Type  | Required | Default | Description              |
| ------------- | ----- | -------- | ------- | ------------------------ |
| `--page`      | `int` |          | `1`     | Page number              |
| `--page-size` | `int` |          | `0`     | Items per page (max 100) |

```json theme={"system"}
{
  "data": [
    {
      "id": "f1c0d5e2-8a44-4c17-9d1e-2b6f4a8e37c5",
      "created_at": "2026-02-14T11:05:31.000Z",
      "field_values": [],
      "user_agent": {
        "id": "9d4a1c77-2f65-4a0b-bb31-5e8c0d92a614",
        "name": "Chrome",
        "version": "141.0.0",
        "ip_address": "203.0.113.42",
        "device_name": "Mac",
        "device_type": "desktop",
        "operating_system": "macOS",
        "operating_system_version": "26.5",
        "submission_id": "f1c0d5e2-8a44-4c17-9d1e-2b6f4a8e37c5",
        "created_at": "2026-02-14T11:05:31.000Z",
        "updated_at": "2026-02-14T11:05:31.000Z"
      },
      "responses": [
        {
          "id": "3a9b6c11-5d72-4e88-a0f3-91c47de2b6aa",
          "label": "What is your name?",
          "position": 1,
          "kind": "short_answer",
          "slug": "what-is-your-name",
          "value": "Oliver Smith"
        },
        {
          "id": "6e2d18f4-c093-4b5a-8f77-40a1b9c3de52",
          "label": "How likely are you to recommend us?",
          "position": 2,
          "kind": "linear_scale",
          "slug": "how-likely-are-you-to-recommend-us",
          "value": "9"
        }
      ]
    }
  ],
  "breadcrumbs": [
    {
      "label": "Form",
      "command": "neetoform forms list"
    }
  ],
  "pagination": {
    "current_page_number": 1,
    "total_pages": 1,
    "total_records": 1,
    "page_size": 30
  }
}
```

`responses` follows the form's question order, and `kind` names the field type
the question was built with, which is what decides the shape of `value`.
