GET /v1/reports — List Reports
Retrieve all saved reports in your workspace. This endpoint requires the read scope.Request example
cURL
Response — 200 OK
200 OK
string
Unique identifier for the report.
string
Human-readable name of the report.
string
The report type. One of
event_volume, funnel, retention, or custom.string
ISO 8601 timestamp of when the report was created.
string
ISO 8601 timestamp of the most recent time this report was executed.
null if the report has never been run.POST /v1/reports — Create a Report
Create a new saved report with an optional recurring delivery schedule. This endpoint requires the write scope.Body parameters
string
required
A human-readable name for the report (e.g.
"Q3 Retention by Cohort").string
required
The analysis type. Must be one of:
event_volume— total occurrences of events over timefunnel— conversion rates through an ordered sequence of eventsretention— percentage of users who return after an initial eventcustom— arbitrary SQL or saved query (available on Enterprise plans)
object
required
Configuration object defining what the report analyzes. Fields vary by
type but typically include:events(array of strings) — event names to includefrom(string) — ISO 8601 start date for the report windowto(string) — ISO 8601 end date for the report windowgroup_by(string) — a user trait or event property to segment results by
object
Optional recurring delivery configuration. When provided, Cano Analytics automatically runs the report and emails results on the defined cadence.
frequency(string) — how often to run the report:daily,weekly, ormonthlyrecipients(array of strings) — list of email addresses to deliver results toformat(string) — delivery format:pdforcsv
Request example
POST /v1/reports
Response — 201 Created
201 Created
GET /v1/reports//run — Run a Report
Trigger an immediate, synchronous execution of a saved report and retrieve the results in the response. This is useful for on-demand data pulls or testing a report’s configuration. This endpoint requires the read scope.Path parameters
string
required
The unique identifier of the report to run.
Response fields
object
An object containing the report output.
array
An ordered array of column name strings corresponding to each entry in a
rows item.array
An array of data rows. Each row is an array of values aligned with the
columns array.string
ISO 8601 timestamp of when this run completed.
Request example
cURL
Response — 200 OK
200 OK
For large reports, run time may take several seconds. If your report consistently times out, consider narrowing the date range in
config or using the scheduled delivery feature instead.