### Description:
All existing group permissions will be overwritten.
### Precondition:
User needs to be a <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>👤 Room Administrator</span>. To add new members, the user needs the right <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>🔓 non-members add</span>, which is included in any role.
### Postcondition:
Group's permissions are changed.
### Further Information:
Batch function.
### Description:
All existing user permissions will be overwritten.
### Precondition:
User needs to be a <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>👤 Room Administrator</span>. To add new members, the user needs the right <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>🔓 non-members add</span>, which is included in any role.
### Postcondition:
User's permissions are changed.
### Further Information:
Batch function.
### Description:
Add or edit custom user attributes.
<br/><br/><span style="font-weight: bold; color: red;"> 🚧 **Warning: Please note that the response with HTTP status code 200 (OK) is deprecated and will be replaced with HTTP status code 204 (No content)!**</span><br/>
### Precondition:
Right <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>🔓 change users</span> required.
### Postcondition:
Custom user attributes gets added or edited.
### Further Information:
Batch function.
If an entry exists before, it will be overwritten.
* Allowed characters for keys are: `[a-zA-Z0-9_-]`
* Characters are **case-insensitive**.
<h3 style='padding: 5px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px; display: table-cell;'>🚀 Since v4.4.0</h3>
### Description:
Add or edit custom customer attributes.
<br/><br/><span style="font-weight: bold; color: red;"> 🚧 **Warning: Please note that the response with HTTP status code 200 (OK) is deprecated and will be replaced with HTTP status code 204 (No content)!**</span><br/>
### Precondition:
Right <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>🔓 change global config</span> required.
### Postcondition:
Custom customer attributes get added or edited.
### Further Information:
Batch function.
If an entry exists before, it will be overwritten.
* Allowed characters for keys are: `[a-zA-Z0-9_-]`
* Characters are **case-insensitive**.
<h3 style='padding: 5px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px; display: table-cell;'>🚀 Since v4.7.0</h3>
### Description:
Add or edit custom user profile attributes.
<br/><br/><span style="font-weight: bold; color: red;"> 🚧 **Warning: Please note that the response with HTTP status code 200 (OK) is deprecated and will be replaced with HTTP status code 204 (No content)!**</span><br/>
### Precondition:
None.
### Postcondition:
Custom user profile attributes are added or edited.
### Further Information:
Batch function.
If an entry existed before, it will be overwritten.
Range submodel is never returned.
* Allowed characters for keys are: `[a-zA-Z0-9_-]`
* Characters are **case-insensitive**
* Maximum key length is **255**
* Maximum value length is **4096**
### Description:
Create a new Active Directory configuration.
### Precondition:
Right <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>🔓 change global config</span> of the Provider Customer required.
### Postcondition:
New Active Directory configuration created.
### Further Information:
None.
### Description:
Create a new customer.
### Precondition:
Authentication with `X-Sds-Service-Token` required.
### Postcondition:
A new customer is created.
### Further Information:
If no company name is set, first letter of the first name separated by dot followed by last name of the first administrator is used (e.g. `J.Doe`).
Max quota has to be at least `1 MB` (= `1.048.576 B`).
If `basic` authentication is enabled, the first administrator will get `basic` authentication by default.
To create a first administrator without `basic` authentication it **MUST** be disabled explicitly.
Forbidden characters in passwords: [`&`, `'`, `<`, `>`]
### Authentication Method Options:
<details style="padding: 10px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px;">
<summary style="cursor: pointer; outline: none"><strong>Expand</strong></summary>
| Authentication Method | Option Key | Option Value |
| :--- | :--- | :--- |
| `basic` / `sql` | `username` | Unique user identifier |
| `active_directory` | `ad_config_id` (optional) | Active Directory configuration ID |
| | `username` | Active Directory username according to authentication setting `userFilter` |
| `radius` | `username` | RADIUS username |
| `openid` | `openid_config_id` (optional) | OpenID Connect configuration ID |
| | `username` | OpenID Connect username according to authentication setting `mappingClaim` |
</details>
<h3 style='padding: 5px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px; display: table-cell;'>🚀 Since v4.24.0</h3>
### Description:
Create room rescue key pair and preserve copy of old private key.
### Precondition:
User needs to be a <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>👤 Room Administrator</span>.
### Postcondition:
Room rescue key pair is created.
Copy of old private key is preserved.
### Further Information:
You can submit your old private key, encrypted with your current password.
This allows migrating file keys encrypted with your old key pair to the new one.
<h3 style='padding: 5px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px; display: table-cell;'>🚀 Since v4.24.0</h3>
### Description:
Create user key pair and preserve copy of old private key.
### Precondition:
Authenticated user.
### Postcondition:
Key pair is created.
Copy of old private key is preserved.
### Further Information:
You can submit your old private key, encrypted with your current password.
This allows migrating file keys encrypted with your old key pair to the new one.
### Description:
Create a new folder.
### Precondition:
User has <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>🔓 create</span> permissions in current room.
### Postcondition:
New folder is created.
### Further Information:
Folders **CANNOT** be created on top level (without parent element).
Notes are limited to **255** characters.
### Node naming convention:
* Node (room, folder, file) names are limited to **150** characters.
* Illegal names:
`'CON', 'PRN', 'AUX', 'NUL', 'COM1', 'COM2', 'COM3', 'COM4', 'COM5', 'COM6', 'COM7', 'COM8', 'COM9', 'LPT1', 'LPT2', 'LPT3', 'LPT4', 'LPT5', 'LPT6', 'LPT7', 'LPT8', 'LPT9', (and any of those with an extension)`
* Illegal characters in names:
`'\\', '<','>', ':', '\"', '|', '?', '*', '/', leading '-', trailing '.' `
### Description:
Creates a new room at the provided parent node.
Creation of top level rooms provided.
### Precondition:
User has <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>🔓 manage</span> permissions in the parent room.
### Postcondition:
A new room is created.
### Further Information:
Rooms may only have other rooms as parent.
Rooms on top level do **NOT** have any parent.
Rooms may have rooms as children on n hierarchy levels.
If permission inheritance is disabled, there **MUST** be at least one admin user / group (with neither the group nor the user having an expiration date).
Notes are limited to **255** characters.
Provided (or default) classification is taken from room when file gets uploaded without any classification.
### Node naming convention:
* Node (room, folder, file) names are limited to **150** characters.
* Illegal names:
`'CON', 'PRN', 'AUX', 'NUL', 'COM1', 'COM2', 'COM3', 'COM4', 'COM5', 'COM6', 'COM7', 'COM8', 'COM9', 'LPT1', 'LPT2', 'LPT3', 'LPT4', 'LPT5', 'LPT6', 'LPT7', 'LPT8', 'LPT9', (and any of those with an extension)`
* Illegal characters in names:
`'\\', '<','>', ':', '\"', '|', '?', '*', '/', leading '-', trailing '.' `
### Description:
Create a new user group.
### Precondition:
Right <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>🔓 change groups</span> required.
### Postcondition:
A new user group is created.
### Further Information:
* If a group should **NOT** expire, leave `expireAt` empty.
* Group names are limited to **150** characters
* Forbidden characters in group name: [`<`, `>`]
<h3 style='padding: 5px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px; display: table-cell;'>🚀 Since v4.10.0</h3>
### Description:
Create a comment for a specific node.
### Precondition:
User has <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>🔓 read</span> permissions on the node.
### Postcondition:
Comment is created.
### Further Information:
Maximum allowed text length: **65535** characters.
<h3 style='padding: 5px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px; display: table-cell;'>🚀 Since v4.9.0</h3>
### Description:
Create new S3 tag.
### Precondition:
Right <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>🔓 change global config</span> and
role <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>👤 Config Manager</span> of the Provider Customer required.
### Postcondition:
New S3 tag is created.
### Further Information:
* Maximum key length: **128** characters.
* Maximum value length: **256** characters.
* Both S3 tag key and value are **case-sensitive** strings.
* Maximum of **20 mandatory S3 tags** is allowed.
<h3 style='padding: 5px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px; display: table-cell;'>🚀 Since v4.24.0</h3>
### Description:
Create system rescue key pair and preserve copy of old private key.
### Precondition:
* Right <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>🔓 change config</span>
* Existence of own key pair
### Postcondition:
System rescue key pair is created.
Copy of old private key is preserved.
### Further Information:
You can submit your old private key, encrypted with your current password.
This allows migrating file keys encrypted with your old key pair to the new one.
<h3 style='padding: 5px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px; display: table-cell;'>🚀 Since v4.10.0</h3>
### Description:
Edit the text of an existing comment for a specific node.
### Precondition:
User has <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>🔓 read</span> permissions on the node and is the creator of the comment.
### Postcondition:
Comments text gets changed.
### Further Information:
Maximum allowed text length: **65535** characters.
### Description:
Receive details of a selected customer.
### Precondition:
Authentication with `X-Sds-Service-Token` required.
### Postcondition:
Customer details are returned.
### Further Information:
None.
<h3 style='padding: 5px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px; display: table-cell;'>🚧 Deprecated since v4.14.0</h3>
### Description:
This is the first step of the OpenID Connect authentication.
The user is send to the OpenID Connect identity provider to authenticate himself and retrieve an authorization code.
### Precondition:
None.
### Postcondition:
User is redirected to OpenID Connect identity provider to authenticate himself.
### Further Information:
None.
<h3 style='padding: 5px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px; display: table-cell;'>🚀 Since v4.25.0</h3>
### Description:
Marks or unmarks a list of nodes (room, folder or file) as favorite.
### Precondition:
Authenticated user is allowed to <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>👁 see</span> the node (i.e. `isBrowsable = true`).
### Postcondition:
Nodes gets marked as favorite.
### Further Information:
Maximum number of nodes is 200.
### Description:
Provides information about Active Directory authentication options.
### Precondition:
None.
### Postcondition:
Active Directory authentication options information is returned.
### Further Information:
None.
### Description:
Retrieve the configuration of an Active Directory.
### Precondition:
Right <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>🔓 read global config</span> of the Provider Customer required.
### Postcondition:
Active Directory configuration is returned.
### Further Information:
None.
<h3 style='padding: 5px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px; display: table-cell;'>🚀 Since v4.24.0</h3>
### Description:
Retrieve a list of available algorithms used for encryption.
### Precondition:
Authenticated user.
### Postcondition:
List of available algorithms is returned.
### Further Information:
None.
### Description:
Retrieve a list of all roles with assigned rights.
### Precondition:
Right <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>🔓 read users</span> required.
### Postcondition:
List of roles with assigned rights is returned.
### Further Information:
None.
<h3 style='padding: 5px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px; display: table-cell;'>🚀 Since v4.24.0</h3>
### Description:
Retrieve all system rescue key pairs to allow migrating system-rescue-key-encrypted file keys.
### Precondition:
* Right <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>🔓 change config</span>
* Existence of own key pair
### Postcondition:
List of key pairs is returned.
### Further Information:
In the case of an algorithm migration of a system rescue key, one should create the new key pair before deleting the old one.
This allows re-encrypting file keys with the new key pair, using the old one.
This API allows to retrieve both key pairs, in contrast to `GET /settings/keypair`, which only delivers the preferred one.
<h3 style='padding: 5px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px; display: table-cell;'>🚀 Since v4.6.0</h3>
### Description:
DRACOON authentication configuration entry point.
### Precondition:
Right <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>🔓 read global config</span> and
role <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>👤 Config Manager</span> of the Provider Customer required.
### Postcondition:
Returns a list of configurable authentication methods.
### Further Information:
Authentication methods are sorted by priority attribute.
Smaller values have higher priority.
Authentication method with highest priority is considered as default.
Priority **MUST** be a positive value.
### Configurable authentication settings:
<details open style="padding: 10px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px;">
<summary style="cursor: pointer; outline: none"><strong>Expand</strong></summary>
| Authentication Method | Description |
| :--- | :--- |
| `basic` | **Basic** authentication globally allowed.<br>This option **MUST** be activated to allow users to log in with their credentials stored in the database.<br>Formerly known as `sql`. |
| `active_directory` | **Active Directory** authentication globally allowed.<br>This option **MUST** be activated to allow users to log in with their Active Directory credentials. |
| `radius` | **RADIUS** authentication globally allowed.<br>This option **MUST** be activated to allow users to log in with their RADIUS username, their PIN and a token password. |
| `openid` | **OpenID Connect** authentication globally allowed.This option **MUST** be activated to allow users to log in with their OpenID Connect identity. |
</details>
<h3 style='padding: 5px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px; display: table-cell;'>🚀 Since v4.30.0</h3>
### Description:
Retrieve a list of classification policies:
* `shareClassificationPolicies`
### Precondition:
Right <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>🔓 read global config</span> and
role <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>👤 Config Manager</span> of the Provider Customer required.
### Postcondition:
List of configured classification policies is returned.
### Further Information:
`classificationRequiresSharePassword`: When a node has this classification or higher, it cannot be shared without a password. If the node is an encrypted file this policy has no effect. `0` means no password will be enforced.
<h3 style='padding: 5px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px; display: table-cell;'>🚀 Since v4.30.0</h3>
### Description:
Retrieve a list of classification policies:
* `shareClassificationPolicies`
### Precondition:
Authenticated user.
### Postcondition:
List of configured classification policies is returned.
### Further Information:
`classificationRequiresSharePassword`: When a node has this classification or higher, it cannot be shared without a password. If the node is an encrypted file this policy has no effect. `0` means no password will be enforced.
### Description:
Use this API to get:
* customer name
* used / free space
* used / available
* user account info
of the according customer.
### Precondition:
Authenticated user.
### Postcondition:
Customer information is returned.
### Further Information:
None.
### Description:
Get metadata of a deleted node.
### Precondition:
User can access parent room and has <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>🔓 read recycle bin</span> permissions.
### Postcondition:
Requested deleted node is returned.
### Further Information:
None.
<h3 style='padding: 5px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px; display: table-cell;'>🚀 Since v4.6.0</h3>
### Description:
DRACOON general settings configuration entry point.
### Precondition:
Right <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>🔓 read global config</span> and
role <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>👤 Config Manager</span> of the Provider Customer required.
### Postcondition:
Returns a list of configurable general settings.
### Further Information:
### Auth token restrictions:
A restriction is a lower bound for a token timeout and defines a duration after which a token is invalidated when it wasn't used.
The access/refresh token validity duration of the client is the upper bound. A token is invalidated - in any case - when it has passed.
Auth token restrictions are enabled by default.
* Default access token validity: **2 hours**
* Default refresh token validity: **30 days**
### Configurable general settings:
<details open style="padding: 10px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px;">
<summary style="cursor: pointer; outline: none"><strong>Expand</strong></summary>
| Setting | Description | Value |
| :--- | :--- | :--- |
| `sharePasswordSmsEnabled` | Determines whether sending of share passwords via SMS is allowed. | `true or false` |
| `cryptoEnabled` | Determines whether client-side encryption is enabled.<br>Can only be enabled once; disabling is **NOT** possible. | `true or false` |
| `emailNotificationButtonEnabled` | Determines whether email notification button is enabled. | `true or false` |
| `eulaEnabled` | Determines whether EULA is enabled.<br>Each user has to confirm the EULA at first login. | `true or false` |
| `useS3Storage` | Defines if S3 is used as storage backend.<br>Can only be enabled once; disabling is **NOT** possible. | `true or false` |
| `s3TagsEnabled` | Determines whether S3 tags are enabled | `true or false` |
| `authTokenRestrictions` | Determines auth token restrictions. (e.g. restricted access token validity) | `object` |
</details>
### Deprecated configurable general settings:
<details style="padding: 10px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px;">
<summary style="cursor: pointer; outline: none"><strong>Expand</strong></summary>
| Setting | Description | Value |
|:----------------------------------| :--- | :--- |
| <del>`mediaServerEnabled`</del> | Determines whether media server is enabled.<br>Returns boolean value dependent on conjunction of `mediaServerConfigEnabled` AND `mediaServerEnabled` | `true or false` |
| <del>`weakPasswordEnabled`</del> | Determines whether weak password is allowed.<br>Use `GET /system/config/policies/passwords` API to get configured password policies. | `true or false` |
| <del>`hideLoginInputFields`</del> | Determines whether input fields for login should be enabled | `true or false` |
</details>
<h3 style='padding: 5px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px; display: table-cell;'>🚀 Since v4.6.0</h3>
### Description:
Returns a list of configurable general settings.
### Precondition:
Authenticated user.
### Postcondition:
List of configurable general settings is returned.
### Further Information:
None.
### Configurable general settings:
<details open style="padding: 10px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px;">
<summary style="cursor: pointer; outline: none"><strong>Expand</strong></summary>
| Setting | Description | Value |
| :--- | :--- | :--- |
| `sharePasswordSmsEnabled` | Determines whether sending of share passwords via SMS is allowed. | `true or false` |
| `cryptoEnabled` | Determines whether client-side encryption is enabled.<br>Can only be enabled once; disabling is **NOT** possible. | `true or false` |
| `emailNotificationButtonEnabled` | Determines whether email notification button is enabled. | `true or false` |
| `eulaEnabled` | Determines whether EULA is enabled.<br>Each user has to confirm the EULA at first login. | `true or false` |
| `useS3Storage` | Defines if S3 is used as storage backend.<br>Can only be enabled once; disabling is **NOT** possible. | `true or false` |
| `s3TagsEnabled` | Determines whether S3 tags are enabled | `true or false` |
| `homeRoomsActive` | Determines whether each AD user has a personal home room | `true or false` |
| `homeRoomParentId` | Defines a node under which all personal home rooms are located. **NULL** if `homeRoomsActive` is `false` | `Long` |
| `subscriptionPlan` | Subscription Plan. <br> 0 = Pro, 1 = Premium, 2 = Basic | `Integer` |
</details>
### Deprecated general settings:
<details style="padding: 10px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px;">
<summary style="cursor: pointer; outline: none"><strong>Expand</strong></summary>
| Setting | Description | Value |
| :--- | :--- | :--- |
| <del>`mediaServerEnabled`</del> | Determines whether media server is enabled.<br>Returns boolean value dependent on conjunction of `mediaServerConfigEnabled` AND `mediaServerEnabled` | `true or false` |
| <del>`weakPasswordEnabled`</del> | Determines whether weak password is allowed.<br>Use `GET /system/config/policies/passwords` API to get configured password policies. | `true or false` |
</details>
### Description:
Get all groups with a specific role.
### Precondition:
Right <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>🔓 read groups</span> required.
### Postcondition:
List of to the role assigned groups is returned.
### Further Information:
### Filtering:
All filter fields are connected via logical conjunction (**AND**)
Filter string syntax: `FIELD_NAME:OPERATOR:VALUE`
<details style="padding-left: 10px">
<summary style="cursor: pointer; outline: none"><strong>Example</strong></summary>
`isMember:eq:false|name:cn:searchString`
Get all groups that are **NOT** a member of that role **AND** whose name contains `searchString`.
</details>
### Filtering options:
<details style="padding: 10px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px;">
<summary style="cursor: pointer; outline: none"><strong>Expand</strong></summary>
| `FIELD_NAME` | Filter Description | `OPERATOR` | Operator Description | `VALUE` |
| :--- | :--- | :--- | :--- | :--- |
| `isMember` | Filter the groups which are (not) member of that role | `eq` | | <ul><li>`true`</li><li>`false`</li><li>`any`</li></ul>default: `true` |
| `name` | Group name filter | `cn` | Group name contains value. | `search String` |
</details>
### Description:
Retrieve a list of configured Active Directories.
### Precondition:
Right <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>🔓 read global config</span> of the Provider Customer required.
### Postcondition:
List of Active Directory configurations is returned.
### Further Information:
None.
<h3 style='padding: 5px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px; display: table-cell;'>🚀 Since v4.38.0</h3>
### Description:
Returns a list of currently enabled product packages.
### Precondition:
Authenticated user
### Postcondition:
List of currently enabled Product Packages is returned.
### Further Information:
<h3 style='padding: 5px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px; display: table-cell;'>🚀 Since v4.19.0</h3>
### Description:
Get a list of available event types.
### Precondition:
Right <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>🔓 manage webhook</span> required.
### Postcondition:
List of available event types is returned.
### Further Information:
None.
<h3 style='padding: 5px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px; display: table-cell;'>🚀 Since v4.20.0</h3>
### Description:
Retrieve a list of configured notification channels.
### Precondition:
Right _"change config"_ required.
### Postcondition:
List of notification channels is returned.
### Further Information:
None.
<h3 style='padding: 5px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px; display: table-cell;'>🚀 Since v4.20.0</h3>
### Description:
Retrieve a list of configured notification channels.
### Precondition:
Authenticated user.
### Postcondition:
List of notification channels is returned.
### Further Information:
None.
<h3 style='padding: 5px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px; display: table-cell;'>🚀 Since v4.20.0</h3>
### Description:
Retrieve a list of notification configurations for current user.
### Precondition:
Authenticated user.
### Postcondition:
List of available notification configurations is returned.
### Further Information:
None.
### Description:
Retrieve a list of configured OpenID Connect IDPs.
### Precondition:
Right <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>🔓 change global config</span> and
role <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>👤 Config Manager</span> of the Provider Customer required.
### Postcondition:
List of OpenID Connect IDP configurations is returned.
### Further Information:
None.
<h3 style='padding: 5px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px; display: table-cell;'>🚀 Since v4.10.0</h3>
### Description:
Requests a list of node ancestors, sorted from root node to the node's direct parent node.
### Precondition:
User is allowed to browse through the node tree until the requested node.
### Postcondition:
List of parent nodes is returned.
### Further Information:
None.
<h3 style='padding: 5px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px; display: table-cell;'>🚀 Since v4.38.0</h3>
### Description:
Returns a list of product packages.
### Precondition:
Authenticated user
### Postcondition:
List of Product Packages is returned.
### Further Information:
### Description:
Retrieve a list of all roles granted to a group.
### Precondition:
Right <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>🔓 read groups</span> required.
### Postcondition:
List of granted roles is returned.
### Further Information:
None.
<h3 style='padding: 5px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px; display: table-cell;'>🚀 Since v4.20.0</h3>
### Description:
Retrieve a list of subscription scopes.
### Precondition:
Authenticated user.
### Postcondition:
List of scopes is returned.
### Further Information:
None.
### Description:
Provides information about OpenID Connect authentication options.
### Precondition:
None.
### Postcondition:
OpenID Connect authentication options information is returned.
### Further Information:
None.
<h3 style='padding: 5px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px; display: table-cell;'>🚀 Since v4.14.0</h3>
### Description:
Retrieve a list of configured password policies for all password types:
* `login`
* `shares`
* `encryption`
### Precondition:
Right <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>🔓 read global config</span> and
role <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>👤 Config Manager</span> of the Provider Customer required.
### Postcondition:
List of configured password policies is returned.
### Further Information:
None.
### Available password policies:
<details style="padding: 10px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px;">
<summary style="cursor: pointer; outline: none"><strong>Expand</strong></summary>
| Name | Description | Value | Password Type |
| :--- | :--- | :--- | :--- |
| `mustContainCharacters` | Characters which a password must contain:<br><ul><li>`alpha` - at least one alphabetical character (`uppercase` **OR** `lowercase`)<pre>a b c d e f g h i j k l m n o p q r s t u v w x y z<br>A B C D E F G H I J K L M N O P Q R S T U V W X Y Z</pre></li><li>`uppercase` - at least one uppercase character<pre>A B C D E F G H I J K L M N O P Q R S T U V W X Y Z</pre></li><li>`lowercase` - at least one lowercase character<pre>a b c d e f g h i j k l m n o p q r s t u v w x y z</pre></li><li>`numeric` - at least one numeric character<pre>0 1 2 3 4 5 6 7 8 9</pre></li><li>`special` - at least one special character (letters and digits excluded)<pre>! " # $ % ( ) * + , - . / : ; = ? @ [ \ ] ^ _ { | } ~</pre></li><li>`none` - none of the above</li></ul> | <ul><li>`alpha`</li><li>`uppercase`</li><li>`lowercase`</li><li>`numeric`</li><li>`special`</li><li>`none`</li></ul> | <ul><li>`login`</li><li>`shares`</li><li>`encryption`</li></ul> |
| `numberOfCharacteristicsToEnforce` | Number of characteristics to enforce.<br>e.g. from `["uppercase", "lowercase", "numeric", "special"]`<br>all 4 character sets can be enforced; but also only 2 of them | `Integer between 0 and 4` | <ul><li>`login`</li><li>`shares`</li><li>`encryption`</li></ul> |
| `minLength` | Minimum number of characters a password must contain. | `Integer between 1 and 1024` | <ul><li>`login`</li><li>`shares`</li><li>`encryption`</li></ul> |
| `rejectDictionaryWords` | Determines whether a password must **NOT** contain word(s) from a dictionary.<br>In `core-service.properties` a path to directory with dictionary files (`*.txt`) can be defined<br>cf. `policies.passwords.dictionary.directory`.<br><br>If this rule gets enabled `policies.passwords.dictionary.directory` must be defined and contain dictionary files.<br>Otherwise, the rule will not have any effect on password validation process. | `true or false` | <ul><li>`login`</li><li>`shares`</li></ul> |
| `rejectUserInfo` | Determines whether a password must **NOT** contain user info.<br>Affects user's **first name**, **last name**, **email** and **user name**. | `true or false` | <ul><li>`login`</li><li>`shares`</li><li>`encryption`</li></ul> |
| `rejectKeyboardPatterns` | Determines whether a password must **NOT** contain keyboard patterns.<br>e.g. `qwertz`, `asdf` (min. 4 character pattern) | `true or false` | <ul><li>`login`</li><li>`shares`</li><li>`encryption`</li></ul> |
| `numberOfArchivedPasswords` | Number of passwords to archive.<br>Value `0` means that password history is disabled. | `Integer between 0 and 10` | <ul><li>`login`</li></ul> |
| `passwordExpiration.enabled` | Determines whether password expiration is enabled. | `true or false` | <ul><li>`login`</li></ul> |
| `maxPasswordAge` | Maximum allowed password age (in **days**) | `positive Integer` | <ul><li>`login`</li></ul> |
| `userLockout.enabled` | Determines whether user lockout is enabled. | `true or false` | <ul><li>`login`</li></ul> |
| `maxNumberOfLoginFailures` | Maximum allowed number of failed login attempts. | `positive Integer` | <ul><li>`login`</li></ul> |
| `lockoutPeriod` | Amount of **minutes** a user has to wait to make another login attempt<br>after `maxNumberOfLoginFailures` has been exceeded. | `positive Integer` | <ul><li>`login`</li></ul> |
</details>
<h3 style='padding: 5px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px; display: table-cell;'>🚀 Since v4.14.0</h3>
### Description:
Retrieve a list of configured password policies for all password types:
* `login`
* `shares`
* `encryption`
### Precondition:
Authenticated user.
### Postcondition:
List of configured password policies is returned.
### Further Information:
None.
### Available password policies:
<details style="padding: 10px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px;">
<summary style="cursor: pointer; outline: none"><strong>Expand</strong></summary>
| Name | Description | Value | Password Type |
| :--- | :--- | :--- | :--- |
| `mustContainCharacters` | Characters which a password must contain:<br><ul><li>`alpha` - at least one alphabetical character (`uppercase` **OR** `lowercase`)<pre>a b c d e f g h i j k l m n o p q r s t u v w x y z<br>A B C D E F G H I J K L M N O P Q R S T U V W X Y Z</pre></li><li>`uppercase` - at least one uppercase character<pre>A B C D E F G H I J K L M N O P Q R S T U V W X Y Z</pre></li><li>`lowercase` - at least one lowercase character<pre>a b c d e f g h i j k l m n o p q r s t u v w x y z</pre></li><li>`numeric` - at least one numeric character<pre>0 1 2 3 4 5 6 7 8 9</pre></li><li>`special` - at least one special character (letters and digits excluded)<pre>! " # $ % ( ) * + , - . / : ; = ? @ [ \ ] ^ _ { | } ~</pre></li><li>`none` - none of the above</li></ul> | <ul><li>`alpha`</li><li>`uppercase`</li><li>`lowercase`</li><li>`numeric`</li><li>`special`</li><li>`none`</li></ul> | <ul><li>`login`</li><li>`shares`</li><li>`encryption`</li></ul> |
| `numberOfCharacteristicsToEnforce` | Number of characteristics to enforce.<br>e.g. from `["uppercase", "lowercase", "numeric", "special"]`<br>all 4 character sets can be enforced; but also only 2 of them | `Integer between 0 and 4` | <ul><li>`login`</li><li>`shares`</li><li>`encryption`</li></ul> |
| `minLength` | Minimum number of characters a password must contain. | `Integer between 1 and 1024` | <ul><li>`login`</li><li>`shares`</li><li>`encryption`</li></ul> |
| `rejectDictionaryWords` | Determines whether a password must **NOT** contain word(s) from a dictionary.<br>In `core-service.properties` a path to directory with dictionary files (`*.txt`) can be defined<br>cf. `policies.passwords.dictionary.directory`.<br><br>If this rule gets enabled `policies.passwords.dictionary.directory` must be defined and contain dictionary files.<br>Otherwise, the rule will not have any effect on password validation process. | `true or false` | <ul><li>`login`</li><li>`shares`</li></ul> |
| `rejectUserInfo` | Determines whether a password must **NOT** contain user info.<br>Affects user's **first name**, **last name**, **email** and **user name**. | `true or false` | <ul><li>`login`</li><li>`shares`</li><li>`encryption`</li></ul> |
| `rejectKeyboardPatterns` | Determines whether a password must **NOT** contain keyboard patterns.<br>e.g. `qwertz`, `asdf` (min. 4 character pattern) | `true or false` | <ul><li>`login`</li><li>`shares`</li><li>`encryption`</li></ul> |
| `numberOfArchivedPasswords` | Number of passwords to archive.<br>Value `0` means that password history is disabled. | `Integer between 0 and 10` | <ul><li>`login`</li></ul> |
| `passwordExpiration.enabled` | Determines whether password expiration is enabled. | `true or false` | <ul><li>`login`</li></ul> |
| `maxPasswordAge` | Maximum allowed password age (in **days**) | `positive Integer` | <ul><li>`login`</li></ul> |
| `userLockout.enabled` | Determines whether user lockout is enabled. | `true or false` | <ul><li>`login`</li></ul> |
| `maxNumberOfLoginFailures` | Maximum allowed number of failed login attempts. | `positive Integer` | <ul><li>`login`</li></ul> |
| `lockoutPeriod` | Amount of **minutes** a user has to wait to make another login attempt<br>after `maxNumberOfLoginFailures` has been exceeded. | `positive Integer` | <ul><li>`login`</li></ul> |
</details>
<h3 style='padding: 5px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px; display: table-cell;'>🚀 Since v4.14.0</h3>
### Description:
Retrieve a list of configured password policies for a certain password type:
* `login`
* `shares`
* `encryption`
### Precondition:
Right <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>🔓 read global config</span> and
role <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>👤 Config Manager</span> of the Provider Customer required.
### Postcondition:
List of configured password policies is returned.
### Further Information:
None.
### Available password policies:
<details style="padding: 10px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px;">
<summary style="cursor: pointer; outline: none"><strong>Expand</strong></summary>
| Name | Description | Value | Password Type |
| :--- | :--- | :--- | :--- |
| `mustContainCharacters` | Characters which a password must contain:<br><ul><li>`alpha` - at least one alphabetical character (`uppercase` **OR** `lowercase`)<pre>a b c d e f g h i j k l m n o p q r s t u v w x y z<br>A B C D E F G H I J K L M N O P Q R S T U V W X Y Z</pre></li><li>`uppercase` - at least one uppercase character<pre>A B C D E F G H I J K L M N O P Q R S T U V W X Y Z</pre></li><li>`lowercase` - at least one lowercase character<pre>a b c d e f g h i j k l m n o p q r s t u v w x y z</pre></li><li>`numeric` - at least one numeric character<pre>0 1 2 3 4 5 6 7 8 9</pre></li><li>`special` - at least one special character (letters and digits excluded)<pre>! " # $ % ( ) * + , - . / : ; = ? @ [ \ ] ^ _ { | } ~</pre></li><li>`none` - none of the above</li></ul> | <ul><li>`alpha`</li><li>`uppercase`</li><li>`lowercase`</li><li>`numeric`</li><li>`special`</li><li>`none`</li></ul> | <ul><li>`login`</li><li>`shares`</li><li>`encryption`</li></ul> |
| `numberOfCharacteristicsToEnforce` | Number of characteristics to enforce.<br>e.g. from `["uppercase", "lowercase", "numeric", "special"]`<br>all 4 character sets can be enforced; but also only 2 of them | `Integer between 0 and 4` | <ul><li>`login`</li><li>`shares`</li><li>`encryption`</li></ul> |
| `minLength` | Minimum number of characters a password must contain. | `Integer between 1 and 1024` | <ul><li>`login`</li><li>`shares`</li><li>`encryption`</li></ul> |
| `rejectDictionaryWords` | Determines whether a password must **NOT** contain word(s) from a dictionary.<br>In `core-service.properties` a path to directory with dictionary files (`*.txt`) can be defined<br>cf. `policies.passwords.dictionary.directory`.<br><br>If this rule gets enabled `policies.passwords.dictionary.directory` must be defined and contain dictionary files.<br>Otherwise, the rule will not have any effect on password validation process. | `true or false` | <ul><li>`login`</li><li>`shares`</li></ul> |
| `rejectUserInfo` | Determines whether a password must **NOT** contain user info.<br>Affects user's **first name**, **last name**, **email** and **user name**. | `true or false` | <ul><li>`login`</li><li>`shares`</li><li>`encryption`</li></ul> |
| `rejectKeyboardPatterns` | Determines whether a password must **NOT** contain keyboard patterns.<br>e.g. `qwertz`, `asdf` (min. 4 character pattern) | `true or false` | <ul><li>`login`</li><li>`shares`</li><li>`encryption`</li></ul> |
| `numberOfArchivedPasswords` | Number of passwords to archive.<br>Value `0` means that password history is disabled. | `Integer between 0 and 10` | <ul><li>`login`</li></ul> |
| `passwordExpiration.enabled` | Determines whether password expiration is enabled. | `true or false` | <ul><li>`login`</li></ul> |
| `maxPasswordAge` | Maximum allowed password age (in **days**) | `positive Integer` | <ul><li>`login`</li></ul> |
| `userLockout.enabled` | Determines whether user lockout is enabled. | `true or false` | <ul><li>`login`</li></ul> |
| `maxNumberOfLoginFailures` | Maximum allowed number of failed login attempts. | `positive Integer` | <ul><li>`login`</li></ul> |
| `lockoutPeriod` | Amount of **minutes** a user has to wait to make another login attempt<br>after `maxNumberOfLoginFailures` has been exceeded. | `positive Integer` | <ul><li>`login`</li></ul> |
</details>
<h3 style='padding: 5px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px; display: table-cell;'>🚀 Since v4.32.0</h3>
### Description:
Retrieve the room policies:
* `defaultExpirationPeriod`
### Precondition:
User has <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>🔓 read</span> permissions in that room.
### Postcondition:
Room Policies returned.
### Further Information:
`defaultExpirationPeriod`: Default policy room expiration period in seconds.
All existing and future files in a room will have their expiration date set to this period after their respective upload.
Existing files can be set to expire earlier afterwards.
`0` means no default expiration policy will be enforced.
<h3 style='padding: 5px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px; display: table-cell;'>🚀 Since v4.10.0</h3>
### Description:
Retrieve a list of all rooms where the group is defined as last admin group.
### Precondition:
Right <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>🔓 change groups</span> required.
### Postcondition:
List of rooms is returned.
### Further Information:
An empty list is returned if no rooms were found where the group is defined as last admin group.
<h3 style='padding: 5px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px; display: table-cell;'>🚀 Since v4.10.0</h3>
### Description:
Retrieve a list of all rooms where the user is last admin (except homeroom and its subordinary rooms).
### Precondition:
Right <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>🔓 change users</span> required.
### Postcondition:
List of rooms is returned.
### Further Information:
An empty list is returned if no rooms were found where the user is last admin.
<h3 style='padding: 5px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px; display: table-cell;'>🚀 Since v4.36.0</h3>
### Description:
Get the subscription plan id of the current tenant
### Precondition:
Valid `X-SDS-Service-Token` Header
### Postcondition:
Returns SubscriptionPlanResponse model that includes subscription plan id.
### Further Information:
None.
### Description:
Get user avatar.
### Precondition:
Valid user ID and avatar UUID
### Postcondition:
Avatar is returned.
### Further Information:
None.
### Description:
Retrieve detailed information about a user group.
### Precondition:
Right <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>🔓 read groups</span> required.
### Postcondition:
User group is returned.
### Further Information:
None.
<h3 style='padding: 5px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px; display: table-cell;'>🚀 Since v4.25.0</h3>
### Description:
Subscribe/Unsubscribe nodes for notifications.
### Precondition:
User has _"read"_ permissions in auth parent room.
### Postcondition:
Nodes are subscribed or unsubscribed.
Notifications for these nodes will be triggered in the future.
### Further Information:
Maximum number of subscriptions is 200.
<h3 style='padding: 5px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px; display: table-cell;'>🚀 Since v4.6.0</h3>
### Description:
DRACOON authentication configuration entry point.
Change configurable authentication settings.
### Precondition:
Right <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>🔓 change global config</span> and
role <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>👤 Config Manager</span> of the Provider Customer required.
### Postcondition:
One or more authentication methods gets changed.
### Further Information:
Authentication methods are sorted by priority attribute.
Smaller values have higher priority.
Authentication method with highest priority is considered as default.
Priority **MUST** be a positive value.
### Configurable authentication settings:
<details open style="padding: 10px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px;">
<summary style="cursor: pointer; outline: none"><strong>Expand</strong></summary>
| Authentication Method | Description |
| :--- | :--- |
| `basic` | **Basic** authentication globally allowed.<br>This option **MUST** be activated to allow users to log in with their credentials stored in the database.<br>Formerly known as `sql`. |
| `active_directory` | **Active Directory** authentication globally allowed.<br>This option **MUST** be activated to allow users to log in with their Active Directory credentials. |
| `radius` | **RADIUS** authentication globally allowed.<br>This option **MUST** be activated to allow users to log in with their RADIUS username, their PIN and a token password. |
| `openid` | **OpenID Connect** authentication globally allowed.This option **MUST** be activated to allow users to log in with their OpenID Connect identity. |
</details>
### Description:
Change selected attributes of a customer.
### Precondition:
Authentication with `X-Sds-Service-Token` required.
### Postcondition:
Selected attributes of customer are updated.
### Further Information:
None.
<h3 style='padding: 5px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px; display: table-cell;'>🚀 Since v4.6.0</h3>
### Description:
DRACOON system defaults configuration entry point.
Change configurable system default values.
### Precondition:
Right <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>🔓 change global config</span> and
role <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>👤 Config Manager</span> of the Provider Customer required.
### Postcondition:
One or more system default values gets changed.
### Further Information:
None.
### Configurable default values
<details open style="padding: 10px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px;">
<summary style="cursor: pointer; outline: none"><strong>Expand</strong></summary>
| Setting | Description | Value |
| :--- | :--- | :--- |
| `languageDefault` | Defines which language should be default. | `ISO 639-1 code` |
| `downloadShareDefaultExpirationPeriod` | Default expiration period for Download Shares in _days_. | `Integer between 0 and 9999`<br>Set `0` to disable. |
| `uploadShareDefaultExpirationPeriod` | Default expiration period for Upload Shares in _days_. | `Integer between 0 and 9999`<br>Set `0` to disable. |
| `fileDefaultExpirationPeriod` | Default expiration period for all uploaded files in _days_. | `Integer between 0 and 9999`<br>Set `0` to disable. |
| `nonmemberViewerDefault` | Defines if new users get the role _Non Member Viewer_ by default | `true or false` |
</details>
<h3 style='padding: 5px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px; display: table-cell;'>🚧 Deprecated since v4.6.0</h3>
### Description:
Update configurable settings.
### Precondition:
Right <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>🔓 change global config</span> and
role <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>👤 Config Manager</span> of the Provider Customer required.
### Postcondition:
One or more global settings gets changed.
### Further Information:
This API is deprecated and will be removed in the future.
Check for every settings key new corresponding API and key below.
### Configurable settings:
<details style="padding: 10px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px;">
<summary style="cursor: pointer; outline: none"><strong>Expand</strong></summary>
| Setting | Description | Value |
| :--- | :--- | :--- |
| `branding_server_branding_id` | The branding UUID, which corresponds to _BRANDING-QUALIFIER_ in the new branding server.<br>cf. `PUT /system/config/settings/branding` `BrandingConfig.brandingQualifier` | `String` |
| `branding_portal_url` | Access URL to to the Branding Portal<br>Only visible for _Config Manager_ of Provider Customer.<br>cf. `PUT /system/config/settings/branding` `BrandingConfig.brandingProviderUrl` | `String` |
| `dblog` | Write logs to local database.<br>Only visible for _Config Manager_ of Provider Customer.<br>cf. `PUT /system/config/settings/eventlog` `EventlogConfig.enabled` | `true or false` |
| `default_downloadshare_expiration_period` | Default expiration period for Download Shares in days<br>cf. `PUT /system/config/settings/defaults` `SystemDefaults.downloadShareDefaultExpirationPeriod` | `Integer between 0 and 9999`<br>Set `0` to disable. |
| `default_file_upload_expiration_date` | Default expiration period for all uploaded files in days<br>cf. `PUT /system/config/settings/defaults` `SystemDefaults.fileDefaultExpirationPeriod` | `Integer between 0 and 9999`<br>Set `0` to disable. |
| `default_language` | Define which language should be default.<br>cf. `PUT /system/config/settings/defaults` `SystemDefaults.languageDefault` | cf. `GET /public/system/info` - `SystemInfo.languageDefault` |
| `default_uploadshare_expiration_period` | Default expiration period for Upload Shares in days<br>cf. `PUT /system/config/settings/defaults` `SystemDefaults.uploadShareDefaultExpirationPeriod` | `Integer between 0 and 9999`<br>Set `0` to disable. |
| `enable_client_side_crypto` | Activation status of client-side encryption<br>Can only be enabled once; disabling is **NOT** possible.<br>cf. `PUT /system/config/settings/general` `GeneralSettings.cryptoEnabled` | `true or false`<br>default: `false` |
| `eula_active` | Each user has to confirm the EULA at first login.<br>cf. `PUT /system/config/settings/general` `GeneralSettings.eulaEnabled` | `true or false` |
| `eventlog_retention_period` | Retention period (in days) of event log entries<br>After that period, all entries are deleted.<br>cf. `PUT /system/config/settings/eventlog` `EventlogConfig.retentionPeriod` | `Integer between 0 and 9999`<br>If set to `0`: no logs are deleted<br>Recommended value: `7` |
| `ip_address_logging` | Determines whether a user's IP address is logged.<br>Only visible for _Config Manager_ of Provider Customer.<br>cf. `PUT /system/config/settings/eventlog` `EventlogConfig.logIpEnabled`<br>cf. `PUT /system/config/settings/syslog` `SyslogConfig.logIpEnabled` | `true or false` |
| `mailserver` | Email server to send emails.<br>Only visible for _Config Manager_ of Provider Customer.<br>cf. `PUT /system/config/settings/mail_server` `MailServerConfig.host` | `DNS name or IPv4 of an email server` |
| `mailserver_authentication_necessary` | Set to `true` if the email server requires authentication.<br>Only visible for _Config Manager_ of Provider Customer.<br>cf. `PUT /system/config/settings/mail_server` `MailServerConfig.authenticationEnabled` | `true or false` |
| `mailserver_password` | Password for email server<br>cf. `PUT /system/config/settings/mail_server` `MailServerConfig.password` | `Password for authentication` |
| `mailserver_port` | Email server port<br>Only visible for _Config Manager_ of Provider Customer.<br>cf. `PUT /system/config/settings/mail_server` `MailServerConfig.port` | `Valid port number` |
| `mailserver_username` | Username for email server<br>Only visible for _Config Manager_ of Provider Customer.<br>cf. `PUT /system/config/settings/mail_server` `MailServerConfig.username` | `Username for authentication` |
| `mailserver_use_ssl` | Email server requires SSL connection?<br>Only visible for _Config Manager_ of Provider Customer.<br>Requires `mailserver_use_starttls` to be `false`<br>cf. `PUT /system/config/settings/mail_server` `MailServerConfig.username` | `true or false` |
| `mailserver_use_starttls` | Email server requires StartTLS connection?<br>Only visible for _Config Manager_ of Provider Customer.<br>Requires `mailserver_use_ssl` to be `false`<br>cf. `PUT /system/config/settings/mail_server` `MailServerConfig.starttlsEnabled` | `true or false` |
| `syslog` | Write logs to a syslog interface.<br>Only visible for _Config Manager_ of Provider Customer.<br>cf. `PUT /system/config/settings/syslog` `SyslogConfig.enabled` | `true or false` |
| `syslog_host` | Syslog server (IP or FQDN)<br>Only visible for _Config Manager_ of Provider Customer.<br>cf. `PUT /system/config/settings/syslog` `SyslogConfig.host` | `DNS name or IPv4 of a syslog server` |
| `syslog_port` | Syslog server port<br>Only visible for _Config Manager_ of Provider Customer.<br>cf. `PUT /system/config/settings/syslog` `SyslogConfig.port` | `Valid port number` |
| `syslog_protocol` | Protocol to connect to syslog server.<br>Only visible for _Config Manager_ of Provider Customer.<br>cf. `PUT /system/config/settings/syslog` `SyslogConfig.protocol` | `TCP or UDP` |
| `enable_email_notification_button` | Enable mail notification button.<br>cf. `PUT /system/config/settings/general` `GeneralSettings.emailNotificationButtonEnabled` | `true or false` |
| `allow_share_password_sms` | Allow sending of share passwords via SMS.<br>cf. `PUT /system/config/settings/general` `GeneralSettings.sharePasswordSmsEnabled` | `true or false` |
</details>
### Deprecated settings:
<details style="padding: 10px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px;">
<summary style="cursor: pointer; outline: none"><strong>Expand</strong></summary>
| Setting | Description | Value |
| :--- | :--- | :--- |
| <del>`allow_system_global_weak_password`</del> | Determines whether weak password (cf. _Password Policy_ below) is allowed.<br>cf. `PUT /system/config/settings/general` `GeneralSettings.weakPasswordEnabled`<br>Use `PUT /system/config/policies/passwords` API to change configured password policies. | `true or false` |
| <del>`branding_server_customer`</del> | The UUID of the branding server customer, which corresponds to customer key in the branding server. | `String` |
| <del>`branding_server_url`</del> | Access URL to to the Branding Server.<br>Only visible for _Config Manager_ of Provider Customer. | `String` |
| <del>`email_from`</del> | Sender of system-generated emails<br>Only visible for _Config Manager_ of Provider Customer.<br>**Moved to branding** | `Valid email address` |
| <del>`email_to_sales`</del> | Contact email address for customers to request more user licenses or data volume.<br>**Moved to branding** | `Valid email address` |
| <del>`email_to_support`</del> | Support email address for users<br>**Moved to branding** | `Valid email address` |
| <del>`file_size_js`</del> | Maximum file size (in bytes) for downloads of encrypted files with JavaScript.<br>Bigger files will require a JavaApplet. | `Integer`<br>Recommended value: `10485760` (=`10MB`) |
| <del>`system_name`</del> | System name<br>**Moved to branding** use `product.title` | `Display name of the DRACOON` |
</details>
### Description:
Update current user's account.
### Precondition:
Authenticated user.
### Postcondition:
User's account is updated.
### Further Information:
* All input fields are limited to **150** characters.
* **All** characters are allowed.
`customer` (`CustomerData`) attribute in `UserAccount` response model is deprecated. Please use response from `GET /user/account/customer` instead.
### Description:
Update user group's metadata .
### Precondition:
Right <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>🔓 change groups</span> required.
### Postcondition:
User group's metadata is changed.
### Further Information:
* If a group should **NOT** expire, leave `expireAt` empty.
* Group names are limited to **150** characters
* **All** characters are allowed.
<h3 style='padding: 5px; background-color: #F6F7F8; border: 1px solid #AAA; border-radius: 5px; display: table-cell;'>🚀 Since v4.25.0</h3>
### Description:
Updates a list of file’s metadata.
### Precondition:
User has <span style='padding: 3px; background-color: #F6F7F8; border: 1px solid #000; border-radius: 5px; display: inline;'>🔓 change</span> permissions in parent room.
### Postcondition:
File's metadata is changed.
### Further Information:
Maximum number of files is 200