<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[User import / Batch user creation]]></title><description><![CDATA[<p dir="auto">Hi,</p>
<p dir="auto">Apologies in advance if I missed something here:</p>
<p dir="auto">Up to not so long ago there was a possibility to import users in Cloudron (7.1 release notes make mention of it - There are also traces of it here and there in the forum. See <a href="https://forum.cloudron.io/post/51299">here</a> for example).</p>
<p dir="auto">(User export seems to be missing too).</p>
<p dir="auto">For the life of me, I cannot find this anywhere anymore. Thus I suspect it has been removed/disabled.<br />
Is there any particular reasons for this?</p>
<p dir="auto">As an alternative, is there a known way to batch create users and generate invitation on the fly?</p>
<p dir="auto">Many thanks,</p>
]]></description><link>https://forum.cloudron.io/topic/11599/user-import-batch-user-creation</link><generator>RSS for Node</generator><lastBuildDate>Tue, 06 Oct 2026 00:50:27 GMT</lastBuildDate><atom:link href="https://forum.cloudron.io/topic/11599.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 24 Apr 2024 08:03:21 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to User import / Batch user creation on Wed, 24 Apr 2024 15:52:08 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/brutalbirdie" aria-label="Profile: BrutalBirdie">@<bdi>BrutalBirdie</bdi></a> That should be part of the docs!</p>
]]></description><link>https://forum.cloudron.io/post/87428</link><guid isPermaLink="true">https://forum.cloudron.io/post/87428</guid><dc:creator><![CDATA[necrevistonnezr]]></dc:creator><pubDate>Wed, 24 Apr 2024 15:52:08 GMT</pubDate></item><item><title><![CDATA[Reply to User import / Batch user creation on Wed, 24 Apr 2024 11:46:07 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/brutalbirdie" aria-label="Profile: BrutalBirdie">@<bdi>BrutalBirdie</bdi></a> Thanks a lot!</p>
]]></description><link>https://forum.cloudron.io/post/87401</link><guid isPermaLink="true">https://forum.cloudron.io/post/87401</guid><dc:creator><![CDATA[DohnJoe]]></dc:creator><pubDate>Wed, 24 Apr 2024 11:46:07 GMT</pubDate></item><item><title><![CDATA[Reply to User import / Batch user creation on Wed, 24 Apr 2024 11:20:04 GMT]]></title><description><![CDATA[<p dir="auto">Found it <img src="https://forum.cloudron.io/assets/plugins/nodebb-plugin-emoji/emoji/android/1f642.png?v=5f2780b28b1" class="not-responsive emoji emoji-android emoji--slightly_smiling_face" style="height:1.4em;width:auto;vertical-align:middle" title=":)" alt="🙂" /><br />
Here is the python3 code:</p>
<pre><code class="language-python">import json
from pprint import pprint
import requests

# Each user to programmatically create must be in this JSON format
data = [
  {
    "Surname": "Lastname",
    "Name": "Firstname",
    "Login": "MyAwesomeLoginName",
    "Mail": "missing@null.none",
    "Password": "HahaClearTextPasswordGoBrrrrrr"
  }
]

# Replace `DOMAIN.TLD` with your Domain
url="https://my.DOMAIN.TLD/api/v1"

# Replace `&lt;PLACEHOLDER-TOKEN&gt;` with your Cloudron Token
headers = {
    "Content-Type": "application/json",
    "Authorization": "Bearer &lt;PLACEHOLDER-TOKEN&gt;"
    }

for value in data:
    values= {
        "email": value["Mail"],
        "username": value["Login"],
        "password": value["Password"],
        "displayName": f'{value["Name"]} {value["Surname"]}',
        "role": "user",
        "fallbackEmail": value["Mail"],
    }
    data = json.dumps(values)
    try:
        pprint(data)
        createUser = requests.post(f'{url}/users', data=data, headers=headers)
        userId = createUser.json()["id"]
        pprint(userId)
        inviteUser = requests.post(f'{url}/users/{userId}/send_invite_email', data=json.dumps({"email": value["Mail"]}), headers=headers)
        if createUser.status_code != 201 or inviteUser.status_code != 202:
            print(f"Error creating user or inviting user")
            print(f"Create user status code: {createUser.status_code}")
            print(f"InviteUser user status code: {inviteUser.status_code}")
            exit()
    except Exception as e:
        pprint(e)
</code></pre>
<p dir="auto"><img src="https://forum.cloudron.io/assets/plugins/nodebb-plugin-emoji/emoji/android/1f62c.png?v=5f2780b28b1" class="not-responsive emoji emoji-android emoji--grimacing" style="height:1.4em;width:auto;vertical-align:middle" title=":grimacing:" alt="😬" /> hope this helps.<br />
ps: I added the invite user email to the program for you since I did not have it in there.</p>
]]></description><link>https://forum.cloudron.io/post/87400</link><guid isPermaLink="true">https://forum.cloudron.io/post/87400</guid><dc:creator><![CDATA[BrutalBirdie]]></dc:creator><pubDate>Wed, 24 Apr 2024 11:20:04 GMT</pubDate></item><item><title><![CDATA[Reply to User import / Batch user creation on Wed, 24 Apr 2024 10:12:23 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/brutalbirdie" aria-label="Profile: BrutalBirdie">@<bdi>BrutalBirdie</bdi></a> Oh that would be nice - thanks for this.</p>
<p dir="auto">Thanks also <a class="plugin-mentions-user plugin-mentions-a" href="/user/girish" aria-label="Profile: girish">@<bdi>girish</bdi></a> - This works for me also.</p>
<p dir="auto">Just in passing:</p>
<ul>
<li>I initially had the same powershell annoyance as <a class="plugin-mentions-user plugin-mentions-a" href="/user/prusaman" aria-label="Profile: prusaman">@<bdi>prusaman</bdi></a> here: <a href="https://forum.cloudron.io/post/62509">https://forum.cloudron.io/post/62509</a> - Not sure what this is all about, but linux's just fine.</li>
<li>the curl sample is missing an end quote here: <a href="https://docs.cloudron.io/api.html#tag/Users/operation/addUser" target="_blank" rel="noopener noreferrer nofollow ugc">https://docs.cloudron.io/api.html#tag/Users/operation/addUser</a></li>
</ul>
<pre><code>curl -X POST -H "Content-Type: application/json" -H "Authorization: Bearer $CLOUDRON_TOKEN" "https://$CLOUDRON_DOMAIN/api/v1/users" --data '{"username":"Example","email":"example@example.com","password":"insertYourPassword","displayName":"Example", "role":"user","fallbackEmail":"fallback@test.com"}
</code></pre>
<p dir="auto">Thanks again</p>
]]></description><link>https://forum.cloudron.io/post/87395</link><guid isPermaLink="true">https://forum.cloudron.io/post/87395</guid><dc:creator><![CDATA[DohnJoe]]></dc:creator><pubDate>Wed, 24 Apr 2024 10:12:23 GMT</pubDate></item><item><title><![CDATA[Reply to User import / Batch user creation on Wed, 24 Apr 2024 10:00:49 GMT]]></title><description><![CDATA[<p dir="auto">I also posted my script somewhere <img src="https://forum.cloudron.io/assets/plugins/nodebb-plugin-emoji/emoji/android/1f914.png?v=5f2780b28b1" class="not-responsive emoji emoji-android emoji--thinking_face" style="height:1.4em;width:auto;vertical-align:middle" title=":thinking_face:" alt="🤔" /> let me dig it up</p>
]]></description><link>https://forum.cloudron.io/post/87393</link><guid isPermaLink="true">https://forum.cloudron.io/post/87393</guid><dc:creator><![CDATA[BrutalBirdie]]></dc:creator><pubDate>Wed, 24 Apr 2024 10:00:49 GMT</pubDate></item><item><title><![CDATA[Reply to User import / Batch user creation on Wed, 24 Apr 2024 09:31:57 GMT]]></title><description><![CDATA[<p dir="auto">@uwcrbc yes, this functionality was removed since it was not flexible in the way it was implemented.</p>
<p dir="auto">You can script whatever your requirements are based on the API. The users API is now online at <a href="https://docs.cloudron.io/api.html#tag/Users" target="_blank" rel="noopener noreferrer nofollow ugc">https://docs.cloudron.io/api.html#tag/Users</a></p>
]]></description><link>https://forum.cloudron.io/post/87390</link><guid isPermaLink="true">https://forum.cloudron.io/post/87390</guid><dc:creator><![CDATA[girish]]></dc:creator><pubDate>Wed, 24 Apr 2024 09:31:57 GMT</pubDate></item></channel></rss>