Docs·Visitors and people
GET
/api/v1/event/analytics/web-analytics/visitors/:visitorId/dailyGet daily activity
One profile's sessions, page views, events and revenue per day across the date range, oldest first, with every day present and empty days at 0: the metric cards and chart on a profile page. Days are UTC, and at most 400 days are returned. Takes a visitor id or a person id.
Keys: an account key. Getting started explains both kinds.
Parameters
| Prop | In | Type | Notes |
|---|---|---|---|
visitorId | path | string | A visitor id (id on a visitor row) or a person id (contactId). A person id covers every device that person used. |
contactListId | query | string | The id of the audience (the tracked site) to read, a UUID: anything else returns a 400. You must be a member of the workspace the audience belongs to, or the call returns a 401. An id that matches no audience is not an error: the call returns no data. |
startDate | query | string | Start of the date range, read as UTC: a date such as 2026-09-01 (from midnight), or an exact time such as 2026-09-01T09:30:00Z. Use one of these two forms. |
endDate | query | string | End of the date range, read as UTC. A date such as 2026-09-30 includes that whole day; an exact time such as 2026-09-30T18:00:00Z ends the range right before that moment. If the workspace has gone past its plan's event allowance this billing period, the range is cut short at the moment the allowance ran out. |
Response
An array of VisitorDaily.
| Prop | Type | Notes |
|---|---|---|
date | string | The day, YYYY-MM-DD. |
sessions | number | Distinct sessions with activity that day. |
pageViews | number | Page views that day. |
events | number | Everything recorded that day, page views included and session ends not counted. |
revenue | number | Net revenue that day, in the reporting currency. |
Request
curl 'https://app.spreelytics.com/api/v1/event/analytics/web-analytics/visitors/:visitorId/daily?contactListId=…&startDate=…&endDate=…' \
-H 'Authorization: Bearer YOUR_API_KEY'
const url = new URL('https://app.spreelytics.com/api/v1/event/analytics/web-analytics/visitors/:visitorId/daily');
url.searchParams.set('contactListId', '…');
url.searchParams.set('startDate', '…');
url.searchParams.set('endDate', '…');
const res = await fetch(url, {
headers: { Authorization: 'Bearer YOUR_API_KEY' },
});
const data = await res.json();
import requests
res = requests.get(
"https://app.spreelytics.com/api/v1/event/analytics/web-analytics/visitors/:visitorId/daily",
headers={"Authorization": "Bearer YOUR_API_KEY"},
params={"contactListId": "…", "startDate": "…", "endDate": "…"},
)
data = res.json()
Response
[
{
"date": "string",
"sessions": 0,
"pageViews": 0,
"events": 0,
"revenue": 0
}
]