> ## Documentation Index
> Fetch the complete documentation index at: https://docs.zelto.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Reports

> A written analysis of your voice AI operation, requested on demand and authored in rich text.

A **report** is a written analysis of your voice AI operation — the kind of
thing a business analyst would put together in a real BPO. Where a
[finding](/docs/findings) is the durable record of one recurring *problem* and a
[solution](/docs/solutions) is the record of a *fix*, a report answers an
open-ended *question* about how the operation is running: "Why did our
conversion go up in May?", "How are we handling the after-hours scenario?", or
"What's different between agent A and agent B in the A/B test?"

Reports live under **Reports** in the sidebar, scoped to your organization (not
to a single agent).

## Requesting a report

Press **Request report** and describe what you want to understand:

| Field       | What it is                                                                               |
| ----------- | ---------------------------------------------------------------------------------------- |
| **Title**   | Short headline for the report (required, up to 255 characters).                          |
| **Request** | Free-text description of what the report should cover (optional, up to 4000 characters). |

The report is created immediately and opens to its own page. The body starts
empty — you (or, later, an automated job) fill in the analysis.

## Generation status

Every report carries a generation **status** shown as a badge on the list and
detail pages:

| Status                     | Meaning                                                                                |
| -------------------------- | -------------------------------------------------------------------------------------- |
| **Waiting for generation** | The default. The report has been requested but the analysis hasn't been generated yet. |
| **Generating**             | The analysis is being produced.                                                        |
| **Ready**                  | The analysis is complete.                                                              |
| **Failed**                 | Generation didn't finish.                                                              |

Automated, AI-generated reports are not available yet, so a requested report
sits in **Waiting for generation**. You can write the analysis by hand in the
editor in the meantime — the body is fully editable regardless of status.

## Creating and editing from chat or the API

You don't have to use the **Request report** button. Ask Zelto in chat — "create
a report titled … about …" — and it proposes the report for you to confirm
before it's saved. The same actions are available to scripts and external agents
over the [MCP server](/docs/mcp) as the `create_report` and `update_report`
tools (with `list_reports` / `get_report` to find and read existing ones), so an
automated workflow can file a report or update its title, request, body, or
status programmatically.

## Anatomy of a report

| Field            | What it is                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| ---------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Title**        | The report's headline, editable inline from the detail page.                                                                                                                                                                                                                                                                                                                                                                                                                       |
| **Request**      | The original free-text ask, shown as a callout on the detail page.                                                                                                                                                                                                                                                                                                                                                                                                                 |
| **Body**         | Rich text (Tiptap / ProseMirror JSON) — the same editor as [findings](/docs/findings) and [solutions](/docs/solutions), with headings, lists, diagrams, `@`-mentions of agents, findings, calls, and more, **call examples** that embed any call's recording and annotated transcript excerpt inline, **images** you upload or link by URL (with alt text and a caption), and **data widgets** (see below) that chart live numbers from your data. The body autosaves as you type. |
| **Status**       | The generation status (see above).                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| **Requested by** | The org member who requested the report.                                                                                                                                                                                                                                                                                                                                                                                                                                           |

## Data widgets

A **data widget** turns a report from a static write-up into a live dashboard.
It runs a query against your analytics store and renders the result as a table
or chart that re-runs every time the report is opened, so the numbers stay
current as new [calls](/docs/conversations) come in.

In the report editor, type `/` and choose **Data widget**, then fill in:

| Field               | What it is                                                                                                                         |
| ------------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| **Title**           | Optional headline shown in the widget header.                                                                                      |
| **Query**           | A read-only `SELECT` over your organization's analytics tables (conversations, transcripts, analyses, findings, agents, webhooks). |
| **Show as**         | **Table**, or a **Bar** / **Line** / **Area** / **Pie** chart.                                                                     |
| **Category column** | For charts, the result column used as the X axis.                                                                                  |
| **Value column(s)** | For charts, the comma-separated numeric columns to plot.                                                                           |

Press **Run** to execute it. Use the refresh button in the widget header to
re-run on demand, the pencil to change the query, and the chart/table toggle to
switch views. Results are capped at the first 1,000 rows.

Data widgets are read-only and **scoped to your organization**: every query is
automatically restricted to your org's rows on the analytics tables, and only
`SELECT` / `WITH` / `DESCRIBE` / `EXPLAIN` / `SHOW` statements are allowed —
writes and cross-organization access are rejected. The same querying capability
is available conversationally through Ask Zelto and over the
[MCP server](/docs/mcp).

## Related

* [Findings](/docs/findings) — the recurring problems a report often explains.
* [Solutions](/docs/solutions) — the fixes that follow from what a report uncovers.
* [Agents](/docs/agents) — the agents whose behavior a report analyzes.
