3. People and Enrollment

Where: sidebar → Course Management → People (/courseware/course/{courseId}/management/people)

The page opens with four counters — Total Students, Approved, Pending Approval, Current TAs — and three tabs: Approved Students, Pending Approvals, Current TAs.

People Management with the three tabs


3.1 The four ways to add people

Method

Best for

Where

Bulk CSV upload

A whole class at once, including people without accounts

Enroll Students/TAs → Bulk File based

Add individually

One or two people

Enroll Students/TAs → Add Individual

Search and add

People who already have BodhiTree accounts

Enroll Students/TAs → Search and Add

Approve self-enrollment

Students who found the course themselves

Pending Approvals tab

Bulk CSV is the only method that creates accounts for people who do not yet have one.


3.2 Bulk enrollment from a CSV

Click Enroll Students/TAsBulk File based Students Upload.

The file

.csv only. Anything else is rejected with “Only CSV files are allowed”. Download Sample CSV from the dialog for a working template.

Only two columns are mandatory: Name and Email. The sample file states this explicitly, and strongly recommends a third:

Name,Email,RollNumber,Password,Group,House
Kameswari Chebrolu,kc@gmail.com,123456,secretpass,Aryabhatta,Slytherin

Include a roll number column. The sample file’s own note recommends it: it makes marks management far easier when you download spreadsheets later.

Missing mandatory headers give “Missing mandatory headers in csv file”.

Recognised column names

These headers are understood as student fields:

email, first_name, last_name, name, password,
roll_no, roll no, roll no., rollnumber, roll,
first name, last name

Any other column becomes a batch tag — a custom grouping column on this course. That is how Group, House, Batch, or Tutorial in the example above work. They become filterable columns in the student table.

Options

  • Is it an ASC file?

  • Send welcome or password reset email? — on by default

  • Role: STA, JTA, or Student — the whole file is enrolled in the role you pick here

The confirmation step

Before anything is written, BodhiTree shows you what it is about to do. Read this screen — it is the only chance to catch a mistake.

New columns. Unrecognised headers are listed for confirmation:

Your file contains column(s) that aren’t standard student fields. Each one checked below will be created as a new column for this course. Leave a column unchecked if it’s a typo — its data will be ignored.

Likely typos are flagged “⚠ looks like a typo”. Unchecking a column is how you discard a mis-typed header rather than creating a junk column.

Profile updates. If your CSV has a different name or roll number for an existing user, you get a table of old → new values, with this warning:

Name & roll number are stored on the student’s global profile. Confirming will update them across the entire platform, in all of their courses, not just this one.

⚠️ Take this seriously. A stale name column in your CSV will rewrite that person’s name in every other course on BodhiTree. If you are unsure, remove the name and roll number columns and enrol on email alone.

Progress and aborting

Enrollment runs in the background with live counters for newly registered, enrolled, already enrolled, and failed.

Abort stops pending enrollments only:

Students who have already been enrolled will remain enrolled. Only pending enrollments will be cancelled.

The job survives a page reload — you will be reattached to it.

If nothing happens for about a minute you will see “Enrollment hasn’t started — the background worker may be unavailable.” That is an infrastructure problem; contact your administrator.

Enrollment can be capped

If you exceed the course owner’s plan you get “Max number of allowed students exceeded”. Students hitting the same cap while self-enrolling see the same message.


3.3 Import History

Import History shows every bulk enrollment with expandable detail:

  • Users created on the platform and enrolled

  • Users already on the platform, now enrolled

  • Global roll numbers updated — old and new, across all their courses

  • Global names updated — old and new

  • Users already enrolled (no action taken)

  • Users that failed, with the reason

  • Duplicate entries found in the CSV

This is where you check what a bulk import actually did, especially the two “global” sections.


3.4 Approving pending students

Pending Approvals tab. Tick the students you want, then Approve Selected or Reject Selected.

Until you approve them, pending students see “Your approval is Pending.” and can access nothing.


3.5 Managing enrolled students

The Approved Students tab has a server-side search (type at least 3 characters), filter pills All / Active / Inactive, and one column per batch tag.

Selecting everyone on the page offers to select all N students across every page — so bulk actions can span the whole roster, not just the current page.

Actions menu

Action

What it does

Send Password Reset Email

To selected students, or all

Send Onboarding Email

Welcome email

Send Email to Inactive Students

Choose onboarding, password reset, or both. Shows live sent/failed counters and lists failed recipients

Export All / Active / Inactive Students

CSV named <filter>_students_YYYY-MM-DD.csv

Upload Tags

Bulk-update batch tags from a CSV

Edit Tags / Save Tags

Inline editing (see below)

Deregister

Removes selected students

Inactive students are enrolled people who have never signed in. Chasing them at the start of term is exactly what Send Email to Inactive Students is for.

Editing batch tags

Choose Edit Tags, edit cells inline, then Actions → Save Tags.

⚠️ Your edits are not saved until you click Save Tags. The interface reminds you: “After editing, please be sure to click on ‘Save Tags’ in Actions menu.” Navigating away first loses everything.

While in edit mode, each tag column header grows a red × that deletes the whole column:

Remove the “” column and all its values from this course? This cannot be undone.

Upload Tags CSV

Email,Rollnumber,House,Group
example1@iitb.ac.in,193050000,Blue,Aryabhatta

Match on Email; the remaining columns update or create batch tags.


3.6 Adding one person at a time

Enroll Students/TAs → Add Individual Students/TAs: Name, Email, Roll No., a Role choice of STA / JTA / Student, a box for each existing batch tag, and ☑ Send onboarding email to user.

3.7 Adding someone who already has an account

Enroll Students/TAs → Search and Add Students/TAs: search the platform by name or email, choose Student, Instructor, or TA — and if TA, STA or JTA — then Add.

People already enrolled are shown separately so you do not add them twice.


3.8 Managing TAs

The Current TAs tab lists staff with a coloured role badge. You can Export TAs as CSV and Remove Selected TAs.

Choosing between STA and JTA

STA (Senior TA)

JTA (Junior TA)

Create/edit activities and testcases

See hidden testcases

See hidden activities, solutions, execution settings

Grade — edit manual marks

Comment on submissions

own comments only

Run and proctor exams

Submit on a student’s behalf

Access the gradebook

Export a lab or activity

An STA can do everything you can do, apart from the creator-only powers below. Appoint STAs deliberately.

JTA is the right role for a marker — someone who should grade submissions without being able to change the assessment itself.

What only the creator can do

Two things do not transfer with the STA role:

  1. Deleting course content, when content protection is on (§2.7)

  2. Changing the content protection setting itself

  3. Importing email recipients from a file is course-owner-only


3.9 Losing access

If your role is removed while you are working, the next click returns you to the course list with “You no longer have instructor access to this course.”


Known limitations

  • The interface does not hide actions a JTA cannot perform. Buttons render for everyone; the server rejects the action. A JTA may see options that fail when clicked

  • Name and roll number edits are global, not per-course

  • Batch tag edits are lost unless you explicitly Save Tags


Previous: 2. Creating and Setting Up a Course · Next: 4. Course Content — the Multimedia Book