Web Analytics
Privacy-friendly, cookie-free pageview analytics for an application. It is a read-only aggregation over the request traffic already logged at the edge — there is no tracking script, no cookie, and no per-visitor identity. Unique visitors are counted as distinct source IP addresses.
Nothing to enable per app: because all traffic is already logged, the Analytics tab (and this endpoint) light up as soon as your plan carries the web_analytics entitlement. Without it the request returns 403.
Query parameters
range string
The time window to aggregate:
24h, 7d, 30d, or 90d. Default 24h.Response (200 OK)
pageviews int
Total page requests served in the range.
visitors int
Unique visitors — distinct source IP addresses (cookie-free, no per-visitor identity).
top_pages array
The most-requested paths with their pageview counts.
top_countries array
Visitor countries with their counts.
devices array
A breakdown by device type (desktop / mobile / tablet).
timeseries array
Pageviews and visitors bucketed over time across the range (for the chart).
Errors
403
The plan lacks the
web_analytics entitlement.404
Unknown application.
Request
curl "https://api.ngris.com/v1/applications/019be838-d261-7d9b-9499-71995a3a91c6/analytics?range=7d" \
-H "X-API-KEY: <your_api_key>"
Response — 200 OK
{
"pageviews": 18422,
"visitors": 4103,
"top_pages": [
{ "path": "/", "views": 9120 },
{ "path": "/pricing", "views": 2841 }
],
"top_countries": [
{ "country": "US", "views": 7311 },
{ "country": "DE", "views": 2044 }
],
"devices": [
{ "device": "desktop", "views": 11380 },
{ "device": "mobile", "views": 6510 }
],
"timeseries": [
{ "t": "2026-09-14T00:00:00Z", "pageviews": 2510, "visitors": 690 },
{ "t": "2026-09-15T00:00:00Z", "pageviews": 2733, "visitors": 712 }
]
}