Hallo Moritz,
du kannst es auch per WebREST-Schnittstelle probieren. Die Funktion dafür lautet core_course_create_categories, einen Token und User musst du dafür anlegen.
Dann musst du die ID wissen, wo die Kursbereiche (= parent) angelegt werden müssen. Beispiel: dein Kursbereich heißt "Mathematik" - dieser hat die ID = 10. Dann noch den Namen und die ID-Nummer festlegen und im Browser ausführen. Der Aufruf lautet z. B. dann für das Anlegen der Kurskategorie "1.Semester" im Kursbereich "Mathematik" wie folgt:
https://mymoodle//webservice/rest/server.php?wstoken=XYZ&moodlewsrestformat=json&wsfunction=core_course_create_categories&categories[0][name]=1.Semester&categories[0][parent]=10&categories[0][idnumber]=01sem
Token und Webadresse sind dementsprechend zu ersetzen.
Die Webaufrufe kannst du ja z. B. per Script zusammenstellen und der Reihe nach ausführen (wir nutzen für ähnliche Anfragen z. B. das Tool wget, das uns das File einliest und die Zeilen der Reihe nach ausführt).
Das Ganze ist zwar etwas Bastelarbeit, aber wenn du mehrere Einträge hast, zahlt sich das durchaus aus.
BG Anton