Skip to content
OperadeDocs

Search documentation

Type to search documentation.

Documentation
Copy page
Open raw Markdown

Get agent topic analytics

Return topic-discovery status and per-topic conversation, sentiment, and evaluation metrics for an agent in the requested window.

Endpoint

GET/api/v1/workspaces/{workspace_id}/agents/{agent_id}/topics

Authentication

Operation classAuthenticationMinimum roleAPI key
customer-apiBearer API key or dashboard session cookie; dashboard mutations also require X-CX-Request: 1.memberAllowed

Parameters

NameInTypeRequiredDescription
workspace_idpathstringYes—
agent_idpathstringYes—
fromquerystring or nullNo—
toquerystring or nullNo—
branch_idquerystring or nullNo—

Request body

This operation has no request body.

Example

cURL
curl --request GET 'https://operade.ai/api/v1/workspaces/ws_demo/agents/agt_demo/topics?from=2026-08-01T00%3A00%3A00Z&to=2026-08-08T00%3A00%3A00Z' \
  --header 'Authorization: Bearer YOUR_API_KEY'

Responses

StatusDescriptionContent
4XXClient Errorapplication/json: ErrorResponse
200Successful Responseapplication/json: AgentTopicsResponse

4XX application/json response schema

Field pathTypeReferenceFormatNullableRequiredEnumDescription
$objectErrorResponse—NoYes——
errorobjectErrorItem—NoYes——
error.codestring——NoYes——
error.detailsobject——NoNo——
error.messagestring——NoYes——

200 application/json response schema

Field pathTypeReferenceFormatNullableRequiredEnumDescription
$objectAgentTopicsResponse—NoYes——
error_codestring or null——YesYes"quota_exhausted", "provider_unavailable", "invalid_response", "internal"—
last_run_atstring or null—date-timeYesYes——
next_run_atstring—date-timeNoYes——
statusstring——NoYes"off", "processing", "failed", "waiting", "ready"—
topicsarray<AgentTopic>——NoYes——
topics[]objectAgentTopic—NoYes——
topics[].conversation_countinteger——NoYes——
topics[].descriptionstring——NoYes——
topics[].labelstring——NoYes——
topics[].metricsobjectAgentTopicMetrics—NoYes——
topics[].metrics.evaluation_criteriaarray<TopicEvaluationMetrics>——NoYes——
topics[].metrics.evaluation_criteria[]objectTopicEvaluationMetrics—NoYes——
topics[].metrics.evaluation_criteria[].criteria_idstring——NoYes——
topics[].metrics.evaluation_criteria[].failure_countinteger——NoYes——
topics[].metrics.evaluation_criteria[].success_countinteger——NoYes——
topics[].metrics.evaluation_criteria[].unknown_countinteger——NoYes——
topics[].metrics.overall_successobjectTopicSuccessMetrics—NoYes——
topics[].metrics.overall_success.denominatorinteger——NoYes——
topics[].metrics.overall_success.failure_countinteger——NoYes——
topics[].metrics.overall_success.ratenumber or null——YesYes——
topics[].metrics.overall_success.success_countinteger——NoYes——
topics[].metrics.sentimentobjectTopicSentimentMetrics—NoYes——
topics[].metrics.sentiment.countinteger——NoYes——
topics[].metrics.sentiment.maxnumber or string or null——YesYes——
topics[].metrics.sentiment.minnumber or string or null——YesYes——
topics[].metrics.sentiment.negative_countinteger——NoYes——
topics[].metrics.sentiment.neutral_countinteger——NoYes——
topics[].metrics.sentiment.positive_countinteger——NoYes——
topics[].metrics.sentiment.sumnumber or string——NoYes——
topics[].previous_conversation_countinteger——NoYes——
topics[].topic_idstring——NoYes——
windowobjectAnalyticsTimeRange—NoYes——
window.fromstring—date-timeNoYes——
window.tostring—date-timeNoYes——

Response example

Response body JSON
{
  "status": "off",
  "error_code": "quota_exhausted",
  "last_run_at": "2026-01-01T00:00:00Z",
  "next_run_at": "2026-01-01T00:00:00Z",
  "window": {
    "from": "2026-01-01T00:00:00Z",
    "to": "2026-01-01T00:00:00Z"
  },
  "topics": []
}

Errors

Reviewed common and route-declared errors are summarized here; the list is not exhaustive. Start with the distributed error index to find each code's canonical domain page.

StatusCodeDescription
401unauthenticatedAuthentication is missing, invalid, or revoked.
403forbiddenThe authenticated caller does not have access to this operation.
404not_foundThe requested workspace resource was not found.
422validation_failedThe analytics window, filter combination, tab, grouping, or requested resource is invalid.
On this page
  1. Endpoint
  2. Authentication
  3. Parameters
  4. Request body
  5. Example
  6. Responses
  7. 4XX application/json response schema
  8. 200 application/json response schema
  9. Response example
  10. Errors
  11. Related operations