updateWebExperience method

Future<void> updateWebExperience({
  1. required String applicationId,
  2. required String webExperienceId,
  3. WebExperienceAuthConfiguration? authenticationConfiguration,
  4. BrowserExtensionConfiguration? browserExtensionConfiguration,
  5. CustomizationConfiguration? customizationConfiguration,
  6. IdentityProviderConfiguration? identityProviderConfiguration,
  7. List<String>? origins,
  8. String? roleArn,
  9. WebExperienceSamplePromptsControlMode? samplePromptsControlMode,
  10. String? subtitle,
  11. String? title,
  12. String? welcomeMessage,
})

Updates an Amazon Q Business web experience.

May throw AccessDeniedException. May throw ConflictException. May throw InternalServerException. May throw ResourceNotFoundException. May throw ThrottlingException. May throw ValidationException.

Parameter applicationId : The identifier of the Amazon Q Business application attached to the web experience.

Parameter webExperienceId : The identifier of the Amazon Q Business web experience.

Parameter authenticationConfiguration : The authentication configuration of the Amazon Q Business web experience.

Parameter browserExtensionConfiguration : The browser extension configuration for an Amazon Q Business web experience.

Parameter customizationConfiguration : Updates the custom logo, favicon, font, and color used in the Amazon Q web experience.

Parameter identityProviderConfiguration : Information about the identity provider (IdP) used to authenticate end users of an Amazon Q Business web experience.

Parameter origins : Updates the website domain origins that are allowed to embed the Amazon Q Business web experience. The domain origin refers to the base URL for accessing a website including the protocol (http/https), the domain name, and the port number (if specified).

  • Any values except null submitted as part of this update will replace all previous values.
  • You must only submit a base URL and not a full path. For example, https://docs.aws.amazon.com.

Parameter roleArn : The Amazon Resource Name (ARN) of the role with permission to access the Amazon Q Business web experience and required resources.

Parameter samplePromptsControlMode : Determines whether sample prompts are enabled in the web experience for an end user.

Parameter subtitle : The subtitle of the Amazon Q Business web experience.

Parameter title : The title of the Amazon Q Business web experience.

Parameter welcomeMessage : A customized welcome message for an end user in an Amazon Q Business web experience.

Implementation

Future<void> updateWebExperience({
  required String applicationId,
  required String webExperienceId,
  WebExperienceAuthConfiguration? authenticationConfiguration,
  BrowserExtensionConfiguration? browserExtensionConfiguration,
  CustomizationConfiguration? customizationConfiguration,
  IdentityProviderConfiguration? identityProviderConfiguration,
  List<String>? origins,
  String? roleArn,
  WebExperienceSamplePromptsControlMode? samplePromptsControlMode,
  String? subtitle,
  String? title,
  String? welcomeMessage,
}) async {
  final $payload = <String, dynamic>{
    if (authenticationConfiguration != null)
      'authenticationConfiguration': authenticationConfiguration,
    if (browserExtensionConfiguration != null)
      'browserExtensionConfiguration': browserExtensionConfiguration,
    if (customizationConfiguration != null)
      'customizationConfiguration': customizationConfiguration,
    if (identityProviderConfiguration != null)
      'identityProviderConfiguration': identityProviderConfiguration,
    if (origins != null) 'origins': origins,
    if (roleArn != null) 'roleArn': roleArn,
    if (samplePromptsControlMode != null)
      'samplePromptsControlMode': samplePromptsControlMode.value,
    if (subtitle != null) 'subtitle': subtitle,
    if (title != null) 'title': title,
    if (welcomeMessage != null) 'welcomeMessage': welcomeMessage,
  };
  final response = await _protocol.send(
    payload: $payload,
    method: 'PUT',
    requestUri:
        '/applications/${Uri.encodeComponent(applicationId)}/experiences/${Uri.encodeComponent(webExperienceId)}',
    exceptionFnMap: _exceptionFns,
  );
}