List metrics

GET
/beta/intelligence/metrics

List the metrics you can query, with the filters and aggregates of each metric and the records it is based on. Use the metric id with Query conversation metric, Query agent metric or Query AI agent metric.

Authorization

ApiKeyAuth
headerAuthorization<token>

Query Parameters

category?string

Only list metrics in this category. If not provided, all metrics are listed.

Value in"conversations""agents""aiagents"
pageKey?string

The key of the page to fetch. To page through the results, call the link in meta.next or meta.previous of the previous response, which already carries this key.

pageLimit?integer

The number of entries per page, up to 1000. Defaults to 50, or to the page size of pageKey when one is given.

Formatint32
Default50

Response Body

The list of metrics

application/json
  1. response
data?array<>
meta?
Example Request
curl -X GET 'https://dev.dixa.io/beta/intelligence/metrics' \  -H 'Authorization: <API token>'
{
"data": [
{
"id": "closedConversations",
"name": "Closed conversations",
"category": "conversations",
"description": "The number of conversations closed in the selected period",
"deprecated": false,
"primaryFilters": [
"period",
"conversationIds"
],
"filters": [
{
"attribute": "agent",
"aliases": [
"agentId"
],
"type": "Uuid",
"operators": [
"IsEmpty",
"IsNotEmpty",
"IsOne",
"IsNotOne"
],
"defaultOperator": "IsOne",
"description": "The agent (AI or human) assigned to the conversation"
},
{
"attribute": "queue",
"aliases": [
"queueId"
],
"type": "Uuid",
"operators": [
"IsEmpty",
"IsNotEmpty",
"IsOne",
"IsNotOne"
],
"defaultOperator": "IsOne",
"description": "The queue the conversation was routed to"
},
{
"attribute": "team",
"aliases": [
"teamId"
],
"type": "Uuid",
"operators": [
"IsEmpty",
"IsNotEmpty",
"IsOne",
"IsNotOne"
],
"defaultOperator": "IsOne",
"description": "The team the conversation was assigned to"
},
{
"attribute": "tag",
"aliases": [
"tagId"
],
"type": "Uuid",
"operators": [
"IsEmpty",
"IsNotEmpty",
"IsOne",
"IsNotOne",
"IsAll"
],
"defaultOperator": "IsOne",
"description": "A tag attached to the conversation"
},
{
"attribute": "channel",
"aliases": [],
"type": "String",
"operators": [
"IsOne",
"IsNotOne"
],
"defaultOperator": "IsOne",
"description": "The channel the conversation came in on"
},
{
"attribute": "initialDirection",
"aliases": [
"direction"
],
"type": "String",
"operators": [
"IsOne",
"IsNotOne"
],
"defaultOperator": "IsOne",
"description": "The initial direction of the conversation"
},
{
"attribute": "contactPoint",
"aliases": [],
"type": "String",
"operators": [
"IsEmpty",
"IsNotEmpty",
"IsOne",
"IsNotOne"
],
"defaultOperator": "IsOne",
"description": "The contact point the conversation arrived through"
}
],
"aggregates": [
{
"name": "count",
"type": "Integer",
"defaultIncluded": true,
"description": "The number of conversations closed in the period, including those closed by deactivated agents"
}
],
"relatedRecordIds": [
"closedConversations"
]
},
{
"id": "responseTime",
"name": "Response time",
"category": "conversations",
"description": "The time conversations waited for a reply after an end user reached out",
"definition": "Measures each completed interval as the milliseconds between an end user reaching out and the conversation being replied to. On asynchronous channels (e.g. Email, Contact form) an interval starts with an end user message and ends on the ensuing agent reply; when several end user messages arrive before a reply, the first of them starts the interval. On synchronous channels it starts when the end user reaches out and ends when they are connected to an agent (Phone) or receive the first outbound reply (e.g. Dixa Messenger). A conversation can contribute any number of intervals within the period.",
"deprecated": false,
"primaryFilters": [
"period",
"conversationIds"
],
"filters": [
{
"attribute": "agent",
"aliases": [
"agentId"
],
"type": "Uuid",
"operators": [
"IsEmpty",
"IsNotEmpty",
"IsOne",
"IsNotOne"
],
"defaultOperator": "IsOne",
"description": "The agent (AI or human) assigned to the conversation"
},
{
"attribute": "queue",
"aliases": [
"queueId"
],
"type": "Uuid",
"operators": [
"IsEmpty",
"IsNotEmpty",
"IsOne",
"IsNotOne"
],
"defaultOperator": "IsOne",
"description": "The queue the conversation was routed to"
},
{
"attribute": "team",
"aliases": [
"teamId"
],
"type": "Uuid",
"operators": [
"IsEmpty",
"IsNotEmpty",
"IsOne",
"IsNotOne"
],
"defaultOperator": "IsOne",
"description": "The team the conversation was assigned to"
},
{
"attribute": "tag",
"aliases": [
"tagId"
],
"type": "Uuid",
"operators": [
"IsEmpty",
"IsNotEmpty",
"IsOne",
"IsNotOne",
"IsAll"
],
"defaultOperator": "IsOne",
"description": "A tag attached to the conversation"
},
{
"attribute": "channel",
"aliases": [],
"type": "String",
"operators": [
"IsOne",
"IsNotOne"
],
"defaultOperator": "IsOne",
"description": "The channel the conversation came in on"
},
{
"attribute": "initialDirection",
"aliases": [
"direction"
],
"type": "String",
"operators": [
"IsOne",
"IsNotOne"
],
"defaultOperator": "IsOne",
"description": "The initial direction of the conversation"
},
{
"attribute": "contactPoint",
"aliases": [],
"type": "String",
"operators": [
"IsEmpty",
"IsNotEmpty",
"IsOne",
"IsNotOne"
],
"defaultOperator": "IsOne",
"description": "The contact point the conversation arrived through"
}
],
"aggregates": [
{
"name": "count",
"type": "Integer",
"defaultIncluded": true,
"description": "The number of completed response-time intervals"
},
{
"name": "min",
"type": "Number",
"unit": "milliseconds",
"defaultIncluded": true,
"description": "The lowest of the completed response-time intervals"
},
{
"name": "max",
"type": "Number",
"unit": "milliseconds",
"defaultIncluded": true,
"description": "The highest of the completed response-time intervals"
},
{
"name": "sum",
"type": "Number",
"unit": "milliseconds",
"defaultIncluded": true,
"description": "The total of the completed response-time intervals"
},
{
"name": "average",
"type": "Number",
"unit": "milliseconds",
"defaultIncluded": true,
"description": "The mean of the completed response-time intervals"
},
{
"name": "stdDev",
"type": "Number",
"unit": "milliseconds",
"defaultIncluded": true,
"description": "The standard deviation of the completed response-time intervals"
}
],
"relatedRecordIds": [
"responseTime"
]
}
]
}

Shortened to two metrics. The real response lists all metrics