From Carleton Moodle Docs
Groups import provides a simple, easy way to create groups from a spreadsheet (CSV). However, this does NOT enroll students into the groups. Only the Moodle site administrator can enroll students in groups via an upload file.
To import groups
- Click the 'Import groups' button in Administration > Course administration > Users > Groups
- Upload the CSV file (see below for file format) either by dragging and dropping into the box with the arrow (1 below) or by clicking "choose a file" and uploading from the File picker. (2 below)
- Click the 'Import groups' button
CSV file fieldnames
The CSV file has just one required fieldname (groupname), but can include default and/or optional fieldnames
- Each line of the file contains one record
- Each record is a series of data separated by commas
- The first record of the file is special, and contains a list of fieldnames. This defines the format of the rest of the file.
Required fieldnames - These fields must be included in the first record, and defined for each column
Default fieldnames - These are optional - you may specify idnumber and/or course short name of another course
(Note: The field "picture" and "hidepicture" will produce a "not a valid fieldname" error when uploaded.)
If the groupingname is included, the imported groups will be allocated to those groupings. The groupings will be created if they do not already exist:
- Separation between the comma and the text can not be a blank.
- Commas within the data should be encoded as , - the script will automatically decode these back to commas.
- For Boolean fields, use 0 for false and 1 for true.
- Either idnumber or coursename can be used to identify the course. Idnumber overrides coursename. If neither is specified, the groups will be added to the current course.
- Coursename is the course shortname.
- Group ID numbers are for matching groups against external systems. Within a course, all group ID numbers must be unique.
- The file must be in ANSI encoding, at least not be saved in UTF-8 encoding.
Note: If a group is already registered in the Moodle database for a particular course, this script will return the group name for that group. Teachers are only allowed to upload groups in courses they are authorized to edit.
A sample file looks like this:
groupname,description,groupidnumber,enrolmentkey Team 1,Group Assignment Team 1,team1,orange Team 2,Group Assignment Team 2,team2,purple Team 3,Group Assignment Team 3,team3,green