Stats Cache Invalidator
API Contract
REST
/api/v1/stats-cache
6 endpoints
GET
/api/v1/stats-cache/api/v1/stats-cache
List active cache subscriptions
Public
Response Example
{
"data": [
{
"subscription_id": "sub_001",
"user_id": "usr_4f8a2c",
"status": "active",
"subscribed_at": "2026-03-26T08:00:00Z",
"last_invalidation": "2026-03-26T09:55:00Z"
}
],
"pagination": {
"page": 1,
"limit": 20,
"total": 1
}
}
GET
/api/v1/stats-cache/api/v1/stats-cache/:subscriptionId
Get details for a specific cache subscription
Public
Response Example
{
"subscription_id": "sub_001",
"user_id": "usr_4f8a2c",
"status": "active",
"subscribed_at": "2026-03-26T08:00:00Z",
"last_invalidation": "2026-03-26T09:55:00Z",
"invalidation_count": 3
}
POST
/api/v1/stats-cache/api/v1/stats-cache
Subscribe a user to realtime cache invalidation on activity inserts
Public
Request Example
{
"user_id": "usr_4f8a2c"
}
Response Example
{
"subscription_id": "sub_002",
"user_id": "usr_4f8a2c",
"status": "active",
"subscribed_at": "2026-03-26T10:00:00Z"
}
PUT
/api/v1/stats-cache/api/v1/stats-cache/:subscriptionId
Update a cache subscription (e.g. pause/resume)
Public
Request Example
{
"status": "paused"
}
Response Example
{
"subscription_id": "sub_001",
"user_id": "usr_4f8a2c",
"status": "paused",
"updated_at": "2026-03-26T10:01:00Z"
}
DELETE
/api/v1/stats-cache/api/v1/stats-cache/:subscriptionId
Unsubscribe and remove a cache invalidation subscription
Public
Response Example
{
"deleted": true,
"subscription_id": "sub_001"
}
POST
/api/v1/stats-cache/api/v1/stats-cache/:subscriptionId/invalidate
Manually trigger cache invalidation for a subscribed user's stats
Public
Request Example
{
"reason": "activity_inserted",
"activity_id": "act_883fa1"
}
Response Example
{
"subscription_id": "sub_001",
"user_id": "usr_4f8a2c",
"invalidated": true,
"invalidated_at": "2026-03-26T10:03:00Z"
}