Appearance
Authentication and API keys
Create a key
Admin → API keys → Create a key (organization owners and admins). Choose:
- a name (for example "BI export" or "Claude Desktop");
- the type: Live (your properties) or Test (read-only, demo property only);
- MCP-only if the key is for an AI assistant: it then holds read scopes and Ask only (this is the only option on the Growth plan);
- the scopes the key needs (each one is explained on screen);
- optionally, the properties it can access (all by default);
- an expiry (never, 30 days, 90 days, 1 year).
The key is shown once, with a copy button. Eureka stores only a hash of it. The API keys tab lists every key with its prefix, type, scopes, properties, creator, last use and expiry; Revoke asks for a confirmation on the same line. The tab also shows your plan's access (MCP keys only, or the full API), the rate limits, and links to the OpenAPI specification and these docs.
Use it
bash
curl https://api.eureka-analytics.com/v1/properties -H "Authorization: Bearer ahk_live_..."Keep keys on servers, never in web pages or mobile apps.
Key types
| Prefix | Use |
|---|---|
ahk_live_… | Your properties, with the scopes and properties you chose |
ahk_test_… | Read-only access to the public demo property AH-DEMO01 (Summit Supply). Use it to try the API and the MCP server before connecting real data. |
Scopes
| Scope | Allows |
|---|---|
reports:read | Reports, templates, summary, funnels, paths, retention, elements, mixed sessions, bot pages |
realtime:read | Realtime |
config:read | Properties, goals, funnels, segments, annotations, usage |
config:write | Create, change and delete goals, funnels, segments, annotations |
events:write | Send server-side events |
export:read | Raw event exports |
privacy:write | GDPR access and erasure requests |
ask | Questions in plain English (counts toward your AI questions quota) |
Calling an endpoint without the right scope returns 403 with code forbidden_scope.
Plans
| Plan | API keys |
|---|---|
| Free | None |
| Growth | MCP keys only: scopes reports:read, realtime:read, config:read, ask; 120 requests/min |
| Pro | Full API, 600 requests/min per key |
| Scale | Full API, 3,000 requests/min per key |
A call that needs a higher plan returns 402 with code plan_required and required_plan.