Skip to the documentation
API

List submissions

Every sign-up the form stored, newest first, with each answer as it was sent.

GET/forms/{id}/submissions

Runs the real call on your workspace.

GET /forms/{id}/submissions

Every sign-up the form stored, newest first, with each answer as it was sent.

Example

Needs forms:read. limit goes up to 100 and defaults to 25, cursor takes the previous page's nextCursor, q searches email addresses, and status is pending or added.

curl
curl "$OE/forms/frm_3b9d2e7a1c4f80d56e2a9b14/submissions?q=example.com" -H "$AUTH"
Response
{  "object": "list",  "data": [{      "object": "form_submission",      "id": "fsb_8e2c4a6b1d3f57e09a2c4e6b",      "formId": "frm_3b9d2e7a1c4f80d56e2a9b14",      "email": "ann@example.com",      "status": "added",      "expired": false,      "answers": [        {          "fieldId": "fld_k2m8q4w9z1x7",          "key": "email",          "label": "Email",          "type": "email",          "value": "ann@example.com",          "display": "ann@example.com"        },        {          "fieldId": "fld_p7r3t5v2y8n4",          "key": "first_name",          "label": "First name",          "type": "text",          "value": "Ann",          "display": "Ann"        }      ],      "audienceIds": ["aud_4c1b8e2a7d9f05c36b4e8a71"],      "sourceUrl": "https://acme.com/blog",      "confirmedAt": "2026-09-30T16:44:02.000Z",      "createdAt": "2026-09-30T16:42:11.000Z"    }],  "hasMore": false,  "nextCursor": null,  "formId": "frm_3b9d2e7a1c4f80d56e2a9b14"}

expired marks a pending sign-up whose confirmation link has run out. Approve it, or send a fresh link.

A sign-up that looked automated is never stored, so it is not listed.

Reference