action dracoon_update_user { label: "Update user's metadata" description: "### Description: \nUpdate user's metadata.\n\n### Precondition:\nRight 🔓 change users required.\n\n### Postcondition:\nUser's metadata is updated.\n\n### Further Information:\n* If a user should **NOT** expire, leave `expireAt` empty.\n* All input fields are limited to **150** characters\n* **All** characters are allowed.\n\n### Authentication Method Options:\n
\nExpand\n\n| Authentication Method | Option Key | Option Value |\n| :--- | :--- | :--- |\n| `basic` / `sql` | `username` | Unique user identifier |\n| `active_directory` | `ad_config_id` (optional) | Active Directory configuration ID |\n| | `username` | Active Directory username according to authentication setting `userFilter` |\n| `radius` | `username` | RADIUS username |\n| `openid` | `openid_config_id` (optional) | OpenID Connect configuration ID |\n| | `username` | OpenID Connect username according to authentication setting `mappingClaim` |\n\n
" provider: dracoon method: PUT path: "/v4/users/{user_id}" encoding: json input: { type: "object" properties: { "X-Sds-Auth-Token": { type: "string" } "X-Sds-Date-Format": { type: "string" enum: ["UTC", "LOCAL", "OFFSET", "EPOCH", "LEET"] } authData: { type: "object" description: "User Authentication Data Update Request" properties: { adConfigId: { type: "integer" format: "int32" description: "ID of the user's Active Directory." } login: { type: "string" description: "User login name" } method: { type: "string" description: "Authentication method\n\n\n\nAuthentication methods:\n\n* `basic`\n\n* `active_directory`\n\n* `radius`\n\n* `openid`" } oidConfigId: { type: "integer" format: "int32" description: "ID of the user's OIDC provider." } } } authMethods: { type: "array" description: "🚧 Deprecated since v4.13.0\n\nAuthentication methods:\n\n* `sql`\n\n* `active_directory`\n\n* `radius`\n\n* `openid`\n\nuse `authData` instead" items: { type: "object" description: "Authentication method" required: ["authId", "isEnabled"] properties: { authId: { type: "string" description: "Authentication method\n\n\n\nAuthentication methods:\n\n* `basic`\n\n* `active_directory`\n\n* `radius`\n\n* `openid`" } isEnabled: { type: "boolean" description: "Is enabled" } options: { type: "array" description: "Authentication method options" items: { type: "object" description: "Key-value pair" required: ["key", "value"] properties: { key: { type: "string" description: "Entry key" } value: { type: "string" description: "Entry value" } } } } } } } email: { type: "string" description: "Email " } expiration: { type: "object" description: "Expiration information" required: ["enableExpiration"] properties: { enableExpiration: { type: "boolean" description: "enabled / disabled" } expireAt: { type: "string" format: "date-time" description: "Expiration date" } } } firstName: { type: "string" description: "User first name" } gender: { type: "string" description: "🚧 Deprecated since v4.12.0\n\nGender\n\nDo NOT use `gender`! It will be ignored." } isLocked: { type: "boolean" description: "User is locked:\n\n* `false` - unlocked\n\n* `true` - locked\n\n\n\nUser is locked and can not login anymore." } lastName: { type: "string" description: "User last name" } lockStatus: { type: "integer" format: "int32" description: "🚧 Deprecated since v4.7.0\n\nUser lock status:\n\n* `0` - locked\n\n* `1` - Web access allowed\n\n* `2` - Web and mobile access allowed\n\n\n\nPlease use `isLocked` instead." } mfaConfig: { type: "object" description: "Multi-factor authentication configuration" properties: { mfaEnforced: { type: "boolean" } } } phone: { type: "string" description: "Phone number" } receiverLanguage: { type: "string" description: "IETF language tag" } title: { type: "string" description: "🚧 Deprecated since v4.18.0\n\nJob title" } userName: { type: "string" description: "🚀 Since v4.13.0\n\nUsername" } user_id: { type: "integer" format: "int64" } } required: ["user_id"] additionalProperties: false } output: { type: "object" description: "User information" required: ["authData", "avatarUuid", "firstName", "id", "isLocked", "lastName", "lockStatus", "userName"] properties: { authData: { type: "object" description: "User Authentication Data" required: ["method"] properties: { adConfigId: { type: "integer" format: "int32" description: "ID of the user's Active Directory." } login: { type: "string" description: "User login name" } method: { type: "string" description: "Authentication method\n\n\n\nAuthentication methods:\n\n* `basic`\n\n* `active_directory`\n\n* `radius`\n\n* `openid`" } mustChangePassword: { type: "boolean" description: "Determines whether user has to change his / her password\n\n* default: `true` for `basic` auth type\n\n* default: `false` for `active_directory`, `openid` and `radius` auth types" } oidConfigId: { type: "integer" format: "int32" description: "ID of the user's OIDC provider." } password: { type: "string" description: "Password (only relevant for `basic` authentication type)\n\n*NOT* your Active Directory, OpenID or RADIUS password!" } } } authMethods: { type: "array" description: "🚧 Deprecated since v4.13.0\n\nAuthentication methods:\n\n* `sql`\n\n* `active_directory`\n\n* `radius`\n\n* `openid`\n\nuse `authData` instead" items: { type: "object" description: "Authentication method" required: ["authId", "isEnabled"] properties: { authId: { type: "string" description: "Authentication method\n\n\n\nAuthentication methods:\n\n* `basic`\n\n* `active_directory`\n\n* `radius`\n\n* `openid`" } isEnabled: { type: "boolean" description: "Is enabled" } options: { type: "array" description: "Authentication method options" items: { type: "object" description: "Key-value pair" required: ["key", "value"] properties: { key: { type: "string" description: "Entry key" } value: { type: "string" description: "Entry value" } } } } } } } avatarUuid: { type: "string" description: "🚀 Since v4.11.0\n\nAvatar UUID" } email: { type: "string" description: "Email " } expireAt: { type: "string" format: "date-time" description: "Expiration date" } firstName: { type: "string" description: "User first name" } gender: { type: "string" description: "🚧 Deprecated since v4.12.0\n\nGender" } hasManageableRooms: { type: "boolean" description: "User has manageable rooms" } homeRoomId: { type: "integer" format: "int64" description: "Homeroom ID" } id: { type: "integer" format: "int64" description: "Unique identifier for the user" } isEncryptionEnabled: { type: "boolean" description: "User has generated private key.\n\nPossible if client-side encryption is active for this customer" } isLocked: { type: "boolean" description: "User is locked:\n\n* `false` - unlocked\n\n* `true` - locked\n\n\n\nUser is locked and can not login anymore." } isMfaEnabled: { type: "boolean" description: "Determines whether multi-factor authentication is enabled" } isMfaEnforced: { type: "boolean" description: "Determines whether multi-factor authentication is enforced" } lastLoginSuccessAt: { type: "string" format: "date-time" description: "Last successful logon date" } lastName: { type: "string" description: "User last name" } lockStatus: { type: "integer" format: "int32" description: "🚧 Deprecated since v4.7.0\n\nUser lock status:\n\n* `0` - locked\n\n* `1` - Web access allowed\n\n* `2` - Web and mobile access allowed\n\n\n\nPlease use `isLocked` instead." } login: { type: "string" description: "🚧 Deprecated since v4.13.0\n\nUser login name" } phone: { type: "string" description: "Phone number" } publicKeyContainer: { type: "object" description: "Public key container" required: ["publicKey", "version"] properties: { createdAt: { type: "string" format: "date-time" description: "🚀 Since v4.24.0\n\nCreation date" } createdBy: { type: "integer" format: "int64" description: "🚀 Since v4.24.0\n\nCreated by user" } publicKey: { type: "string" description: "Public key" } version: { type: "string" description: "Version" } } } title: { type: "string" description: "🚧 Deprecated since v4.18.0\n\nJob title" } userAttributes: { type: "object" description: "User custom attributes (list of key-value pairs)" required: ["items"] properties: { items: { type: "array" description: "List of key-value pairs" items: { type: "object" additionalProperties: true } } } } userName: { type: "string" description: "🚀 Since v4.13.0\n\nUsername" } userRoles: { type: "object" description: "List of roles" required: ["items"] properties: { items: { type: "array" description: "List of roles" items: { type: "object" description: "Role information" required: ["description", "id", "name"] properties: { description: { type: "string" description: "Role description" } id: { type: "integer" format: "int32" description: "Unique identifier for the role" } items: { type: "array" description: "List of reachable right over role" items: { type: "object" description: "Right information" required: ["description", "id", "name"] properties: { description: { type: "string" description: "Right description" } id: { type: "integer" format: "int32" description: "Unique identifier for the right" } name: { type: "string" description: "Right (unique) name" } } } } name: { type: "string" description: "Role (unique) name" } } } } } } } } }