Retrieve a form's metrics
GET/v1/forms/{id}/metrics
Requires an API key with the forms:read scope. About keys and scopes
Works with integration, agent and partner keys.
Returns a form's submissions by outcome, views and the submit rate over the window (the last 30 days unless from and to say otherwise), split by where visitors came from (byTrafficSource) and how the form showed (byPlacement).
Path parameters
idstringrequiredThe form's id.
uuid
Query parameters
fromstringoptionalStart of the window, inclusive: a date-time, or a date meaning the start of that day in the workspace timezone. Give with
to; omit both for the last 30 days. A date-time falls on a quarter hour, since views are counted per quarter hour.tostringoptionalEnd of the window, exclusive, in the same forms. To include a whole last day, pass the day after it:
from=2026-10-01&to=2026-10-08covers 1 to 7 October. No later than the end of today; a window touches at most 366 days. Give withfrom.
Header parameters
Kirora-WorkspacestringoptionalPartner keys only: the child workspace to act in, by the external id the partner gave it. Without it, a partner key acts in its own workspace. Any other key that sends it is refused with 403, and an unknown workspace is 404.
pattern
^[A-Za-z0-9._:-]{1,128}$
Returns
Returns 200 OK with a FormMetrics in data. Otherwise returns an error; Errors lists every code and which to retry.
totalintegerrequiredAll submissions.
min 0
createdintegerrequiredSubmissions that created a contact.
min 0
updatedintegerrequiredSubmissions that updated an existing contact.
min 0
honeypotintegerrequiredSubmissions caught as bots by the honeypot field.
min 0
pendingintegerrequiredDouble opt-in submissions still waiting for their confirmation link.
min 0
expiredintegerrequiredDouble opt-in submissions whose link lapsed unconfirmed after 7 days.
min 0
viewsintegerrequiredTimes the form was shown, each visitor counted once a day; crawlers and link previews are left out.
min 0
submitRatenumber | nullrequiredSubmissions, less honeypot catches, per view;
nullbefore the first view.min 0
byTrafficSourceobject[]requiredViews and submissions by where visitors came from, most views first, at most 20.
3 child attributes
trafficSourcestringrequiredWhere the visitor came from: the link's
utm_source, else the referring site, elsedirect.viewsintegerrequiredmin 0
submissionsintegerrequiredSubmissions, less honeypot catches.
min 0
byPlacementobject[]requiredViews and submissions by how the form showed.
3 child attributes
placementstringrequiredIts own link, framed in a site, a popup, or
unknownfor submissions whose page did not say.one of
link,embed,popup,unknownviewsintegerrequiredmin 0
submissionsintegerrequiredSubmissions, less honeypot catches.
min 0
windowReportWindowrequiredThe window these figures cover.
3 child attributes
fromstringrequiredStart of the window, inclusive.
date-time
tostringrequiredEnd of the window, exclusive.
date-time
timezonestringrequiredThe workspace timezone the date bounds are in.