MISSINdevelopersLog in

API reference

FormInsightRead

Insight facts, answers and reasons mined from form responses, with filters. Read access, forms toolset, MCP tool get_form_insight_read.

Access: Read

Variables

VariableTypeRequiredAcceptsDescription
answersInsightAnswerFilter!yesInput object, below
factsInsightFactFilter!yesInput object, below
reasonsFormResponseAnswerReasonFilter!yesInput object, below

Input types

A filter lists its fields by the type they take, and none of them is required.

InsightAnswerFilter

InsightFactFilter

  • [InsightFactFilter!]: and, or
  • UUIDFilter: answerId, customerId, formId, responseId, who, workspaceId
  • StringFilter: attribute, attributeClass, factId, formSlug, kind, subject, subjectClass, thing, thingClass
  • FloatFilter: confidence, polarity
  • DatetimeFilter: createdAt
  • InsightFactFilter: not
  • IntFilter: polarityBand, polaritySign

FormResponseAnswerReasonFilter

  • [FormResponseAnswerReasonFilter!]: and, or
  • UUIDFilter: answerId, workspaceId
  • StringFilter: broad, family
  • FormResponseAnswerReasonFilter: not

Call it

bash
curl https://api.missin.co.uk/graphql/v1 \
  -H "Authorization: Bearer $MISSIN_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"operationName":"FormInsightRead","variables":{"answers":{"and":[]},"facts":{"and":[]},"reasons":{"and":[]}},"extensions":{"persistedQuery":{"version":1,"sha256Hash":"8edf34fba82132f3cc1fc4d5794dbda7109a2f77334e74b1df0852c7bada722e"}}}'

Document

graphql
query FormInsightRead($answers: InsightAnswerFilter!, $facts: InsightFactFilter!, $reasons: FormResponseAnswerReasonFilter!) { __typename reasons: allFormResponseAnswerReasons(filter: $reasons) { __typename aggregates { __typename distinctCount { __typename answerId } } groupedAggregates(groupBy: [BROAD, FAMILY]) { __typename average { __typename confidence } distinctCount { __typename answerId } keys } } answers: allInsightAnswers(filter: $answers) { __typename aggregates { __typename distinctCount { __typename answerId } } byOutcome: groupedAggregates(groupBy: [REASON_OUTCOME]) { __typename distinctCount { __typename answerId } keys } byMark: groupedAggregates(groupBy: [MINED, READABLE]) { __typename distinctCount { __typename answerId } keys } } facts: allInsightFacts(filter: $facts) { __typename aggregates { __typename distinctCount { __typename answerId customerId factId who } } byThing: groupedAggregates(groupBy: [KIND, THING, THING_CLASS, POLARITY_SIGN]) { __typename distinctCount { __typename who } keys } byThingBand: groupedAggregates(groupBy: [KIND, THING, POLARITY_BAND]) { __typename distinctCount { __typename who } keys } byAttribute: groupedAggregates(groupBy: [KIND, ATTRIBUTE_CLASS, ATTRIBUTE]) { __typename distinctCount { __typename who } keys } byAttributeClass: groupedAggregates(groupBy: [KIND, ATTRIBUTE_CLASS]) { __typename distinctCount { __typename who } keys } byKind: groupedAggregates(groupBy: [KIND]) { __typename distinctCount { __typename who } keys } byAttributeBand: groupedAggregates(groupBy: [KIND, ATTRIBUTE, POLARITY_BAND]) { __typename distinctCount { __typename factId } keys } byTopicSubject: groupedAggregates( groupBy: [KIND, ATTRIBUTE, SUBJECT_CLASS, SUBJECT] ) { __typename distinctCount { __typename factId } keys } } }

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.