Get Team KPIs
Returns key performance indicators for every member of a team. Each entry includes uninvoiced charges, remaining booking and time credits, and total/monthly usage. Used on the team dashboard to give administrators a quick financial and usage overview.
Authentication
Requires a valid customer bearer token. The customer must be a team administrator of the specified team.
Path Parameters
Query Parameters
Comma-separated list of field paths to include in the response. When provided, only the
specified fields are returned — useful for reducing payload size. Supports nested paths
using dot notation.
Response
Array of per-member KPI objects.
Per-Member Fields
Numeric identifier of the team member.
Display name of the team member.
Email address of the team member.
Count of purchased products not yet invoiced.
Count of extra services not yet invoiced.
Kpi[].UnivoicedEventAttendees
Count of event attendee charges not yet invoiced. Note the typo (Univoiced) — it is preserved as-is in the API.
Kpi[].UnivoicedTimepasses
Count of time passes not yet invoiced. Note the typo (Univoiced) — it is preserved as-is in the API.
Kpi[].RemainingBookingCredit
Remaining booking credit balance.
Kpi[].RemainingTimeCreditMinutes
Remaining time credit in minutes.
Kpi[].RemainingTimeCreditDays
Remaining time credit in days.
Kpi[].RemainingTimeCreditWeeks
Remaining time credit in weeks.
Kpi[].RemainingTimeCreditMonths
Remaining time credit in months.
Kpi[].RemainingTimeCreditUses
Remaining time credit uses.
Kpi[].RemainingTimePassesMinutes
Remaining time pass minutes.
Kpi[].RemainingTimePassesCount
Remaining time pass count.
Total booked time in minutes across all time.
Kpi[].BookedTimeThisMonth
Total booked time in minutes for the current month.
Total checked-in time in minutes across all time.
Kpi[].CheckedTimeThisMonth
Total checked-in time in minutes for the current month.
Examples
Fetch team KPIs
GET /api/public/teams/55/kpi
Authorization: Bearer {token}
{
"Kpi": [
{
"CoworkerId": 101,
"CoworkerFullName": "Jane Smith",
"CoworkerEmail": "jane@techinnovators.com",
"UninvoicedProducts": 2,
"UninvoicedExtraServices": 0,
"UnivoicedEventAttendees": 1,
"UnivoicedTimepasses": 0,
"RemainingBookingCredit": 500,
"RemainingTimeCreditMinutes": 120,
"RemainingTimeCreditDays": 0,
"RemainingTimeCreditWeeks": 0,
"RemainingTimeCreditMonths": 0,
"RemainingTimeCreditUses": 5,
"RemainingTimePassesMinutes": 60,
"RemainingTimePassesCount": 1,
"BookedTimeTotal": 4200,
"BookedTimeThisMonth": 360,
"CheckedTimeTotal": 3800,
"CheckedTimeThisMonth": 300
}
]
}
TypeScript Integration
import { endpoints } from '@/api/endpoints'
import { TeamKpiList } from '@/types/endpoints/TeamKpi'
import { useData } from '@/hooks/useData'
const { resource: kpiData } = useData<TeamKpiList>(httpClient, endpoints.teams.kpi(teamId), { shape: { fields: ['Kpi'] } })
Usage in Portal
| Context | Source file |
|---|
Team dashboard KPI section (/dashboard/team/{teamId}) | src/views/user/dashboards/team/components/TeamKpiSection.tsx |
Error Responses
The customer is not authenticated or the session has expired.
Team with the specified ID does not exist.
| Method | Endpoint | Description |
|---|
GET | /api/public/teams/{teamId}/metrics | Team performance metrics |
GET | /api/public/teams/{teamId}/attendance | Team attendance data |
GET | /api/public/teams/{teamId}/profile | Full team profile |
GET | /api/public/teams/my | List the customer’s teams |