Manager Hub

Department-level reporting: the team roster and onboarding, journey, course, and certificate progress for one or more departments.

Every request reports on the department(s) named in the required department_ids parameter. Figures are pooled across the given departments.

Required scope: read:managerhub. The Manager Hub feature must be enabled for the company, see feature-gated endpoints.

Endpoints

GET
/api/open/v1/managerhub/team

Department roster + engagement / seniority stats

GET
/api/open/v1/managerhub/progress/summary

One rolled-up completion figure per category + benchmarks

GET
/api/open/v1/managerhub/progress/onboarding

Every member's onboarding progress

GET
/api/open/v1/managerhub/progress/journeys

Completion counts per department journey

GET
/api/open/v1/managerhub/progress/courses

Completion counts per department course

GET
/api/open/v1/managerhub/progress/certificates

Holder counts per department certificate

Department filtering

Every endpoint requires a department_ids filter.

Query paramNotes
department_idsRequired. Comma-separated department group IDs (e.g. 12 or 12,40). Figures are pooled across the given departments; a member of several is counted once. A non-numeric value returns 422.

/managerhub/team

The department roster — every member with their status, last activity, next shift, seniority, and engagement — plus the department's engagement and seniority benchmarks.

FieldNotes
statusactive, inactive (no activity for 21+ days) or invited (not registered yet).
last_active_atISO-8601 timestamp of the member's last activity, or null.
next_shift_atISO-8601 start of the member's next shift, or null when no shift integration / upcoming shift.
seniority_monthsWhole months since hire date (falls back to registration).
engagement_pctShare (%) of the last 30 days the member was active, from tracking data. null when tracking is unavailable; 0 for a tracked-but-inactive member.
{
  "data": {
    "members": [
      {
        "id": 4821,
        "first_name": "Jane",
        "last_name": "Doe",
        "full_name": "Jane Doe",
        "avatar_url": "https://…",
        "status": "active",
        "last_active_at": "2026-06-18T07:12:00+00:00",
        "next_shift_at": "2026-06-20T08:00:00+00:00",
        "seniority_months": 14,
        "engagement_pct": 73
      }
    ],
    "stats": {
      "engagement": { "department_pct": 64.0, "org_baseline_pct": 61.0 },
      "seniority": { "department_avg_months": 11.0, "company_avg_months": 9.5 }
    }
  }
}

/managerhub/progress/summary

One rolled-up completion figure per category, plus the benchmark header. overall_completion and onboarding_time compare the department against an org-wide baseline (recomputed daily). Each category block is { completed_count, total_count, completed_pct }.

{
  "data": {
    "stats": {
      "overall_completion": { "department_pct": 68.0, "org_baseline_pct": 61.0 },
      "onboarding_time": { "department_avg_days": 11.0, "company_avg_days": 14.0 }
    },
    "users": { "completed_count": 120, "total_count": 200, "completed_pct": 60 },
    "onboarding": { "completed_count": 18, "total_count": 24, "completed_pct": 75 },
    "journeys": { "completed_count": 40, "total_count": 72, "completed_pct": 56 },
    "courses": { "completed_count": 95, "total_count": 140, "completed_pct": 68 },
    "certificates": { "completed_count": 30, "total_count": 48, "completed_pct": 63 }
  }
}

/managerhub/progress/onboarding

Every department member's onboarding progress, plus the share who have finished. Completed members carry time_spent_days; members still onboarding carry days_overdue and days_used.

{
  "data": {
    "completed_pct": 75,
    "completed_user_count": 18,
    "total_user_count": 24,
    "users": [
      {
        "id": 4821,
        "first_name": "Jane",
        "last_name": "Doe",
        "full_name": "Jane Doe",
        "avatar_url": "https://…",
        "completed_count": 6,
        "total_count": 6,
        "is_completed": true,
        "time_spent_days": 9
      }
    ]
  }
}

/managerhub/progress/journeys

Completion counts for every published journey assigned to the department(s).

{
  "data": [
    {
      "id": 7,
      "title": "Leadership Track",
      "completed_user_count": 12,
      "total_user_count": 30,
      "completed_pct": 40
    }
  ]
}

/managerhub/progress/courses

Completion counts for every published course assigned to the department(s). A course counts as completed for a member once they have passed all its chapters, whether or not a course-level completion was ever recorded.

{
  "data": [
    {
      "id": 12,
      "title": "Food Safety Basics",
      "completed_user_count": 21,
      "total_user_count": 30,
      "completed_pct": 70
    }
  ]
}

/managerhub/progress/certificates

Holder counts for every certificate unlocked by one of the department's courses.

{
  "data": [
    {
      "id": 5,
      "title": "Food Hygiene",
      "completed_user_count": 24,
      "total_user_count": 30,
      "completed_pct": 80
    }
  ]
}