Skip to content
The API may change between versions while TTX-Zone is 0.x.

Get exercise dashboard

GET
/api/v1/ttx/{ttx_id}/dashboard

Read-only aggregates for Creator’s per-exercise dashboard. Same guard as every other exercise-management route: Planner of this exercise, or Program Manager of its organization.

Successful Response

Media typeapplication/json
TTXDashboardRead
object
access_requests
required
DashboardAccessRequests
object
approved
required
Approved
integer
pending
required
Pending
integer
rejected
required
Rejected
integer
generated_at
required
Generated At
string format: date-time
invitation_breakdown
required
Invitation Breakdown
Array<object>
TTXDashboardInvitation

One invitation token and what its redemptions turned into.

object
approved
required
Approved
integer
created_at
required
Created At
string format: date-time
description
required
Any of:
string
pending
required
Pending
integer
redemptions
required
Redemptions
integer
rejected
required
Rejected
integer
role
required
Role
string
status
required
Status
string
token_id
required
Token Id
string format: uuid
invitations
required
DashboardInvitations
object
active
required
Active
integer
expired
required
Expired
integer
redemptions
required
Redemptions
integer
revoked
required
Revoked
integer
kpis
required
TTXDashboardKpis
object
injects
required
Injects
integer
oldest_pending_request_at
required
Any of:
string format: date-time
pending_requests
required
Pending Requests
integer
planners
required
Planners
integer
players
required
Players
integer
ttx_id
required
Ttx Id
string format: uuid
ttx_name
required
Ttx Name
string
weekly_joins
required
Weekly Joins
Array<object>
DashboardWeeklyAccess

Access granted in one week: to Players, and to the exercise team (planning and control team, Evaluators, Observers) – an exercise’s creator, who gets in by creating it, isn’t counted.

object
players
required
Players
integer
team
required
Team
integer
week_start
required
Week Start
string format: date

Example generated

{
"access_requests": {
"approved": 1,
"pending": 1,
"rejected": 1
},
"generated_at": "2026-04-15T12:00:00Z",
"invitation_breakdown": [
{
"approved": 1,
"created_at": "2026-04-15T12:00:00Z",
"description": "example",
"pending": 1,
"redemptions": 1,
"rejected": 1,
"role": "example",
"status": "example",
"token_id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0"
}
],
"invitations": {
"active": 1,
"expired": 1,
"redemptions": 1,
"revoked": 1
},
"kpis": {
"injects": 1,
"oldest_pending_request_at": "2026-04-15T12:00:00Z",
"pending_requests": 1,
"planners": 1,
"players": 1
},
"ttx_id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0",
"ttx_name": "example",
"weekly_joins": [
{
"players": 1,
"team": 1,
"week_start": "2026-04-15"
}
]
}