Needs keys Groups the questions users asked across the cohort's results by keyword overlap and returns the largest groups. With an OpenAI key set, each group is renamed with one canonical question; without a key, the most frequent wording in the group is used.
Request#
| Field | Type | Required | Description |
|---|---|---|---|
id |
string | Yes | QA cohort ID, for example qa_cohort_2c4e6a8b0d1f3e5a7c9b1d3f. |
Query:
| Field | Type | Required | Description |
|---|---|---|---|
limit |
integer | No | Groups to return, 1 to 50. Default 20. Values outside the range are clamped. |
Example request#
curl "https://api.tried.com.au/qa/cohorts/qa_cohort_2c4e6a8b0d1f3e5a7c9b1d3f/top-questions?limit=10" \
-H "Authorization: Bearer $TRIED_API_KEY"const res = await fetch("https://api.tried.com.au/qa/cohorts/qa_cohort_2c4e6a8b0d1f3e5a7c9b1d3f/top-questions?limit=10", {
headers: { Authorization: `Bearer ${process.env.TRIED_API_KEY}` },
});
const top = await res.json();import os, requests
res = requests.get(
"https://api.tried.com.au/qa/cohorts/qa_cohort_2c4e6a8b0d1f3e5a7c9b1d3f/top-questions",
headers={"Authorization": f"Bearer {os.environ['TRIED_API_KEY']}"},
params={
"limit": 10,
},
)
top = res.json()Response#
200 OK
{
"calls_analyzed": 18,
"calls_with_questions": 11,
"pass_rate": 0.722,
"questions": [
{
"question": "Do you have anything on Thursday afternoon?",
"count": 6,
"calls": 5,
"resolution_rate": 0.8,
"examples": [
"Do you have anything on Thursday afternoon?",
"Is Thursday afternoon free?"
]
}
]
}| Field | Type | Description |
|---|---|---|
calls_analyzed |
integer | Results in the cohort. |
calls_with_questions |
integer | Results where the user asked at least one question. |
pass_rate |
number or null | Share of results that passed, overrides applied, 0 to 1. |
questions[].count |
integer | Times a question in the group was asked. |
questions[].calls |
integer | Calls that asked a question in the group. |
questions[].resolution_rate |
number or null | Share of those calls that were resolved, 0 to 1. |
questions[].examples |
string[] | Up to 5 distinct wordings. |
Errors#
| Status | When |
|---|---|
401 |
Missing or invalid API key. |
403 |
The key's IP allowlist or scopes reject the request. This route needs the analytics scope. |
404 |
No cohort with that ID in the workspace: QA cohort <id> not found. |
429 |
Rate limit exceeded. See Rate limits. |
See Errors for the body format.
Retell compatibility#
Retell's public API reference has no AI QA endpoints, so this route has no Retell SDK equivalent.