Skip to content

Reference

Reports

Dashboards, the datasets they bind, and report templates.

A dashboard and a report template are both reports. A dashboard is a grid of visuals. A template is a paged document. They are separate routes.

A token needs records:read to list, open, and run a dataset. records:write creates and publishes. The call also needs the reporting permission for that screen: reporting.dashboard.view, reporting.dashboard.manage, reporting.dataset.view, reporting.template.view, or reporting.template.manage.

MethodPathWhat it does
GET/api/v1/x/reportsDashboards
GET/api/v1/x/reports/{id}One dashboard, including its visuals
POST/api/v1/x/reportsCreate. Visuals may be empty
PUT/api/v1/x/reports/{id}Change it. Absent keys stay
POST/api/v1/x/reports/{id}/publishPublish. An archived dashboard is 409 conflict
POST/api/v1/x/reports/{id}/archiveArchive
DELETE/api/v1/x/reports/{id}Delete
GET/api/v1/x/reports/componentsVisual components and their slots
GET/api/v1/x/reports/datasetsDatasets a visual can bind
GET/api/v1/x/reports/datasets/{key}One dataset
POST/api/v1/x/reports/datasets/{key}/queryRun it. Body is filters and parameters. This reads

Send visuals as a JSON value visuals, or as a string visualsJson. The same pair exists for filters and parameterDefaults. Sending both forms of one field is 400 invalid_field. A component or dataset the catalog does not list is 400.

{
"name": "SaaS pipeline",
"description": "Companies scored against the SaaS strategy.",
"visuals": []
}

capsure reports push report.json creates it. capsure reports components and capsure reports datasets list what a visual can use.

MethodPathWhat it does
GET/api/v1/x/report-templatesTemplates. Optional entityType
GET/api/v1/x/report-templates/{id}One template
POST/api/v1/x/report-templatesCreate
PUT/api/v1/x/report-templates/{id}Change it. Absent keys stay. reportType stays
POST/api/v1/x/report-templates/{id}/publishPublish. An archived template is 409 conflict
POST/api/v1/x/report-templates/{id}/copyCopy. Body is name and optional description
POST/api/v1/x/report-templates/{id}/archiveArchive
DELETE/api/v1/x/report-templates/{id}Delete
GET/api/v1/x/report-templates/componentsFormat components a page can place
GET/api/v1/x/report-templates/fieldsFields a page can bind. Optional entityType, default Company

entityType is Company, Deal, Investor, Fund, Person, Firm, Holding, Campaign, or Kyc. Pages are pages or pagesJson. A frame that names an unknown component is 400.

{
"name": "SaaS company brief",
"description": "One page for a company review.",
"entityType": "Company",
"reportType": "custom",
"pages": []
}

capsure report-templates push template.json creates it.