Website traffic
Optional tenant-scoped visitor and page-view metrics.
Your backend submits POST /v1/traffic/page-views with a traffic:write
credential. Configure the website project with CRISP first. projectSlug
selects a website within the authenticated partner, not the partner itself.
Changing a partner display name/slug does not require changing an independent
website project identifier. Do not assume those namespaces are interchangeable.
{
"eventId": "40d61b87-15dc-4e21-b685-108b1682e5c8",
"projectSlug": "main-site",
"visitorToken": "example_daily_pseudonymous_token_123456789",
"pagePath": "/markets",
"referrerHost": "example.com",
"countryCode": "MY",
"isLanding": true
}Generate a new UUID per real page view and retain it on retries. 202 returns
whether the event was recorded; duplicates are safely deduplicated. No
Idempotency-Key is required. This route uses event ID replay protection.
The token is pseudonymous (32–128 letters/digits/underscore/hyphen), not an email,
wallet address, IP or long-lived identity. Derive country at your trusted edge;
send a two-letter code or null. pagePath excludes query/fragment and personal
data. Send only a referrer hostname or null, only on landing events. Unknown
fields are rejected. Never forward full raw URLs or IP addresses to CRISP.
Protect your own browser-to-BFF collector from abuse; a traffic key belongs on the server. This is essential traffic analytics, not an assertion of advanced bot filtering or exact cross-device people counts. Metrics appear in the partner dashboard; portal session APIs are not part of the HMAC integration surface.