I think it would be great to be able to batch add users (in groups) from list files.
My use case is that I would like to add my students (groups for different classes) such that I can easily share files with them. But I would rather not have to manually add 200 students per year. Instead, I could think of an import function that reads in data from a csv file (name, user name, initial password, group) to automatically create users from within nextcloud.
I have found suggestions of doing that on the console with occ. But I don’t seem to be able to do that on my webhosting account. So a native solution would be great.
Just paste your data correctly into the users.csv and config.xml and execute the program.
This tool is executed locally and uses the Nextcloud API on your instance.
Do you know if this will work with a “snap” install of Nextcloud? I’m getting the following error:
HTTPSConnectionPool(host=‘example.com’, port=443): Max retries exceeded with url: /ocs/v1.php/cloud/users (Caused by NewConnectionError(’<urllib3.connection.VerifiedHTTPSConnection object at 0x0000020B989262E8>: Failed to establish a new connection: [WinError 10061] No connection could be made because the target machine actively refused it’))
The CURL request could not be performed.
I did not try it with a snap install, but since it uses the NC API, it should work.
Do you use a self signed certificate?
Or a plain HTTP connection?
It will only work with HTTPS connections on port 443 i guess. And I did not try it with a self signed cert
Seeing the WinError: do you have a linux machine running somewhere? Maybe as virtual machine? You could try on linux, maybe some windows-voodoo is blocking something…
Cool, it worked for me now! But I have to provide passwords, otherwise I get this error:
Traceback (most recent call last):
File “nc-userimporter.py”, line 94, in
IndexError: string index out of range
[31114] Failed to execute script nc-userimporter
Hi
I just tried but the script says that the users.csv file doesn’t exist. Yet it is there, in its place, at the same level as the script…
Where is the error? Encoding (UTF-8, LF) ? Should I keep the first line of the csv file (username;displayname;…)?
Thanks !