---
title: "List capture submissions"
method: GET
path: "/submissions/{sourceType}/{sourceId}"
tags: ["Widgets"]
---

# List capture submissions

`GET /submissions/{sourceType}/{sourceId}`

## Request

- Base URL: `https://api.sequenzy.com/api/v1`
- URL: `https://api.sequenzy.com/api/v1/submissions/{sourceType}/{sourceId}`
- Auth: HTTP bearer

Read immutable accepted answers for a form, popup or landing page. Requires subscribers:read plus widgets:read for forms/popups or landing_pages:read for landing pages. History is forward-only; deleting a subscriber, source or company removes associated records. Reads can be retried safely.

## Path parameters

- `sourceType` 'form' | 'popup' | 'landing_page', required
- `sourceId` string, required

## Query parameters

- `limit` integer
- `cursor` string
- `field` string
- `value` string
- `format` 'json' | 'csv'

## Response `200`

Newest-first page of accepted submissions

- object
  - `success` boolean, required
  - `source` object, required
    - `id` string, required
    - `name` string, required
    - `type` 'form' | 'popup' | 'landing_page', required
  - `submissions` object[], required
    - `id` string, required
    - `companyId` string, required
    - `sourceType` 'form' | 'popup' | 'landing_page'
    - `sourceId` string
    - `formId` string, nullable, required
    - `popupId` string, nullable
    - `landingPageId` string, nullable
    - `subscriberId` string, required
    - `createdAt` string, date-time, required
    - `fieldLabels` object, required
    - `payload` object, required
      - `email` string, required
      - `firstName` string
      - `lastName` string
      - `phone` string
      - `customAttributes` object, required
      - `recovery` object: Present only for reconstructed historical records. The source is inferred and createdAt is an evidence event time, not a verified submission timestamp.
        - `evidenceType` 'contact.added' | 'subscriber.updated', required
        - `evidenceId` string, required
        - `recoveredAt` string, date-time, required
        - `sourceAttribution` 'inferred', required
        - `timestampMeaning` 'event_time', required
  - `nextCursor` string, nullable, required
  - `csv` string: Present only for format=csv.

## Other responses

- `400`: Invalid cursor, format, limit, or incomplete filter pair
- `401`: Missing or invalid authentication
- `403`: Missing read scopes or workspace access
- `404`: Source not found in the authorized workspace
- `500`: Database failure; safe to retry this read

## Changes

- **2026-10-16** `db3873ca3d4d`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/sequenzy/apis/sequenzy-api/changes/submissions/:sourceType/:sourceId/get.md)

---

[API](https://skmtc.dev/sequenzy/apis/sequenzy-api.md) - [All operations](https://skmtc.dev/sequenzy/apis/sequenzy-api/llms.txt) - [OpenAPI document](https://skmtc.dev/sequenzy/apis/sequenzy-api/revisions/8156dc12d8b4?raw)
