Skip to main content
GET
Returns analytics for one agent over a requested time window. The response includes summary metrics, comparison metrics, chart datasets, knowledge usage, rule analytics, escalation reasons, hourly volume, and CSAT data when available. Use this route when you need the complete analytics payload. If you only need one part of the payload, use Get agent analytics section. For the analytics endpoint family, see Analytics.

Headers

string
required
Bearer token containing your Fini workspace API key. Format: Bearer fini_... The key needs read scope.

Path parameters

string
required
Agent ID whose analytics you want to read. Use List agents to get the botId.

Query parameters

number
required
Inclusive start of the analytics window as a Unix epoch timestamp in milliseconds.
number
required
Exclusive end of the analytics window as a Unix epoch timestamp in milliseconds.
string | string[]
Conversation source filter. Pass all to include all supported sources, or pass one or more source values accepted by Fini.
string | string[]
Optional channel filter.
string | string[]
Optional latest-status filter.
string | string[]
Optional latest-sentiment filter.
string | string[]
Optional knowledge subfolder IDs to filter by.
string | string[]
Optional tag IDs to filter by.
string | string[]
Optional rule IDs to filter by.
string | string[]
Optional escalation-reason tag IDs to filter by.
number | number[]
Optional CSAT ratings to filter by. Values must be integers from 1 through 5.
string
Optional timezone used for date grouping. Defaults to UTC. Defaults to UTC.

Response

Returns an analytics summary object. The example above uses synthetic values; the response is not wrapped in botId, range, overview, or sections.
AnalyticsMetrics
Current-window totals and rates.
AnalyticsMetrics
Comparison-window totals and rates.
object
Metric-card values for conversation volume, AI resolution rate, human escalation rate, average and median response time, and average CSAT rating. The response-time card keys are averageResponseTime and medianResponseTime. Each card includes currentValue, comparisonValue, absoluteChange, percentChange, changeDirection, performance, and isAvailable. Response-time values are in milliseconds.
array
Conversation counts grouped by status. Status names come from the deployment configuration; example labels are illustrative. Status names come from the deployment configuration; example labels are illustrative.
array
Conversation counts and resolved counts grouped by channel.
array
Daily resolved, escalated, and waiting-for-customer counts.
array
Daily total conversations, resolved conversations, and AI resolution rate.
array
Daily entries with day, averageResponseTimeMs, and medianResponseTimeMs. Both response-time fields aggregate the stored per-conversation average response times for that day, in milliseconds.
object
Current and comparison knowledge-folder usage arrays.
array
Rule-level conversation, resolution, escalation, and CSAT metrics.
array
Escalation-reason tag counts.
array
Volume by day of week and hour.
array
Optional daily CSAT percentage chart data.

AnalyticsMetrics object

number
Total conversations in the window.
number
Conversations resolved by AI.
number
Conversations escalated to a human.
number
Conversations waiting for the customer.
number
AI resolution rate for the window.
number
Human escalation rate for the window.
number
Arithmetic mean of the stored per-conversation average response times, in milliseconds. Retained alongside the median.
number
Median (50th percentile) of the stored per-conversation average response times, in milliseconds, rounded to the nearest integer. This is not a percentile over individual messages. Returned in both summary and comparisonSummary; falls back to 0 when no response-time data is available. The corresponding summaryCards.medianResponseTime instead reports currentValue: null and isAvailable: false when unavailable.
number
Average CSAT rating.

Errors

The path ID or query parameters are invalid. startEpoch and endEpoch are required.
The API key is missing, malformed, revoked, or invalid.
The API key does not include the read scope required for this route.
The agent was not found in the authenticated workspace.
The authenticated request has no workspace context.
Fini failed while loading analytics.