MISSINdevelopersLog in

API reference

FormResponsesSurface

Responses for one form in a window: the list, counts by placement and the funnel. Read access, forms toolset, MCP tool get_form_responses_surface.

Access: Read

Variables

VariableTypeRequiredAcceptsDescription
firstIntno32-bit integer. Default 25
fromDatetimenoISO 8601 with a zone, e.g. 2026-01-01T00:00:00ZWindow start. Defaults to 30 days ago.
listFilterFormResponseFilternoFormResponseFilter
placementIdUUIDnoScope to one placement. Omit for every placement of the form.
slugString!yesChecks for equality with the object’s formSlug field.
toDatetimenoISO 8601 with a zone, e.g. 2026-01-01T00:00:00ZWindow end. Defaults to now.
windowFilterFormResponseFilternoFormResponseFilter

Call it

bash
curl https://api.missin.co.uk/graphql/v1 \
  -H "Authorization: Bearer $MISSIN_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"operationName":"FormResponsesSurface","variables":{"slug":"…"},"extensions":{"persistedQuery":{"version":1,"sha256Hash":"a763ab50c672355fe7e850c4d7db61564871cbc29ea5646807f91017064b7388"}}}'

Document

graphql
query FormResponsesSurface($first: Int = 25, $from: Datetime, $listFilter: FormResponseFilter, $placementId: UUID, $slug: String!, $to: Datetime, $windowFilter: FormResponseFilter) { __typename responses: allFormResponses( first: $first filter: $listFilter orderBy: [CREATED_AT_DESC] ) { __typename nodes { __typename completedAt createdAt formPlacementId answers: formResponseAnswersByFormResponseId { __typename totalCount } id partnerByPartnerId { __typename profileImage: avatarUrl id name rowId username } rowId shortLinkByShortLinkId { __typename code id label } status trustFlags trustScore updatedAt utmCampaign utmContent utmMedium utmSource utmTerm variant { __typename id rowId variantType } } totalCount } everything: allFormResponses(filter: $windowFilter) { __typename totalCount } complete: allFormResponses(condition: {status: COMPLETE}, filter: $windowFilter) { __typename totalCount } incomplete: allFormResponses( condition: {status: INCOMPLETE} filter: $windowFilter ) { __typename totalCount } skipped: allFormResponses(condition: {status: SKIPPED}, filter: $windowFilter) { __typename totalCount } believability: allFormResponses(filter: $windowFilter) { __typename aggregates { __typename average { __typename trustScore } } } allForms(condition: {formSlug: $slug}, first: 1) { __typename nodes { __typename formPlacementsByFormId(first: 50) { __typename nodes { __typename id integrationChannelByIntegrationChannelId { __typename displayName id slug surface } published rowId surface } } formSlug id rowId status title } } formFunnel(slug: $slug, placementId: $placementId, from: $from, to: $to) { __typename abandonedSessions from pages { __typename abandoned completed pageIndex viewed } placementIds steps { __typename key sessions } to variants { __typename answerableQuestions variantId } } }

For AI agents: a markdown index of this site is at /llms.txt, and every page is available as markdown by adding .md to its URL.