Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 44 Next »

As of Versionproduct version 2020 Winter | component version 1.0
Request MethodPOST
Response FormatHTTP status code
Description

Updates the specific profile that is used while creating a tenant of a customer with all the information that should be set up, e.g. additional roles, users, schema and client settings. Each SaaS application has its one profile.

The following yuuvis® roles are set per default for each tenant:

  • YUUVIS_DEFAULT (briefly: full access to every object via default role set)
  • YUUVIS_CREATE_OBJECT (briefly: allowed to create objects)
  • YUUVIS_MANAGE_SETTINGS (briefly: save result list column and filter configurations as standard)
  • YUUVIS_TENANT_ADMIN (briefly: update schema, rolse set, maintain users, ... for the tenant)
  • YUUVIS_SYSTEM_INTEGRATOR (briefly: update global schemata and role sets for the system, create tenants) 

A user admin is created for each tenant that is used for the initial tenant administration. This user has all the above roles assigned except YUUVIS_TENANT_ADMINISTRATOR.

Settings for Keycloak can be adjusted and additional roles can be created by passing the desired values for the corresponding parameters:

  • section general (These set parameters can be seen in the Keycloak GUI, realm setting Themes.)
    As of RC3 (tag '1.2.0-rc1):
    • parameter displayNameHTML
      Define the branding on the login page. If not specified, the Keycloak realm HTML Display name will be set by default to "<div class="yuv-brand-logo">${DISPLAY_TENANT_NAME}</div>".
    • parameter supportedLocales
      Set the languages that should be offered for selection in the login dialog. The default locales are en for English and de for German. Find the possible locales in the documentation of Keycloak.
    • parameter defaultLocale
      Set the locale do specify the language that should be used for the invitation email. The default locale is
      en.
  • section roles
    • Define additional roles (in addition to the pre-definied role set), each of them with the title role and a description
  • section user:
    • Create standard users and assign roles to them. You may create technical users for administrating the schema, for example.
      As of RC3 (tag '1.2.0-rc1): If you want to invite the created user via email, set  "withInvitation": "true". The default value is false.
      Attention: if "true" the email section with the parameters must be set that match the installed smtp email service.
  • Section email:
    Set up all email keys for sending e.g. invitations for newly created users via your configured email service.
    The mandatory keys are host, username and password

Meaning of the response HTTP status codes:

HTTP Status CodeMeaning
201 CREATEDSuccess, the tenant with the name has been created.
401 UNAUTHORIZEDThe call was unauthorized.
Request Example
POST /api-tm/system/profile HTTP/1.1

{
     "general": {
          "displayNameHTML": "<div class=\"yuv-brand-logo\">${DISPLAY_TENANT_NAME}</div>",
"customMicroservice": "myCustomMicroservice",
"supportedLocales": ["en","de","es"],
"defaultLocale": "es"
,      },

     "email": {
        "host": "myemailservice.com",
        "port": 25,
        "fromDisplayName": "myHostName",
        "from": "myemailaddress",
        "enableSSL": true,
        "enableStartTLS": true,
        "enableAuthentication": true,
        "username": "emailserviceuser",
        "password": "thisisaverystrongpassword"
      },

     "roles": [ 
         {
             "role": "Role 1",
             "description": "Description of Role 1"
         }, ...    ],

    "user": {
       "users": [
          { 
"username": "ira1",
"email": "grasshoff@optimal-systems.de",
"firstName": "Irina",
"lastName": "Graßhoff",
"roles": ["YUUVIS_DEFAULT"],
"password": "thisisasecureinitialpasswordtheuserisrequestedtochangeafterfirstlogin",
"enabled": true
},
...
    ],
        "withInvitation": true
}
}
Response Example

201 CREATED

no response body

  • No labels