Skip to main content

Saved reports

A report is a report query saved under a name: a JSON object naming the entity, filters, a reporting period, what to measure, what to view and segment by, and the record columns. Everyone in the organization can list and open them; admins and managers create, update and delete them. The same operations are available as MCP tools, along with run_report (a saved report or an ad hoc query: figures, comparison and a page of records) and export_report (emailed Excel/CSV). Draft a Report turns a sentence (“proposals submitted last month by owner”) into a report to review and save.

What a report can be on

  • Activities — calls, meetings, emails, tasks and notes.
  • Deals — open, won and lost deals (archived deals are left out), with measures for total and average value, win rate (won ÷ won + lost) and sales cycle (days from created to won). A deal’s next step is its earliest open activity.
  • Stage changes — each move of a deal into a stage, for counts like proposals submitted or qualified leads. History starts when the deal was first recorded in AnyCRM.
  • Contacts — leads and contacts by funnel stage (target, lead, contact), with lead conversion: the share of leads that became contacts.
  • Outreach (email performance) — each person enrolled in an Outreach campaign, with emails sent, result (replied, no reply yet, bounced, opted out) and reply and bounce rates. Counts match the campaign’s own metrics.

Filters, comparison and order

filters must all match. filter_groups adds alternatives: a record matches when it matches filters or any one group, where a group’s filters all match. The period applies to every group. compare runs the same report over the previous period (this month → last month; a custom range → the same length just before) or the same period a year earlier, and returns it as comparison. chart_sort orders the chart by value or name; by default dates run in time order, choices in their own order and stages in pipeline order. A deal funnel (chart: "funnel") views deals by furthest stage, the furthest non-lost stage each deal reached, and counts each step as the deals that got at least that far.

Running reports

List Report Fields describes what each part of a query can use, List Filter Values finds the people and records a filter can pick, Run a Report runs any query and returns the chart figures and records, and Export a Report emails it as Excel or CSV.

Emailed activity reports

Emailed reports are point-in-time exports of activity data — a summary of what happened across the team (or a filtered subset of it) over a given window, delivered as an emailed file rather than rendered inline in the API response.

Why generation is asynchronous

Rendering a report (building the PDF/spreadsheet output) is comparatively heavy work, so it doesn’t happen inline on the request — it’s handed off to a background job, and the API call itself just confirms the job was queued. The report lands directly in the requester’s own inbox; there’s no way to redirect it to an arbitrary address, since accepting an arbitrary recipient here would turn the endpoint into a way to export an organization’s entire activity history to anyone.

Windows and filters

A report’s date range is always sent as explicit start/end bounds — the API doesn’t interpret phrases like “last week” itself, so whatever produced the request is responsible for resolving that into concrete dates first. Reports can be scoped by activity type, by owner, and can include a detailed row-level export alongside the aggregate summary.

Technical reference

For the full endpoint-by-endpoint reference, see Email an Activity Report.