People
curl --request GET \
--url https://taap.it/api/v1/radar/people \
--header 'Authorization: <authorization>'import requests
url = "https://taap.it/api/v1/radar/people"
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/people', 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/people",
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/people"
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/people")
.header("Authorization", "<authorization>")
.asString();require 'uri'
require 'net/http'
url = URI("https://taap.it/api/v1/radar/people")
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": [
{
"visitorId": "<string>",
"name": "<string>",
"email": {},
"status": "<string>",
"countryCode": "<string>",
"countryName": "<string>",
"source": "<string>",
"browser": "<string>",
"device": "<string>",
"revenue": 123,
"sessions": 123,
"events": 123,
"firstSeen": "<string>",
"lastSeen": "<string>"
}
],
"total": 123,
"limit": 123
}Radar API
People
List people (visitors) for the project bound to your API key
GET
/
api
/
v1
/
radar
/
people
People
curl --request GET \
--url https://taap.it/api/v1/radar/people \
--header 'Authorization: <authorization>'import requests
url = "https://taap.it/api/v1/radar/people"
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/people', 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/people",
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/people"
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/people")
.header("Authorization", "<authorization>")
.asString();require 'uri'
require 'net/http'
url = URI("https://taap.it/api/v1/radar/people")
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": [
{
"visitorId": "<string>",
"name": "<string>",
"email": {},
"status": "<string>",
"countryCode": "<string>",
"countryName": "<string>",
"source": "<string>",
"browser": "<string>",
"device": "<string>",
"revenue": 123,
"sessions": 123,
"events": 123,
"firstSeen": "<string>",
"lastSeen": "<string>"
}
],
"total": 123,
"limit": 123
}Returns a paginated list of people (visitors) over the requested date range, with their key
attributes (identity, location, source, device, revenue, sessions). Supports optional filters.
Request:
Response:
cURL
curl -X GET 'https://taap.it/api/v1/radar/people?start=2026-01-01T00:00:00Z&end=2026-01-31T23:59:59Z&limit=50&sort=recent' \
-H 'Authorization: Bearer taapit_your_api_key_here'
{
"data": [
{
"visitorId": "v_8a1c2d",
"name": "Quiet Fox",
"email": "jane@example.com",
"status": "identified",
"countryCode": "FR",
"countryName": "France",
"source": "google",
"browser": "Chrome",
"device": "desktop",
"revenue": 120.0,
"sessions": 4,
"events": 37,
"firstSeen": "2026-01-03T09:12:00.000Z",
"lastSeen": "2026-01-28T17:42:00.000Z"
}
],
"total": 1842,
"limit": 50
}
Authorization
string
required
Bearer token with your Radar API key. Format:
Bearer taapit_...Query Parameters
string
required
Start of the range, ISO 8601 (UTC). Example:
2026-01-01T00:00:00Z.string
required
End of the range, ISO 8601 (UTC). Example:
2026-01-31T23:59:59Z.string
default:"recent"
Sort order.
recent (last activity), revenue, sessions or events.integer
default:"200"
Maximum number of people to return. Capped at
1000.string
Filter by ISO-2 country code (e.g.
FR).string
Filter by browser name (e.g.
Chrome).string
Filter by device type (
desktop, mobile, tablet).string
Filter by traffic source / referrer.
string
Filter by identity status (
identified or anonymous).string
Filter by activity level.
Response Fields
array
required
Array of people.
Hide Person
Hide Person
string
Stable visitor identifier.
string
Real name if known, otherwise a generated alias.
string | null
Email when the visitor is identified.
string
identified or anonymous.string
ISO-2 country code, or
XX if unknown.string
Human-readable country name.
string
Traffic source / referrer.
string
Browser name.
string
Device type.
number
Total attributed revenue.
number
Number of sessions.
number
Number of events.
string
First activity, ISO 8601.
string
Last activity, ISO 8601.
integer
Total number of people in the range (unfiltered). Equals
data.length when filters are applied.integer
The effective limit applied to this response.