Building blocks
Reports
Saved queries and charts over tasks, runs, rules, integrations and your data — in the app, the API, MCP and OData.
A report picks a source, columns, filters, joins, grouping and aggregates, and a visualization: table, bar, horizontal-bar, stacked-bar, line, area, pie, radar, scatter or funnel.

{
"name": "Runs by status",
"data_source": "workflow_runs",
"columns": ["status", "COUNT_id"],
"group_by": ["status"],
"aggregations": [{ "field": "id", "fn": "COUNT" }],
"visualization": "bar"
}usertasks reports create -f runs-by-status.json
usertasks reports preview -f runs-by-status.json # run a definition without saving it
usertasks reports export <id> > report.json # portable definitionAggregations run in the database, and exports are produced on the server, so large reports stay fast.
Sources
Built-in sources (generated from the report registry), plus one source per data table and per reference with outputs:
| Source | Key | Category | Columns |
|---|---|---|---|
| Tasks | tasks | Tasks | 19 |
| Effort Records | effort_records | Tasks | 7 |
| Task Events | lifecycle_events | Tasks | 5 |
| Task Assignees | task_assignees | Tasks | 7 |
| Task Escalations | task_escalations | Tasks | 7 |
| Task Responses | task_responses | Tasks | 6 |
| Workflow Runs | workflow_runs | Workflows | 11 |
| Workflow Logs | workflow_logs | Workflows | 12 |
| Business Rule Executions | business_rule_executions | Business Rules | 19 |
| Workflow Queue | workflow_queue | Workflows | 12 |
| Workflows | workflows | Workflows | 8 |
| Integrations | integrations | Integrations | 8 |
| Integration References | integration_references | Integrations | 6 |
| Connectors | tenant_connectors | Integrations | 8 |
| Users | users | Organisation | 8 |
| Teams | teams | Organisation | 4 |
| Notifications | notifications | Audit | 8 |
| Failed Deliveries | dead_letter_events | Audit | 8 |
| API Keys | api_keys | Audit | 7 |
| Invitations | invitations | Audit | 6 |
| Object Audit Log | object_audit_log | Observability | 7 |
| Integration Call Logs | integration_call_logs | Observability | 12 |
| Agent Runs | agent_runs | Observability | 13 |
| Retention Policies | retention_policies | Retention | 10 |
| Retention Reviews | retention_policy_reviews | Retention | 15 |
| Retention Executions | retention_policy_executions | Retention | 14 |
| Retention Coverage | retention_policy_assignments | Retention | 14 |
Access
Reports have owners and sharing (reports.share). Read them in the app, with GET /api/v1/reports/{id}, through MCP (reports_* tools — AI clients can build and run reports), or as OData collections (SavedReports, SavedReportResults).