Analytics
The console's Analytics page is in the API too: the numbers, and the search through what people said.
The numbers#
GET /v1/analytics?days=30 gives the last 1 to 365 days (30 by default). Scope: sessions:read.
| Field | What it is |
|---|---|
totals.sessions | Conversations started in the period |
totals.minutes | Time talked, in whole minutes |
totals.avgDurationSeconds | The average length of a conversation |
totals.completionRate | Percent of finished conversations that completed rather than were abandoned |
totals.leftEarly | Conversations left inside 20 seconds |
totals.markedWrong | Answers marked wrong in the period's transcripts |
byDay | Conversations started each day (UTC), every day of the period, oldest first |
byPersona | Conversations and their average length, per persona, the busiest first |
sentiment, totals.csat, totals.analyzed | How the conversations went, on a plan with Advanced analytics (advanced: true); zero and null without it |
A builder's preview and a job interview are never counted. The topics the console reads from what was said stay in the console.
Searching what was said#
GET /v1/analytics/conversations?q=refund finds the conversations where those words were said, newest first, with up to three matching lines each (cut to the sentence around the words). Without q, it lists the most recent conversations. personaId, days and markedWrong=true (only conversations with an answer marked wrong) narrow it, and limit takes up to 100. Scopes: sessions:read and transcripts:read.
It looks only at conversations whose words may leave Zentiq (see What leaves Zentiq): never a young learner's, a website visitor's who said they are under 18, a job interview, a conversation with a safety flag, a builder's preview, a subject that keeps nothing, or any conversation while zero data retention is on. Those are left out before the search, so it never says whether they matched, and they aren't counted in scanned.
The search reads the 300 most recent conversations of the period at most: capped: true says it reached that ceiling, and older ones weren't looked at. Narrow days or personaId to reach them. limited: true says there were more matches than limit.