Query
All query endpoints are under /api/v1/query and require Bearer token auth.
POST /api/v1/query/trend
Returns a time-series event count.
Request body
{
"event": "page_view",
"dateFrom": "2025-04-01",
"dateTo": "2025-04-23",
"groupBy": "day",
"filters": [
{ "property": "plan", "op": "eq", "value": "growth" }
]
}Response
{
"data": [
{ "date": "2025-04-01", "count": 142 },
{ "date": "2025-04-02", "count": 198 }
]
}POST /api/v1/query/funnel
Returns conversion counts at each step of a funnel.
Request body
{
"steps": ["page_view", "signup_clicked", "signup_completed"],
"dateFrom": "2025-04-01",
"dateTo": "2025-04-23",
"conversionWindow": 86400
}conversionWindow is in seconds. Default: 86 400 (1 day).
Response
{
"steps": [
{ "event": "page_view", "count": 5000, "rate": 1.0 },
{ "event": "signup_clicked", "count": 1200, "rate": 0.24 },
{ "event": "signup_completed", "count": 340, "rate": 0.068 }
]
}POST /api/v1/query/retention
Returns weekly retention cohorts.
Request body
{
"cohortEvent": "signup",
"retentionEvent": "page_view",
"dateFrom": "2025-03-01",
"dateTo": "2025-04-23",
"windowDays": 7
}Response
{
"cohorts": [
{
"cohortDate": "2025-03-01",
"total": 240,
"weeks": [240, 180, 140, 110, 88, 70, 58]
}
]
}💡
Retention queries on large datasets may take up to 5 seconds. Results are cached for 60 seconds.