

# UpdateUserSettings
<a name="API_UpdateUserSettings"></a>

Updates the user settings.

## Request Syntax
<a name="API_UpdateUserSettings_RequestSyntax"></a>

```
PATCH /userSettings/userSettingsArn+ HTTP/1.1
Content-type: application/json

{
   "brandingConfigurationInput": { 
      "colorTheme": "string",
      "favicon": { ... },
      "localizedStrings": { 
         "string" : { 
            "browserTabTitle": "string",
            "contactButtonText": "string",
            "contactLink": "string",
            "loadingText": "string",
            "loginButtonText": "string",
            "loginDescription": "string",
            "loginTitle": "string",
            "welcomeText": "string"
         }
      },
      "logo": { ... },
      "termsOfService": "string",
      "wallpaper": { ... }
   },
   "clientToken": "string",
   "cookieSynchronizationConfiguration": { 
      "allowlist": [ 
         { 
            "domain": "string",
            "name": "string",
            "path": "string"
         }
      ],
      "blocklist": [ 
         { 
            "domain": "string",
            "name": "string",
            "path": "string"
         }
      ]
   },
   "copyAllowed": "string",
   "deepLinkAllowed": "string",
   "disconnectTimeoutInMinutes": number,
   "downloadAllowed": "string",
   "idleDisconnectTimeoutInMinutes": number,
   "pasteAllowed": "string",
   "printAllowed": "string",
   "toolbarConfiguration": { 
      "hiddenToolbarItems": [ "string" ],
      "maxDisplayResolution": "string",
      "toolbarType": "string",
      "visualMode": "string"
   },
   "uploadAllowed": "string",
   "webAuthnAllowed": "string"
}
```

## URI Request Parameters
<a name="API_UpdateUserSettings_RequestParameters"></a>

The request uses the following URI parameters.

 ** [userSettingsArn](#API_UpdateUserSettings_RequestSyntax) **   <a name="workspacesweb-UpdateUserSettings-request-uri-userSettingsArn"></a>
The ARN of the user settings.  
Length Constraints: Minimum length of 20. Maximum length of 2048.  
Pattern: `arn:[\w+=\/,.@-]+:[a-zA-Z0-9\-]+:[a-zA-Z0-9\-]*:[a-zA-Z0-9]{1,12}:[a-zA-Z]+(\/[a-fA-F0-9\-]{36})+`   
Required: Yes

## Request Body
<a name="API_UpdateUserSettings_RequestBody"></a>

The request accepts the following data in JSON format.

 ** [brandingConfigurationInput](#API_UpdateUserSettings_RequestSyntax) **   <a name="workspacesweb-UpdateUserSettings-request-brandingConfigurationInput"></a>
The branding configuration that customizes the appearance of the web portal for end users. When updating user settings without an existing branding configuration, all fields (logo, favicon, localized strings, and color theme) are required except for wallpaper and terms of service. When updating user settings with an existing branding configuration, all fields are optional.  
Type: [BrandingConfigurationUpdateInput](API_BrandingConfigurationUpdateInput.md) object  
Required: No

 ** [clientToken](#API_UpdateUserSettings_RequestSyntax) **   <a name="workspacesweb-UpdateUserSettings-request-clientToken"></a>
A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. Idempotency ensures that an API request completes only once. With an idempotent request, if the original request completes successfully, subsequent retries with the same client token return the result from the original successful request.   
If you do not specify a client token, one is automatically generated by the AWS SDK.  
Type: String  
Length Constraints: Minimum length of 1. Maximum length of 512.  
Required: No

 ** [cookieSynchronizationConfiguration](#API_UpdateUserSettings_RequestSyntax) **   <a name="workspacesweb-UpdateUserSettings-request-cookieSynchronizationConfiguration"></a>
The configuration that specifies which cookies should be synchronized from the end user's local browser to the remote browser.  
If the allowlist and blocklist are empty, the configuration becomes null.  
Type: [CookieSynchronizationConfiguration](API_CookieSynchronizationConfiguration.md) object  
Required: No

 ** [copyAllowed](#API_UpdateUserSettings_RequestSyntax) **   <a name="workspacesweb-UpdateUserSettings-request-copyAllowed"></a>
Specifies whether the user can copy text from the streaming session to the local device.  
Type: String  
Valid Values: `Disabled | Enabled`   
Required: No

 ** [deepLinkAllowed](#API_UpdateUserSettings_RequestSyntax) **   <a name="workspacesweb-UpdateUserSettings-request-deepLinkAllowed"></a>
Specifies whether the user can use deep links that open automatically when connecting to a session.  
Type: String  
Valid Values: `Disabled | Enabled`   
Required: No

 ** [disconnectTimeoutInMinutes](#API_UpdateUserSettings_RequestSyntax) **   <a name="workspacesweb-UpdateUserSettings-request-disconnectTimeoutInMinutes"></a>
The amount of time that a streaming session remains active after users disconnect.  
Type: Integer  
Valid Range: Minimum value of 1. Maximum value of 600.  
Required: No

 ** [downloadAllowed](#API_UpdateUserSettings_RequestSyntax) **   <a name="workspacesweb-UpdateUserSettings-request-downloadAllowed"></a>
Specifies whether the user can download files from the streaming session to the local device.  
Type: String  
Valid Values: `Disabled | Enabled`   
Required: No

 ** [idleDisconnectTimeoutInMinutes](#API_UpdateUserSettings_RequestSyntax) **   <a name="workspacesweb-UpdateUserSettings-request-idleDisconnectTimeoutInMinutes"></a>
The amount of time that users can be idle (inactive) before they are disconnected from their streaming session and the disconnect timeout interval begins.  
Type: Integer  
Valid Range: Minimum value of 0. Maximum value of 60.  
Required: No

 ** [pasteAllowed](#API_UpdateUserSettings_RequestSyntax) **   <a name="workspacesweb-UpdateUserSettings-request-pasteAllowed"></a>
Specifies whether the user can paste text from the local device to the streaming session.  
Type: String  
Valid Values: `Disabled | Enabled`   
Required: No

 ** [printAllowed](#API_UpdateUserSettings_RequestSyntax) **   <a name="workspacesweb-UpdateUserSettings-request-printAllowed"></a>
Specifies whether the user can print to the local device.  
Type: String  
Valid Values: `Disabled | Enabled`   
Required: No

 ** [toolbarConfiguration](#API_UpdateUserSettings_RequestSyntax) **   <a name="workspacesweb-UpdateUserSettings-request-toolbarConfiguration"></a>
The configuration of the toolbar. This allows administrators to select the toolbar type and visual mode, set maximum display resolution for sessions, and choose which items are visible to end users during their sessions. If administrators do not modify these settings, end users retain control over their toolbar preferences.  
Type: [ToolbarConfiguration](API_ToolbarConfiguration.md) object  
Required: No

 ** [uploadAllowed](#API_UpdateUserSettings_RequestSyntax) **   <a name="workspacesweb-UpdateUserSettings-request-uploadAllowed"></a>
Specifies whether the user can upload files from the local device to the streaming session.  
Type: String  
Valid Values: `Disabled | Enabled`   
Required: No

 ** [webAuthnAllowed](#API_UpdateUserSettings_RequestSyntax) **   <a name="workspacesweb-UpdateUserSettings-request-webAuthnAllowed"></a>
Specifies whether the user can use WebAuthn redirection for passwordless login to websites within the streaming session.  
Type: String  
Valid Values: `Disabled | Enabled`   
Required: No

## Response Syntax
<a name="API_UpdateUserSettings_ResponseSyntax"></a>

```
HTTP/1.1 200
Content-type: application/json

{
   "userSettings": { 
      "additionalEncryptionContext": { 
         "string" : "string" 
      },
      "associatedPortalArns": [ "string" ],
      "brandingConfiguration": { 
         "colorTheme": "string",
         "favicon": { 
            "fileExtension": "string",
            "lastUploadTimestamp": number,
            "mimeType": "string"
         },
         "localizedStrings": { 
            "string" : { 
               "browserTabTitle": "string",
               "contactButtonText": "string",
               "contactLink": "string",
               "loadingText": "string",
               "loginButtonText": "string",
               "loginDescription": "string",
               "loginTitle": "string",
               "welcomeText": "string"
            }
         },
         "logo": { 
            "fileExtension": "string",
            "lastUploadTimestamp": number,
            "mimeType": "string"
         },
         "termsOfService": "string",
         "wallpaper": { 
            "fileExtension": "string",
            "lastUploadTimestamp": number,
            "mimeType": "string"
         }
      },
      "cookieSynchronizationConfiguration": { 
         "allowlist": [ 
            { 
               "domain": "string",
               "name": "string",
               "path": "string"
            }
         ],
         "blocklist": [ 
            { 
               "domain": "string",
               "name": "string",
               "path": "string"
            }
         ]
      },
      "copyAllowed": "string",
      "customerManagedKey": "string",
      "deepLinkAllowed": "string",
      "disconnectTimeoutInMinutes": number,
      "downloadAllowed": "string",
      "idleDisconnectTimeoutInMinutes": number,
      "pasteAllowed": "string",
      "printAllowed": "string",
      "toolbarConfiguration": { 
         "hiddenToolbarItems": [ "string" ],
         "maxDisplayResolution": "string",
         "toolbarType": "string",
         "visualMode": "string"
      },
      "uploadAllowed": "string",
      "userSettingsArn": "string",
      "webAuthnAllowed": "string"
   }
}
```

## Response Elements
<a name="API_UpdateUserSettings_ResponseElements"></a>

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

 ** [userSettings](#API_UpdateUserSettings_ResponseSyntax) **   <a name="workspacesweb-UpdateUserSettings-response-userSettings"></a>
The user settings.  
Type: [UserSettings](API_UserSettings.md) object

## Errors
<a name="API_UpdateUserSettings_Errors"></a>

For information about the errors that are common to all actions, see [Common Error Types](CommonErrors.md).

 ** AccessDeniedException **   
Access is denied.  
HTTP Status Code: 403

 ** InternalServerException **   
There is an internal server error.    
 ** retryAfterSeconds **   
Advice to clients on when the call can be safely retried.
HTTP Status Code: 500

 ** ResourceNotFoundException **   
The resource cannot be found.    
 ** resourceId **   
Hypothetical identifier of the resource affected.  
 ** resourceType **   
Hypothetical type of the resource affected.
HTTP Status Code: 404

 ** ThrottlingException **   
There is a throttling error.    
 ** quotaCode **   
The originating quota.  
 ** retryAfterSeconds **   
Advice to clients on when the call can be safely retried.  
 ** serviceCode **   
The originating service.
HTTP Status Code: 429

 ** ValidationException **   
There is a validation error.    
 ** fieldList **   
The field that caused the error.  
 ** reason **   
Reason the request failed validation
HTTP Status Code: 400

## See Also
<a name="API_UpdateUserSettings_SeeAlso"></a>

For more information about using this API in one of the language-specific AWS SDKs, see the following:
+  [AWS Command Line Interface V2](https://docs.aws.amazon.com/goto/cli2/workspaces-web-2020-07-08/UpdateUserSettings) 
+  [AWS SDK for .NET V4](https://docs.aws.amazon.com/goto/DotNetSDKV4/workspaces-web-2020-07-08/UpdateUserSettings) 
+  [AWS SDK for C\$1\$1](https://docs.aws.amazon.com/goto/SdkForCpp/workspaces-web-2020-07-08/UpdateUserSettings) 
+  [AWS SDK for Go v2](https://docs.aws.amazon.com/goto/SdkForGoV2/workspaces-web-2020-07-08/UpdateUserSettings) 
+  [AWS SDK for Java V2](https://docs.aws.amazon.com/goto/SdkForJavaV2/workspaces-web-2020-07-08/UpdateUserSettings) 
+  [AWS SDK for JavaScript V3](https://docs.aws.amazon.com/goto/SdkForJavaScriptV3/workspaces-web-2020-07-08/UpdateUserSettings) 
+  [AWS SDK for Kotlin](https://docs.aws.amazon.com/goto/SdkForKotlin/workspaces-web-2020-07-08/UpdateUserSettings) 
+  [AWS SDK for PHP V3](https://docs.aws.amazon.com/goto/SdkForPHPV3/workspaces-web-2020-07-08/UpdateUserSettings) 
+  [AWS SDK for Python](https://docs.aws.amazon.com/goto/boto3/workspaces-web-2020-07-08/UpdateUserSettings) 
+  [AWS SDK for Ruby V3](https://docs.aws.amazon.com/goto/SdkForRubyV3/workspaces-web-2020-07-08/UpdateUserSettings) 