Matomo Form Analytics API

Exposes the Form Analytics API for managing tracked forms and retrieving form performance reports. Use these endpoints to create, update, archive, and delete configured forms, inspect form metadata, and query aggregated reports about form usage, field interactions, conversions, and real-time activity.

Operations 26

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

GET /index.php?module=API&method=FormAnalytics.addForm Start tracking a new form · Form analytics add form #
Ask an LLM
“How do I set up a new form to track in Matomo Form Analytics?”
“Can a tracked form count as converted when a goal is reached?”
Tell an agent
Add a form named {name} to site {idSite}.
Create form {name} on site {idSite} linked to goal {idGoal}.
GET /index.php?module=API&method=FormAnalytics.updateForm Edit a tracked form's settings · Form analytics update form #
Ask an LLM
“Can I rename a form I'm already tracking or change its matching rules?”
“How do I change which goal an existing tracked form converts on?”
Tell an agent
Rename form {idForm} on site {idSite} to {name}.
Update existing form {idForm} on site {idSite}, keeping name {name}, with new page rules {matchPageRules}.
GET /index.php?module=API&method=FormAnalytics.getForm Get one tracked form's configuration · Form analytics get form #
Ask an LLM
“What rules and settings does a specific tracked form have?”
“Can I look up a single form by its ID?”
Tell an agent
Get the configuration of form {idForm} on site {idSite}.
Show me the settings for tracked form {idForm} (site {idSite}).
GET /index.php?module=API&method=FormAnalytics.getForms List all tracked forms on a site · Form analytics get forms #
Ask an LLM
“Which forms are being tracked on my website?”
“Can I list every form configured for an app or site?”
Tell an agent
List all tracked forms for site {idSite}.
Show every form configured on site {idSite}, regardless of status.
GET /index.php?module=API&method=FormAnalytics.getFormsByStatuses List tracked forms by status · Form analytics get forms by statuses #
Ask an LLM
“Can I see only the archived forms, or only the running ones?”
“How do I filter my tracked forms by status?”
Tell an agent
List forms on site {idSite} with status {statuses}.
Show only the {statuses} forms for site {idSite}.
GET /index.php?module=API&method=FormAnalytics.deleteForm Delete a tracked form · Form analytics delete form #
Ask an LLM
“How do I delete a form I no longer want to track?”
“Can a tracked form be removed entirely rather than archived?”
Tell an agent destructive · confirm first
Delete form {idForm} from site {idSite}.
Permanently remove tracked form {idForm} on site {idSite}.
GET /index.php?module=API&method=FormAnalytics.archiveForm Archive a tracked form · Form analytics archive form #
Ask an LLM
“Can I archive a form to stop tracking it without deleting it?”
“What's the way to retire an old form but keep it around?”
Tell an agent
Archive form {idForm} on site {idSite}.
Move form {idForm} for site {idSite} to archived status.
GET /index.php?module=API&method=FormAnalytics.get Get the form overview report · Form analytics get #
Ask an LLM
“How are my forms performing overall in terms of starts, submissions and conversions?”
“Can I get the overview metrics for one form for last month?”
Tell an agent
Get the form overview report for site {idSite} for {period} {date}.
Show overview metrics for form {idForm} on site {idSite}, {period} {date}.
GET /index.php?module=API&method=FormAnalytics.getSummary Compare all forms side by side for a period · Form analytics get summary #
Ask an LLM
“Which of my forms converts best this week?”
“Can I get one row of metrics per form for a period?”
Tell an agent
Get the per-form summary for site {idSite}, {period} {date}.
Compare every form on site {idSite} for {period} {date} in one table.
GET /index.php?module=API&method=FormAnalytics.getEntryFields See which fields users start a form with · Form analytics get entry fields #
Ask an LLM
“Which field do visitors usually interact with first on my form?”
“Do people start my form at the top field or somewhere else?”
Tell an agent
Get the entry fields report for form {idForm} on site {idSite}, {period} {date}.
Show which fields people begin form {idForm} with (site {idSite}, {period} {date}).
GET /index.php?module=API&method=FormAnalytics.getDropOffFields Find the fields where users abandon a form · Form analytics get drop off fields #
Ask an LLM
“At which field do visitors give up on my form?”
“What's causing people to abandon my signup form?”
Tell an agent
Get the drop-off fields for form {idForm} on site {idSite}, {period} {date}.
Show where visitors abandoned form {idForm} on site {idSite} during {period} {date}.
GET /index.php?module=API&method=FormAnalytics.getPageUrls Compare a form's performance per page · Form analytics get page urls #
Ask an LLM
“My form is embedded on several pages, which page converts it best?”
“Can I break a form's metrics down by the page URL it appeared on?”
Tell an agent
Break down form {idForm} metrics by page URL for site {idSite}, {period} {date}.
Show how form {idForm} performs on each page it's embedded on (site {idSite}, {period} {date}).
GET /index.php?module=API&method=FormAnalytics.getFieldTimings See how long users spend on each field · Form analytics get field timings #
Ask an LLM
“Which form fields take visitors the longest to fill in?”
“How long do people hesitate before typing into a field?”
Tell an agent
Get field timings for form {idForm} on site {idSite}, {period} {date}.
Show time spent and hesitation per field of form {idForm} (site {idSite}, {period} {date}).
GET /index.php?module=API&method=FormAnalytics.getFieldSize See how much users type into text fields · Form analytics get field size #
Ask an LLM
“How many characters do visitors typically type into my text fields?”
“Is my comment box being used for long answers or short ones?”
Tell an agent
Get the field size report for form {idForm} on site {idSite}, {period} {date}.
Show average typed characters per text field in form {idForm} (site {idSite}, {period} {date}).
GET /index.php?module=API&method=FormAnalytics.getUneededFields Find fields users leave blank · Form analytics get uneeded fields #
Ask an LLM
“Which fields do people usually leave empty when they submit my form?”
“Are there form fields I could probably remove?”
Tell an agent
Get the unneeded fields report for form {idForm} on site {idSite}, {period} {date}.
Show fields left blank on submission of form {idForm} (site {idSite}, {period} {date}).
GET /index.php?module=API&method=FormAnalytics.getMostUsedFields See which form fields get the most interaction · Form analytics get most used fields #
Ask an LLM
“Which fields on my form are interacted with and changed most often?”
“What are the busiest fields in a form?”
Tell an agent
Get the most used fields of form {idForm} on site {idSite}, {period} {date}.
Rank fields of form {idForm} by interactions (site {idSite}, {period} {date}).
GET /index.php?module=API&method=FormAnalytics.getFieldCorrections See which fields users correct most · Form analytics get field corrections #
Ask an LLM
“Which fields make visitors hit backspace or refocus the most?”
“Where are people making mistakes and fixing them in my form?”
Tell an agent
Get the field corrections report for form {idForm} on site {idSite}, {period} {date}.
Show the most corrected fields in form {idForm} (site {idSite}, {period} {date}).
GET /index.php?module=API&method=FormAnalytics.updateFormFieldDisplayName Set friendly display names for form fields · Form analytics update form field display name #
Ask an LLM
“Can I give my form fields readable labels instead of their raw HTML names?”
“How do I rename how a field shows up in form reports?”
Tell an agent
Set field display names {fields} for form {idForm} on site {idSite}.
Label the fields of form {idForm} on site {idSite} with friendly names.
GET /index.php?module=API&method=FormAnalytics.getCounters Get real-time form counters · Form analytics get counters #
Ask an LLM
“How are my forms doing in the last 30 minutes?”
“Can I see live form activity counts for a site right now?”
Tell an agent
Get form counters for site {idSite} over the last {lastMinutes} minutes.
Show real-time form starts and submissions on site {idSite} for the past {lastMinutes} minutes.
GET /index.php?module=API&method=FormAnalytics.getCurrentMostPopularForms See the most popular forms right now · Form analytics get current most popular forms #
Ask an LLM
“Which forms are getting the most use right this moment?”
“Can I see the top few forms by activity over the last hour?”
Tell an agent
List the most popular forms on site {idSite} over the last {lastMinutes} minutes.
Show the top {filter_limit} forms by live activity on site {idSite} in the past {lastMinutes} minutes.
GET /index.php?module=API&method=FormAnalytics.getAutoCreationSettings Check form auto-creation settings · Form analytics get auto creation settings #
Ask an LLM
“Are forms created automatically when they're detected on my site?”
“What are the auto-creation settings for forms on a site?”
Tell an agent
Get the form auto-creation settings for site {idSite}.
Tell me whether site {idSite} auto-creates forms.
GET /index.php?module=API&method=FormAnalytics.getAvailableStatuses List valid form statuses · Form analytics get available statuses #
Ask an LLM
“What statuses can a tracked form have?”
“Which status values can I filter forms by?”
Tell an agent
List the valid form statuses.
Show me every status a tracked form can be in.
GET /index.php?module=API&method=FormAnalytics.getAllGoals List a site's goals for form conversion · Form analytics get all goals #
Ask an LLM
“Which goals could I link a form's conversion to?”
“What goals are configured on this site?”
Tell an agent
List all goals configured for site {idSite}.
Show the goals on site {idSite} I can use as form conversions.
GET /index.php?module=API&method=FormAnalytics.getAvailableFormRules List form-matching rule patterns · Form analytics get available form rules #
Ask an LLM
“What patterns can I use to identify which HTML form to track?”
“Can a form be matched by its ID or name attribute?”
Tell an agent
List the available form matching rule patterns.
Show the rule types for identifying a form element.
GET /index.php?module=API&method=FormAnalytics.getAvailablePageRules List page rule patterns for forms · Form analytics get available page rules #
Ask an LLM
“What page URL patterns can restrict where a form is tracked?”
“Which rule patterns are available for a form's conversion page?”
Tell an agent
List the available page rule patterns for configuring a form.
Show the URL-matching patterns I can use in form page rules.
GET /index.php?module=API&method=FormAnalytics.getAvailableConversionRuleOptions List form conversion rule options · Form analytics get available conversion rule options #
Ask an LLM
“What options are there for deciding when a form counts as converted?”
“Can a form conversion be based on a goal instead of a submit?”
Tell an agent
List the available form conversion rule options.
Show the choices for how form conversions are counted.

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/matomo:matomo-formanalytics-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

matomo-formanalytics-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Matomo Reporting API for plugin Form Analytics API
  version: 1.0.0
  description: Exposes the Form Analytics API for managing tracked forms and retrieving form performance reports. Use these endpoints to create, update, archive, and delete configured forms, inspect form metadata, and query aggregated reports about form usage, field interactions, conversions, and real-time activity.
servers:
- url: https://demo-proxy.innocraft.cloud/
  description: Current Matomo instance
security:
- MatomoToken: []
tags:


# --- truncated at 32 KB (55 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/matomo/refs/heads/main/openapi/matomo-formanalytics-api-openapi.yml