Forms

Summarize responses

forms_summary · Reads only · Markdown

A form's results at a glance: choice counts, rating averages, the NPS score, yes and no shares, numbers and the latest text answers.

Free*

*Free up to 1,000,000 reads a month for the whole account, then $0.50 per 10,000 reads.

An example

How did customers rate their repairs this month, and what's our NPS?

Your agent callsforms_summaryFree*

The example business is Halverson Cycle & Repair, a bike shop with a repair workshop in Portland, Oregon. The reply is the one the tool really gives.

With these arguments
{
  "form": "repair-feedback",
  "since": "2026-10-01"
}
What comes back
{
  "form_id": "d4b0d6f7-8211-42b6-ba14-053cca327076",
  "title": "Repair feedback",
  "since": "2026-10-01",
  "responses": 2,
  "fields": [
    {
      "field_id": "nps",
      "question": "How likely are you to recommend us to a friend?",
      "type": "nps",
      "answered": 2,
      "average": 7.5,
      "distribution": [
        {
          "value": 0,
          "count": 0
        },
        {
          "value": 1,
          "count": 0
        }
      ],
      "score": 0,
      "promoters": {
        "count": 1,
        "percent": 50
      },
      "passives": {
        "count": 0,
        "percent": 0
      },
      "detractors": {
        "count": 1,
        "percent": 50
      }
    },
    {
      "field_id": "on_time",
      "question": "Was your bike ready on the day we said?",
      "type": "yes_no",
      "answered": 2,
      "yes": {
        "count": 1,
        "percent": 50
      },
      "no": {
        "count": 1,
        "percent": 50
      }
    }
  ]
}

Use it when

Someone asks how a survey turned out, or for the NPS.

What it does

A form's results at a glance: the response count and, per question, choice counts and percentages, rating averages and distributions, the NPS score (percent promoters minus percent detractors), yes and no shares, number minimum, maximum and average, and the 5 latest text answers. With since, only responses from then on.

What comes back

The form_id, title, since and response count, and per question its results: counts and shares, average and distribution, NPS with promoters and detractors, or the 5 latest text answers. Every reply also carries cost_usd and balance_usd.

Inputs

NameTypeWhat it is
formRequiredstringThe form's form_id or slug (forms_list shows both). 1 to 60 characters.
sincestringOnly responses from this time on: ISO 8601 (2026-10-01T00:00:00Z) or a date (2026-10-01, UTC). Up to 40 characters.

The call

Over MCP, call forms_summary on https://api.conecto.chat/mcp/forms. Over REST:

Terminal
curl -X POST https://api.conecto.chat/v1/tools/forms_summary \
  -H "Authorization: Bearer $CONECTO_KEY" \
  -H "Content-Type: application/json" \
  -d '{"form":"repair-feedback","since":"2026-10-01"}'

When it refuses

A refused call costs nothing and says what to do next.

CodeWhenWhat to do
not_found404No form of the business has that form_id or slug.Call forms_list and use a form_id or slug from it.
invalid_input400since is not an ISO 8601 time or a date.Send a time like 2026-10-01T00:00:00Z or a date like 2026-10-01.

Give this to your agent.

Set up Conecto from https://conecto.chat/SKILL.md