Retrieve statistics grouped by a custom field
curl --request GET \
--url https://api.example.com/v1/stats/grouping-fields \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.example.com/v1/stats/grouping-fields"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.example.com/v1/stats/grouping-fields', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.example.com/v1/stats/grouping-fields",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.example.com/v1/stats/grouping-fields"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.example.com/v1/stats/grouping-fields")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/v1/stats/grouping-fields")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body[
{
"grouping_field_value": "Support",
"total_requests": 450,
"avg_score": 84.2,
"min_score": 52,
"max_score": 97.5,
"avg_duration": "00:06:12",
"min_duration": "00:01:45",
"max_duration": "00:18:30"
}
]{
"code": "001-001-0001",
"message": "The requested resource was not found"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Statistics
Estadísticas Agrupadas
Returns statistics aggregated by a specific grouping field (e.g., department, campaign).
Useful for comparing performance across different segments or categories.
GET
/
v1
/
stats
/
grouping-fields
Retrieve statistics grouped by a custom field
curl --request GET \
--url https://api.example.com/v1/stats/grouping-fields \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.example.com/v1/stats/grouping-fields"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.example.com/v1/stats/grouping-fields', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.example.com/v1/stats/grouping-fields",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.example.com/v1/stats/grouping-fields"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.example.com/v1/stats/grouping-fields")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/v1/stats/grouping-fields")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body[
{
"grouping_field_value": "Support",
"total_requests": 450,
"avg_score": 84.2,
"min_score": 52,
"max_score": 97.5,
"avg_duration": "00:06:12",
"min_duration": "00:01:45",
"max_duration": "00:18:30"
}
]{
"code": "001-001-0001",
"message": "The requested resource was not found"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Query Parameters
Start of date range (UTC)
End of date range (UTC)
Name of the analysis model
Field key to group results by
Response
Successful Response
Value of the grouping field
Example:
"Support"
Number of calls in this group
Example:
450
Average Neurascore percentage for this group
Example:
84.2
Lowest score in this group
Example:
52
Highest score in this group
Example:
97.5
Average call duration (HH:MM:SS)
Example:
"00:06:12"
Shortest call duration
Example:
"00:01:45"
Longest call duration
Example:
"00:18:30"
