Skip to content

Search Form Submissions

POST
/forms/{form_key}/submissions

What people actually submitted to one form.

A paginated READ; POST only because the filter set is a body. Identifying fields are REDACTED for a key without the Signals write capability, exactly as in the browser - an empty-looking value is a redaction, not a missing submission.

Authorizations

Parameters

Path Parameters

form_key
required

The form’s form_key (the id from GET /forms).

string

The form’s form_key (the id from GET /forms).

Header Parameters

X-Target-Org-Id
Any of:
string

Request Body required

Which page of a form’s submissions to read. Mirrors FormSubmissionsRequest.

object
conditions
Array<object>

One filter over a form’s submissions. Mirrors the app’s ConditionRequest.

object
field
required

Submitted field name, or a submission attribute.

string
operator
required

Comparison operator, in the app’s filter grammar.

string
value
required

Value compared against.

value_to

Upper bound, for range operators.

page
integer
default: 1 >= 1
per_page
integer
default: 20 >= 1
source_id
Any of:
string
<= 500 characters

Responses

200

Successful Response

object
data
required

One forms object, or one handler response.

Open-shaped: the submission, mapping, group and audit payloads grow with the product, and a closed model here would silently drop what it does not name.

object
key
additional properties
any
pagination
Any of:
object
has_next
required

Whether there are more pages

boolean
limit
required

Items per page

integer
next_cursor
Any of:
string
notes
Any of:
Array<string>
page
required

Current page number (1-indexed)

integer
total
required

Total number of items

integer
total_available
Any of:
integer
total_is_lower_bound
Any of:
boolean

422

Validation Error

object
detail
Array<object>
object
loc
required
Array
msg
required
string
type
required
string