Aller au contenu principal

API d'utilisateurs

Vous trouverez sur cette page des exemples d'utilisation et de mise en pratique de l'API utilisateur.

Création d'un utilisateur

La création d'un utilisateur couvre toutes les actions nécessaires pour créer un utilisateur opérationnel :

  • Création au niveau de la base de données
  • Association de l'utilisateur avec un domaine
  • Création de la boîte aux lettres 
  • Création du calendrier par défaut
  • Création d'une vue de calendrier par défaut
  • Création des carnets d'adresses "Mes contacts" et "Contacts collectés"

https://pkg.bluemind.net/apidoc/openui-models/web-resources/?bm_version=4.9.2940#!/net.bluemind.user.api.IUser/put_users_domainUid_uid :

Exemple en HTTP

  • Méthode : PUT
  • URL : https://<domain.lan>/api/users/<domain.lan>/<uid de l'utilisateur>
  • BODY :
    {
    "emails": [{
    "address": "john@<domain>",
    "allAliases": false,
    "isDefault": true
    }],
    "login": "john",
    "password": "doe",
    "contactInfos": {
    "identification": {
    "name": {
    "familyNames": "Doe",
    "givenNames": "John"
    },
    "photo": false
    }
    },
    "routing": "internal",
    "accountType": "FULL"
    }

Exemple en Curl

curl -X GET --header 'Content-Type: application/json' \
--header 'X-BM-ApiKey: <auth_key>' \
--header 'Accept: application/json' \
-d '{
"emails": [{
"address": "john@<domain>",
"allAliases": false,
"isDefault": true
}],
"login": "john",
"password": "doe",
"contactInfos": {
"identification": {
"name": {
"familyNames": "Doe",
"givenNames": "John"
},
"photo": false
}
},
"routing": "internal",
"accountType": "FULL"
}' https://<domain>/api/users/<domain>/<uid>

Exemple en Java (en utilisant le client généré BlueMind)

IUser userService = serviceProvider.instance(IUser.class, domain); 
User user = new User();
user.login = "john";
user.password = "doe";
user.routing = Routing.internal;
user.emails = Arrays.asList(Email.create(login + "@" + domain, true));
user.contactInfos = new VCard();
user.contactInfos.identification.name = new Name();
user.contactInfos.identification.name.givenNames = login;
String userUid = UUID.randomUUID().toString();
userService.create(userUid, user);