Skip to content

Combined dashboard reads in one pass

GET
/dashboard-bundle
curl --request GET \
--url 'https://example.com/api/dashboard-bundle?activityLimit=8' \
--header 'Authorization: Bearer <token>'

Returns the dashboard summary, recent activity, and realtime MCP metrics in a single authenticated response so the portal can prefetch once instead of opening three connections that each re-run auth.

activityLimit
integer
default: 8

Combined dashboard bundle

Media type application/json
object
summary
required
object
projectCount
integer
runCount

Count of conversion runs (legacy).

integer
scanCount

Count of scan_events (actual scans).

integer
openHandoffCount
integer
totalHandoffCount

Handoff count across all statuses.

integer
teamMembers
integer
githubConnected

Whether any team member has an active GitHub App installation.

boolean
is_team_admin
boolean
is_super_admin
boolean
projectHealth
Array<object>
object
id
string format: uuid
name
string
lastScan
string | null
mismatches
integer
tickets
integer
status
string
Allowed values: healthy warning stale
sparklines
object
days
integer
tickets
Array<integer>
scans
Array<integer>
projects
Array<integer>
team_members
Array<integer>
weeklyMetrics

Rolling-window rollups, ISO-week counts, and per-day velocity (UTC).

object
period_days
integer
tickets_created
integer
scans_completed
integer
projects_created
integer
team_members_joined
integer
openedThisWeek
integer
closedThisWeek
integer
scansThisWeek
integer
deploysThisWeek
integer
avgResolutionHours
number | null
velocityByDay
Array<object>
object
date
required
string
opened
required
integer
closed
required
integer
activity
required
object
mcpRealtime
required
object

Not authenticated

Media type application/json
object
error
required

Human-readable error message

string
code

Stable machine-readable error code for client branching

string
fieldErrors

First validation message per field path

object
key
additional properties
string
issues

Structured validation issues (Zod)

Array<object>
object
path
required
string
message
required
string
retryAfter

Seconds until rate limit resets (429 responses)

number
reconnect

True if re-linking GitHub may fix the issue

boolean