School class streams
For admins· 2 min read
Per-school class structure — streams within each grade, teacher assignments per subject.
Class streams model the section structure inside a school — e.g. Grade 7 has streams 7A, 7B, 7C; each stream has subject-teacher assignments. Used by the bulk-invite + broadcast pipelines to scope to specific classes.
Hierarchy
School → Grade → Stream → Subject assignment (subject + teacher)
A stream is a section within a grade. A school typically has 2–5 streams per grade.
Steps to set up a school's streams
- Admin → Schools → School class streams.
- Search for the school.
- Pick a grade (Grade 7 – Grade 12).
- + Add stream — enter the stream label (e.g. "7A").
- Per stream, tap Add subject assignment — pick subject, pick teacher (from the school's verified-teachers list).
Edits
- Rename a stream — tap the stream header → Rename. Cascading update to assignments + bulk-invite history.
- Delete a stream — only allowed if no assignments. Move or delete those first.
- Reassign a teacher — open the assignment → pick a new teacher.
Why this matters
- Bulk invites can target "Aga Khan, Grade 7, all streams" — Keybaki resolves the stream list and the teacher per subject so invites go to the right parent contacts.
- Broadcasts can scope to streams ("Grade 7B parents") instead of the whole school.
- Class enrolment exports generate per-stream CSVs.
Limits
- 20 streams per grade per school (soft limit; admin can raise if needed).
- 15 subject assignments per stream (matches the maximum CBE subjects).
Common issues
- Teacher not in the assignment picker. They aren't a verified teacher at this school. Run their claim through the verification queue first.
- Streams imported with weird labels. Bulk import accepts free-text labels. Standardise (e.g. "7A" not "Grade 7 stream A") via a Rename sweep.
Related