Loading...
Loading...
Access Red Rover absence management data for PSD staff attendance tracking and reporting
npx skill4agent add krishagel/geoffrey redrover-managerhttps://connect.redroverk12.com/Authorization: Basic [base64(username:password)]apiKey: [key]skills/redrover-manager/scripts/bunbun get_organization.jsbun get_absences.js <start_date> <end_date> [filled|unfilled|all]bun get_absences.js 2026-01-20 2026-01-27
bun get_absences.js 2026-01-27 2026-01-27 unfilledbun get_daily_summary.js [date]todayyesterdaymondaytuesdaylast wednesdaylast friday2026-01-27bun get_certificated_summary.js [date]bun get_weekly_summary.js [weeks_ago]012GET /api/v1/organization
Security: Basic Auth
Returns: Array with org info including dynamic apiKeyGET /api/v1/{orgId}/Vacancy/details
Security: Basic Auth + apiKey header
Query Params:
- fromDate: datetime (required)
- toDate: datetime (required)
- filled: boolean (optional - filter filled/unfilled)
- pageSize: int (default 10, max 100)
- page: int (default 1)
Returns: Paginated vacancy/absence databun get_daily_summary.js yesterdaybun get_daily_summary.js today
# Look at unfilled_positions array in outputbun get_weekly_summary.jsbun get_weekly_summary.js 1{
"date": "yesterday",
"date_iso": "2026-01-26",
"total_absences": 110,
"filled": 75,
"unfilled": 35,
"fill_rate": 68,
"by_school": {
"PENINSULA HIGH SCHOOL": 13,
"GIG HARBOR HIGH SCHOOL": 10
},
"by_reason": {
"SICK LV > 1 SICK": 54,
"OTH PAID LV > PERSONAL": 15
},
"by_position_type": {
"Teacher": 55,
"Paraprofessional": 36
},
"unfilled_positions": [
{
"school": "PENINSULA HIGH SCHOOL",
"position": "MATH",
"employee": "JANE DOE",
"start": "2026-01-26T07:00:00",
"end": "2026-01-26T14:30:00"
}
]
}{
"week": "Jan 20-24, 2026",
"week_label": "this week",
"total_absences": 450,
"daily_average": 90,
"filled": 380,
"unfilled": 70,
"fill_rate": 84,
"peak_day": { "day": "Monday", "count": 120 },
"slow_day": { "day": "Friday", "count": 65 },
"by_day": {
"Monday": 120,
"Tuesday": 95,
"Wednesday": 90,
"Thursday": 80,
"Friday": 65
},
"trends": [
{ "type": "info", "message": "Monday had 120 absences (50%+ above average)" }
]
}absenceDetail.employeeabsenceDetail.reasons[0].namelocation.nameposition.titleposition.positionType.namesubstitutestartendneedsReplacement