Bring NowMetrix data into the tools your team already uses.
Start with a live snapshot, build a newsroom display, or send historical results into your reporting workflow. Pick an endpoint here, then open its complete technical reference.
Start with one base URL
Every API-key authenticated request starts with this host:
https://api.nowmetrix.com
Send your API key
Send your API key as a Bearer token in the Authorization header. API keys can be generated by account admins in the NowMetrix dashboard under Settings -> API.
Authorization: Bearer nm_YOUR_KEY
HTTPS is required for all API-key authenticated requests.
Make your first request
The quickest way to test your setup is a realtime snapshot. It confirms that the key works and can access the tracker.
curl -H "Authorization: Bearer nm_YOUR_KEY" \
"https://api.nowmetrix.com/v1/realtime?site=TRACKER_ID"
Choose the data you need
| Method | Path | Description | Reference |
|---|---|---|---|
| GET | /v1/realtime |
Current live snapshot: active users, pageviews, top pages, devices, countries, cities, and sources. | View endpoint |
| GET | /v1/sources |
Traffic sources from the current live window with classification and optional child rows. | View endpoint |
| GET | /v1/overview |
Daily pageviews and visits for the last N completed history rows. | View endpoint |
| GET | /v1/recap |
Recap data, summary metrics, and top pages for presets or a custom date range. | View endpoint |
| GET | /v1/pulse |
Today pulse, yesterday comparison, and 15-minute intraday curves. | View endpoint |
| GET | /v1/responsibilities |
Current team responsibilities for a tracker, including who is assigned to each visible role. | View endpoint |
| GET | /api/me |
API-key account context: current tracker and all trackers the token can access. | View endpoint |
Keep requests fast and predictable
The public API allows 20 requests per minute per tracker. Multiple users or keys querying the same tracker share the same counter.
X-RateLimit-Limit: 20
X-RateLimit-Remaining: 7
X-RateLimit-Reset: 1783612801
Retry-After: 42
When a request fails
You should not have to parse a different format for every problem. API errors use a consistent JSON body with a stable machine-readable code.
| HTTP | Code | Description |
|---|---|---|
| 400 | site_required |
The site query parameter is missing. |
| 401 | missing_token |
The Authorization header is missing. |
| 401 | invalid_token |
The token is invalid or revoked. |
| 403 | site_not_authorized |
The API key has no access to this tracker. |
| 429 | rate_limit_exceeded |
The rate limit has been exceeded. |
| 503 | redis_unavailable |
The realtime backend is temporarily unavailable. |
{
"error": {
"code": "invalid_token",
"message": "Bearer token is invalid or revoked."
}
}