Statistics

Platform analytics and usage metrics. All responses are cached server-side — see the per-endpoint cache lifetime below.

Required scope: read:stats

Endpoints

GET
/api/open/v1/stats/users

User counts and activity summary (cached 1h)

GET
/api/open/v1/stats/engagement

Engagement time series (cached 24h)

GET
/api/open/v1/stats/adoption

Adoption rate by department (cached 1h)

GET
/api/open/v1/stats/content

Content activity this week vs last week (cached 1h)

/stats/users

{
  "data": {
    "total": 1250,
    "registered": 1100,
    "active_yesterday": 340,
    "active_7d": 780,
    "active_30d": 1050,
    "new_yesterday": 5,
    "new_7d": 32,
    "new_30d": 95
  }
}

/stats/engagement

Query paramDefaultNotes
granularityweekday, week or month.
scope12Number of periods to return.
group_idsComma-separated group IDs.
{
  "data": [
    {
      "year": 2026,
      "week": 10,
      "total_users": 1250,
      "app_users": 1100,
      "active_users": 340,
      "app_time": 52800,
      "sessions": 890
    }
  ]
}

/stats/adoption

Query paramNotes
group_idsOptional. Comma-separated group IDs to scope the calculation.
{
  "data": {
    "adoption_rate": {
      "average": 72.5,
      "departments": [
        { "id": 1, "name": "Kitchen", "active": 18, "not_active": 7, "total_employees": 25, "average": 72.0 }
      ]
    }
  }
}

/stats/content

{
  "data": {
    "posts": { "this_week": 45, "last_week": 38, "total": 1250 },
    "comments": { "this_week": 120, "last_week": 95, "total": 4800 },
    "reactions": { "this_week": 230, "last_week": 210, "total": 8900 },
    "chat_messages": { "this_week": 560, "last_week": 480, "total": 22000 },
    "todo_tasks_completed": { "this_week": 85, "last_week": 72, "total": 3400 }
  }
}