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

# Get Submissions

> Retrieve form submissions with filters for email, date range, and more.

# Get Submissions

```
GET /api/v1/external/forms/:formId/submissions
GET /api/v1/external/submissions
```

The first endpoint returns submissions for a specific form. The second returns submissions across all forms.

## Parameters

| Parameter | Type     | Default     | Description                                                 |
| --------- | -------- | ----------- | ----------------------------------------------------------- |
| `email`   | string   | —           | Filter by email (supports `*` wildcard, e.g. `*@gmail.com`) |
| `since`   | ISO 8601 | —           | Submissions after this timestamp                            |
| `until`   | ISO 8601 | —           | Submissions before this timestamp                           |
| `partial` | boolean  | false       | Include partial (incomplete) submissions                    |
| `limit`   | integer  | 50          | Results per page (max 200)                                  |
| `offset`  | integer  | 0           | Skip this many results                                      |
| `sort`    | string   | created\_at | Sort field                                                  |
| `order`   | string   | desc        | Sort direction (asc/desc)                                   |
| `form_id` | UUID     | —           | Filter by form (cross-form endpoint only)                   |

## Response

```json theme={null}
{
  "data": [
    {
      "id": "bfe0dd18-...",
      "created_at": "2026-05-15T09:32:16Z",
      "email": "user@example.com",
      "answers": { "field_name": "value" },
      "partial_submission": false,
      "completion_time_seconds": 84,
      "embed_domain": "store.example.com",
      "embed_mode": "popup"
    }
  ],
  "pagination": { "total": 796, "limit": 50, "offset": 0 }
}
```

## Incremental sync example

Fetch new submissions every 5 minutes:

```bash theme={null}
curl -H "Authorization: Bearer kntc_..." \
  "https://app.usekinetic.com/api/v1/external/submissions?since=2026-05-16T10:30:00Z"
```
