diff --git a/nc-useradd.sh b/nc-useradd.sh
new file mode 100755
index 0000000000000000000000000000000000000000..ec1857ec5c403eb150100290a13324bff483de92
--- /dev/null
+++ b/nc-useradd.sh
@@ -0,0 +1,57 @@
+#!/bin/bash
+# Création d'utilisateur dans Nextcloud
+#
+# usage: nc-useradd.sh [OPTIONS] USERID DISPLAYNAME EMAIL [GROUPE...]
+#
+# OPTIONS
+#     -h, --help          affiche ce message d'aide
+#
+# Créer un utilisateur dans l'instance Nextcloud via un appel à l'API
+# par curl pour ne pas avoir à spécifier de mot de passe.
+#
+# Les variables d'environnement suivantes doivent être fixées :
+#
+# - NEXTCLOUD_HOST : le nom de l'instance Nextcloud
+# - NEXTCLOUD_ADMIN_USER : l'id d'un utilisateur admin
+# - NEXTCLOUD_ADMIN_PASSWORD : le mot de passe de l'utilisateur admin
+#
+# Penser à protéger les espaces avec des quotes si nécessaires
+# (notamment pour DISPLAYNAME).
+#
+
+# Copyright (C) 2021 Bruno BEAUFILS <bruno@boulgour.com>
+#
+# This software comes with ABSOLUTELY NO WARRANTY.
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License as
+# published by the Free Software Foundation in its version 2.
+# See the README or COPYING file for details.
+
+_doc () { sed -n '2,/^$/ { s/^ *#// ; s/^ //g ; t e ; d ; :e p }' <$0 ; }
+_die () { echo "${0##*/}: error: $*" 1>&2 ; exit 1 ; }
+
+test "x$1" = "x-h" -o "x$1" = "x--help" && _doc && exit
+
+test -z $NEXTCLOUD_HOST && _die "NEXTCLOUD_HOST est vide"
+test -z $NEXTCLOUD_ADMIN_USER && _die "NEXTCLOUD_ADMIN_USER est vide"
+test -z $NEXTCLOUD_ADMIN_PASSWORD && _die "NEXTCLOUD_ADMIN_PASSWORD est vide"
+test $# -lt 3 && _die "manque des paramètres. Essayer l'option -h"
+which curl 1>/dev/null 2>&1 || _die "curl inacessible"
+
+userid="$1"
+displayName="$2"
+email="$3"
+shift 3
+
+for g in "$@"
+do
+    groups_args="$groups_args -d groups[]=\"$g\""
+done
+
+eval curl -X POST https://${NEXTCLOUD_ADMIN_USER}:${NEXTCLOUD_ADMIN_PASSWORD}@${NEXTCLOUD_HOST}/ocs/v1.php/cloud/users \
+     -d userid=\"$userid\" \
+     -d displayName=\"$displayName\" \
+     -d email=\"$email\" \
+     $groups_args \
+     -d language=\"fr\" \
+      --header \"OCS-APIRequest: true\"