Breakdowns
curl --request GET \
--url https://taap.it/api/v1/radar/breakdowns \
--header 'Authorization: <authorization>'import requests
url = "https://taap.it/api/v1/radar/breakdowns"
headers = {"Authorization": "<authorization>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<authorization>'}};
fetch('https://taap.it/api/v1/radar/breakdowns', 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://taap.it/api/v1/radar/breakdowns",
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: <authorization>"
],
]);
$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://taap.it/api/v1/radar/breakdowns"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<authorization>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://taap.it/api/v1/radar/breakdowns")
.header("Authorization", "<authorization>")
.asString();require 'uri'
require 'net/http'
url = URI("https://taap.it/api/v1/radar/breakdowns")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<authorization>'
response = http.request(request)
puts response.read_body{
"data": {
"pages.top": [
{}
],
"sources.referrer": [
{}
],
"locations.countries": [
{}
],
"devices.browsers": [
{}
],
"devices.os": [
{}
],
"events": [
{}
],
"hostnames": [
{}
]
}
}Radar API
Breakdowns
Retrieve top pages, sources, locations and devices
GET
/
api
/
v1
/
radar
/
breakdowns
Breakdowns
curl --request GET \
--url https://taap.it/api/v1/radar/breakdowns \
--header 'Authorization: <authorization>'import requests
url = "https://taap.it/api/v1/radar/breakdowns"
headers = {"Authorization": "<authorization>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<authorization>'}};
fetch('https://taap.it/api/v1/radar/breakdowns', 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://taap.it/api/v1/radar/breakdowns",
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: <authorization>"
],
]);
$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://taap.it/api/v1/radar/breakdowns"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<authorization>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://taap.it/api/v1/radar/breakdowns")
.header("Authorization", "<authorization>")
.asString();require 'uri'
require 'net/http'
url = URI("https://taap.it/api/v1/radar/breakdowns")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<authorization>'
response = http.request(request)
puts response.read_body{
"data": {
"pages.top": [
{}
],
"sources.referrer": [
{}
],
"locations.countries": [
{}
],
"devices.browsers": [
{}
],
"devices.os": [
{}
],
"events": [
{}
],
"hostnames": [
{}
]
}
}Returns the top breakdowns (pages, sources, locations and devices) for the project bound to your
API key over the requested date range.
Request:
Response:
cURL
curl -X GET 'https://taap.it/api/v1/radar/breakdowns?start=2026-01-01T00:00:00Z&end=2026-01-31T23:59:59Z&limit=20' \
-H 'Authorization: Bearer taapit_your_api_key_here'
{
"data": {
"pages": {
"top": [
{ "pathname": "/", "people": 320 },
{ "pathname": "/pricing", "people": 110 }
]
},
"sources": {
"referrer": [
{ "name": "Direct", "people": 210 },
{ "name": "Google", "people": 180 }
]
},
"locations": {
"countries": [
{ "name": "France", "people": 240, "countryCode": "FR", "revenue": 980.0 },
{ "name": "Belgium", "people": 90, "countryCode": "BE", "revenue": 120.0 }
]
},
"devices": {
"browsers": [
{ "name": "Chrome", "people": 410 },
{ "name": "Safari", "people": 220 }
],
"os": [
{ "name": "Windows", "people": 300 },
{ "name": "iOS", "people": 180 }
]
},
"events": [
{ "event_name": "signup_click", "people": 40, "events": 52, "completion_rate": 0 }
],
"hostnames": ["www.example.com"]
}
}
Authorization
Bearer token with your Radar API key. Format:
Bearer taapit_...Query Parameters
Start of the range, ISO 8601 (UTC). Example:
2026-01-01T00:00:00Z.End of the range, ISO 8601 (UTC). Example:
2026-01-31T23:59:59Z.Maximum number of rows per breakdown. Must be a positive number. Defaults to
50.Response Fields
Each section is optional and omitted when there is no data.
Hide Breakdowns
Hide Breakdowns
Top pages, each with
pathname and people.Top referrers, each with
name and people.Top countries, each with
name, people, countryCode and revenue.Top browsers, each with
name and people.Top operating systems, each with
name and people.Top custom events, each with
event_name, people and events.Hostnames seen for the project in the range.
⌘I