diff --git a/clients/client-qbusiness/README.md b/clients/client-qbusiness/README.md index 750168ebee4a..e80c16da796a 100644 --- a/clients/client-qbusiness/README.md +++ b/clients/client-qbusiness/README.md @@ -241,6 +241,14 @@ see LICENSE for more information. ## Client Commands (Operations List) +
+ +AssociatePermission + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/qbusiness/command/AssociatePermissionCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-qbusiness/Interface/AssociatePermissionCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-qbusiness/Interface/AssociatePermissionCommandOutput/) + +
BatchDeleteDocument @@ -280,6 +288,14 @@ CreateApplication [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/qbusiness/command/CreateApplicationCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-qbusiness/Interface/CreateApplicationCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-qbusiness/Interface/CreateApplicationCommandOutput/) +
+
+ +CreateDataAccessor + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/qbusiness/command/CreateDataAccessorCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-qbusiness/Interface/CreateDataAccessorCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-qbusiness/Interface/CreateDataAccessorCommandOutput/) +
@@ -352,6 +368,14 @@ DeleteConversation [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/qbusiness/command/DeleteConversationCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-qbusiness/Interface/DeleteConversationCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-qbusiness/Interface/DeleteConversationCommandOutput/) +
+
+ +DeleteDataAccessor + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/qbusiness/command/DeleteDataAccessorCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-qbusiness/Interface/DeleteDataAccessorCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-qbusiness/Interface/DeleteDataAccessorCommandOutput/) +
@@ -408,6 +432,14 @@ DeleteWebExperience [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/qbusiness/command/DeleteWebExperienceCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-qbusiness/Interface/DeleteWebExperienceCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-qbusiness/Interface/DeleteWebExperienceCommandOutput/) +
+
+ +DisassociatePermission + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/qbusiness/command/DisassociatePermissionCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-qbusiness/Interface/DisassociatePermissionCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-qbusiness/Interface/DisassociatePermissionCommandOutput/) +
@@ -424,6 +456,14 @@ GetChatControlsConfiguration [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/qbusiness/command/GetChatControlsConfigurationCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-qbusiness/Interface/GetChatControlsConfigurationCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-qbusiness/Interface/GetChatControlsConfigurationCommandOutput/) +
+
+ +GetDataAccessor + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/qbusiness/command/GetDataAccessorCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-qbusiness/Interface/GetDataAccessorCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-qbusiness/Interface/GetDataAccessorCommandOutput/) +
@@ -464,6 +504,14 @@ GetPlugin [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/qbusiness/command/GetPluginCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-qbusiness/Interface/GetPluginCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-qbusiness/Interface/GetPluginCommandOutput/) +
+
+ +GetPolicy + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/qbusiness/command/GetPolicyCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-qbusiness/Interface/GetPolicyCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-qbusiness/Interface/GetPolicyCommandOutput/) +
@@ -512,6 +560,14 @@ ListConversations [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/qbusiness/command/ListConversationsCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-qbusiness/Interface/ListConversationsCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-qbusiness/Interface/ListConversationsCommandOutput/) +
+
+ +ListDataAccessors + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/qbusiness/command/ListDataAccessorsCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-qbusiness/Interface/ListDataAccessorsCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-qbusiness/Interface/ListDataAccessorsCommandOutput/) +
@@ -560,6 +616,14 @@ ListMessages [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/qbusiness/command/ListMessagesCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-qbusiness/Interface/ListMessagesCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-qbusiness/Interface/ListMessagesCommandOutput/) +
+
+ +ListPluginActions + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/qbusiness/command/ListPluginActionsCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-qbusiness/Interface/ListPluginActionsCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-qbusiness/Interface/ListPluginActionsCommandOutput/) +
@@ -568,6 +632,22 @@ ListPlugins [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/qbusiness/command/ListPluginsCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-qbusiness/Interface/ListPluginsCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-qbusiness/Interface/ListPluginsCommandOutput/) +
+
+ +ListPluginTypeActions + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/qbusiness/command/ListPluginTypeActionsCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-qbusiness/Interface/ListPluginTypeActionsCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-qbusiness/Interface/ListPluginTypeActionsCommandOutput/) + +
+
+ +ListPluginTypeMetadata + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/qbusiness/command/ListPluginTypeMetadataCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-qbusiness/Interface/ListPluginTypeMetadataCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-qbusiness/Interface/ListPluginTypeMetadataCommandOutput/) +
@@ -608,6 +688,14 @@ PutGroup [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/qbusiness/command/PutGroupCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-qbusiness/Interface/PutGroupCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-qbusiness/Interface/PutGroupCommandOutput/) +
+
+ +SearchRelevantContent + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/qbusiness/command/SearchRelevantContentCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-qbusiness/Interface/SearchRelevantContentCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-qbusiness/Interface/SearchRelevantContentCommandOutput/) +
@@ -656,6 +744,14 @@ UpdateChatControlsConfiguration [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/qbusiness/command/UpdateChatControlsConfigurationCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-qbusiness/Interface/UpdateChatControlsConfigurationCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-qbusiness/Interface/UpdateChatControlsConfigurationCommandOutput/) +
+
+ +UpdateDataAccessor + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/qbusiness/command/UpdateDataAccessorCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-qbusiness/Interface/UpdateDataAccessorCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-qbusiness/Interface/UpdateDataAccessorCommandOutput/) +
diff --git a/clients/client-qbusiness/src/QBusiness.ts b/clients/client-qbusiness/src/QBusiness.ts index e65c9f429d86..4e5815a9567c 100644 --- a/clients/client-qbusiness/src/QBusiness.ts +++ b/clients/client-qbusiness/src/QBusiness.ts @@ -2,6 +2,11 @@ import { createAggregatedClient } from "@smithy/smithy-client"; import { HttpHandlerOptions as __HttpHandlerOptions } from "@smithy/types"; +import { + AssociatePermissionCommand, + AssociatePermissionCommandInput, + AssociatePermissionCommandOutput, +} from "./commands/AssociatePermissionCommand"; import { BatchDeleteDocumentCommand, BatchDeleteDocumentCommandInput, @@ -19,6 +24,11 @@ import { CreateApplicationCommandInput, CreateApplicationCommandOutput, } from "./commands/CreateApplicationCommand"; +import { + CreateDataAccessorCommand, + CreateDataAccessorCommandInput, + CreateDataAccessorCommandOutput, +} from "./commands/CreateDataAccessorCommand"; import { CreateDataSourceCommand, CreateDataSourceCommandInput, @@ -56,6 +66,11 @@ import { DeleteConversationCommandInput, DeleteConversationCommandOutput, } from "./commands/DeleteConversationCommand"; +import { + DeleteDataAccessorCommand, + DeleteDataAccessorCommandInput, + DeleteDataAccessorCommandOutput, +} from "./commands/DeleteDataAccessorCommand"; import { DeleteDataSourceCommand, DeleteDataSourceCommandInput, @@ -79,6 +94,11 @@ import { DeleteWebExperienceCommandInput, DeleteWebExperienceCommandOutput, } from "./commands/DeleteWebExperienceCommand"; +import { + DisassociatePermissionCommand, + DisassociatePermissionCommandInput, + DisassociatePermissionCommandOutput, +} from "./commands/DisassociatePermissionCommand"; import { GetApplicationCommand, GetApplicationCommandInput, @@ -89,6 +109,11 @@ import { GetChatControlsConfigurationCommandInput, GetChatControlsConfigurationCommandOutput, } from "./commands/GetChatControlsConfigurationCommand"; +import { + GetDataAccessorCommand, + GetDataAccessorCommandInput, + GetDataAccessorCommandOutput, +} from "./commands/GetDataAccessorCommand"; import { GetDataSourceCommand, GetDataSourceCommandInput, @@ -98,6 +123,7 @@ import { GetGroupCommand, GetGroupCommandInput, GetGroupCommandOutput } from "./ import { GetIndexCommand, GetIndexCommandInput, GetIndexCommandOutput } from "./commands/GetIndexCommand"; import { GetMediaCommand, GetMediaCommandInput, GetMediaCommandOutput } from "./commands/GetMediaCommand"; import { GetPluginCommand, GetPluginCommandInput, GetPluginCommandOutput } from "./commands/GetPluginCommand"; +import { GetPolicyCommand, GetPolicyCommandInput, GetPolicyCommandOutput } from "./commands/GetPolicyCommand"; import { GetRetrieverCommand, GetRetrieverCommandInput, @@ -124,6 +150,11 @@ import { ListConversationsCommandInput, ListConversationsCommandOutput, } from "./commands/ListConversationsCommand"; +import { + ListDataAccessorsCommand, + ListDataAccessorsCommandInput, + ListDataAccessorsCommandOutput, +} from "./commands/ListDataAccessorsCommand"; import { ListDataSourcesCommand, ListDataSourcesCommandInput, @@ -146,7 +177,22 @@ import { ListMessagesCommandInput, ListMessagesCommandOutput, } from "./commands/ListMessagesCommand"; +import { + ListPluginActionsCommand, + ListPluginActionsCommandInput, + ListPluginActionsCommandOutput, +} from "./commands/ListPluginActionsCommand"; import { ListPluginsCommand, ListPluginsCommandInput, ListPluginsCommandOutput } from "./commands/ListPluginsCommand"; +import { + ListPluginTypeActionsCommand, + ListPluginTypeActionsCommandInput, + ListPluginTypeActionsCommandOutput, +} from "./commands/ListPluginTypeActionsCommand"; +import { + ListPluginTypeMetadataCommand, + ListPluginTypeMetadataCommandInput, + ListPluginTypeMetadataCommandOutput, +} from "./commands/ListPluginTypeMetadataCommand"; import { ListRetrieversCommand, ListRetrieversCommandInput, @@ -164,6 +210,11 @@ import { } from "./commands/ListWebExperiencesCommand"; import { PutFeedbackCommand, PutFeedbackCommandInput, PutFeedbackCommandOutput } from "./commands/PutFeedbackCommand"; import { PutGroupCommand, PutGroupCommandInput, PutGroupCommandOutput } from "./commands/PutGroupCommand"; +import { + SearchRelevantContentCommand, + SearchRelevantContentCommandInput, + SearchRelevantContentCommandOutput, +} from "./commands/SearchRelevantContentCommand"; import { StartDataSourceSyncJobCommand, StartDataSourceSyncJobCommandInput, @@ -190,6 +241,11 @@ import { UpdateChatControlsConfigurationCommandInput, UpdateChatControlsConfigurationCommandOutput, } from "./commands/UpdateChatControlsConfigurationCommand"; +import { + UpdateDataAccessorCommand, + UpdateDataAccessorCommandInput, + UpdateDataAccessorCommandOutput, +} from "./commands/UpdateDataAccessorCommand"; import { UpdateDataSourceCommand, UpdateDataSourceCommandInput, @@ -215,11 +271,13 @@ import { import { QBusinessClient, QBusinessClientConfig } from "./QBusinessClient"; const commands = { + AssociatePermissionCommand, BatchDeleteDocumentCommand, BatchPutDocumentCommand, ChatCommand, ChatSyncCommand, CreateApplicationCommand, + CreateDataAccessorCommand, CreateDataSourceCommand, CreateIndexCommand, CreatePluginCommand, @@ -229,6 +287,7 @@ const commands = { DeleteApplicationCommand, DeleteChatControlsConfigurationCommand, DeleteConversationCommand, + DeleteDataAccessorCommand, DeleteDataSourceCommand, DeleteGroupCommand, DeleteIndexCommand, @@ -236,37 +295,46 @@ const commands = { DeleteRetrieverCommand, DeleteUserCommand, DeleteWebExperienceCommand, + DisassociatePermissionCommand, GetApplicationCommand, GetChatControlsConfigurationCommand, + GetDataAccessorCommand, GetDataSourceCommand, GetGroupCommand, GetIndexCommand, GetMediaCommand, GetPluginCommand, + GetPolicyCommand, GetRetrieverCommand, GetUserCommand, GetWebExperienceCommand, ListApplicationsCommand, ListAttachmentsCommand, ListConversationsCommand, + ListDataAccessorsCommand, ListDataSourcesCommand, ListDataSourceSyncJobsCommand, ListDocumentsCommand, ListGroupsCommand, ListIndicesCommand, ListMessagesCommand, + ListPluginActionsCommand, ListPluginsCommand, + ListPluginTypeActionsCommand, + ListPluginTypeMetadataCommand, ListRetrieversCommand, ListTagsForResourceCommand, ListWebExperiencesCommand, PutFeedbackCommand, PutGroupCommand, + SearchRelevantContentCommand, StartDataSourceSyncJobCommand, StopDataSourceSyncJobCommand, TagResourceCommand, UntagResourceCommand, UpdateApplicationCommand, UpdateChatControlsConfigurationCommand, + UpdateDataAccessorCommand, UpdateDataSourceCommand, UpdateIndexCommand, UpdatePluginCommand, @@ -276,6 +344,23 @@ const commands = { }; export interface QBusiness { + /** + * @see {@link AssociatePermissionCommand} + */ + associatePermission( + args: AssociatePermissionCommandInput, + options?: __HttpHandlerOptions + ): Promise; + associatePermission( + args: AssociatePermissionCommandInput, + cb: (err: any, data?: AssociatePermissionCommandOutput) => void + ): void; + associatePermission( + args: AssociatePermissionCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: AssociatePermissionCommandOutput) => void + ): void; + /** * @see {@link BatchDeleteDocumentCommand} */ @@ -345,6 +430,23 @@ export interface QBusiness { cb: (err: any, data?: CreateApplicationCommandOutput) => void ): void; + /** + * @see {@link CreateDataAccessorCommand} + */ + createDataAccessor( + args: CreateDataAccessorCommandInput, + options?: __HttpHandlerOptions + ): Promise; + createDataAccessor( + args: CreateDataAccessorCommandInput, + cb: (err: any, data?: CreateDataAccessorCommandOutput) => void + ): void; + createDataAccessor( + args: CreateDataAccessorCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: CreateDataAccessorCommandOutput) => void + ): void; + /** * @see {@link CreateDataSourceCommand} */ @@ -477,6 +579,23 @@ export interface QBusiness { cb: (err: any, data?: DeleteConversationCommandOutput) => void ): void; + /** + * @see {@link DeleteDataAccessorCommand} + */ + deleteDataAccessor( + args: DeleteDataAccessorCommandInput, + options?: __HttpHandlerOptions + ): Promise; + deleteDataAccessor( + args: DeleteDataAccessorCommandInput, + cb: (err: any, data?: DeleteDataAccessorCommandOutput) => void + ): void; + deleteDataAccessor( + args: DeleteDataAccessorCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: DeleteDataAccessorCommandOutput) => void + ): void; + /** * @see {@link DeleteDataSourceCommand} */ @@ -569,6 +688,23 @@ export interface QBusiness { cb: (err: any, data?: DeleteWebExperienceCommandOutput) => void ): void; + /** + * @see {@link DisassociatePermissionCommand} + */ + disassociatePermission( + args: DisassociatePermissionCommandInput, + options?: __HttpHandlerOptions + ): Promise; + disassociatePermission( + args: DisassociatePermissionCommandInput, + cb: (err: any, data?: DisassociatePermissionCommandOutput) => void + ): void; + disassociatePermission( + args: DisassociatePermissionCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: DisassociatePermissionCommandOutput) => void + ): void; + /** * @see {@link GetApplicationCommand} */ @@ -600,6 +736,20 @@ export interface QBusiness { cb: (err: any, data?: GetChatControlsConfigurationCommandOutput) => void ): void; + /** + * @see {@link GetDataAccessorCommand} + */ + getDataAccessor( + args: GetDataAccessorCommandInput, + options?: __HttpHandlerOptions + ): Promise; + getDataAccessor(args: GetDataAccessorCommandInput, cb: (err: any, data?: GetDataAccessorCommandOutput) => void): void; + getDataAccessor( + args: GetDataAccessorCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: GetDataAccessorCommandOutput) => void + ): void; + /** * @see {@link GetDataSourceCommand} */ @@ -655,6 +805,17 @@ export interface QBusiness { cb: (err: any, data?: GetPluginCommandOutput) => void ): void; + /** + * @see {@link GetPolicyCommand} + */ + getPolicy(args: GetPolicyCommandInput, options?: __HttpHandlerOptions): Promise; + getPolicy(args: GetPolicyCommandInput, cb: (err: any, data?: GetPolicyCommandOutput) => void): void; + getPolicy( + args: GetPolicyCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: GetPolicyCommandOutput) => void + ): void; + /** * @see {@link GetRetrieverCommand} */ @@ -743,6 +904,23 @@ export interface QBusiness { cb: (err: any, data?: ListConversationsCommandOutput) => void ): void; + /** + * @see {@link ListDataAccessorsCommand} + */ + listDataAccessors( + args: ListDataAccessorsCommandInput, + options?: __HttpHandlerOptions + ): Promise; + listDataAccessors( + args: ListDataAccessorsCommandInput, + cb: (err: any, data?: ListDataAccessorsCommandOutput) => void + ): void; + listDataAccessors( + args: ListDataAccessorsCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: ListDataAccessorsCommandOutput) => void + ): void; + /** * @see {@link ListDataSourcesCommand} */ @@ -818,6 +996,23 @@ export interface QBusiness { cb: (err: any, data?: ListMessagesCommandOutput) => void ): void; + /** + * @see {@link ListPluginActionsCommand} + */ + listPluginActions( + args: ListPluginActionsCommandInput, + options?: __HttpHandlerOptions + ): Promise; + listPluginActions( + args: ListPluginActionsCommandInput, + cb: (err: any, data?: ListPluginActionsCommandOutput) => void + ): void; + listPluginActions( + args: ListPluginActionsCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: ListPluginActionsCommandOutput) => void + ): void; + /** * @see {@link ListPluginsCommand} */ @@ -829,6 +1024,41 @@ export interface QBusiness { cb: (err: any, data?: ListPluginsCommandOutput) => void ): void; + /** + * @see {@link ListPluginTypeActionsCommand} + */ + listPluginTypeActions( + args: ListPluginTypeActionsCommandInput, + options?: __HttpHandlerOptions + ): Promise; + listPluginTypeActions( + args: ListPluginTypeActionsCommandInput, + cb: (err: any, data?: ListPluginTypeActionsCommandOutput) => void + ): void; + listPluginTypeActions( + args: ListPluginTypeActionsCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: ListPluginTypeActionsCommandOutput) => void + ): void; + + /** + * @see {@link ListPluginTypeMetadataCommand} + */ + listPluginTypeMetadata(): Promise; + listPluginTypeMetadata( + args: ListPluginTypeMetadataCommandInput, + options?: __HttpHandlerOptions + ): Promise; + listPluginTypeMetadata( + args: ListPluginTypeMetadataCommandInput, + cb: (err: any, data?: ListPluginTypeMetadataCommandOutput) => void + ): void; + listPluginTypeMetadata( + args: ListPluginTypeMetadataCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: ListPluginTypeMetadataCommandOutput) => void + ): void; + /** * @see {@link ListRetrieversCommand} */ @@ -899,6 +1129,23 @@ export interface QBusiness { cb: (err: any, data?: PutGroupCommandOutput) => void ): void; + /** + * @see {@link SearchRelevantContentCommand} + */ + searchRelevantContent( + args: SearchRelevantContentCommandInput, + options?: __HttpHandlerOptions + ): Promise; + searchRelevantContent( + args: SearchRelevantContentCommandInput, + cb: (err: any, data?: SearchRelevantContentCommandOutput) => void + ): void; + searchRelevantContent( + args: SearchRelevantContentCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: SearchRelevantContentCommandOutput) => void + ): void; + /** * @see {@link StartDataSourceSyncJobCommand} */ @@ -989,6 +1236,23 @@ export interface QBusiness { cb: (err: any, data?: UpdateChatControlsConfigurationCommandOutput) => void ): void; + /** + * @see {@link UpdateDataAccessorCommand} + */ + updateDataAccessor( + args: UpdateDataAccessorCommandInput, + options?: __HttpHandlerOptions + ): Promise; + updateDataAccessor( + args: UpdateDataAccessorCommandInput, + cb: (err: any, data?: UpdateDataAccessorCommandOutput) => void + ): void; + updateDataAccessor( + args: UpdateDataAccessorCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: UpdateDataAccessorCommandOutput) => void + ): void; + /** * @see {@link UpdateDataSourceCommand} */ diff --git a/clients/client-qbusiness/src/QBusinessClient.ts b/clients/client-qbusiness/src/QBusinessClient.ts index 8f913a8b58b9..d08735bbc81b 100644 --- a/clients/client-qbusiness/src/QBusinessClient.ts +++ b/clients/client-qbusiness/src/QBusinessClient.ts @@ -65,6 +65,10 @@ import { HttpAuthSchemeResolvedConfig, resolveHttpAuthSchemeConfig, } from "./auth/httpAuthSchemeProvider"; +import { + AssociatePermissionCommandInput, + AssociatePermissionCommandOutput, +} from "./commands/AssociatePermissionCommand"; import { BatchDeleteDocumentCommandInput, BatchDeleteDocumentCommandOutput, @@ -73,6 +77,7 @@ import { BatchPutDocumentCommandInput, BatchPutDocumentCommandOutput } from "./c import { ChatCommandInput, ChatCommandOutput } from "./commands/ChatCommand"; import { ChatSyncCommandInput, ChatSyncCommandOutput } from "./commands/ChatSyncCommand"; import { CreateApplicationCommandInput, CreateApplicationCommandOutput } from "./commands/CreateApplicationCommand"; +import { CreateDataAccessorCommandInput, CreateDataAccessorCommandOutput } from "./commands/CreateDataAccessorCommand"; import { CreateDataSourceCommandInput, CreateDataSourceCommandOutput } from "./commands/CreateDataSourceCommand"; import { CreateIndexCommandInput, CreateIndexCommandOutput } from "./commands/CreateIndexCommand"; import { CreatePluginCommandInput, CreatePluginCommandOutput } from "./commands/CreatePluginCommand"; @@ -88,6 +93,7 @@ import { DeleteChatControlsConfigurationCommandOutput, } from "./commands/DeleteChatControlsConfigurationCommand"; import { DeleteConversationCommandInput, DeleteConversationCommandOutput } from "./commands/DeleteConversationCommand"; +import { DeleteDataAccessorCommandInput, DeleteDataAccessorCommandOutput } from "./commands/DeleteDataAccessorCommand"; import { DeleteDataSourceCommandInput, DeleteDataSourceCommandOutput } from "./commands/DeleteDataSourceCommand"; import { DeleteGroupCommandInput, DeleteGroupCommandOutput } from "./commands/DeleteGroupCommand"; import { DeleteIndexCommandInput, DeleteIndexCommandOutput } from "./commands/DeleteIndexCommand"; @@ -98,22 +104,29 @@ import { DeleteWebExperienceCommandInput, DeleteWebExperienceCommandOutput, } from "./commands/DeleteWebExperienceCommand"; +import { + DisassociatePermissionCommandInput, + DisassociatePermissionCommandOutput, +} from "./commands/DisassociatePermissionCommand"; import { GetApplicationCommandInput, GetApplicationCommandOutput } from "./commands/GetApplicationCommand"; import { GetChatControlsConfigurationCommandInput, GetChatControlsConfigurationCommandOutput, } from "./commands/GetChatControlsConfigurationCommand"; +import { GetDataAccessorCommandInput, GetDataAccessorCommandOutput } from "./commands/GetDataAccessorCommand"; import { GetDataSourceCommandInput, GetDataSourceCommandOutput } from "./commands/GetDataSourceCommand"; import { GetGroupCommandInput, GetGroupCommandOutput } from "./commands/GetGroupCommand"; import { GetIndexCommandInput, GetIndexCommandOutput } from "./commands/GetIndexCommand"; import { GetMediaCommandInput, GetMediaCommandOutput } from "./commands/GetMediaCommand"; import { GetPluginCommandInput, GetPluginCommandOutput } from "./commands/GetPluginCommand"; +import { GetPolicyCommandInput, GetPolicyCommandOutput } from "./commands/GetPolicyCommand"; import { GetRetrieverCommandInput, GetRetrieverCommandOutput } from "./commands/GetRetrieverCommand"; import { GetUserCommandInput, GetUserCommandOutput } from "./commands/GetUserCommand"; import { GetWebExperienceCommandInput, GetWebExperienceCommandOutput } from "./commands/GetWebExperienceCommand"; import { ListApplicationsCommandInput, ListApplicationsCommandOutput } from "./commands/ListApplicationsCommand"; import { ListAttachmentsCommandInput, ListAttachmentsCommandOutput } from "./commands/ListAttachmentsCommand"; import { ListConversationsCommandInput, ListConversationsCommandOutput } from "./commands/ListConversationsCommand"; +import { ListDataAccessorsCommandInput, ListDataAccessorsCommandOutput } from "./commands/ListDataAccessorsCommand"; import { ListDataSourcesCommandInput, ListDataSourcesCommandOutput } from "./commands/ListDataSourcesCommand"; import { ListDataSourceSyncJobsCommandInput, @@ -123,7 +136,16 @@ import { ListDocumentsCommandInput, ListDocumentsCommandOutput } from "./command import { ListGroupsCommandInput, ListGroupsCommandOutput } from "./commands/ListGroupsCommand"; import { ListIndicesCommandInput, ListIndicesCommandOutput } from "./commands/ListIndicesCommand"; import { ListMessagesCommandInput, ListMessagesCommandOutput } from "./commands/ListMessagesCommand"; +import { ListPluginActionsCommandInput, ListPluginActionsCommandOutput } from "./commands/ListPluginActionsCommand"; import { ListPluginsCommandInput, ListPluginsCommandOutput } from "./commands/ListPluginsCommand"; +import { + ListPluginTypeActionsCommandInput, + ListPluginTypeActionsCommandOutput, +} from "./commands/ListPluginTypeActionsCommand"; +import { + ListPluginTypeMetadataCommandInput, + ListPluginTypeMetadataCommandOutput, +} from "./commands/ListPluginTypeMetadataCommand"; import { ListRetrieversCommandInput, ListRetrieversCommandOutput } from "./commands/ListRetrieversCommand"; import { ListTagsForResourceCommandInput, @@ -132,6 +154,10 @@ import { import { ListWebExperiencesCommandInput, ListWebExperiencesCommandOutput } from "./commands/ListWebExperiencesCommand"; import { PutFeedbackCommandInput, PutFeedbackCommandOutput } from "./commands/PutFeedbackCommand"; import { PutGroupCommandInput, PutGroupCommandOutput } from "./commands/PutGroupCommand"; +import { + SearchRelevantContentCommandInput, + SearchRelevantContentCommandOutput, +} from "./commands/SearchRelevantContentCommand"; import { StartDataSourceSyncJobCommandInput, StartDataSourceSyncJobCommandOutput, @@ -147,6 +173,7 @@ import { UpdateChatControlsConfigurationCommandInput, UpdateChatControlsConfigurationCommandOutput, } from "./commands/UpdateChatControlsConfigurationCommand"; +import { UpdateDataAccessorCommandInput, UpdateDataAccessorCommandOutput } from "./commands/UpdateDataAccessorCommand"; import { UpdateDataSourceCommandInput, UpdateDataSourceCommandOutput } from "./commands/UpdateDataSourceCommand"; import { UpdateIndexCommandInput, UpdateIndexCommandOutput } from "./commands/UpdateIndexCommand"; import { UpdatePluginCommandInput, UpdatePluginCommandOutput } from "./commands/UpdatePluginCommand"; @@ -171,11 +198,13 @@ export { __Client }; * @public */ export type ServiceInputTypes = + | AssociatePermissionCommandInput | BatchDeleteDocumentCommandInput | BatchPutDocumentCommandInput | ChatCommandInput | ChatSyncCommandInput | CreateApplicationCommandInput + | CreateDataAccessorCommandInput | CreateDataSourceCommandInput | CreateIndexCommandInput | CreatePluginCommandInput @@ -185,6 +214,7 @@ export type ServiceInputTypes = | DeleteApplicationCommandInput | DeleteChatControlsConfigurationCommandInput | DeleteConversationCommandInput + | DeleteDataAccessorCommandInput | DeleteDataSourceCommandInput | DeleteGroupCommandInput | DeleteIndexCommandInput @@ -192,37 +222,46 @@ export type ServiceInputTypes = | DeleteRetrieverCommandInput | DeleteUserCommandInput | DeleteWebExperienceCommandInput + | DisassociatePermissionCommandInput | GetApplicationCommandInput | GetChatControlsConfigurationCommandInput + | GetDataAccessorCommandInput | GetDataSourceCommandInput | GetGroupCommandInput | GetIndexCommandInput | GetMediaCommandInput | GetPluginCommandInput + | GetPolicyCommandInput | GetRetrieverCommandInput | GetUserCommandInput | GetWebExperienceCommandInput | ListApplicationsCommandInput | ListAttachmentsCommandInput | ListConversationsCommandInput + | ListDataAccessorsCommandInput | ListDataSourceSyncJobsCommandInput | ListDataSourcesCommandInput | ListDocumentsCommandInput | ListGroupsCommandInput | ListIndicesCommandInput | ListMessagesCommandInput + | ListPluginActionsCommandInput + | ListPluginTypeActionsCommandInput + | ListPluginTypeMetadataCommandInput | ListPluginsCommandInput | ListRetrieversCommandInput | ListTagsForResourceCommandInput | ListWebExperiencesCommandInput | PutFeedbackCommandInput | PutGroupCommandInput + | SearchRelevantContentCommandInput | StartDataSourceSyncJobCommandInput | StopDataSourceSyncJobCommandInput | TagResourceCommandInput | UntagResourceCommandInput | UpdateApplicationCommandInput | UpdateChatControlsConfigurationCommandInput + | UpdateDataAccessorCommandInput | UpdateDataSourceCommandInput | UpdateIndexCommandInput | UpdatePluginCommandInput @@ -234,11 +273,13 @@ export type ServiceInputTypes = * @public */ export type ServiceOutputTypes = + | AssociatePermissionCommandOutput | BatchDeleteDocumentCommandOutput | BatchPutDocumentCommandOutput | ChatCommandOutput | ChatSyncCommandOutput | CreateApplicationCommandOutput + | CreateDataAccessorCommandOutput | CreateDataSourceCommandOutput | CreateIndexCommandOutput | CreatePluginCommandOutput @@ -248,6 +289,7 @@ export type ServiceOutputTypes = | DeleteApplicationCommandOutput | DeleteChatControlsConfigurationCommandOutput | DeleteConversationCommandOutput + | DeleteDataAccessorCommandOutput | DeleteDataSourceCommandOutput | DeleteGroupCommandOutput | DeleteIndexCommandOutput @@ -255,37 +297,46 @@ export type ServiceOutputTypes = | DeleteRetrieverCommandOutput | DeleteUserCommandOutput | DeleteWebExperienceCommandOutput + | DisassociatePermissionCommandOutput | GetApplicationCommandOutput | GetChatControlsConfigurationCommandOutput + | GetDataAccessorCommandOutput | GetDataSourceCommandOutput | GetGroupCommandOutput | GetIndexCommandOutput | GetMediaCommandOutput | GetPluginCommandOutput + | GetPolicyCommandOutput | GetRetrieverCommandOutput | GetUserCommandOutput | GetWebExperienceCommandOutput | ListApplicationsCommandOutput | ListAttachmentsCommandOutput | ListConversationsCommandOutput + | ListDataAccessorsCommandOutput | ListDataSourceSyncJobsCommandOutput | ListDataSourcesCommandOutput | ListDocumentsCommandOutput | ListGroupsCommandOutput | ListIndicesCommandOutput | ListMessagesCommandOutput + | ListPluginActionsCommandOutput + | ListPluginTypeActionsCommandOutput + | ListPluginTypeMetadataCommandOutput | ListPluginsCommandOutput | ListRetrieversCommandOutput | ListTagsForResourceCommandOutput | ListWebExperiencesCommandOutput | PutFeedbackCommandOutput | PutGroupCommandOutput + | SearchRelevantContentCommandOutput | StartDataSourceSyncJobCommandOutput | StopDataSourceSyncJobCommandOutput | TagResourceCommandOutput | UntagResourceCommandOutput | UpdateApplicationCommandOutput | UpdateChatControlsConfigurationCommandOutput + | UpdateDataAccessorCommandOutput | UpdateDataSourceCommandOutput | UpdateIndexCommandOutput | UpdatePluginCommandOutput diff --git a/clients/client-qbusiness/src/commands/AssociatePermissionCommand.ts b/clients/client-qbusiness/src/commands/AssociatePermissionCommand.ts new file mode 100644 index 000000000000..9024c870743c --- /dev/null +++ b/clients/client-qbusiness/src/commands/AssociatePermissionCommand.ts @@ -0,0 +1,126 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { commonParams } from "../endpoint/EndpointParameters"; +import { AssociatePermissionRequest, AssociatePermissionResponse } from "../models/models_0"; +import { de_AssociatePermissionCommand, se_AssociatePermissionCommand } from "../protocols/Aws_restJson1"; +import { QBusinessClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../QBusinessClient"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link AssociatePermissionCommand}. + */ +export interface AssociatePermissionCommandInput extends AssociatePermissionRequest {} +/** + * @public + * + * The output of {@link AssociatePermissionCommand}. + */ +export interface AssociatePermissionCommandOutput extends AssociatePermissionResponse, __MetadataBearer {} + +/** + *

Adds or updates a permission policy for a Q Business application, allowing cross-account access for an ISV. + * This operation creates a new policy statement for the specified Q Business application. + * The policy statement defines the IAM actions that the ISV is allowed to perform on the Q Business application's resources.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { QBusinessClient, AssociatePermissionCommand } from "@aws-sdk/client-qbusiness"; // ES Modules import + * // const { QBusinessClient, AssociatePermissionCommand } = require("@aws-sdk/client-qbusiness"); // CommonJS import + * const client = new QBusinessClient(config); + * const input = { // AssociatePermissionRequest + * applicationId: "STRING_VALUE", // required + * statementId: "STRING_VALUE", // required + * actions: [ // QIamActions // required + * "STRING_VALUE", + * ], + * principal: "STRING_VALUE", // required + * }; + * const command = new AssociatePermissionCommand(input); + * const response = await client.send(command); + * // { // AssociatePermissionResponse + * // statement: "STRING_VALUE", + * // }; + * + * ``` + * + * @param AssociatePermissionCommandInput - {@link AssociatePermissionCommandInput} + * @returns {@link AssociatePermissionCommandOutput} + * @see {@link AssociatePermissionCommandInput} for command's `input` shape. + * @see {@link AssociatePermissionCommandOutput} for command's `response` shape. + * @see {@link QBusinessClientResolvedConfig | config} for QBusinessClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

You don't have access to perform this action. Make sure you have the required + * permission policies and user accounts and try again.

+ * + * @throws {@link ConflictException} (client fault) + *

You are trying to perform an action that conflicts with the current status of your + * resource. Fix any inconsistencies with your resources and try again.

+ * + * @throws {@link InternalServerException} (server fault) + *

An issue occurred with the internal server used for your Amazon Q Business service. Wait + * some minutes and try again, or contact Support for help.

+ * + * @throws {@link ResourceNotFoundException} (client fault) + *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

+ * + * @throws {@link ServiceQuotaExceededException} (client fault) + *

You have exceeded the set limits for your Amazon Q Business service.

+ * + * @throws {@link ThrottlingException} (client fault) + *

The request was denied due to throttling. Reduce the number of requests and try + * again.

+ * + * @throws {@link ValidationException} (client fault) + *

The input doesn't meet the constraints set by the Amazon Q Business service. Provide the + * correct input and try again.

+ * + * @throws {@link QBusinessServiceException} + *

Base exception class for all service exceptions from QBusiness service.

+ * + * @public + */ +export class AssociatePermissionCommand extends $Command + .classBuilder< + AssociatePermissionCommandInput, + AssociatePermissionCommandOutput, + QBusinessClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep(commonParams) + .m(function (this: any, Command: any, cs: any, config: QBusinessClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("ExpertQ", "AssociatePermission", {}) + .n("QBusinessClient", "AssociatePermissionCommand") + .f(void 0, void 0) + .ser(se_AssociatePermissionCommand) + .de(de_AssociatePermissionCommand) + .build() { + /** @internal type navigation helper, not in runtime. */ + protected declare static __types: { + api: { + input: AssociatePermissionRequest; + output: AssociatePermissionResponse; + }; + sdk: { + input: AssociatePermissionCommandInput; + output: AssociatePermissionCommandOutput; + }; + }; +} diff --git a/clients/client-qbusiness/src/commands/BatchDeleteDocumentCommand.ts b/clients/client-qbusiness/src/commands/BatchDeleteDocumentCommand.ts index a59c532652c8..454331859ca9 100644 --- a/clients/client-qbusiness/src/commands/BatchDeleteDocumentCommand.ts +++ b/clients/client-qbusiness/src/commands/BatchDeleteDocumentCommand.ts @@ -84,8 +84,8 @@ export interface BatchDeleteDocumentCommandOutput extends BatchDeleteDocumentRes * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ThrottlingException} (client fault) *

The request was denied due to throttling. Reduce the number of requests and try diff --git a/clients/client-qbusiness/src/commands/BatchPutDocumentCommand.ts b/clients/client-qbusiness/src/commands/BatchPutDocumentCommand.ts index 1fa946171456..0004b4b98e15 100644 --- a/clients/client-qbusiness/src/commands/BatchPutDocumentCommand.ts +++ b/clients/client-qbusiness/src/commands/BatchPutDocumentCommand.ts @@ -198,8 +198,8 @@ export interface BatchPutDocumentCommandOutput extends BatchPutDocumentResponse, * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ServiceQuotaExceededException} (client fault) *

You have exceeded the set limits for your Amazon Q Business service.

diff --git a/clients/client-qbusiness/src/commands/ChatCommand.ts b/clients/client-qbusiness/src/commands/ChatCommand.ts index b22b65f85359..50943efc4b3b 100644 --- a/clients/client-qbusiness/src/commands/ChatCommand.ts +++ b/clients/client-qbusiness/src/commands/ChatCommand.ts @@ -6,7 +6,8 @@ import { Command as $Command } from "@smithy/smithy-client"; import { MetadataBearer as __MetadataBearer } from "@smithy/types"; import { commonParams } from "../endpoint/EndpointParameters"; -import { ChatInput, ChatInputFilterSensitiveLog, ChatOutput, ChatOutputFilterSensitiveLog } from "../models/models_0"; +import { ChatOutput, ChatOutputFilterSensitiveLog } from "../models/models_0"; +import { ChatInput, ChatInputFilterSensitiveLog } from "../models/models_1"; import { de_ChatCommand, se_ChatCommand } from "../protocols/Aws_restJson1"; import { QBusinessClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../QBusinessClient"; @@ -208,7 +209,7 @@ export interface ChatCommandOutput extends ChatOutput, __MetadataBearer {} * // userMessageId: "STRING_VALUE", * // systemMessageId: "STRING_VALUE", * // pluginId: "STRING_VALUE", - * // pluginType: "SERVICE_NOW" || "SALESFORCE" || "JIRA" || "ZENDESK" || "CUSTOM", + * // pluginType: "SERVICE_NOW" || "SALESFORCE" || "JIRA" || "ZENDESK" || "CUSTOM" || "QUICKSIGHT" || "SERVICENOW_NOW_PLATFORM" || "JIRA_CLOUD" || "SALESFORCE_CRM" || "ZENDESK_SUITE" || "ATLASSIAN_CONFLUENCE" || "GOOGLE_CALENDAR" || "MICROSOFT_TEAMS" || "MICROSOFT_EXCHANGE" || "PAGERDUTY_ADVANCE" || "SMARTSHEET" || "ASANA", * // payload: { // ActionReviewPayload * // "": { // ActionReviewPayloadField * // displayName: "STRING_VALUE", @@ -280,8 +281,8 @@ export interface ChatCommandOutput extends ChatOutput, __MetadataBearer {} * your admin to activate your license and try again after your licence is active.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ThrottlingException} (client fault) *

The request was denied due to throttling. Reduce the number of requests and try diff --git a/clients/client-qbusiness/src/commands/ChatSyncCommand.ts b/clients/client-qbusiness/src/commands/ChatSyncCommand.ts index 87c5c169423e..dc8f5735fac7 100644 --- a/clients/client-qbusiness/src/commands/ChatSyncCommand.ts +++ b/clients/client-qbusiness/src/commands/ChatSyncCommand.ts @@ -5,7 +5,8 @@ import { Command as $Command } from "@smithy/smithy-client"; import { MetadataBearer as __MetadataBearer } from "@smithy/types"; import { commonParams } from "../endpoint/EndpointParameters"; -import { ChatSyncInput, ChatSyncOutput } from "../models/models_0"; +import { ChatSyncOutput } from "../models/models_0"; +import { ChatSyncInput } from "../models/models_1"; import { de_ChatSyncCommand, se_ChatSyncCommand } from "../protocols/Aws_restJson1"; import { QBusinessClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../QBusinessClient"; @@ -168,7 +169,7 @@ export interface ChatSyncCommandOutput extends ChatSyncOutput, __MetadataBearer * // userMessageId: "STRING_VALUE", * // actionReview: { // ActionReview * // pluginId: "STRING_VALUE", - * // pluginType: "SERVICE_NOW" || "SALESFORCE" || "JIRA" || "ZENDESK" || "CUSTOM", + * // pluginType: "SERVICE_NOW" || "SALESFORCE" || "JIRA" || "ZENDESK" || "CUSTOM" || "QUICKSIGHT" || "SERVICENOW_NOW_PLATFORM" || "JIRA_CLOUD" || "SALESFORCE_CRM" || "ZENDESK_SUITE" || "ATLASSIAN_CONFLUENCE" || "GOOGLE_CALENDAR" || "MICROSOFT_TEAMS" || "MICROSOFT_EXCHANGE" || "PAGERDUTY_ADVANCE" || "SMARTSHEET" || "ASANA", * // payload: { // ActionReviewPayload * // "": { // ActionReviewPayloadField * // displayName: "STRING_VALUE", @@ -256,8 +257,8 @@ export interface ChatSyncCommandOutput extends ChatSyncOutput, __MetadataBearer * your admin to activate your license and try again after your licence is active.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ThrottlingException} (client fault) *

The request was denied due to throttling. Reduce the number of requests and try diff --git a/clients/client-qbusiness/src/commands/CreateApplicationCommand.ts b/clients/client-qbusiness/src/commands/CreateApplicationCommand.ts index 0c670cc08616..d0b10a236120 100644 --- a/clients/client-qbusiness/src/commands/CreateApplicationCommand.ts +++ b/clients/client-qbusiness/src/commands/CreateApplicationCommand.ts @@ -56,7 +56,7 @@ export interface CreateApplicationCommandOutput extends CreateApplicationRespons * const input = { // CreateApplicationRequest * displayName: "STRING_VALUE", // required * roleArn: "STRING_VALUE", - * identityType: "AWS_IAM_IDP_SAML" || "AWS_IAM_IDP_OIDC" || "AWS_IAM_IDC", + * identityType: "AWS_IAM_IDP_SAML" || "AWS_IAM_IDP_OIDC" || "AWS_IAM_IDC" || "AWS_QUICKSIGHT_IDP", * iamIdentityProviderArn: "STRING_VALUE", * identityCenterInstanceArn: "STRING_VALUE", * clientIdsForOIDC: [ // ClientIdsForOIDC @@ -82,6 +82,9 @@ export interface CreateApplicationCommandOutput extends CreateApplicationRespons * personalizationConfiguration: { // PersonalizationConfiguration * personalizationControlMode: "ENABLED" || "DISABLED", // required * }, + * quickSightConfiguration: { // QuickSightConfiguration + * clientNamespace: "STRING_VALUE", // required + * }, * }; * const command = new CreateApplicationCommand(input); * const response = await client.send(command); @@ -111,8 +114,8 @@ export interface CreateApplicationCommandOutput extends CreateApplicationRespons * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ServiceQuotaExceededException} (client fault) *

You have exceeded the set limits for your Amazon Q Business service.

diff --git a/clients/client-qbusiness/src/commands/CreateDataAccessorCommand.ts b/clients/client-qbusiness/src/commands/CreateDataAccessorCommand.ts new file mode 100644 index 000000000000..e22867c09728 --- /dev/null +++ b/clients/client-qbusiness/src/commands/CreateDataAccessorCommand.ts @@ -0,0 +1,224 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { commonParams } from "../endpoint/EndpointParameters"; +import { CreateDataAccessorResponse } from "../models/models_0"; +import { CreateDataAccessorRequest, CreateDataAccessorRequestFilterSensitiveLog } from "../models/models_1"; +import { de_CreateDataAccessorCommand, se_CreateDataAccessorCommand } from "../protocols/Aws_restJson1"; +import { QBusinessClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../QBusinessClient"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link CreateDataAccessorCommand}. + */ +export interface CreateDataAccessorCommandInput extends CreateDataAccessorRequest {} +/** + * @public + * + * The output of {@link CreateDataAccessorCommand}. + */ +export interface CreateDataAccessorCommandOutput extends CreateDataAccessorResponse, __MetadataBearer {} + +/** + *

Creates a new data accessor for an ISV to access data from a Q Business application. + * The data accessor is an entity that represents the ISV's access to the Q Business application's data. + * It includes the IAM role ARN for the ISV, a friendly name, and a set of action configurations that define the + * specific actions the ISV is allowed to perform and any associated data filters. When the data accessor is created, + * an AWS IAM Identity Center application is also created to manage the ISV's identity and authentication for + * accessing the Q Business application.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { QBusinessClient, CreateDataAccessorCommand } from "@aws-sdk/client-qbusiness"; // ES Modules import + * // const { QBusinessClient, CreateDataAccessorCommand } = require("@aws-sdk/client-qbusiness"); // CommonJS import + * const client = new QBusinessClient(config); + * const input = { // CreateDataAccessorRequest + * applicationId: "STRING_VALUE", // required + * principal: "STRING_VALUE", // required + * actionConfigurations: [ // ActionConfigurationList // required + * { // ActionConfiguration + * action: "STRING_VALUE", // required + * filterConfiguration: { // ActionFilterConfiguration + * documentAttributeFilter: { // AttributeFilter + * andAllFilters: [ // AttributeFilters + * { + * andAllFilters: [ + * "", + * ], + * orAllFilters: [ + * "", + * ], + * notFilter: "", + * equalsTo: { // DocumentAttribute + * name: "STRING_VALUE", // required + * value: { // DocumentAttributeValue Union: only one key present + * stringValue: "STRING_VALUE", + * stringListValue: [ // DocumentAttributeStringListValue + * "STRING_VALUE", + * ], + * longValue: Number("long"), + * dateValue: new Date("TIMESTAMP"), + * }, + * }, + * containsAll: { + * name: "STRING_VALUE", // required + * value: {// Union: only one key present + * stringValue: "STRING_VALUE", + * stringListValue: [ + * "STRING_VALUE", + * ], + * longValue: Number("long"), + * dateValue: new Date("TIMESTAMP"), + * }, + * }, + * containsAny: { + * name: "STRING_VALUE", // required + * value: {// Union: only one key present + * stringValue: "STRING_VALUE", + * stringListValue: [ + * "STRING_VALUE", + * ], + * longValue: Number("long"), + * dateValue: new Date("TIMESTAMP"), + * }, + * }, + * greaterThan: { + * name: "STRING_VALUE", // required + * value: {// Union: only one key present + * stringValue: "STRING_VALUE", + * stringListValue: [ + * "STRING_VALUE", + * ], + * longValue: Number("long"), + * dateValue: new Date("TIMESTAMP"), + * }, + * }, + * greaterThanOrEquals: { + * name: "STRING_VALUE", // required + * value: {// Union: only one key present + * stringValue: "STRING_VALUE", + * stringListValue: [ + * "STRING_VALUE", + * ], + * longValue: Number("long"), + * dateValue: new Date("TIMESTAMP"), + * }, + * }, + * lessThan: "", + * lessThanOrEquals: "", + * }, + * ], + * orAllFilters: [ + * "", + * ], + * notFilter: "", + * equalsTo: "", + * containsAll: "", + * containsAny: "", + * greaterThan: "", + * greaterThanOrEquals: "", + * lessThan: "", + * lessThanOrEquals: "", + * }, + * }, + * }, + * ], + * clientToken: "STRING_VALUE", + * displayName: "STRING_VALUE", // required + * tags: [ // Tags + * { // Tag + * key: "STRING_VALUE", // required + * value: "STRING_VALUE", // required + * }, + * ], + * }; + * const command = new CreateDataAccessorCommand(input); + * const response = await client.send(command); + * // { // CreateDataAccessorResponse + * // dataAccessorId: "STRING_VALUE", // required + * // idcApplicationArn: "STRING_VALUE", // required + * // dataAccessorArn: "STRING_VALUE", // required + * // }; + * + * ``` + * + * @param CreateDataAccessorCommandInput - {@link CreateDataAccessorCommandInput} + * @returns {@link CreateDataAccessorCommandOutput} + * @see {@link CreateDataAccessorCommandInput} for command's `input` shape. + * @see {@link CreateDataAccessorCommandOutput} for command's `response` shape. + * @see {@link QBusinessClientResolvedConfig | config} for QBusinessClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

You don't have access to perform this action. Make sure you have the required + * permission policies and user accounts and try again.

+ * + * @throws {@link ConflictException} (client fault) + *

You are trying to perform an action that conflicts with the current status of your + * resource. Fix any inconsistencies with your resources and try again.

+ * + * @throws {@link InternalServerException} (server fault) + *

An issue occurred with the internal server used for your Amazon Q Business service. Wait + * some minutes and try again, or contact Support for help.

+ * + * @throws {@link ResourceNotFoundException} (client fault) + *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

+ * + * @throws {@link ServiceQuotaExceededException} (client fault) + *

You have exceeded the set limits for your Amazon Q Business service.

+ * + * @throws {@link ThrottlingException} (client fault) + *

The request was denied due to throttling. Reduce the number of requests and try + * again.

+ * + * @throws {@link ValidationException} (client fault) + *

The input doesn't meet the constraints set by the Amazon Q Business service. Provide the + * correct input and try again.

+ * + * @throws {@link QBusinessServiceException} + *

Base exception class for all service exceptions from QBusiness service.

+ * + * @public + */ +export class CreateDataAccessorCommand extends $Command + .classBuilder< + CreateDataAccessorCommandInput, + CreateDataAccessorCommandOutput, + QBusinessClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep(commonParams) + .m(function (this: any, Command: any, cs: any, config: QBusinessClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("ExpertQ", "CreateDataAccessor", {}) + .n("QBusinessClient", "CreateDataAccessorCommand") + .f(CreateDataAccessorRequestFilterSensitiveLog, void 0) + .ser(se_CreateDataAccessorCommand) + .de(de_CreateDataAccessorCommand) + .build() { + /** @internal type navigation helper, not in runtime. */ + protected declare static __types: { + api: { + input: CreateDataAccessorRequest; + output: CreateDataAccessorResponse; + }; + sdk: { + input: CreateDataAccessorCommandInput; + output: CreateDataAccessorCommandOutput; + }; + }; +} diff --git a/clients/client-qbusiness/src/commands/CreateDataSourceCommand.ts b/clients/client-qbusiness/src/commands/CreateDataSourceCommand.ts index 0177076f31ae..e8ee167510ed 100644 --- a/clients/client-qbusiness/src/commands/CreateDataSourceCommand.ts +++ b/clients/client-qbusiness/src/commands/CreateDataSourceCommand.ts @@ -160,8 +160,8 @@ export interface CreateDataSourceCommandOutput extends CreateDataSourceResponse, * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ServiceQuotaExceededException} (client fault) *

You have exceeded the set limits for your Amazon Q Business service.

diff --git a/clients/client-qbusiness/src/commands/CreateIndexCommand.ts b/clients/client-qbusiness/src/commands/CreateIndexCommand.ts index f809b0e1a2fa..cb05cf73d014 100644 --- a/clients/client-qbusiness/src/commands/CreateIndexCommand.ts +++ b/clients/client-qbusiness/src/commands/CreateIndexCommand.ts @@ -87,8 +87,8 @@ export interface CreateIndexCommandOutput extends CreateIndexResponse, __Metadat * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ServiceQuotaExceededException} (client fault) *

You have exceeded the set limits for your Amazon Q Business service.

diff --git a/clients/client-qbusiness/src/commands/CreatePluginCommand.ts b/clients/client-qbusiness/src/commands/CreatePluginCommand.ts index 71e95e3bced0..85861f94c0c8 100644 --- a/clients/client-qbusiness/src/commands/CreatePluginCommand.ts +++ b/clients/client-qbusiness/src/commands/CreatePluginCommand.ts @@ -38,7 +38,7 @@ export interface CreatePluginCommandOutput extends CreatePluginResponse, __Metad * const input = { // CreatePluginRequest * applicationId: "STRING_VALUE", // required * displayName: "STRING_VALUE", // required - * type: "SERVICE_NOW" || "SALESFORCE" || "JIRA" || "ZENDESK" || "CUSTOM", // required + * type: "SERVICE_NOW" || "SALESFORCE" || "JIRA" || "ZENDESK" || "CUSTOM" || "QUICKSIGHT" || "SERVICENOW_NOW_PLATFORM" || "JIRA_CLOUD" || "SALESFORCE_CRM" || "ZENDESK_SUITE" || "ATLASSIAN_CONFLUENCE" || "GOOGLE_CALENDAR" || "MICROSOFT_TEAMS" || "MICROSOFT_EXCHANGE" || "PAGERDUTY_ADVANCE" || "SMARTSHEET" || "ASANA", // required * authConfiguration: { // PluginAuthConfiguration Union: only one key present * basicAuthConfiguration: { // BasicAuthConfiguration * secretArn: "STRING_VALUE", // required @@ -47,8 +47,14 @@ export interface CreatePluginCommandOutput extends CreatePluginResponse, __Metad * oAuth2ClientCredentialConfiguration: { // OAuth2ClientCredentialConfiguration * secretArn: "STRING_VALUE", // required * roleArn: "STRING_VALUE", // required + * authorizationUrl: "STRING_VALUE", + * tokenUrl: "STRING_VALUE", * }, * noAuthConfiguration: {}, + * idcAuthConfiguration: { // IdcAuthConfiguration + * idcApplicationArn: "STRING_VALUE", // required + * roleArn: "STRING_VALUE", // required + * }, * }, * serverUrl: "STRING_VALUE", * customPluginConfiguration: { // CustomPluginConfiguration @@ -99,8 +105,8 @@ export interface CreatePluginCommandOutput extends CreatePluginResponse, __Metad * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ServiceQuotaExceededException} (client fault) *

You have exceeded the set limits for your Amazon Q Business service.

diff --git a/clients/client-qbusiness/src/commands/CreateRetrieverCommand.ts b/clients/client-qbusiness/src/commands/CreateRetrieverCommand.ts index 56ce5b59d321..2d9b37b8b4cb 100644 --- a/clients/client-qbusiness/src/commands/CreateRetrieverCommand.ts +++ b/clients/client-qbusiness/src/commands/CreateRetrieverCommand.ts @@ -105,8 +105,8 @@ export interface CreateRetrieverCommandOutput extends CreateRetrieverResponse, _ * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ServiceQuotaExceededException} (client fault) *

You have exceeded the set limits for your Amazon Q Business service.

diff --git a/clients/client-qbusiness/src/commands/CreateUserCommand.ts b/clients/client-qbusiness/src/commands/CreateUserCommand.ts index 6d087c3eef88..4c19d77a8012 100644 --- a/clients/client-qbusiness/src/commands/CreateUserCommand.ts +++ b/clients/client-qbusiness/src/commands/CreateUserCommand.ts @@ -73,8 +73,8 @@ export interface CreateUserCommandOutput extends CreateUserResponse, __MetadataB * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ServiceQuotaExceededException} (client fault) *

You have exceeded the set limits for your Amazon Q Business service.

diff --git a/clients/client-qbusiness/src/commands/CreateWebExperienceCommand.ts b/clients/client-qbusiness/src/commands/CreateWebExperienceCommand.ts index 36dfe9c08148..941e00878938 100644 --- a/clients/client-qbusiness/src/commands/CreateWebExperienceCommand.ts +++ b/clients/client-qbusiness/src/commands/CreateWebExperienceCommand.ts @@ -66,6 +66,12 @@ export interface CreateWebExperienceCommandOutput extends CreateWebExperienceRes * "STRING_VALUE", * ], * }, + * customizationConfiguration: { // CustomizationConfiguration + * customCSSUrl: "STRING_VALUE", + * logoUrl: "STRING_VALUE", + * fontUrl: "STRING_VALUE", + * faviconUrl: "STRING_VALUE", + * }, * }; * const command = new CreateWebExperienceCommand(input); * const response = await client.send(command); @@ -95,8 +101,8 @@ export interface CreateWebExperienceCommandOutput extends CreateWebExperienceRes * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ServiceQuotaExceededException} (client fault) *

You have exceeded the set limits for your Amazon Q Business service.

diff --git a/clients/client-qbusiness/src/commands/DeleteApplicationCommand.ts b/clients/client-qbusiness/src/commands/DeleteApplicationCommand.ts index 2e4a51212748..91431de7912c 100644 --- a/clients/client-qbusiness/src/commands/DeleteApplicationCommand.ts +++ b/clients/client-qbusiness/src/commands/DeleteApplicationCommand.ts @@ -63,8 +63,8 @@ export interface DeleteApplicationCommandOutput extends DeleteApplicationRespons * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ThrottlingException} (client fault) *

The request was denied due to throttling. Reduce the number of requests and try diff --git a/clients/client-qbusiness/src/commands/DeleteChatControlsConfigurationCommand.ts b/clients/client-qbusiness/src/commands/DeleteChatControlsConfigurationCommand.ts index bb463125f6b3..38194ad97b83 100644 --- a/clients/client-qbusiness/src/commands/DeleteChatControlsConfigurationCommand.ts +++ b/clients/client-qbusiness/src/commands/DeleteChatControlsConfigurationCommand.ts @@ -64,8 +64,8 @@ export interface DeleteChatControlsConfigurationCommandOutput * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ThrottlingException} (client fault) *

The request was denied due to throttling. Reduce the number of requests and try diff --git a/clients/client-qbusiness/src/commands/DeleteConversationCommand.ts b/clients/client-qbusiness/src/commands/DeleteConversationCommand.ts index b95b12dce071..6e1dee41b4aa 100644 --- a/clients/client-qbusiness/src/commands/DeleteConversationCommand.ts +++ b/clients/client-qbusiness/src/commands/DeleteConversationCommand.ts @@ -65,8 +65,8 @@ export interface DeleteConversationCommandOutput extends DeleteConversationRespo * your admin to activate your license and try again after your licence is active.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ThrottlingException} (client fault) *

The request was denied due to throttling. Reduce the number of requests and try diff --git a/clients/client-qbusiness/src/commands/DeleteDataAccessorCommand.ts b/clients/client-qbusiness/src/commands/DeleteDataAccessorCommand.ts new file mode 100644 index 000000000000..9e82ba2d7946 --- /dev/null +++ b/clients/client-qbusiness/src/commands/DeleteDataAccessorCommand.ts @@ -0,0 +1,116 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { commonParams } from "../endpoint/EndpointParameters"; +import { DeleteDataAccessorRequest, DeleteDataAccessorResponse } from "../models/models_0"; +import { de_DeleteDataAccessorCommand, se_DeleteDataAccessorCommand } from "../protocols/Aws_restJson1"; +import { QBusinessClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../QBusinessClient"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link DeleteDataAccessorCommand}. + */ +export interface DeleteDataAccessorCommandInput extends DeleteDataAccessorRequest {} +/** + * @public + * + * The output of {@link DeleteDataAccessorCommand}. + */ +export interface DeleteDataAccessorCommandOutput extends DeleteDataAccessorResponse, __MetadataBearer {} + +/** + *

Deletes a specified data accessor. This operation permanently removes the data accessor + * and its associated AWS IAM Identity Center application. Any access granted to the ISV through this data accessor will be revoked

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { QBusinessClient, DeleteDataAccessorCommand } from "@aws-sdk/client-qbusiness"; // ES Modules import + * // const { QBusinessClient, DeleteDataAccessorCommand } = require("@aws-sdk/client-qbusiness"); // CommonJS import + * const client = new QBusinessClient(config); + * const input = { // DeleteDataAccessorRequest + * applicationId: "STRING_VALUE", // required + * dataAccessorId: "STRING_VALUE", // required + * }; + * const command = new DeleteDataAccessorCommand(input); + * const response = await client.send(command); + * // {}; + * + * ``` + * + * @param DeleteDataAccessorCommandInput - {@link DeleteDataAccessorCommandInput} + * @returns {@link DeleteDataAccessorCommandOutput} + * @see {@link DeleteDataAccessorCommandInput} for command's `input` shape. + * @see {@link DeleteDataAccessorCommandOutput} for command's `response` shape. + * @see {@link QBusinessClientResolvedConfig | config} for QBusinessClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

You don't have access to perform this action. Make sure you have the required + * permission policies and user accounts and try again.

+ * + * @throws {@link ConflictException} (client fault) + *

You are trying to perform an action that conflicts with the current status of your + * resource. Fix any inconsistencies with your resources and try again.

+ * + * @throws {@link InternalServerException} (server fault) + *

An issue occurred with the internal server used for your Amazon Q Business service. Wait + * some minutes and try again, or contact Support for help.

+ * + * @throws {@link ResourceNotFoundException} (client fault) + *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

+ * + * @throws {@link ThrottlingException} (client fault) + *

The request was denied due to throttling. Reduce the number of requests and try + * again.

+ * + * @throws {@link ValidationException} (client fault) + *

The input doesn't meet the constraints set by the Amazon Q Business service. Provide the + * correct input and try again.

+ * + * @throws {@link QBusinessServiceException} + *

Base exception class for all service exceptions from QBusiness service.

+ * + * @public + */ +export class DeleteDataAccessorCommand extends $Command + .classBuilder< + DeleteDataAccessorCommandInput, + DeleteDataAccessorCommandOutput, + QBusinessClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep(commonParams) + .m(function (this: any, Command: any, cs: any, config: QBusinessClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("ExpertQ", "DeleteDataAccessor", {}) + .n("QBusinessClient", "DeleteDataAccessorCommand") + .f(void 0, void 0) + .ser(se_DeleteDataAccessorCommand) + .de(de_DeleteDataAccessorCommand) + .build() { + /** @internal type navigation helper, not in runtime. */ + protected declare static __types: { + api: { + input: DeleteDataAccessorRequest; + output: {}; + }; + sdk: { + input: DeleteDataAccessorCommandInput; + output: DeleteDataAccessorCommandOutput; + }; + }; +} diff --git a/clients/client-qbusiness/src/commands/DeleteDataSourceCommand.ts b/clients/client-qbusiness/src/commands/DeleteDataSourceCommand.ts index b3a8ae1f3c90..84c8581e40ba 100644 --- a/clients/client-qbusiness/src/commands/DeleteDataSourceCommand.ts +++ b/clients/client-qbusiness/src/commands/DeleteDataSourceCommand.ts @@ -67,8 +67,8 @@ export interface DeleteDataSourceCommandOutput extends DeleteDataSourceResponse, * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ThrottlingException} (client fault) *

The request was denied due to throttling. Reduce the number of requests and try diff --git a/clients/client-qbusiness/src/commands/DeleteGroupCommand.ts b/clients/client-qbusiness/src/commands/DeleteGroupCommand.ts index 033ef1516fdd..b49a1cd6ef84 100644 --- a/clients/client-qbusiness/src/commands/DeleteGroupCommand.ts +++ b/clients/client-qbusiness/src/commands/DeleteGroupCommand.ts @@ -74,8 +74,8 @@ export interface DeleteGroupCommandOutput extends DeleteGroupResponse, __Metadat * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ThrottlingException} (client fault) *

The request was denied due to throttling. Reduce the number of requests and try diff --git a/clients/client-qbusiness/src/commands/DeleteIndexCommand.ts b/clients/client-qbusiness/src/commands/DeleteIndexCommand.ts index 32391f86d5bd..9422c8dde955 100644 --- a/clients/client-qbusiness/src/commands/DeleteIndexCommand.ts +++ b/clients/client-qbusiness/src/commands/DeleteIndexCommand.ts @@ -64,8 +64,8 @@ export interface DeleteIndexCommandOutput extends DeleteIndexResponse, __Metadat * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ThrottlingException} (client fault) *

The request was denied due to throttling. Reduce the number of requests and try diff --git a/clients/client-qbusiness/src/commands/DeletePluginCommand.ts b/clients/client-qbusiness/src/commands/DeletePluginCommand.ts index 8f8a30c19abd..7dc57e19c31a 100644 --- a/clients/client-qbusiness/src/commands/DeletePluginCommand.ts +++ b/clients/client-qbusiness/src/commands/DeletePluginCommand.ts @@ -64,8 +64,8 @@ export interface DeletePluginCommandOutput extends DeletePluginResponse, __Metad * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ThrottlingException} (client fault) *

The request was denied due to throttling. Reduce the number of requests and try diff --git a/clients/client-qbusiness/src/commands/DeleteRetrieverCommand.ts b/clients/client-qbusiness/src/commands/DeleteRetrieverCommand.ts index 9d92f96fce83..050f13ce78ee 100644 --- a/clients/client-qbusiness/src/commands/DeleteRetrieverCommand.ts +++ b/clients/client-qbusiness/src/commands/DeleteRetrieverCommand.ts @@ -64,8 +64,8 @@ export interface DeleteRetrieverCommandOutput extends DeleteRetrieverResponse, _ * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ThrottlingException} (client fault) *

The request was denied due to throttling. Reduce the number of requests and try diff --git a/clients/client-qbusiness/src/commands/DeleteUserCommand.ts b/clients/client-qbusiness/src/commands/DeleteUserCommand.ts index 3f4d6696c892..4e277e40a9ba 100644 --- a/clients/client-qbusiness/src/commands/DeleteUserCommand.ts +++ b/clients/client-qbusiness/src/commands/DeleteUserCommand.ts @@ -64,8 +64,8 @@ export interface DeleteUserCommandOutput extends DeleteUserResponse, __MetadataB * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ThrottlingException} (client fault) *

The request was denied due to throttling. Reduce the number of requests and try diff --git a/clients/client-qbusiness/src/commands/DeleteWebExperienceCommand.ts b/clients/client-qbusiness/src/commands/DeleteWebExperienceCommand.ts index 5404a2e78890..fc76a3759bfd 100644 --- a/clients/client-qbusiness/src/commands/DeleteWebExperienceCommand.ts +++ b/clients/client-qbusiness/src/commands/DeleteWebExperienceCommand.ts @@ -64,8 +64,8 @@ export interface DeleteWebExperienceCommandOutput extends DeleteWebExperienceRes * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ThrottlingException} (client fault) *

The request was denied due to throttling. Reduce the number of requests and try diff --git a/clients/client-qbusiness/src/commands/DisassociatePermissionCommand.ts b/clients/client-qbusiness/src/commands/DisassociatePermissionCommand.ts new file mode 100644 index 000000000000..5278bbc74b62 --- /dev/null +++ b/clients/client-qbusiness/src/commands/DisassociatePermissionCommand.ts @@ -0,0 +1,116 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { commonParams } from "../endpoint/EndpointParameters"; +import { DisassociatePermissionRequest, DisassociatePermissionResponse } from "../models/models_0"; +import { de_DisassociatePermissionCommand, se_DisassociatePermissionCommand } from "../protocols/Aws_restJson1"; +import { QBusinessClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../QBusinessClient"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link DisassociatePermissionCommand}. + */ +export interface DisassociatePermissionCommandInput extends DisassociatePermissionRequest {} +/** + * @public + * + * The output of {@link DisassociatePermissionCommand}. + */ +export interface DisassociatePermissionCommandOutput extends DisassociatePermissionResponse, __MetadataBearer {} + +/** + *

Removes a permission policy from a Q Business application, revoking the cross-account access that was + * previously granted to an ISV. This operation deletes the specified policy statement from the application's permission policy.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { QBusinessClient, DisassociatePermissionCommand } from "@aws-sdk/client-qbusiness"; // ES Modules import + * // const { QBusinessClient, DisassociatePermissionCommand } = require("@aws-sdk/client-qbusiness"); // CommonJS import + * const client = new QBusinessClient(config); + * const input = { // DisassociatePermissionRequest + * applicationId: "STRING_VALUE", // required + * statementId: "STRING_VALUE", // required + * }; + * const command = new DisassociatePermissionCommand(input); + * const response = await client.send(command); + * // {}; + * + * ``` + * + * @param DisassociatePermissionCommandInput - {@link DisassociatePermissionCommandInput} + * @returns {@link DisassociatePermissionCommandOutput} + * @see {@link DisassociatePermissionCommandInput} for command's `input` shape. + * @see {@link DisassociatePermissionCommandOutput} for command's `response` shape. + * @see {@link QBusinessClientResolvedConfig | config} for QBusinessClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

You don't have access to perform this action. Make sure you have the required + * permission policies and user accounts and try again.

+ * + * @throws {@link ConflictException} (client fault) + *

You are trying to perform an action that conflicts with the current status of your + * resource. Fix any inconsistencies with your resources and try again.

+ * + * @throws {@link InternalServerException} (server fault) + *

An issue occurred with the internal server used for your Amazon Q Business service. Wait + * some minutes and try again, or contact Support for help.

+ * + * @throws {@link ResourceNotFoundException} (client fault) + *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

+ * + * @throws {@link ThrottlingException} (client fault) + *

The request was denied due to throttling. Reduce the number of requests and try + * again.

+ * + * @throws {@link ValidationException} (client fault) + *

The input doesn't meet the constraints set by the Amazon Q Business service. Provide the + * correct input and try again.

+ * + * @throws {@link QBusinessServiceException} + *

Base exception class for all service exceptions from QBusiness service.

+ * + * @public + */ +export class DisassociatePermissionCommand extends $Command + .classBuilder< + DisassociatePermissionCommandInput, + DisassociatePermissionCommandOutput, + QBusinessClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep(commonParams) + .m(function (this: any, Command: any, cs: any, config: QBusinessClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("ExpertQ", "DisassociatePermission", {}) + .n("QBusinessClient", "DisassociatePermissionCommand") + .f(void 0, void 0) + .ser(se_DisassociatePermissionCommand) + .de(de_DisassociatePermissionCommand) + .build() { + /** @internal type navigation helper, not in runtime. */ + protected declare static __types: { + api: { + input: DisassociatePermissionRequest; + output: {}; + }; + sdk: { + input: DisassociatePermissionCommandInput; + output: DisassociatePermissionCommandOutput; + }; + }; +} diff --git a/clients/client-qbusiness/src/commands/GetApplicationCommand.ts b/clients/client-qbusiness/src/commands/GetApplicationCommand.ts index 069062053afc..2151fea9e56f 100644 --- a/clients/client-qbusiness/src/commands/GetApplicationCommand.ts +++ b/clients/client-qbusiness/src/commands/GetApplicationCommand.ts @@ -48,7 +48,7 @@ export interface GetApplicationCommandOutput extends GetApplicationResponse, __M * // displayName: "STRING_VALUE", * // applicationId: "STRING_VALUE", * // applicationArn: "STRING_VALUE", - * // identityType: "AWS_IAM_IDP_SAML" || "AWS_IAM_IDP_OIDC" || "AWS_IAM_IDC", + * // identityType: "AWS_IAM_IDP_SAML" || "AWS_IAM_IDP_OIDC" || "AWS_IAM_IDC" || "AWS_QUICKSIGHT_IDP", * // iamIdentityProviderArn: "STRING_VALUE", * // identityCenterApplicationArn: "STRING_VALUE", * // roleArn: "STRING_VALUE", @@ -79,6 +79,9 @@ export interface GetApplicationCommandOutput extends GetApplicationResponse, __M * // clientIdsForOIDC: [ // ClientIdsForOIDC * // "STRING_VALUE", * // ], + * // quickSightConfiguration: { // QuickSightConfiguration + * // clientNamespace: "STRING_VALUE", // required + * // }, * // }; * * ``` @@ -98,8 +101,8 @@ export interface GetApplicationCommandOutput extends GetApplicationResponse, __M * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ThrottlingException} (client fault) *

The request was denied due to throttling. Reduce the number of requests and try diff --git a/clients/client-qbusiness/src/commands/GetChatControlsConfigurationCommand.ts b/clients/client-qbusiness/src/commands/GetChatControlsConfigurationCommand.ts index d17ccb690879..19e268608e9d 100644 --- a/clients/client-qbusiness/src/commands/GetChatControlsConfigurationCommand.ts +++ b/clients/client-qbusiness/src/commands/GetChatControlsConfigurationCommand.ts @@ -122,8 +122,8 @@ export interface GetChatControlsConfigurationCommandOutput * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ThrottlingException} (client fault) *

The request was denied due to throttling. Reduce the number of requests and try diff --git a/clients/client-qbusiness/src/commands/GetDataAccessorCommand.ts b/clients/client-qbusiness/src/commands/GetDataAccessorCommand.ts new file mode 100644 index 000000000000..7050f0cefff4 --- /dev/null +++ b/clients/client-qbusiness/src/commands/GetDataAccessorCommand.ts @@ -0,0 +1,212 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { commonParams } from "../endpoint/EndpointParameters"; +import { GetDataAccessorRequest } from "../models/models_0"; +import { GetDataAccessorResponse, GetDataAccessorResponseFilterSensitiveLog } from "../models/models_1"; +import { de_GetDataAccessorCommand, se_GetDataAccessorCommand } from "../protocols/Aws_restJson1"; +import { QBusinessClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../QBusinessClient"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link GetDataAccessorCommand}. + */ +export interface GetDataAccessorCommandInput extends GetDataAccessorRequest {} +/** + * @public + * + * The output of {@link GetDataAccessorCommand}. + */ +export interface GetDataAccessorCommandOutput extends GetDataAccessorResponse, __MetadataBearer {} + +/** + *

Retrieves information about a specified data accessor. This operation returns details about the + * data accessor, including its display name, unique identifier, Amazon Resource Name (ARN), the associated + * Q Business application and AWS IAM Identity Center application, the IAM role for the ISV, the + * action configurations, and the timestamps for when the data accessor was created and last updated.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { QBusinessClient, GetDataAccessorCommand } from "@aws-sdk/client-qbusiness"; // ES Modules import + * // const { QBusinessClient, GetDataAccessorCommand } = require("@aws-sdk/client-qbusiness"); // CommonJS import + * const client = new QBusinessClient(config); + * const input = { // GetDataAccessorRequest + * applicationId: "STRING_VALUE", // required + * dataAccessorId: "STRING_VALUE", // required + * }; + * const command = new GetDataAccessorCommand(input); + * const response = await client.send(command); + * // { // GetDataAccessorResponse + * // displayName: "STRING_VALUE", + * // dataAccessorId: "STRING_VALUE", + * // dataAccessorArn: "STRING_VALUE", + * // applicationId: "STRING_VALUE", + * // idcApplicationArn: "STRING_VALUE", + * // principal: "STRING_VALUE", + * // actionConfigurations: [ // ActionConfigurationList + * // { // ActionConfiguration + * // action: "STRING_VALUE", // required + * // filterConfiguration: { // ActionFilterConfiguration + * // documentAttributeFilter: { // AttributeFilter + * // andAllFilters: [ // AttributeFilters + * // { + * // andAllFilters: [ + * // "", + * // ], + * // orAllFilters: [ + * // "", + * // ], + * // notFilter: "", + * // equalsTo: { // DocumentAttribute + * // name: "STRING_VALUE", // required + * // value: { // DocumentAttributeValue Union: only one key present + * // stringValue: "STRING_VALUE", + * // stringListValue: [ // DocumentAttributeStringListValue + * // "STRING_VALUE", + * // ], + * // longValue: Number("long"), + * // dateValue: new Date("TIMESTAMP"), + * // }, + * // }, + * // containsAll: { + * // name: "STRING_VALUE", // required + * // value: {// Union: only one key present + * // stringValue: "STRING_VALUE", + * // stringListValue: [ + * // "STRING_VALUE", + * // ], + * // longValue: Number("long"), + * // dateValue: new Date("TIMESTAMP"), + * // }, + * // }, + * // containsAny: { + * // name: "STRING_VALUE", // required + * // value: {// Union: only one key present + * // stringValue: "STRING_VALUE", + * // stringListValue: [ + * // "STRING_VALUE", + * // ], + * // longValue: Number("long"), + * // dateValue: new Date("TIMESTAMP"), + * // }, + * // }, + * // greaterThan: { + * // name: "STRING_VALUE", // required + * // value: {// Union: only one key present + * // stringValue: "STRING_VALUE", + * // stringListValue: [ + * // "STRING_VALUE", + * // ], + * // longValue: Number("long"), + * // dateValue: new Date("TIMESTAMP"), + * // }, + * // }, + * // greaterThanOrEquals: { + * // name: "STRING_VALUE", // required + * // value: {// Union: only one key present + * // stringValue: "STRING_VALUE", + * // stringListValue: [ + * // "STRING_VALUE", + * // ], + * // longValue: Number("long"), + * // dateValue: new Date("TIMESTAMP"), + * // }, + * // }, + * // lessThan: "", + * // lessThanOrEquals: "", + * // }, + * // ], + * // orAllFilters: [ + * // "", + * // ], + * // notFilter: "", + * // equalsTo: "", + * // containsAll: "", + * // containsAny: "", + * // greaterThan: "", + * // greaterThanOrEquals: "", + * // lessThan: "", + * // lessThanOrEquals: "", + * // }, + * // }, + * // }, + * // ], + * // createdAt: new Date("TIMESTAMP"), + * // updatedAt: new Date("TIMESTAMP"), + * // }; + * + * ``` + * + * @param GetDataAccessorCommandInput - {@link GetDataAccessorCommandInput} + * @returns {@link GetDataAccessorCommandOutput} + * @see {@link GetDataAccessorCommandInput} for command's `input` shape. + * @see {@link GetDataAccessorCommandOutput} for command's `response` shape. + * @see {@link QBusinessClientResolvedConfig | config} for QBusinessClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

You don't have access to perform this action. Make sure you have the required + * permission policies and user accounts and try again.

+ * + * @throws {@link InternalServerException} (server fault) + *

An issue occurred with the internal server used for your Amazon Q Business service. Wait + * some minutes and try again, or contact Support for help.

+ * + * @throws {@link ResourceNotFoundException} (client fault) + *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

+ * + * @throws {@link ThrottlingException} (client fault) + *

The request was denied due to throttling. Reduce the number of requests and try + * again.

+ * + * @throws {@link ValidationException} (client fault) + *

The input doesn't meet the constraints set by the Amazon Q Business service. Provide the + * correct input and try again.

+ * + * @throws {@link QBusinessServiceException} + *

Base exception class for all service exceptions from QBusiness service.

+ * + * @public + */ +export class GetDataAccessorCommand extends $Command + .classBuilder< + GetDataAccessorCommandInput, + GetDataAccessorCommandOutput, + QBusinessClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep(commonParams) + .m(function (this: any, Command: any, cs: any, config: QBusinessClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("ExpertQ", "GetDataAccessor", {}) + .n("QBusinessClient", "GetDataAccessorCommand") + .f(void 0, GetDataAccessorResponseFilterSensitiveLog) + .ser(se_GetDataAccessorCommand) + .de(de_GetDataAccessorCommand) + .build() { + /** @internal type navigation helper, not in runtime. */ + protected declare static __types: { + api: { + input: GetDataAccessorRequest; + output: GetDataAccessorResponse; + }; + sdk: { + input: GetDataAccessorCommandInput; + output: GetDataAccessorCommandOutput; + }; + }; +} diff --git a/clients/client-qbusiness/src/commands/GetDataSourceCommand.ts b/clients/client-qbusiness/src/commands/GetDataSourceCommand.ts index 7d318b32f6ef..aea5362be443 100644 --- a/clients/client-qbusiness/src/commands/GetDataSourceCommand.ts +++ b/clients/client-qbusiness/src/commands/GetDataSourceCommand.ts @@ -157,8 +157,8 @@ export interface GetDataSourceCommandOutput extends GetDataSourceResponse, __Met * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ThrottlingException} (client fault) *

The request was denied due to throttling. Reduce the number of requests and try diff --git a/clients/client-qbusiness/src/commands/GetGroupCommand.ts b/clients/client-qbusiness/src/commands/GetGroupCommand.ts index cf4783e11287..418cd98d06b2 100644 --- a/clients/client-qbusiness/src/commands/GetGroupCommand.ts +++ b/clients/client-qbusiness/src/commands/GetGroupCommand.ts @@ -85,8 +85,8 @@ export interface GetGroupCommandOutput extends GetGroupResponse, __MetadataBeare * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ThrottlingException} (client fault) *

The request was denied due to throttling. Reduce the number of requests and try diff --git a/clients/client-qbusiness/src/commands/GetIndexCommand.ts b/clients/client-qbusiness/src/commands/GetIndexCommand.ts index ff05c25708e8..ea5910233776 100644 --- a/clients/client-qbusiness/src/commands/GetIndexCommand.ts +++ b/clients/client-qbusiness/src/commands/GetIndexCommand.ts @@ -90,8 +90,8 @@ export interface GetIndexCommandOutput extends GetIndexResponse, __MetadataBeare * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ThrottlingException} (client fault) *

The request was denied due to throttling. Reduce the number of requests and try diff --git a/clients/client-qbusiness/src/commands/GetMediaCommand.ts b/clients/client-qbusiness/src/commands/GetMediaCommand.ts index 8f283da420fd..7a807011ad64 100644 --- a/clients/client-qbusiness/src/commands/GetMediaCommand.ts +++ b/clients/client-qbusiness/src/commands/GetMediaCommand.ts @@ -75,8 +75,8 @@ export interface GetMediaCommandOutput extends GetMediaResponse, __MetadataBeare *

The requested media object is too large to be returned.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ThrottlingException} (client fault) *

The request was denied due to throttling. Reduce the number of requests and try diff --git a/clients/client-qbusiness/src/commands/GetPluginCommand.ts b/clients/client-qbusiness/src/commands/GetPluginCommand.ts index f27bc997beb7..2e6caeebd379 100644 --- a/clients/client-qbusiness/src/commands/GetPluginCommand.ts +++ b/clients/client-qbusiness/src/commands/GetPluginCommand.ts @@ -45,7 +45,7 @@ export interface GetPluginCommandOutput extends GetPluginResponse, __MetadataBea * // applicationId: "STRING_VALUE", * // pluginId: "STRING_VALUE", * // displayName: "STRING_VALUE", - * // type: "SERVICE_NOW" || "SALESFORCE" || "JIRA" || "ZENDESK" || "CUSTOM", + * // type: "SERVICE_NOW" || "SALESFORCE" || "JIRA" || "ZENDESK" || "CUSTOM" || "QUICKSIGHT" || "SERVICENOW_NOW_PLATFORM" || "JIRA_CLOUD" || "SALESFORCE_CRM" || "ZENDESK_SUITE" || "ATLASSIAN_CONFLUENCE" || "GOOGLE_CALENDAR" || "MICROSOFT_TEAMS" || "MICROSOFT_EXCHANGE" || "PAGERDUTY_ADVANCE" || "SMARTSHEET" || "ASANA", * // serverUrl: "STRING_VALUE", * // authConfiguration: { // PluginAuthConfiguration Union: only one key present * // basicAuthConfiguration: { // BasicAuthConfiguration @@ -55,8 +55,14 @@ export interface GetPluginCommandOutput extends GetPluginResponse, __MetadataBea * // oAuth2ClientCredentialConfiguration: { // OAuth2ClientCredentialConfiguration * // secretArn: "STRING_VALUE", // required * // roleArn: "STRING_VALUE", // required + * // authorizationUrl: "STRING_VALUE", + * // tokenUrl: "STRING_VALUE", * // }, * // noAuthConfiguration: {}, + * // idcAuthConfiguration: { // IdcAuthConfiguration + * // idcApplicationArn: "STRING_VALUE", // required + * // roleArn: "STRING_VALUE", // required + * // }, * // }, * // customPluginConfiguration: { // CustomPluginConfiguration * // description: "STRING_VALUE", // required @@ -93,8 +99,8 @@ export interface GetPluginCommandOutput extends GetPluginResponse, __MetadataBea * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ThrottlingException} (client fault) *

The request was denied due to throttling. Reduce the number of requests and try diff --git a/clients/client-qbusiness/src/commands/GetPolicyCommand.ts b/clients/client-qbusiness/src/commands/GetPolicyCommand.ts new file mode 100644 index 000000000000..c495bfa153a8 --- /dev/null +++ b/clients/client-qbusiness/src/commands/GetPolicyCommand.ts @@ -0,0 +1,113 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { commonParams } from "../endpoint/EndpointParameters"; +import { GetPolicyRequest, GetPolicyResponse } from "../models/models_0"; +import { de_GetPolicyCommand, se_GetPolicyCommand } from "../protocols/Aws_restJson1"; +import { QBusinessClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../QBusinessClient"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link GetPolicyCommand}. + */ +export interface GetPolicyCommandInput extends GetPolicyRequest {} +/** + * @public + * + * The output of {@link GetPolicyCommand}. + */ +export interface GetPolicyCommandOutput extends GetPolicyResponse, __MetadataBearer {} + +/** + *

Retrieves the current permission policy for a Q Business application. The policy is + * returned as a JSON-formatted string and defines the IAM actions that are allowed or denied for the application's resources.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { QBusinessClient, GetPolicyCommand } from "@aws-sdk/client-qbusiness"; // ES Modules import + * // const { QBusinessClient, GetPolicyCommand } = require("@aws-sdk/client-qbusiness"); // CommonJS import + * const client = new QBusinessClient(config); + * const input = { // GetPolicyRequest + * applicationId: "STRING_VALUE", // required + * }; + * const command = new GetPolicyCommand(input); + * const response = await client.send(command); + * // { // GetPolicyResponse + * // policy: "STRING_VALUE", + * // }; + * + * ``` + * + * @param GetPolicyCommandInput - {@link GetPolicyCommandInput} + * @returns {@link GetPolicyCommandOutput} + * @see {@link GetPolicyCommandInput} for command's `input` shape. + * @see {@link GetPolicyCommandOutput} for command's `response` shape. + * @see {@link QBusinessClientResolvedConfig | config} for QBusinessClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

You don't have access to perform this action. Make sure you have the required + * permission policies and user accounts and try again.

+ * + * @throws {@link InternalServerException} (server fault) + *

An issue occurred with the internal server used for your Amazon Q Business service. Wait + * some minutes and try again, or contact Support for help.

+ * + * @throws {@link ResourceNotFoundException} (client fault) + *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

+ * + * @throws {@link ThrottlingException} (client fault) + *

The request was denied due to throttling. Reduce the number of requests and try + * again.

+ * + * @throws {@link ValidationException} (client fault) + *

The input doesn't meet the constraints set by the Amazon Q Business service. Provide the + * correct input and try again.

+ * + * @throws {@link QBusinessServiceException} + *

Base exception class for all service exceptions from QBusiness service.

+ * + * @public + */ +export class GetPolicyCommand extends $Command + .classBuilder< + GetPolicyCommandInput, + GetPolicyCommandOutput, + QBusinessClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep(commonParams) + .m(function (this: any, Command: any, cs: any, config: QBusinessClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("ExpertQ", "GetPolicy", {}) + .n("QBusinessClient", "GetPolicyCommand") + .f(void 0, void 0) + .ser(se_GetPolicyCommand) + .de(de_GetPolicyCommand) + .build() { + /** @internal type navigation helper, not in runtime. */ + protected declare static __types: { + api: { + input: GetPolicyRequest; + output: GetPolicyResponse; + }; + sdk: { + input: GetPolicyCommandInput; + output: GetPolicyCommandOutput; + }; + }; +} diff --git a/clients/client-qbusiness/src/commands/GetRetrieverCommand.ts b/clients/client-qbusiness/src/commands/GetRetrieverCommand.ts index 41dbe16da8f9..14a92d3eb21c 100644 --- a/clients/client-qbusiness/src/commands/GetRetrieverCommand.ts +++ b/clients/client-qbusiness/src/commands/GetRetrieverCommand.ts @@ -100,8 +100,8 @@ export interface GetRetrieverCommandOutput extends GetRetrieverResponse, __Metad * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ThrottlingException} (client fault) *

The request was denied due to throttling. Reduce the number of requests and try diff --git a/clients/client-qbusiness/src/commands/GetUserCommand.ts b/clients/client-qbusiness/src/commands/GetUserCommand.ts index d70848443a28..33fd053a3c4f 100644 --- a/clients/client-qbusiness/src/commands/GetUserCommand.ts +++ b/clients/client-qbusiness/src/commands/GetUserCommand.ts @@ -73,8 +73,8 @@ export interface GetUserCommandOutput extends GetUserResponse, __MetadataBearer * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ThrottlingException} (client fault) *

The request was denied due to throttling. Reduce the number of requests and try diff --git a/clients/client-qbusiness/src/commands/GetWebExperienceCommand.ts b/clients/client-qbusiness/src/commands/GetWebExperienceCommand.ts index e34ec8a83d80..4a6bb63c2b95 100644 --- a/clients/client-qbusiness/src/commands/GetWebExperienceCommand.ts +++ b/clients/client-qbusiness/src/commands/GetWebExperienceCommand.ts @@ -83,6 +83,12 @@ export interface GetWebExperienceCommandOutput extends GetWebExperienceResponse, * // "STRING_VALUE", * // ], * // }, + * // customizationConfiguration: { // CustomizationConfiguration + * // customCSSUrl: "STRING_VALUE", + * // logoUrl: "STRING_VALUE", + * // fontUrl: "STRING_VALUE", + * // faviconUrl: "STRING_VALUE", + * // }, * // }; * * ``` @@ -102,8 +108,8 @@ export interface GetWebExperienceCommandOutput extends GetWebExperienceResponse, * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ThrottlingException} (client fault) *

The request was denied due to throttling. Reduce the number of requests and try diff --git a/clients/client-qbusiness/src/commands/ListApplicationsCommand.ts b/clients/client-qbusiness/src/commands/ListApplicationsCommand.ts index efc9e24b3d27..771602e98ff5 100644 --- a/clients/client-qbusiness/src/commands/ListApplicationsCommand.ts +++ b/clients/client-qbusiness/src/commands/ListApplicationsCommand.ts @@ -56,7 +56,10 @@ export interface ListApplicationsCommandOutput extends ListApplicationsResponse, * // createdAt: new Date("TIMESTAMP"), * // updatedAt: new Date("TIMESTAMP"), * // status: "CREATING" || "ACTIVE" || "DELETING" || "FAILED" || "UPDATING", - * // identityType: "AWS_IAM_IDP_SAML" || "AWS_IAM_IDP_OIDC" || "AWS_IAM_IDC", + * // identityType: "AWS_IAM_IDP_SAML" || "AWS_IAM_IDP_OIDC" || "AWS_IAM_IDC" || "AWS_QUICKSIGHT_IDP", + * // quickSightConfiguration: { // QuickSightConfiguration + * // clientNamespace: "STRING_VALUE", // required + * // }, * // }, * // ], * // }; diff --git a/clients/client-qbusiness/src/commands/ListAttachmentsCommand.ts b/clients/client-qbusiness/src/commands/ListAttachmentsCommand.ts index 8cbf843d60f5..cbb4a6098522 100644 --- a/clients/client-qbusiness/src/commands/ListAttachmentsCommand.ts +++ b/clients/client-qbusiness/src/commands/ListAttachmentsCommand.ts @@ -91,8 +91,8 @@ export interface ListAttachmentsCommandOutput extends ListAttachmentsResponse, _ * your admin to activate your license and try again after your licence is active.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ThrottlingException} (client fault) *

The request was denied due to throttling. Reduce the number of requests and try diff --git a/clients/client-qbusiness/src/commands/ListConversationsCommand.ts b/clients/client-qbusiness/src/commands/ListConversationsCommand.ts index c2c761b1c0e2..633e30cee790 100644 --- a/clients/client-qbusiness/src/commands/ListConversationsCommand.ts +++ b/clients/client-qbusiness/src/commands/ListConversationsCommand.ts @@ -75,8 +75,8 @@ export interface ListConversationsCommandOutput extends ListConversationsRespons * your admin to activate your license and try again after your licence is active.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ThrottlingException} (client fault) *

The request was denied due to throttling. Reduce the number of requests and try diff --git a/clients/client-qbusiness/src/commands/ListDataAccessorsCommand.ts b/clients/client-qbusiness/src/commands/ListDataAccessorsCommand.ts new file mode 100644 index 000000000000..b68a6ed10b11 --- /dev/null +++ b/clients/client-qbusiness/src/commands/ListDataAccessorsCommand.ts @@ -0,0 +1,131 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { commonParams } from "../endpoint/EndpointParameters"; +import { + ListDataAccessorsRequest, + ListDataAccessorsResponse, + ListDataAccessorsResponseFilterSensitiveLog, +} from "../models/models_0"; +import { de_ListDataAccessorsCommand, se_ListDataAccessorsCommand } from "../protocols/Aws_restJson1"; +import { QBusinessClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../QBusinessClient"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link ListDataAccessorsCommand}. + */ +export interface ListDataAccessorsCommandInput extends ListDataAccessorsRequest {} +/** + * @public + * + * The output of {@link ListDataAccessorsCommand}. + */ +export interface ListDataAccessorsCommandOutput extends ListDataAccessorsResponse, __MetadataBearer {} + +/** + *

Lists the data accessors for a Q Business application. This operation returns a paginated + * list of data accessor summaries, including the friendly name, unique identifier, ARN, + * associated IAM role, and creation/update timestamps for each data accessor.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { QBusinessClient, ListDataAccessorsCommand } from "@aws-sdk/client-qbusiness"; // ES Modules import + * // const { QBusinessClient, ListDataAccessorsCommand } = require("@aws-sdk/client-qbusiness"); // CommonJS import + * const client = new QBusinessClient(config); + * const input = { // ListDataAccessorsRequest + * applicationId: "STRING_VALUE", // required + * nextToken: "STRING_VALUE", + * maxResults: Number("int"), + * }; + * const command = new ListDataAccessorsCommand(input); + * const response = await client.send(command); + * // { // ListDataAccessorsResponse + * // dataAccessors: [ // DataAccessors + * // { // DataAccessor + * // displayName: "STRING_VALUE", + * // dataAccessorId: "STRING_VALUE", + * // dataAccessorArn: "STRING_VALUE", + * // idcApplicationArn: "STRING_VALUE", + * // principal: "STRING_VALUE", + * // createdAt: new Date("TIMESTAMP"), + * // updatedAt: new Date("TIMESTAMP"), + * // }, + * // ], + * // nextToken: "STRING_VALUE", + * // }; + * + * ``` + * + * @param ListDataAccessorsCommandInput - {@link ListDataAccessorsCommandInput} + * @returns {@link ListDataAccessorsCommandOutput} + * @see {@link ListDataAccessorsCommandInput} for command's `input` shape. + * @see {@link ListDataAccessorsCommandOutput} for command's `response` shape. + * @see {@link QBusinessClientResolvedConfig | config} for QBusinessClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

You don't have access to perform this action. Make sure you have the required + * permission policies and user accounts and try again.

+ * + * @throws {@link InternalServerException} (server fault) + *

An issue occurred with the internal server used for your Amazon Q Business service. Wait + * some minutes and try again, or contact Support for help.

+ * + * @throws {@link ResourceNotFoundException} (client fault) + *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

+ * + * @throws {@link ThrottlingException} (client fault) + *

The request was denied due to throttling. Reduce the number of requests and try + * again.

+ * + * @throws {@link ValidationException} (client fault) + *

The input doesn't meet the constraints set by the Amazon Q Business service. Provide the + * correct input and try again.

+ * + * @throws {@link QBusinessServiceException} + *

Base exception class for all service exceptions from QBusiness service.

+ * + * @public + */ +export class ListDataAccessorsCommand extends $Command + .classBuilder< + ListDataAccessorsCommandInput, + ListDataAccessorsCommandOutput, + QBusinessClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep(commonParams) + .m(function (this: any, Command: any, cs: any, config: QBusinessClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("ExpertQ", "ListDataAccessors", {}) + .n("QBusinessClient", "ListDataAccessorsCommand") + .f(void 0, ListDataAccessorsResponseFilterSensitiveLog) + .ser(se_ListDataAccessorsCommand) + .de(de_ListDataAccessorsCommand) + .build() { + /** @internal type navigation helper, not in runtime. */ + protected declare static __types: { + api: { + input: ListDataAccessorsRequest; + output: ListDataAccessorsResponse; + }; + sdk: { + input: ListDataAccessorsCommandInput; + output: ListDataAccessorsCommandOutput; + }; + }; +} diff --git a/clients/client-qbusiness/src/commands/ListDataSourceSyncJobsCommand.ts b/clients/client-qbusiness/src/commands/ListDataSourceSyncJobsCommand.ts index f9544402452f..05d73b0b567f 100644 --- a/clients/client-qbusiness/src/commands/ListDataSourceSyncJobsCommand.ts +++ b/clients/client-qbusiness/src/commands/ListDataSourceSyncJobsCommand.ts @@ -92,8 +92,8 @@ export interface ListDataSourceSyncJobsCommandOutput extends ListDataSourceSyncJ * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ThrottlingException} (client fault) *

The request was denied due to throttling. Reduce the number of requests and try diff --git a/clients/client-qbusiness/src/commands/ListDataSourcesCommand.ts b/clients/client-qbusiness/src/commands/ListDataSourcesCommand.ts index c94a2e8c8628..6964eecb973c 100644 --- a/clients/client-qbusiness/src/commands/ListDataSourcesCommand.ts +++ b/clients/client-qbusiness/src/commands/ListDataSourcesCommand.ts @@ -74,8 +74,8 @@ export interface ListDataSourcesCommandOutput extends ListDataSourcesResponse, _ * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ThrottlingException} (client fault) *

The request was denied due to throttling. Reduce the number of requests and try diff --git a/clients/client-qbusiness/src/commands/ListDocumentsCommand.ts b/clients/client-qbusiness/src/commands/ListDocumentsCommand.ts index 2db1157449cb..e7846fecd225 100644 --- a/clients/client-qbusiness/src/commands/ListDocumentsCommand.ts +++ b/clients/client-qbusiness/src/commands/ListDocumentsCommand.ts @@ -79,8 +79,8 @@ export interface ListDocumentsCommandOutput extends ListDocumentsResponse, __Met * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ThrottlingException} (client fault) *

The request was denied due to throttling. Reduce the number of requests and try diff --git a/clients/client-qbusiness/src/commands/ListGroupsCommand.ts b/clients/client-qbusiness/src/commands/ListGroupsCommand.ts index 5edfd3ddb213..3bca64586e68 100644 --- a/clients/client-qbusiness/src/commands/ListGroupsCommand.ts +++ b/clients/client-qbusiness/src/commands/ListGroupsCommand.ts @@ -75,8 +75,8 @@ export interface ListGroupsCommandOutput extends ListGroupsResponse, __MetadataB * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ThrottlingException} (client fault) *

The request was denied due to throttling. Reduce the number of requests and try diff --git a/clients/client-qbusiness/src/commands/ListIndicesCommand.ts b/clients/client-qbusiness/src/commands/ListIndicesCommand.ts index 1d3693452c0e..0a542822a397 100644 --- a/clients/client-qbusiness/src/commands/ListIndicesCommand.ts +++ b/clients/client-qbusiness/src/commands/ListIndicesCommand.ts @@ -72,8 +72,8 @@ export interface ListIndicesCommandOutput extends ListIndicesResponse, __Metadat * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ThrottlingException} (client fault) *

The request was denied due to throttling. Reduce the number of requests and try diff --git a/clients/client-qbusiness/src/commands/ListMessagesCommand.ts b/clients/client-qbusiness/src/commands/ListMessagesCommand.ts index 91e6261b1ab1..a82c7bb65283 100644 --- a/clients/client-qbusiness/src/commands/ListMessagesCommand.ts +++ b/clients/client-qbusiness/src/commands/ListMessagesCommand.ts @@ -85,7 +85,7 @@ export interface ListMessagesCommandOutput extends ListMessagesResponse, __Metad * // ], * // actionReview: { // ActionReview * // pluginId: "STRING_VALUE", - * // pluginType: "SERVICE_NOW" || "SALESFORCE" || "JIRA" || "ZENDESK" || "CUSTOM", + * // pluginType: "SERVICE_NOW" || "SALESFORCE" || "JIRA" || "ZENDESK" || "CUSTOM" || "QUICKSIGHT" || "SERVICENOW_NOW_PLATFORM" || "JIRA_CLOUD" || "SALESFORCE_CRM" || "ZENDESK_SUITE" || "ATLASSIAN_CONFLUENCE" || "GOOGLE_CALENDAR" || "MICROSOFT_TEAMS" || "MICROSOFT_EXCHANGE" || "PAGERDUTY_ADVANCE" || "SMARTSHEET" || "ASANA", * // payload: { // ActionReviewPayload * // "": { // ActionReviewPayloadField * // displayName: "STRING_VALUE", @@ -141,8 +141,8 @@ export interface ListMessagesCommandOutput extends ListMessagesResponse, __Metad * your admin to activate your license and try again after your licence is active.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ThrottlingException} (client fault) *

The request was denied due to throttling. Reduce the number of requests and try diff --git a/clients/client-qbusiness/src/commands/ListPluginActionsCommand.ts b/clients/client-qbusiness/src/commands/ListPluginActionsCommand.ts new file mode 100644 index 000000000000..31dca5d3281e --- /dev/null +++ b/clients/client-qbusiness/src/commands/ListPluginActionsCommand.ts @@ -0,0 +1,123 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { commonParams } from "../endpoint/EndpointParameters"; +import { ListPluginActionsRequest, ListPluginActionsResponse } from "../models/models_0"; +import { de_ListPluginActionsCommand, se_ListPluginActionsCommand } from "../protocols/Aws_restJson1"; +import { QBusinessClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../QBusinessClient"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link ListPluginActionsCommand}. + */ +export interface ListPluginActionsCommandInput extends ListPluginActionsRequest {} +/** + * @public + * + * The output of {@link ListPluginActionsCommand}. + */ +export interface ListPluginActionsCommandOutput extends ListPluginActionsResponse, __MetadataBearer {} + +/** + *

Lists configured Amazon Q Business actions for a specific plugin in an Amazon Q Business application.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { QBusinessClient, ListPluginActionsCommand } from "@aws-sdk/client-qbusiness"; // ES Modules import + * // const { QBusinessClient, ListPluginActionsCommand } = require("@aws-sdk/client-qbusiness"); // CommonJS import + * const client = new QBusinessClient(config); + * const input = { // ListPluginActionsRequest + * applicationId: "STRING_VALUE", // required + * pluginId: "STRING_VALUE", // required + * nextToken: "STRING_VALUE", + * maxResults: Number("int"), + * }; + * const command = new ListPluginActionsCommand(input); + * const response = await client.send(command); + * // { // ListPluginActionsResponse + * // nextToken: "STRING_VALUE", + * // items: [ // Actions + * // { // ActionSummary + * // actionIdentifier: "STRING_VALUE", + * // displayName: "STRING_VALUE", + * // instructionExample: "STRING_VALUE", + * // description: "STRING_VALUE", + * // }, + * // ], + * // }; + * + * ``` + * + * @param ListPluginActionsCommandInput - {@link ListPluginActionsCommandInput} + * @returns {@link ListPluginActionsCommandOutput} + * @see {@link ListPluginActionsCommandInput} for command's `input` shape. + * @see {@link ListPluginActionsCommandOutput} for command's `response` shape. + * @see {@link QBusinessClientResolvedConfig | config} for QBusinessClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

You don't have access to perform this action. Make sure you have the required + * permission policies and user accounts and try again.

+ * + * @throws {@link InternalServerException} (server fault) + *

An issue occurred with the internal server used for your Amazon Q Business service. Wait + * some minutes and try again, or contact Support for help.

+ * + * @throws {@link ResourceNotFoundException} (client fault) + *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

+ * + * @throws {@link ThrottlingException} (client fault) + *

The request was denied due to throttling. Reduce the number of requests and try + * again.

+ * + * @throws {@link ValidationException} (client fault) + *

The input doesn't meet the constraints set by the Amazon Q Business service. Provide the + * correct input and try again.

+ * + * @throws {@link QBusinessServiceException} + *

Base exception class for all service exceptions from QBusiness service.

+ * + * @public + */ +export class ListPluginActionsCommand extends $Command + .classBuilder< + ListPluginActionsCommandInput, + ListPluginActionsCommandOutput, + QBusinessClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep(commonParams) + .m(function (this: any, Command: any, cs: any, config: QBusinessClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("ExpertQ", "ListPluginActions", {}) + .n("QBusinessClient", "ListPluginActionsCommand") + .f(void 0, void 0) + .ser(se_ListPluginActionsCommand) + .de(de_ListPluginActionsCommand) + .build() { + /** @internal type navigation helper, not in runtime. */ + protected declare static __types: { + api: { + input: ListPluginActionsRequest; + output: ListPluginActionsResponse; + }; + sdk: { + input: ListPluginActionsCommandInput; + output: ListPluginActionsCommandOutput; + }; + }; +} diff --git a/clients/client-qbusiness/src/commands/ListPluginTypeActionsCommand.ts b/clients/client-qbusiness/src/commands/ListPluginTypeActionsCommand.ts new file mode 100644 index 000000000000..87351a4184c8 --- /dev/null +++ b/clients/client-qbusiness/src/commands/ListPluginTypeActionsCommand.ts @@ -0,0 +1,119 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { commonParams } from "../endpoint/EndpointParameters"; +import { ListPluginTypeActionsRequest, ListPluginTypeActionsResponse } from "../models/models_0"; +import { de_ListPluginTypeActionsCommand, se_ListPluginTypeActionsCommand } from "../protocols/Aws_restJson1"; +import { QBusinessClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../QBusinessClient"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link ListPluginTypeActionsCommand}. + */ +export interface ListPluginTypeActionsCommandInput extends ListPluginTypeActionsRequest {} +/** + * @public + * + * The output of {@link ListPluginTypeActionsCommand}. + */ +export interface ListPluginTypeActionsCommandOutput extends ListPluginTypeActionsResponse, __MetadataBearer {} + +/** + *

Lists configured Amazon Q Business actions for any plugin type—both + * built-in and custom.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { QBusinessClient, ListPluginTypeActionsCommand } from "@aws-sdk/client-qbusiness"; // ES Modules import + * // const { QBusinessClient, ListPluginTypeActionsCommand } = require("@aws-sdk/client-qbusiness"); // CommonJS import + * const client = new QBusinessClient(config); + * const input = { // ListPluginTypeActionsRequest + * pluginType: "SERVICE_NOW" || "SALESFORCE" || "JIRA" || "ZENDESK" || "CUSTOM" || "QUICKSIGHT" || "SERVICENOW_NOW_PLATFORM" || "JIRA_CLOUD" || "SALESFORCE_CRM" || "ZENDESK_SUITE" || "ATLASSIAN_CONFLUENCE" || "GOOGLE_CALENDAR" || "MICROSOFT_TEAMS" || "MICROSOFT_EXCHANGE" || "PAGERDUTY_ADVANCE" || "SMARTSHEET" || "ASANA", // required + * nextToken: "STRING_VALUE", + * maxResults: Number("int"), + * }; + * const command = new ListPluginTypeActionsCommand(input); + * const response = await client.send(command); + * // { // ListPluginTypeActionsResponse + * // nextToken: "STRING_VALUE", + * // items: [ // Actions + * // { // ActionSummary + * // actionIdentifier: "STRING_VALUE", + * // displayName: "STRING_VALUE", + * // instructionExample: "STRING_VALUE", + * // description: "STRING_VALUE", + * // }, + * // ], + * // }; + * + * ``` + * + * @param ListPluginTypeActionsCommandInput - {@link ListPluginTypeActionsCommandInput} + * @returns {@link ListPluginTypeActionsCommandOutput} + * @see {@link ListPluginTypeActionsCommandInput} for command's `input` shape. + * @see {@link ListPluginTypeActionsCommandOutput} for command's `response` shape. + * @see {@link QBusinessClientResolvedConfig | config} for QBusinessClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

You don't have access to perform this action. Make sure you have the required + * permission policies and user accounts and try again.

+ * + * @throws {@link InternalServerException} (server fault) + *

An issue occurred with the internal server used for your Amazon Q Business service. Wait + * some minutes and try again, or contact Support for help.

+ * + * @throws {@link ThrottlingException} (client fault) + *

The request was denied due to throttling. Reduce the number of requests and try + * again.

+ * + * @throws {@link ValidationException} (client fault) + *

The input doesn't meet the constraints set by the Amazon Q Business service. Provide the + * correct input and try again.

+ * + * @throws {@link QBusinessServiceException} + *

Base exception class for all service exceptions from QBusiness service.

+ * + * @public + */ +export class ListPluginTypeActionsCommand extends $Command + .classBuilder< + ListPluginTypeActionsCommandInput, + ListPluginTypeActionsCommandOutput, + QBusinessClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep(commonParams) + .m(function (this: any, Command: any, cs: any, config: QBusinessClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("ExpertQ", "ListPluginTypeActions", {}) + .n("QBusinessClient", "ListPluginTypeActionsCommand") + .f(void 0, void 0) + .ser(se_ListPluginTypeActionsCommand) + .de(de_ListPluginTypeActionsCommand) + .build() { + /** @internal type navigation helper, not in runtime. */ + protected declare static __types: { + api: { + input: ListPluginTypeActionsRequest; + output: ListPluginTypeActionsResponse; + }; + sdk: { + input: ListPluginTypeActionsCommandInput; + output: ListPluginTypeActionsCommandOutput; + }; + }; +} diff --git a/clients/client-qbusiness/src/commands/ListPluginTypeMetadataCommand.ts b/clients/client-qbusiness/src/commands/ListPluginTypeMetadataCommand.ts new file mode 100644 index 000000000000..c6d1e5c72437 --- /dev/null +++ b/clients/client-qbusiness/src/commands/ListPluginTypeMetadataCommand.ts @@ -0,0 +1,116 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { commonParams } from "../endpoint/EndpointParameters"; +import { ListPluginTypeMetadataRequest, ListPluginTypeMetadataResponse } from "../models/models_0"; +import { de_ListPluginTypeMetadataCommand, se_ListPluginTypeMetadataCommand } from "../protocols/Aws_restJson1"; +import { QBusinessClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../QBusinessClient"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link ListPluginTypeMetadataCommand}. + */ +export interface ListPluginTypeMetadataCommandInput extends ListPluginTypeMetadataRequest {} +/** + * @public + * + * The output of {@link ListPluginTypeMetadataCommand}. + */ +export interface ListPluginTypeMetadataCommandOutput extends ListPluginTypeMetadataResponse, __MetadataBearer {} + +/** + *

Lists metadata for all Amazon Q Business plugin types.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { QBusinessClient, ListPluginTypeMetadataCommand } from "@aws-sdk/client-qbusiness"; // ES Modules import + * // const { QBusinessClient, ListPluginTypeMetadataCommand } = require("@aws-sdk/client-qbusiness"); // CommonJS import + * const client = new QBusinessClient(config); + * const input = { // ListPluginTypeMetadataRequest + * nextToken: "STRING_VALUE", + * maxResults: Number("int"), + * }; + * const command = new ListPluginTypeMetadataCommand(input); + * const response = await client.send(command); + * // { // ListPluginTypeMetadataResponse + * // nextToken: "STRING_VALUE", + * // items: [ // ListPluginTypeMetadataSummaries + * // { // PluginTypeMetadataSummary + * // type: "SERVICE_NOW" || "SALESFORCE" || "JIRA" || "ZENDESK" || "CUSTOM" || "QUICKSIGHT" || "SERVICENOW_NOW_PLATFORM" || "JIRA_CLOUD" || "SALESFORCE_CRM" || "ZENDESK_SUITE" || "ATLASSIAN_CONFLUENCE" || "GOOGLE_CALENDAR" || "MICROSOFT_TEAMS" || "MICROSOFT_EXCHANGE" || "PAGERDUTY_ADVANCE" || "SMARTSHEET" || "ASANA", + * // category: "Customer relationship management (CRM)" || "Project management" || "Communication" || "Productivity" || "Ticketing and incident management", + * // description: "STRING_VALUE", + * // }, + * // ], + * // }; + * + * ``` + * + * @param ListPluginTypeMetadataCommandInput - {@link ListPluginTypeMetadataCommandInput} + * @returns {@link ListPluginTypeMetadataCommandOutput} + * @see {@link ListPluginTypeMetadataCommandInput} for command's `input` shape. + * @see {@link ListPluginTypeMetadataCommandOutput} for command's `response` shape. + * @see {@link QBusinessClientResolvedConfig | config} for QBusinessClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

You don't have access to perform this action. Make sure you have the required + * permission policies and user accounts and try again.

+ * + * @throws {@link InternalServerException} (server fault) + *

An issue occurred with the internal server used for your Amazon Q Business service. Wait + * some minutes and try again, or contact Support for help.

+ * + * @throws {@link ThrottlingException} (client fault) + *

The request was denied due to throttling. Reduce the number of requests and try + * again.

+ * + * @throws {@link ValidationException} (client fault) + *

The input doesn't meet the constraints set by the Amazon Q Business service. Provide the + * correct input and try again.

+ * + * @throws {@link QBusinessServiceException} + *

Base exception class for all service exceptions from QBusiness service.

+ * + * @public + */ +export class ListPluginTypeMetadataCommand extends $Command + .classBuilder< + ListPluginTypeMetadataCommandInput, + ListPluginTypeMetadataCommandOutput, + QBusinessClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep(commonParams) + .m(function (this: any, Command: any, cs: any, config: QBusinessClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("ExpertQ", "ListPluginTypeMetadata", {}) + .n("QBusinessClient", "ListPluginTypeMetadataCommand") + .f(void 0, void 0) + .ser(se_ListPluginTypeMetadataCommand) + .de(de_ListPluginTypeMetadataCommand) + .build() { + /** @internal type navigation helper, not in runtime. */ + protected declare static __types: { + api: { + input: ListPluginTypeMetadataRequest; + output: ListPluginTypeMetadataResponse; + }; + sdk: { + input: ListPluginTypeMetadataCommandInput; + output: ListPluginTypeMetadataCommandOutput; + }; + }; +} diff --git a/clients/client-qbusiness/src/commands/ListPluginsCommand.ts b/clients/client-qbusiness/src/commands/ListPluginsCommand.ts index 3884f36c5842..97291894727f 100644 --- a/clients/client-qbusiness/src/commands/ListPluginsCommand.ts +++ b/clients/client-qbusiness/src/commands/ListPluginsCommand.ts @@ -48,7 +48,7 @@ export interface ListPluginsCommandOutput extends ListPluginsResponse, __Metadat * // { // Plugin * // pluginId: "STRING_VALUE", * // displayName: "STRING_VALUE", - * // type: "SERVICE_NOW" || "SALESFORCE" || "JIRA" || "ZENDESK" || "CUSTOM", + * // type: "SERVICE_NOW" || "SALESFORCE" || "JIRA" || "ZENDESK" || "CUSTOM" || "QUICKSIGHT" || "SERVICENOW_NOW_PLATFORM" || "JIRA_CLOUD" || "SALESFORCE_CRM" || "ZENDESK_SUITE" || "ATLASSIAN_CONFLUENCE" || "GOOGLE_CALENDAR" || "MICROSOFT_TEAMS" || "MICROSOFT_EXCHANGE" || "PAGERDUTY_ADVANCE" || "SMARTSHEET" || "ASANA", * // serverUrl: "STRING_VALUE", * // state: "ENABLED" || "DISABLED", * // buildStatus: "READY" || "CREATE_IN_PROGRESS" || "CREATE_FAILED" || "UPDATE_IN_PROGRESS" || "UPDATE_FAILED" || "DELETE_IN_PROGRESS" || "DELETE_FAILED", @@ -75,8 +75,8 @@ export interface ListPluginsCommandOutput extends ListPluginsResponse, __Metadat * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ThrottlingException} (client fault) *

The request was denied due to throttling. Reduce the number of requests and try diff --git a/clients/client-qbusiness/src/commands/ListRetrieversCommand.ts b/clients/client-qbusiness/src/commands/ListRetrieversCommand.ts index 5ab1cdadbe31..4fe465cd64de 100644 --- a/clients/client-qbusiness/src/commands/ListRetrieversCommand.ts +++ b/clients/client-qbusiness/src/commands/ListRetrieversCommand.ts @@ -72,8 +72,8 @@ export interface ListRetrieversCommandOutput extends ListRetrieversResponse, __M * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ThrottlingException} (client fault) *

The request was denied due to throttling. Reduce the number of requests and try diff --git a/clients/client-qbusiness/src/commands/ListTagsForResourceCommand.ts b/clients/client-qbusiness/src/commands/ListTagsForResourceCommand.ts index 6434dc32ed10..918bb0461376 100644 --- a/clients/client-qbusiness/src/commands/ListTagsForResourceCommand.ts +++ b/clients/client-qbusiness/src/commands/ListTagsForResourceCommand.ts @@ -67,8 +67,8 @@ export interface ListTagsForResourceCommandOutput extends ListTagsForResourceRes * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ThrottlingException} (client fault) *

The request was denied due to throttling. Reduce the number of requests and try diff --git a/clients/client-qbusiness/src/commands/ListWebExperiencesCommand.ts b/clients/client-qbusiness/src/commands/ListWebExperiencesCommand.ts index e37fd5979be8..fb03781bc153 100644 --- a/clients/client-qbusiness/src/commands/ListWebExperiencesCommand.ts +++ b/clients/client-qbusiness/src/commands/ListWebExperiencesCommand.ts @@ -72,8 +72,8 @@ export interface ListWebExperiencesCommandOutput extends ListWebExperiencesRespo * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ThrottlingException} (client fault) *

The request was denied due to throttling. Reduce the number of requests and try diff --git a/clients/client-qbusiness/src/commands/PutFeedbackCommand.ts b/clients/client-qbusiness/src/commands/PutFeedbackCommand.ts index 455f1d80bd2e..2a855945f5a5 100644 --- a/clients/client-qbusiness/src/commands/PutFeedbackCommand.ts +++ b/clients/client-qbusiness/src/commands/PutFeedbackCommand.ts @@ -70,8 +70,8 @@ export interface PutFeedbackCommandOutput extends __MetadataBearer {} * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ThrottlingException} (client fault) *

The request was denied due to throttling. Reduce the number of requests and try diff --git a/clients/client-qbusiness/src/commands/PutGroupCommand.ts b/clients/client-qbusiness/src/commands/PutGroupCommand.ts index 57c8fbe607bc..5f5308212a71 100644 --- a/clients/client-qbusiness/src/commands/PutGroupCommand.ts +++ b/clients/client-qbusiness/src/commands/PutGroupCommand.ts @@ -92,8 +92,8 @@ export interface PutGroupCommandOutput extends PutGroupResponse, __MetadataBeare * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ServiceQuotaExceededException} (client fault) *

You have exceeded the set limits for your Amazon Q Business service.

diff --git a/clients/client-qbusiness/src/commands/SearchRelevantContentCommand.ts b/clients/client-qbusiness/src/commands/SearchRelevantContentCommand.ts new file mode 100644 index 000000000000..c540bb079aae --- /dev/null +++ b/clients/client-qbusiness/src/commands/SearchRelevantContentCommand.ts @@ -0,0 +1,239 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { commonParams } from "../endpoint/EndpointParameters"; +import { SearchRelevantContentResponse } from "../models/models_0"; +import { SearchRelevantContentRequest } from "../models/models_1"; +import { de_SearchRelevantContentCommand, se_SearchRelevantContentCommand } from "../protocols/Aws_restJson1"; +import { QBusinessClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../QBusinessClient"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link SearchRelevantContentCommand}. + */ +export interface SearchRelevantContentCommandInput extends SearchRelevantContentRequest {} +/** + * @public + * + * The output of {@link SearchRelevantContentCommand}. + */ +export interface SearchRelevantContentCommandOutput extends SearchRelevantContentResponse, __MetadataBearer {} + +/** + *

Searches for relevant content in a Q Business application based on a query. This operation takes a + * search query text, the Q Business application identifier, and optional filters + * (such as user ID, user groups, content source, and maximum results) as input. It returns a list of + * relevant content items, where each item includes the content text, the unique document identifier, + * the document title, the document URI, any relevant document attributes, and score attributes + * indicating the confidence level of the relevance.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { QBusinessClient, SearchRelevantContentCommand } from "@aws-sdk/client-qbusiness"; // ES Modules import + * // const { QBusinessClient, SearchRelevantContentCommand } = require("@aws-sdk/client-qbusiness"); // CommonJS import + * const client = new QBusinessClient(config); + * const input = { // SearchRelevantContentRequest + * applicationId: "STRING_VALUE", // required + * userId: "STRING_VALUE", + * userGroups: [ // UserGroups + * "STRING_VALUE", + * ], + * queryText: "STRING_VALUE", // required + * contentSource: { // ContentSource Union: only one key present + * retriever: { // RetrieverContentSource + * retrieverId: "STRING_VALUE", // required + * }, + * }, + * attributeFilter: { // AttributeFilter + * andAllFilters: [ // AttributeFilters + * { + * andAllFilters: [ + * "", + * ], + * orAllFilters: [ + * "", + * ], + * notFilter: "", + * equalsTo: { // DocumentAttribute + * name: "STRING_VALUE", // required + * value: { // DocumentAttributeValue Union: only one key present + * stringValue: "STRING_VALUE", + * stringListValue: [ // DocumentAttributeStringListValue + * "STRING_VALUE", + * ], + * longValue: Number("long"), + * dateValue: new Date("TIMESTAMP"), + * }, + * }, + * containsAll: { + * name: "STRING_VALUE", // required + * value: {// Union: only one key present + * stringValue: "STRING_VALUE", + * stringListValue: [ + * "STRING_VALUE", + * ], + * longValue: Number("long"), + * dateValue: new Date("TIMESTAMP"), + * }, + * }, + * containsAny: { + * name: "STRING_VALUE", // required + * value: {// Union: only one key present + * stringValue: "STRING_VALUE", + * stringListValue: [ + * "STRING_VALUE", + * ], + * longValue: Number("long"), + * dateValue: new Date("TIMESTAMP"), + * }, + * }, + * greaterThan: { + * name: "STRING_VALUE", // required + * value: {// Union: only one key present + * stringValue: "STRING_VALUE", + * stringListValue: [ + * "STRING_VALUE", + * ], + * longValue: Number("long"), + * dateValue: new Date("TIMESTAMP"), + * }, + * }, + * greaterThanOrEquals: { + * name: "STRING_VALUE", // required + * value: {// Union: only one key present + * stringValue: "STRING_VALUE", + * stringListValue: [ + * "STRING_VALUE", + * ], + * longValue: Number("long"), + * dateValue: new Date("TIMESTAMP"), + * }, + * }, + * lessThan: "", + * lessThanOrEquals: "", + * }, + * ], + * orAllFilters: [ + * "", + * ], + * notFilter: "", + * equalsTo: "", + * containsAll: "", + * containsAny: "", + * greaterThan: "", + * greaterThanOrEquals: "", + * lessThan: "", + * lessThanOrEquals: "", + * }, + * maxResults: Number("int"), + * nextToken: "STRING_VALUE", + * }; + * const command = new SearchRelevantContentCommand(input); + * const response = await client.send(command); + * // { // SearchRelevantContentResponse + * // relevantContent: [ // RelevantContentList + * // { // RelevantContent + * // content: "STRING_VALUE", + * // documentId: "STRING_VALUE", + * // documentTitle: "STRING_VALUE", + * // documentUri: "STRING_VALUE", + * // documentAttributes: [ // DocumentAttributes + * // { // DocumentAttribute + * // name: "STRING_VALUE", // required + * // value: { // DocumentAttributeValue Union: only one key present + * // stringValue: "STRING_VALUE", + * // stringListValue: [ // DocumentAttributeStringListValue + * // "STRING_VALUE", + * // ], + * // longValue: Number("long"), + * // dateValue: new Date("TIMESTAMP"), + * // }, + * // }, + * // ], + * // scoreAttributes: { // ScoreAttributes + * // scoreConfidence: "VERY_HIGH" || "HIGH" || "MEDIUM" || "LOW" || "NOT_AVAILABLE", + * // }, + * // }, + * // ], + * // nextToken: "STRING_VALUE", + * // }; + * + * ``` + * + * @param SearchRelevantContentCommandInput - {@link SearchRelevantContentCommandInput} + * @returns {@link SearchRelevantContentCommandOutput} + * @see {@link SearchRelevantContentCommandInput} for command's `input` shape. + * @see {@link SearchRelevantContentCommandOutput} for command's `response` shape. + * @see {@link QBusinessClientResolvedConfig | config} for QBusinessClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

You don't have access to perform this action. Make sure you have the required + * permission policies and user accounts and try again.

+ * + * @throws {@link InternalServerException} (server fault) + *

An issue occurred with the internal server used for your Amazon Q Business service. Wait + * some minutes and try again, or contact Support for help.

+ * + * @throws {@link LicenseNotFoundException} (client fault) + *

You don't have permissions to perform the action because your license is inactive. Ask + * your admin to activate your license and try again after your licence is active.

+ * + * @throws {@link ResourceNotFoundException} (client fault) + *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

+ * + * @throws {@link ThrottlingException} (client fault) + *

The request was denied due to throttling. Reduce the number of requests and try + * again.

+ * + * @throws {@link ValidationException} (client fault) + *

The input doesn't meet the constraints set by the Amazon Q Business service. Provide the + * correct input and try again.

+ * + * @throws {@link QBusinessServiceException} + *

Base exception class for all service exceptions from QBusiness service.

+ * + * @public + */ +export class SearchRelevantContentCommand extends $Command + .classBuilder< + SearchRelevantContentCommandInput, + SearchRelevantContentCommandOutput, + QBusinessClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep(commonParams) + .m(function (this: any, Command: any, cs: any, config: QBusinessClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("ExpertQ", "SearchRelevantContent", {}) + .n("QBusinessClient", "SearchRelevantContentCommand") + .f(void 0, void 0) + .ser(se_SearchRelevantContentCommand) + .de(de_SearchRelevantContentCommand) + .build() { + /** @internal type navigation helper, not in runtime. */ + protected declare static __types: { + api: { + input: SearchRelevantContentRequest; + output: SearchRelevantContentResponse; + }; + sdk: { + input: SearchRelevantContentCommandInput; + output: SearchRelevantContentCommandOutput; + }; + }; +} diff --git a/clients/client-qbusiness/src/commands/StartDataSourceSyncJobCommand.ts b/clients/client-qbusiness/src/commands/StartDataSourceSyncJobCommand.ts index 25221b8fd8d6..569469e9a1ff 100644 --- a/clients/client-qbusiness/src/commands/StartDataSourceSyncJobCommand.ts +++ b/clients/client-qbusiness/src/commands/StartDataSourceSyncJobCommand.ts @@ -5,7 +5,8 @@ import { Command as $Command } from "@smithy/smithy-client"; import { MetadataBearer as __MetadataBearer } from "@smithy/types"; import { commonParams } from "../endpoint/EndpointParameters"; -import { StartDataSourceSyncJobRequest, StartDataSourceSyncJobResponse } from "../models/models_0"; +import { StartDataSourceSyncJobRequest } from "../models/models_0"; +import { StartDataSourceSyncJobResponse } from "../models/models_1"; import { de_StartDataSourceSyncJobCommand, se_StartDataSourceSyncJobCommand } from "../protocols/Aws_restJson1"; import { QBusinessClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../QBusinessClient"; @@ -68,8 +69,8 @@ export interface StartDataSourceSyncJobCommandOutput extends StartDataSourceSync * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ServiceQuotaExceededException} (client fault) *

You have exceeded the set limits for your Amazon Q Business service.

diff --git a/clients/client-qbusiness/src/commands/StopDataSourceSyncJobCommand.ts b/clients/client-qbusiness/src/commands/StopDataSourceSyncJobCommand.ts index a4b05326b50c..e252db8e946e 100644 --- a/clients/client-qbusiness/src/commands/StopDataSourceSyncJobCommand.ts +++ b/clients/client-qbusiness/src/commands/StopDataSourceSyncJobCommand.ts @@ -5,7 +5,7 @@ import { Command as $Command } from "@smithy/smithy-client"; import { MetadataBearer as __MetadataBearer } from "@smithy/types"; import { commonParams } from "../endpoint/EndpointParameters"; -import { StopDataSourceSyncJobRequest, StopDataSourceSyncJobResponse } from "../models/models_0"; +import { StopDataSourceSyncJobRequest, StopDataSourceSyncJobResponse } from "../models/models_1"; import { de_StopDataSourceSyncJobCommand, se_StopDataSourceSyncJobCommand } from "../protocols/Aws_restJson1"; import { QBusinessClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../QBusinessClient"; @@ -66,8 +66,8 @@ export interface StopDataSourceSyncJobCommandOutput extends StopDataSourceSyncJo * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ThrottlingException} (client fault) *

The request was denied due to throttling. Reduce the number of requests and try diff --git a/clients/client-qbusiness/src/commands/TagResourceCommand.ts b/clients/client-qbusiness/src/commands/TagResourceCommand.ts index 8a149e154138..fde84fe26bf7 100644 --- a/clients/client-qbusiness/src/commands/TagResourceCommand.ts +++ b/clients/client-qbusiness/src/commands/TagResourceCommand.ts @@ -5,7 +5,7 @@ import { Command as $Command } from "@smithy/smithy-client"; import { MetadataBearer as __MetadataBearer } from "@smithy/types"; import { commonParams } from "../endpoint/EndpointParameters"; -import { TagResourceRequest, TagResourceResponse } from "../models/models_0"; +import { TagResourceRequest, TagResourceResponse } from "../models/models_1"; import { de_TagResourceCommand, se_TagResourceCommand } from "../protocols/Aws_restJson1"; import { QBusinessClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../QBusinessClient"; @@ -71,8 +71,8 @@ export interface TagResourceCommandOutput extends TagResourceResponse, __Metadat * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ThrottlingException} (client fault) *

The request was denied due to throttling. Reduce the number of requests and try diff --git a/clients/client-qbusiness/src/commands/UntagResourceCommand.ts b/clients/client-qbusiness/src/commands/UntagResourceCommand.ts index e191c1cc2520..cc058cd16e8b 100644 --- a/clients/client-qbusiness/src/commands/UntagResourceCommand.ts +++ b/clients/client-qbusiness/src/commands/UntagResourceCommand.ts @@ -5,7 +5,7 @@ import { Command as $Command } from "@smithy/smithy-client"; import { MetadataBearer as __MetadataBearer } from "@smithy/types"; import { commonParams } from "../endpoint/EndpointParameters"; -import { UntagResourceRequest, UntagResourceResponse } from "../models/models_0"; +import { UntagResourceRequest, UntagResourceResponse } from "../models/models_1"; import { de_UntagResourceCommand, se_UntagResourceCommand } from "../protocols/Aws_restJson1"; import { QBusinessClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../QBusinessClient"; @@ -62,8 +62,8 @@ export interface UntagResourceCommandOutput extends UntagResourceResponse, __Met * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ThrottlingException} (client fault) *

The request was denied due to throttling. Reduce the number of requests and try diff --git a/clients/client-qbusiness/src/commands/UpdateApplicationCommand.ts b/clients/client-qbusiness/src/commands/UpdateApplicationCommand.ts index 5023e47e9c0d..c318a441f105 100644 --- a/clients/client-qbusiness/src/commands/UpdateApplicationCommand.ts +++ b/clients/client-qbusiness/src/commands/UpdateApplicationCommand.ts @@ -92,8 +92,8 @@ export interface UpdateApplicationCommandOutput extends UpdateApplicationRespons * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ThrottlingException} (client fault) *

The request was denied due to throttling. Reduce the number of requests and try diff --git a/clients/client-qbusiness/src/commands/UpdateChatControlsConfigurationCommand.ts b/clients/client-qbusiness/src/commands/UpdateChatControlsConfigurationCommand.ts index 02e55f4a8027..484d633a29e9 100644 --- a/clients/client-qbusiness/src/commands/UpdateChatControlsConfigurationCommand.ts +++ b/clients/client-qbusiness/src/commands/UpdateChatControlsConfigurationCommand.ts @@ -5,7 +5,7 @@ import { Command as $Command } from "@smithy/smithy-client"; import { MetadataBearer as __MetadataBearer } from "@smithy/types"; import { commonParams } from "../endpoint/EndpointParameters"; -import { UpdateChatControlsConfigurationRequest, UpdateChatControlsConfigurationResponse } from "../models/models_0"; +import { UpdateChatControlsConfigurationRequest, UpdateChatControlsConfigurationResponse } from "../models/models_1"; import { de_UpdateChatControlsConfigurationCommand, se_UpdateChatControlsConfigurationCommand, @@ -169,8 +169,8 @@ export interface UpdateChatControlsConfigurationCommandOutput * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ServiceQuotaExceededException} (client fault) *

You have exceeded the set limits for your Amazon Q Business service.

diff --git a/clients/client-qbusiness/src/commands/UpdateDataAccessorCommand.ts b/clients/client-qbusiness/src/commands/UpdateDataAccessorCommand.ts new file mode 100644 index 000000000000..c1d9a7cb4d54 --- /dev/null +++ b/clients/client-qbusiness/src/commands/UpdateDataAccessorCommand.ts @@ -0,0 +1,207 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { commonParams } from "../endpoint/EndpointParameters"; +import { UpdateDataAccessorResponse } from "../models/models_0"; +import { UpdateDataAccessorRequest, UpdateDataAccessorRequestFilterSensitiveLog } from "../models/models_1"; +import { de_UpdateDataAccessorCommand, se_UpdateDataAccessorCommand } from "../protocols/Aws_restJson1"; +import { QBusinessClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../QBusinessClient"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link UpdateDataAccessorCommand}. + */ +export interface UpdateDataAccessorCommandInput extends UpdateDataAccessorRequest {} +/** + * @public + * + * The output of {@link UpdateDataAccessorCommand}. + */ +export interface UpdateDataAccessorCommandOutput extends UpdateDataAccessorResponse, __MetadataBearer {} + +/** + *

Updates an existing data accessor. This operation allows modifying the action configurations + * (the allowed actions and associated filters) and the display name of the data accessor. + * It does not allow changing the IAM role associated with the data accessor or other core properties of the data accessor.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { QBusinessClient, UpdateDataAccessorCommand } from "@aws-sdk/client-qbusiness"; // ES Modules import + * // const { QBusinessClient, UpdateDataAccessorCommand } = require("@aws-sdk/client-qbusiness"); // CommonJS import + * const client = new QBusinessClient(config); + * const input = { // UpdateDataAccessorRequest + * applicationId: "STRING_VALUE", // required + * dataAccessorId: "STRING_VALUE", // required + * actionConfigurations: [ // ActionConfigurationList // required + * { // ActionConfiguration + * action: "STRING_VALUE", // required + * filterConfiguration: { // ActionFilterConfiguration + * documentAttributeFilter: { // AttributeFilter + * andAllFilters: [ // AttributeFilters + * { + * andAllFilters: [ + * "", + * ], + * orAllFilters: [ + * "", + * ], + * notFilter: "", + * equalsTo: { // DocumentAttribute + * name: "STRING_VALUE", // required + * value: { // DocumentAttributeValue Union: only one key present + * stringValue: "STRING_VALUE", + * stringListValue: [ // DocumentAttributeStringListValue + * "STRING_VALUE", + * ], + * longValue: Number("long"), + * dateValue: new Date("TIMESTAMP"), + * }, + * }, + * containsAll: { + * name: "STRING_VALUE", // required + * value: {// Union: only one key present + * stringValue: "STRING_VALUE", + * stringListValue: [ + * "STRING_VALUE", + * ], + * longValue: Number("long"), + * dateValue: new Date("TIMESTAMP"), + * }, + * }, + * containsAny: { + * name: "STRING_VALUE", // required + * value: {// Union: only one key present + * stringValue: "STRING_VALUE", + * stringListValue: [ + * "STRING_VALUE", + * ], + * longValue: Number("long"), + * dateValue: new Date("TIMESTAMP"), + * }, + * }, + * greaterThan: { + * name: "STRING_VALUE", // required + * value: {// Union: only one key present + * stringValue: "STRING_VALUE", + * stringListValue: [ + * "STRING_VALUE", + * ], + * longValue: Number("long"), + * dateValue: new Date("TIMESTAMP"), + * }, + * }, + * greaterThanOrEquals: { + * name: "STRING_VALUE", // required + * value: {// Union: only one key present + * stringValue: "STRING_VALUE", + * stringListValue: [ + * "STRING_VALUE", + * ], + * longValue: Number("long"), + * dateValue: new Date("TIMESTAMP"), + * }, + * }, + * lessThan: "", + * lessThanOrEquals: "", + * }, + * ], + * orAllFilters: [ + * "", + * ], + * notFilter: "", + * equalsTo: "", + * containsAll: "", + * containsAny: "", + * greaterThan: "", + * greaterThanOrEquals: "", + * lessThan: "", + * lessThanOrEquals: "", + * }, + * }, + * }, + * ], + * displayName: "STRING_VALUE", + * }; + * const command = new UpdateDataAccessorCommand(input); + * const response = await client.send(command); + * // {}; + * + * ``` + * + * @param UpdateDataAccessorCommandInput - {@link UpdateDataAccessorCommandInput} + * @returns {@link UpdateDataAccessorCommandOutput} + * @see {@link UpdateDataAccessorCommandInput} for command's `input` shape. + * @see {@link UpdateDataAccessorCommandOutput} for command's `response` shape. + * @see {@link QBusinessClientResolvedConfig | config} for QBusinessClient's `config` shape. + * + * @throws {@link AccessDeniedException} (client fault) + *

You don't have access to perform this action. Make sure you have the required + * permission policies and user accounts and try again.

+ * + * @throws {@link ConflictException} (client fault) + *

You are trying to perform an action that conflicts with the current status of your + * resource. Fix any inconsistencies with your resources and try again.

+ * + * @throws {@link InternalServerException} (server fault) + *

An issue occurred with the internal server used for your Amazon Q Business service. Wait + * some minutes and try again, or contact Support for help.

+ * + * @throws {@link ResourceNotFoundException} (client fault) + *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

+ * + * @throws {@link ThrottlingException} (client fault) + *

The request was denied due to throttling. Reduce the number of requests and try + * again.

+ * + * @throws {@link ValidationException} (client fault) + *

The input doesn't meet the constraints set by the Amazon Q Business service. Provide the + * correct input and try again.

+ * + * @throws {@link QBusinessServiceException} + *

Base exception class for all service exceptions from QBusiness service.

+ * + * @public + */ +export class UpdateDataAccessorCommand extends $Command + .classBuilder< + UpdateDataAccessorCommandInput, + UpdateDataAccessorCommandOutput, + QBusinessClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep(commonParams) + .m(function (this: any, Command: any, cs: any, config: QBusinessClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("ExpertQ", "UpdateDataAccessor", {}) + .n("QBusinessClient", "UpdateDataAccessorCommand") + .f(UpdateDataAccessorRequestFilterSensitiveLog, void 0) + .ser(se_UpdateDataAccessorCommand) + .de(de_UpdateDataAccessorCommand) + .build() { + /** @internal type navigation helper, not in runtime. */ + protected declare static __types: { + api: { + input: UpdateDataAccessorRequest; + output: {}; + }; + sdk: { + input: UpdateDataAccessorCommandInput; + output: UpdateDataAccessorCommandOutput; + }; + }; +} diff --git a/clients/client-qbusiness/src/commands/UpdateDataSourceCommand.ts b/clients/client-qbusiness/src/commands/UpdateDataSourceCommand.ts index 4b641fe3cc51..5808637b2964 100644 --- a/clients/client-qbusiness/src/commands/UpdateDataSourceCommand.ts +++ b/clients/client-qbusiness/src/commands/UpdateDataSourceCommand.ts @@ -148,8 +148,8 @@ export interface UpdateDataSourceCommandOutput extends UpdateDataSourceResponse, * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ThrottlingException} (client fault) *

The request was denied due to throttling. Reduce the number of requests and try diff --git a/clients/client-qbusiness/src/commands/UpdateIndexCommand.ts b/clients/client-qbusiness/src/commands/UpdateIndexCommand.ts index 7b7d9026fe42..c039ef6e09fb 100644 --- a/clients/client-qbusiness/src/commands/UpdateIndexCommand.ts +++ b/clients/client-qbusiness/src/commands/UpdateIndexCommand.ts @@ -76,8 +76,8 @@ export interface UpdateIndexCommandOutput extends UpdateIndexResponse, __Metadat * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ServiceQuotaExceededException} (client fault) *

You have exceeded the set limits for your Amazon Q Business service.

diff --git a/clients/client-qbusiness/src/commands/UpdatePluginCommand.ts b/clients/client-qbusiness/src/commands/UpdatePluginCommand.ts index fa741cac281b..2aa459fec6f4 100644 --- a/clients/client-qbusiness/src/commands/UpdatePluginCommand.ts +++ b/clients/client-qbusiness/src/commands/UpdatePluginCommand.ts @@ -60,8 +60,14 @@ export interface UpdatePluginCommandOutput extends UpdatePluginResponse, __Metad * oAuth2ClientCredentialConfiguration: { // OAuth2ClientCredentialConfiguration * secretArn: "STRING_VALUE", // required * roleArn: "STRING_VALUE", // required + * authorizationUrl: "STRING_VALUE", + * tokenUrl: "STRING_VALUE", * }, * noAuthConfiguration: {}, + * idcAuthConfiguration: { // IdcAuthConfiguration + * idcApplicationArn: "STRING_VALUE", // required + * roleArn: "STRING_VALUE", // required + * }, * }, * }; * const command = new UpdatePluginCommand(input); @@ -89,8 +95,8 @@ export interface UpdatePluginCommandOutput extends UpdatePluginResponse, __Metad * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ServiceQuotaExceededException} (client fault) *

You have exceeded the set limits for your Amazon Q Business service.

diff --git a/clients/client-qbusiness/src/commands/UpdateRetrieverCommand.ts b/clients/client-qbusiness/src/commands/UpdateRetrieverCommand.ts index de078886aae6..481417a15178 100644 --- a/clients/client-qbusiness/src/commands/UpdateRetrieverCommand.ts +++ b/clients/client-qbusiness/src/commands/UpdateRetrieverCommand.ts @@ -95,8 +95,8 @@ export interface UpdateRetrieverCommandOutput extends UpdateRetrieverResponse, _ * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ServiceQuotaExceededException} (client fault) *

You have exceeded the set limits for your Amazon Q Business service.

diff --git a/clients/client-qbusiness/src/commands/UpdateUserCommand.ts b/clients/client-qbusiness/src/commands/UpdateUserCommand.ts index f5a8ab7d4cd9..aab6bb183813 100644 --- a/clients/client-qbusiness/src/commands/UpdateUserCommand.ts +++ b/clients/client-qbusiness/src/commands/UpdateUserCommand.ts @@ -5,7 +5,7 @@ import { Command as $Command } from "@smithy/smithy-client"; import { MetadataBearer as __MetadataBearer } from "@smithy/types"; import { commonParams } from "../endpoint/EndpointParameters"; -import { UpdateUserRequest, UpdateUserResponse } from "../models/models_0"; +import { UpdateUserRequest, UpdateUserResponse } from "../models/models_1"; import { de_UpdateUserCommand, se_UpdateUserCommand } from "../protocols/Aws_restJson1"; import { QBusinessClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../QBusinessClient"; @@ -96,8 +96,8 @@ export interface UpdateUserCommandOutput extends UpdateUserResponse, __MetadataB * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ServiceQuotaExceededException} (client fault) *

You have exceeded the set limits for your Amazon Q Business service.

diff --git a/clients/client-qbusiness/src/commands/UpdateWebExperienceCommand.ts b/clients/client-qbusiness/src/commands/UpdateWebExperienceCommand.ts index b4f0cd884f89..43e9bd2f5741 100644 --- a/clients/client-qbusiness/src/commands/UpdateWebExperienceCommand.ts +++ b/clients/client-qbusiness/src/commands/UpdateWebExperienceCommand.ts @@ -68,6 +68,12 @@ export interface UpdateWebExperienceCommandOutput extends UpdateWebExperienceRes * "STRING_VALUE", * ], * }, + * customizationConfiguration: { // CustomizationConfiguration + * customCSSUrl: "STRING_VALUE", + * logoUrl: "STRING_VALUE", + * fontUrl: "STRING_VALUE", + * faviconUrl: "STRING_VALUE", + * }, * }; * const command = new UpdateWebExperienceCommand(input); * const response = await client.send(command); @@ -94,8 +100,8 @@ export interface UpdateWebExperienceCommandOutput extends UpdateWebExperienceRes * some minutes and try again, or contact Support for help.

* * @throws {@link ResourceNotFoundException} (client fault) - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* * @throws {@link ThrottlingException} (client fault) *

The request was denied due to throttling. Reduce the number of requests and try diff --git a/clients/client-qbusiness/src/commands/index.ts b/clients/client-qbusiness/src/commands/index.ts index bd870d4e9c8e..d801536dc94d 100644 --- a/clients/client-qbusiness/src/commands/index.ts +++ b/clients/client-qbusiness/src/commands/index.ts @@ -1,9 +1,11 @@ // smithy-typescript generated code +export * from "./AssociatePermissionCommand"; export * from "./BatchDeleteDocumentCommand"; export * from "./BatchPutDocumentCommand"; export * from "./ChatCommand"; export * from "./ChatSyncCommand"; export * from "./CreateApplicationCommand"; +export * from "./CreateDataAccessorCommand"; export * from "./CreateDataSourceCommand"; export * from "./CreateIndexCommand"; export * from "./CreatePluginCommand"; @@ -13,6 +15,7 @@ export * from "./CreateWebExperienceCommand"; export * from "./DeleteApplicationCommand"; export * from "./DeleteChatControlsConfigurationCommand"; export * from "./DeleteConversationCommand"; +export * from "./DeleteDataAccessorCommand"; export * from "./DeleteDataSourceCommand"; export * from "./DeleteGroupCommand"; export * from "./DeleteIndexCommand"; @@ -20,37 +23,46 @@ export * from "./DeletePluginCommand"; export * from "./DeleteRetrieverCommand"; export * from "./DeleteUserCommand"; export * from "./DeleteWebExperienceCommand"; +export * from "./DisassociatePermissionCommand"; export * from "./GetApplicationCommand"; export * from "./GetChatControlsConfigurationCommand"; +export * from "./GetDataAccessorCommand"; export * from "./GetDataSourceCommand"; export * from "./GetGroupCommand"; export * from "./GetIndexCommand"; export * from "./GetMediaCommand"; export * from "./GetPluginCommand"; +export * from "./GetPolicyCommand"; export * from "./GetRetrieverCommand"; export * from "./GetUserCommand"; export * from "./GetWebExperienceCommand"; export * from "./ListApplicationsCommand"; export * from "./ListAttachmentsCommand"; export * from "./ListConversationsCommand"; +export * from "./ListDataAccessorsCommand"; export * from "./ListDataSourceSyncJobsCommand"; export * from "./ListDataSourcesCommand"; export * from "./ListDocumentsCommand"; export * from "./ListGroupsCommand"; export * from "./ListIndicesCommand"; export * from "./ListMessagesCommand"; +export * from "./ListPluginActionsCommand"; +export * from "./ListPluginTypeActionsCommand"; +export * from "./ListPluginTypeMetadataCommand"; export * from "./ListPluginsCommand"; export * from "./ListRetrieversCommand"; export * from "./ListTagsForResourceCommand"; export * from "./ListWebExperiencesCommand"; export * from "./PutFeedbackCommand"; export * from "./PutGroupCommand"; +export * from "./SearchRelevantContentCommand"; export * from "./StartDataSourceSyncJobCommand"; export * from "./StopDataSourceSyncJobCommand"; export * from "./TagResourceCommand"; export * from "./UntagResourceCommand"; export * from "./UpdateApplicationCommand"; export * from "./UpdateChatControlsConfigurationCommand"; +export * from "./UpdateDataAccessorCommand"; export * from "./UpdateDataSourceCommand"; export * from "./UpdateIndexCommand"; export * from "./UpdatePluginCommand"; diff --git a/clients/client-qbusiness/src/models/index.ts b/clients/client-qbusiness/src/models/index.ts index 9eaceb12865f..1657800f73ce 100644 --- a/clients/client-qbusiness/src/models/index.ts +++ b/clients/client-qbusiness/src/models/index.ts @@ -1,2 +1,3 @@ // smithy-typescript generated code export * from "./models_0"; +export * from "./models_1"; diff --git a/clients/client-qbusiness/src/models/models_0.ts b/clients/client-qbusiness/src/models/models_0.ts index b33e033bca77..6a8b36f76c52 100644 --- a/clients/client-qbusiness/src/models/models_0.ts +++ b/clients/client-qbusiness/src/models/models_0.ts @@ -209,6 +209,119 @@ export class AccessDeniedException extends __BaseException { } } +/** + *

The value of a document attribute. You can only provide one value for a document + * attribute.

+ * @public + */ +export type DocumentAttributeValue = + | DocumentAttributeValue.DateValueMember + | DocumentAttributeValue.LongValueMember + | DocumentAttributeValue.StringListValueMember + | DocumentAttributeValue.StringValueMember + | DocumentAttributeValue.$UnknownMember; + +/** + * @public + */ +export namespace DocumentAttributeValue { + /** + *

A string.

+ * @public + */ + export interface StringValueMember { + stringValue: string; + stringListValue?: never; + longValue?: never; + dateValue?: never; + $unknown?: never; + } + + /** + *

A list of strings.

+ * @public + */ + export interface StringListValueMember { + stringValue?: never; + stringListValue: string[]; + longValue?: never; + dateValue?: never; + $unknown?: never; + } + + /** + *

A long integer value.

+ * @public + */ + export interface LongValueMember { + stringValue?: never; + stringListValue?: never; + longValue: number; + dateValue?: never; + $unknown?: never; + } + + /** + *

A date expressed as an ISO 8601 string.

+ *

It's important for the time zone to be included in the ISO 8601 date-time format. For + * example, 2012-03-25T12:30:10+01:00 is the ISO 8601 date-time format for March 25th 2012 + * at 12:30PM (plus 10 seconds) in Central European Time.

+ * @public + */ + export interface DateValueMember { + stringValue?: never; + stringListValue?: never; + longValue?: never; + dateValue: Date; + $unknown?: never; + } + + /** + * @public + */ + export interface $UnknownMember { + stringValue?: never; + stringListValue?: never; + longValue?: never; + dateValue?: never; + $unknown: [string, any]; + } + + export interface Visitor { + stringValue: (value: string) => T; + stringListValue: (value: string[]) => T; + longValue: (value: number) => T; + dateValue: (value: Date) => T; + _: (name: string, value: any) => T; + } + + export const visit = (value: DocumentAttributeValue, visitor: Visitor): T => { + if (value.stringValue !== undefined) return visitor.stringValue(value.stringValue); + if (value.stringListValue !== undefined) return visitor.stringListValue(value.stringListValue); + if (value.longValue !== undefined) return visitor.longValue(value.longValue); + if (value.dateValue !== undefined) return visitor.dateValue(value.dateValue); + return visitor._(value.$unknown[0], value.$unknown[1]); + }; +} + +/** + *

A document attribute or metadata field.

+ * @public + */ +export interface DocumentAttribute { + /** + *

The identifier for the attribute.

+ * @public + */ + name: string | undefined; + + /** + *

The value of the attribute.

+ * @public + */ + value: DocumentAttributeValue | undefined; +} + /** *

A user input field in an plugin action execution payload.

* @public @@ -364,7 +477,7 @@ export interface ActionReviewPayloadField { /** *

Use to create a custom form with array fields (fields with nested objects inside an - * array).

+ * array).

* @public */ arrayItemJsonSchema?: __DocumentType | undefined; @@ -381,11 +494,23 @@ export interface ActionReviewPayloadField { * @enum */ export const PluginType = { + ASANA: "ASANA", + ATLASSIAN_CONFLUENCE: "ATLASSIAN_CONFLUENCE", CUSTOM: "CUSTOM", + GOOGLE_CALENDAR: "GOOGLE_CALENDAR", JIRA: "JIRA", + JIRA_CLOUD: "JIRA_CLOUD", + MICROSOFT_EXCHANGE: "MICROSOFT_EXCHANGE", + MICROSOFT_TEAMS: "MICROSOFT_TEAMS", + PAGERDUTY_ADVANCE: "PAGERDUTY_ADVANCE", + QUICKSIGHT: "QUICKSIGHT", SALESFORCE: "SALESFORCE", + SALESFORCE_CRM: "SALESFORCE_CRM", + SERVICENOW_NOW_PLATFORM: "SERVICENOW_NOW_PLATFORM", SERVICE_NOW: "SERVICE_NOW", + SMARTSHEET: "SMARTSHEET", ZENDESK: "ZENDESK", + ZENDESK_SUITE: "ZENDESK_SUITE", } as const; /** @@ -483,6 +608,48 @@ export interface ActionReviewEvent { payloadFieldNameSeparator?: string | undefined; } +/** + *

Summary information for an Amazon Q Business plugin action.

+ * @public + */ +export interface ActionSummary { + /** + *

The identifier of an Amazon Q Business plugin action.

+ * @public + */ + actionIdentifier?: string | undefined; + + /** + *

The display name assigned by Amazon Q Business to a plugin action. You can't + * modify this value.

+ * @public + */ + displayName?: string | undefined; + + /** + *

An Amazon Q Business suggested prompt and end user can use to invoke a plugin + * action. This value can be modified and sent as input to initiate an action. For + * example:

+ *
    + *
  • + *

    Create a Jira task

    + *
  • + *
  • + *

    Create a chat assistant task to find the root cause of a specific + * incident

    + *
  • + *
+ * @public + */ + instructionExample?: string | undefined; + + /** + *

The description of an Amazon Q Business plugin action.

+ * @public + */ + description?: string | undefined; +} + /** *

Information required for Amazon Q Business to find a specific file in an Amazon S3 * bucket.

@@ -580,6 +747,7 @@ export const IdentityType = { AWS_IAM_IDC: "AWS_IAM_IDC", AWS_IAM_IDP_OIDC: "AWS_IAM_IDP_OIDC", AWS_IAM_IDP_SAML: "AWS_IAM_IDP_SAML", + AWS_QUICKSIGHT_IDP: "AWS_QUICKSIGHT_IDP", } as const; /** @@ -587,6 +755,22 @@ export const IdentityType = { */ export type IdentityType = (typeof IdentityType)[keyof typeof IdentityType]; +/** + *

The Amazon QuickSight configuration for an Amazon Q Business application that uses QuickSight as the identity provider. + * For more information, see Creating an + * Amazon QuickSight integrated application.

+ * @public + */ +export interface QuickSightConfiguration { + /** + *

The Amazon QuickSight namespace that is used as the identity provider. For more information about QuickSight namespaces, see + * Namespace operations. + *

+ * @public + */ + clientNamespace: string | undefined; +} + /** * @public * @enum @@ -645,6 +829,12 @@ export interface Application { * @public */ identityType?: IdentityType | undefined; + + /** + *

The Amazon QuickSight configuration for an Amazon Q Business application that uses QuickSight as the identity provider.

+ * @public + */ + quickSightConfiguration?: QuickSightConfiguration | undefined; } /** @@ -893,6 +1083,14 @@ export interface CreateApplicationRequest { * @public */ personalizationConfiguration?: PersonalizationConfiguration | undefined; + + /** + *

The Amazon QuickSight configuration for an Amazon Q Business application that uses QuickSight for authentication. This configuration is + * required if your application uses QuickSight as the identity provider. For more information, see Creating an + * Amazon QuickSight integrated application.

+ * @public + */ + quickSightConfiguration?: QuickSightConfiguration | undefined; } /** @@ -934,8 +1132,8 @@ export class InternalServerException extends __BaseException { } /** - *

The resource you want to use doesn’t exist. Make sure you have provided the correct - * resource and try again.

+ *

The application or plugin resource you want to use doesn’t exist. Make sure you have + * provided the correct resource and try again.

* @public */ export class ResourceNotFoundException extends __BaseException { @@ -1095,153 +1293,308 @@ export class ValidationException extends __BaseException { /** * @public */ -export interface DeleteApplicationRequest { +export interface CreateDataAccessorResponse { /** - *

The identifier of the Amazon Q Business application.

+ *

The unique identifier of the created data accessor.

* @public */ - applicationId: string | undefined; -} - -/** - * @public - */ -export interface DeleteApplicationResponse {} + dataAccessorId: string | undefined; -/** - * @public - */ -export interface GetApplicationRequest { /** - *

The identifier of the Amazon Q Business application.

+ *

The Amazon Resource Name (ARN) of the AWS IAM Identity Center application created for this data accessor.

* @public */ - applicationId: string | undefined; -} + idcApplicationArn: string | undefined; -/** - *

Configuration information about the file upload during chat feature for your - * application.

- * @public - */ -export interface AppliedAttachmentsConfiguration { /** - *

Information about whether file upload during chat functionality is activated for your - * application.

+ *

The Amazon Resource Name (ARN) of the created data accessor.

* @public */ - attachmentsControlMode?: AttachmentsControlMode | undefined; + dataAccessorArn: string | undefined; } -/** - * @public - * @enum - */ -export const AutoSubscriptionStatus = { - DISABLED: "DISABLED", - ENABLED: "ENABLED", -} as const; - /** * @public */ -export type AutoSubscriptionStatus = (typeof AutoSubscriptionStatus)[keyof typeof AutoSubscriptionStatus]; +export interface DeleteDataAccessorRequest { + /** + *

The unique identifier of the Q Business application.

+ * @public + */ + applicationId: string | undefined; -/** - * @public - * @enum - */ -export const SubscriptionType = { - Q_BUSINESS: "Q_BUSINESS", - Q_LITE: "Q_LITE", -} as const; + /** + *

The unique identifier of the data accessor to delete.

+ * @public + */ + dataAccessorId: string | undefined; +} /** * @public */ -export type SubscriptionType = (typeof SubscriptionType)[keyof typeof SubscriptionType]; +export interface DeleteDataAccessorResponse {} /** - *

Subscription configuration information for an Amazon Q Business application - * using IAM identity federation for user management.

* @public */ -export interface AutoSubscriptionConfiguration { +export interface GetDataAccessorRequest { /** - *

Describes whether automatic subscriptions are enabled for an Amazon Q Business - * application using IAM identity federation for user management.

+ *

The unique identifier of the Q Business application.

* @public */ - autoSubscribe: AutoSubscriptionStatus | undefined; + applicationId: string | undefined; /** - *

Describes the default subscription type assigned to an Amazon Q Business - * application using IAM identity federation for user management. If the - * value for autoSubscribe is set to ENABLED you must select a - * value for this field.

+ *

The unique identifier of the data accessor to retrieve.

* @public */ - defaultSubscriptionType?: SubscriptionType | undefined; + dataAccessorId: string | undefined; } -/** - * @public - * @enum - */ -export const ErrorCode = { - INTERNAL_ERROR: "InternalError", - INVALID_REQUEST: "InvalidRequest", - RESOURCE_INACTIVE: "ResourceInactive", - RESOURCE_NOT_FOUND: "ResourceNotFound", -} as const; - /** * @public */ -export type ErrorCode = (typeof ErrorCode)[keyof typeof ErrorCode]; +export interface ListDataAccessorsRequest { + /** + *

The unique identifier of the Q Business application.

+ * @public + */ + applicationId: string | undefined; -/** - *

Provides information about a Amazon Q Business request error.

- * @public - */ -export interface ErrorDetail { /** - *

The message explaining the Amazon Q Business request error.

+ *

The token for the next set of results. (You received this token from a previous call.)

* @public */ - errorMessage?: string | undefined; + nextToken?: string | undefined; /** - *

The code associated with the Amazon Q Business request error.

+ *

The maximum number of results to return in a single call.

* @public */ - errorCode?: ErrorCode | undefined; + maxResults?: number | undefined; } /** + *

Provides summary information about a data accessor.

* @public */ -export interface GetApplicationResponse { +export interface DataAccessor { /** - *

The name of the Amazon Q Business application.

+ *

The friendly name of the data accessor.

* @public */ displayName?: string | undefined; /** - *

The identifier of the Amazon Q Business application.

+ *

The unique identifier of the data accessor.

* @public */ - applicationId?: string | undefined; + dataAccessorId?: string | undefined; /** - *

The Amazon Resource Name (ARN) of the Amazon Q Business application.

+ *

The Amazon Resource Name (ARN) of the data accessor.

* @public */ - applicationArn?: string | undefined; + dataAccessorArn?: string | undefined; /** - *

The authentication type being used by a Amazon Q Business application.

+ *

The Amazon Resource Name (ARN) of the associated AWS IAM Identity Center application.

+ * @public + */ + idcApplicationArn?: string | undefined; + + /** + *

The Amazon Resource Name (ARN) of the IAM role for the ISV associated with this data accessor.

+ * @public + */ + principal?: string | undefined; + + /** + *

The timestamp when the data accessor was created.

+ * @public + */ + createdAt?: Date | undefined; + + /** + *

The timestamp when the data accessor was last updated.

+ * @public + */ + updatedAt?: Date | undefined; +} + +/** + * @public + */ +export interface ListDataAccessorsResponse { + /** + *

The list of data accessors.

+ * @public + */ + dataAccessors?: DataAccessor[] | undefined; + + /** + *

The token to use to retrieve the next set of results, if there are any.

+ * @public + */ + nextToken?: string | undefined; +} + +/** + * @public + */ +export interface UpdateDataAccessorResponse {} + +/** + * @public + */ +export interface DeleteApplicationRequest { + /** + *

The identifier of the Amazon Q Business application.

+ * @public + */ + applicationId: string | undefined; +} + +/** + * @public + */ +export interface DeleteApplicationResponse {} + +/** + * @public + */ +export interface GetApplicationRequest { + /** + *

The identifier of the Amazon Q Business application.

+ * @public + */ + applicationId: string | undefined; +} + +/** + *

Configuration information about the file upload during chat feature for your + * application.

+ * @public + */ +export interface AppliedAttachmentsConfiguration { + /** + *

Information about whether file upload during chat functionality is activated for your + * application.

+ * @public + */ + attachmentsControlMode?: AttachmentsControlMode | undefined; +} + +/** + * @public + * @enum + */ +export const AutoSubscriptionStatus = { + DISABLED: "DISABLED", + ENABLED: "ENABLED", +} as const; + +/** + * @public + */ +export type AutoSubscriptionStatus = (typeof AutoSubscriptionStatus)[keyof typeof AutoSubscriptionStatus]; + +/** + * @public + * @enum + */ +export const SubscriptionType = { + Q_BUSINESS: "Q_BUSINESS", + Q_LITE: "Q_LITE", +} as const; + +/** + * @public + */ +export type SubscriptionType = (typeof SubscriptionType)[keyof typeof SubscriptionType]; + +/** + *

Subscription configuration information for an Amazon Q Business application + * using IAM identity federation for user management.

+ * @public + */ +export interface AutoSubscriptionConfiguration { + /** + *

Describes whether automatic subscriptions are enabled for an Amazon Q Business + * application using IAM identity federation for user management.

+ * @public + */ + autoSubscribe: AutoSubscriptionStatus | undefined; + + /** + *

Describes the default subscription type assigned to an Amazon Q Business + * application using IAM identity federation for user management. If the + * value for autoSubscribe is set to ENABLED you must select a + * value for this field.

+ * @public + */ + defaultSubscriptionType?: SubscriptionType | undefined; +} + +/** + * @public + * @enum + */ +export const ErrorCode = { + INTERNAL_ERROR: "InternalError", + INVALID_REQUEST: "InvalidRequest", + RESOURCE_INACTIVE: "ResourceInactive", + RESOURCE_NOT_FOUND: "ResourceNotFound", +} as const; + +/** + * @public + */ +export type ErrorCode = (typeof ErrorCode)[keyof typeof ErrorCode]; + +/** + *

Provides information about a Amazon Q Business request error.

+ * @public + */ +export interface ErrorDetail { + /** + *

The message explaining the Amazon Q Business request error.

+ * @public + */ + errorMessage?: string | undefined; + + /** + *

The code associated with the Amazon Q Business request error.

+ * @public + */ + errorCode?: ErrorCode | undefined; +} + +/** + * @public + */ +export interface GetApplicationResponse { + /** + *

The name of the Amazon Q Business application.

+ * @public + */ + displayName?: string | undefined; + + /** + *

The identifier of the Amazon Q Business application.

+ * @public + */ + applicationId?: string | undefined; + + /** + *

The Amazon Resource Name (ARN) of the Amazon Q Business application.

+ * @public + */ + applicationArn?: string | undefined; + + /** + *

The authentication type being used by a Amazon Q Business application.

* @public */ identityType?: IdentityType | undefined; @@ -1338,6 +1691,12 @@ export interface GetApplicationResponse { * @public */ clientIdsForOIDC?: string[] | undefined; + + /** + *

The Amazon QuickSight authentication configuration for the Amazon Q Business application.

+ * @public + */ + quickSightConfiguration?: QuickSightConfiguration | undefined; } /** @@ -1462,144 +1821,49 @@ export type DocumentEnrichmentConditionOperator = (typeof DocumentEnrichmentConditionOperator)[keyof typeof DocumentEnrichmentConditionOperator]; /** - *

The value of a document attribute. You can only provide one value for a document - * attribute.

- * @public - */ -export type DocumentAttributeValue = - | DocumentAttributeValue.DateValueMember - | DocumentAttributeValue.LongValueMember - | DocumentAttributeValue.StringListValueMember - | DocumentAttributeValue.StringValueMember - | DocumentAttributeValue.$UnknownMember; - -/** + *

The condition used for the target document attribute or metadata field when ingesting + * documents into Amazon Q Business. You use this with + * DocumentAttributeTarget + * to apply the condition.

+ *

For example, you can create the 'Department' target field and have it prefill + * department names associated with the documents based on information in the 'Source_URI' + * field. Set the condition that if the 'Source_URI' field contains 'financial' in its URI + * value, then prefill the target field 'Department' with the target value 'Finance' for + * the document.

+ *

Amazon Q Business can't create a target field if it has not already been created as an + * index field. After you create your index field, you can create a document metadata field + * using DocumentAttributeTarget. Amazon Q Business then will map your newly + * created metadata field to your index field.

* @public */ -export namespace DocumentAttributeValue { +export interface DocumentAttributeCondition { /** - *

A string.

+ *

The identifier of the document attribute used for the condition.

+ *

For example, 'Source_URI' could be an identifier for the attribute or metadata field + * that contains source URIs associated with the documents.

+ *

Amazon Q Business currently doesn't support _document_body as an attribute + * key used for the condition.

* @public */ - export interface StringValueMember { - stringValue: string; - stringListValue?: never; - longValue?: never; - dateValue?: never; - $unknown?: never; - } + key: string | undefined; /** - *

A list of strings.

+ *

The identifier of the document attribute used for the condition.

+ *

For example, 'Source_URI' could be an identifier for the attribute or metadata field + * that contains source URIs associated with the documents.

+ *

Amazon Q Business currently does not support _document_body as an attribute + * key used for the condition.

* @public */ - export interface StringListValueMember { - stringValue?: never; - stringListValue: string[]; - longValue?: never; - dateValue?: never; - $unknown?: never; - } + operator: DocumentEnrichmentConditionOperator | undefined; /** - *

A long integer value.

+ *

The value of a document attribute. You can only provide one value for a document + * attribute.

* @public */ - export interface LongValueMember { - stringValue?: never; - stringListValue?: never; - longValue: number; - dateValue?: never; - $unknown?: never; - } - - /** - *

A date expressed as an ISO 8601 string.

- *

It's important for the time zone to be included in the ISO 8601 date-time format. For - * example, 2012-03-25T12:30:10+01:00 is the ISO 8601 date-time format for March 25th 2012 - * at 12:30PM (plus 10 seconds) in Central European Time.

- * @public - */ - export interface DateValueMember { - stringValue?: never; - stringListValue?: never; - longValue?: never; - dateValue: Date; - $unknown?: never; - } - - /** - * @public - */ - export interface $UnknownMember { - stringValue?: never; - stringListValue?: never; - longValue?: never; - dateValue?: never; - $unknown: [string, any]; - } - - export interface Visitor { - stringValue: (value: string) => T; - stringListValue: (value: string[]) => T; - longValue: (value: number) => T; - dateValue: (value: Date) => T; - _: (name: string, value: any) => T; - } - - export const visit = (value: DocumentAttributeValue, visitor: Visitor): T => { - if (value.stringValue !== undefined) return visitor.stringValue(value.stringValue); - if (value.stringListValue !== undefined) return visitor.stringListValue(value.stringListValue); - if (value.longValue !== undefined) return visitor.longValue(value.longValue); - if (value.dateValue !== undefined) return visitor.dateValue(value.dateValue); - return visitor._(value.$unknown[0], value.$unknown[1]); - }; -} - -/** - *

The condition used for the target document attribute or metadata field when ingesting - * documents into Amazon Q Business. You use this with - * DocumentAttributeTarget - * to apply the condition.

- *

For example, you can create the 'Department' target field and have it prefill - * department names associated with the documents based on information in the 'Source_URI' - * field. Set the condition that if the 'Source_URI' field contains 'financial' in its URI - * value, then prefill the target field 'Department' with the target value 'Finance' for - * the document.

- *

Amazon Q Business can't create a target field if it has not already been created as an - * index field. After you create your index field, you can create a document metadata field - * using DocumentAttributeTarget. Amazon Q Business then will map your newly - * created metadata field to your index field.

- * @public - */ -export interface DocumentAttributeCondition { - /** - *

The identifier of the document attribute used for the condition.

- *

For example, 'Source_URI' could be an identifier for the attribute or metadata field - * that contains source URIs associated with the documents.

- *

Amazon Q Business currently doesn't support _document_body as an attribute - * key used for the condition.

- * @public - */ - key: string | undefined; - - /** - *

The identifier of the document attribute used for the condition.

- *

For example, 'Source_URI' could be an identifier for the attribute or metadata field - * that contains source URIs associated with the documents.

- *

Amazon Q Business currently does not support _document_body as an attribute - * key used for the condition.

- * @public - */ - operator: DocumentEnrichmentConditionOperator | undefined; - - /** - *

The value of a document attribute. You can only provide one value for a document - * attribute.

- * @public - */ - value?: DocumentAttributeValue | undefined; -} + value?: DocumentAttributeValue | undefined; +} /** * @public @@ -2816,6 +3080,25 @@ export interface BasicAuthConfiguration { roleArn: string | undefined; } +/** + *

Information about the IAM Identity Center Application used to configure authentication for a plugin.

+ * @public + */ +export interface IdcAuthConfiguration { + /** + *

The Amazon Resource Name (ARN) of the IAM Identity Center Application used to configure authentication.

+ * @public + */ + idcApplicationArn: string | undefined; + + /** + *

The Amazon Resource Name (ARN) of the IAM role with permissions to perform actions on Amazon Web Services services + * on your behalf.

+ * @public + */ + roleArn: string | undefined; +} + /** *

Information about invoking a custom plugin without any authentication or authorization * requirement.

@@ -2842,6 +3125,20 @@ export interface OAuth2ClientCredentialConfiguration { * @public */ roleArn: string | undefined; + + /** + *

The redirect URL required by the OAuth 2.0 protocol for Amazon Q Business to + * authenticate a plugin user through a third party authentication server.

+ * @public + */ + authorizationUrl?: string | undefined; + + /** + *

The URL required by the OAuth 2.0 protocol to exchange an end user authorization code + * for an access token.

+ * @public + */ + tokenUrl?: string | undefined; } /** @@ -2850,6 +3147,7 @@ export interface OAuth2ClientCredentialConfiguration { */ export type PluginAuthConfiguration = | PluginAuthConfiguration.BasicAuthConfigurationMember + | PluginAuthConfiguration.IdcAuthConfigurationMember | PluginAuthConfiguration.NoAuthConfigurationMember | PluginAuthConfiguration.OAuth2ClientCredentialConfigurationMember | PluginAuthConfiguration.$UnknownMember; @@ -2867,6 +3165,7 @@ export namespace PluginAuthConfiguration { basicAuthConfiguration: BasicAuthConfiguration; oAuth2ClientCredentialConfiguration?: never; noAuthConfiguration?: never; + idcAuthConfiguration?: never; $unknown?: never; } @@ -2879,6 +3178,7 @@ export namespace PluginAuthConfiguration { basicAuthConfiguration?: never; oAuth2ClientCredentialConfiguration: OAuth2ClientCredentialConfiguration; noAuthConfiguration?: never; + idcAuthConfiguration?: never; $unknown?: never; } @@ -2890,6 +3190,19 @@ export namespace PluginAuthConfiguration { basicAuthConfiguration?: never; oAuth2ClientCredentialConfiguration?: never; noAuthConfiguration: NoAuthConfiguration; + idcAuthConfiguration?: never; + $unknown?: never; + } + + /** + *

Information about the IAM Identity Center Application used to configure authentication for a plugin.

+ * @public + */ + export interface IdcAuthConfigurationMember { + basicAuthConfiguration?: never; + oAuth2ClientCredentialConfiguration?: never; + noAuthConfiguration?: never; + idcAuthConfiguration: IdcAuthConfiguration; $unknown?: never; } @@ -2900,6 +3213,7 @@ export namespace PluginAuthConfiguration { basicAuthConfiguration?: never; oAuth2ClientCredentialConfiguration?: never; noAuthConfiguration?: never; + idcAuthConfiguration?: never; $unknown: [string, any]; } @@ -2907,6 +3221,7 @@ export namespace PluginAuthConfiguration { basicAuthConfiguration: (value: BasicAuthConfiguration) => T; oAuth2ClientCredentialConfiguration: (value: OAuth2ClientCredentialConfiguration) => T; noAuthConfiguration: (value: NoAuthConfiguration) => T; + idcAuthConfiguration: (value: IdcAuthConfiguration) => T; _: (name: string, value: any) => T; } @@ -2915,6 +3230,7 @@ export namespace PluginAuthConfiguration { if (value.oAuth2ClientCredentialConfiguration !== undefined) return visitor.oAuth2ClientCredentialConfiguration(value.oAuth2ClientCredentialConfiguration); if (value.noAuthConfiguration !== undefined) return visitor.noAuthConfiguration(value.noAuthConfiguration); + if (value.idcAuthConfiguration !== undefined) return visitor.idcAuthConfiguration(value.idcAuthConfiguration); return visitor._(value.$unknown[0], value.$unknown[1]); }; } @@ -4099,6 +4415,36 @@ export interface BrowserExtensionConfiguration { enabledBrowserExtensions: BrowserExtension[] | undefined; } +/** + *

Contains the configuration information to customize the logo, font, and color of an Amazon Q Business web experience with individual files for each property or a CSS file for them all.

+ * @public + */ +export interface CustomizationConfiguration { + /** + *

Provides the URL where the custom CSS file is hosted for an Amazon Q web experience.

+ * @public + */ + customCSSUrl?: string | undefined; + + /** + *

Provides the URL where the custom logo file is hosted for an Amazon Q web experience.

+ * @public + */ + logoUrl?: string | undefined; + + /** + *

Provides the URL where the custom font file is hosted for an Amazon Q web experience.

+ * @public + */ + fontUrl?: string | undefined; + + /** + *

Provides the URL where the custom favicon file is hosted for an Amazon Q web experience.

+ * @public + */ + faviconUrl?: string | undefined; +} + /** *

Information about the OIDC-compliant identity provider (IdP) used to authenticate end * users of an Amazon Q Business web experience.

@@ -4307,6 +4653,12 @@ export interface CreateWebExperienceRequest { * @public */ browserExtensionConfiguration?: BrowserExtensionConfiguration | undefined; + + /** + *

Sets the custom logo, favicon, font, and color used in the Amazon Q web experience.

+ * @public + */ + customizationConfiguration?: CustomizationConfiguration | undefined; } /** @@ -4581,6 +4933,13 @@ export interface GetWebExperienceResponse { * @public */ browserExtensionConfiguration?: BrowserExtensionConfiguration | undefined; + + /** + *

Gets the custom logo, favicon, font, and color used in the Amazon Q web experience. + *

+ * @public + */ + customizationConfiguration?: CustomizationConfiguration | undefined; } /** @@ -4763,6 +5122,12 @@ export interface UpdateWebExperienceRequest { * @public */ browserExtensionConfiguration?: BrowserExtensionConfiguration | undefined; + + /** + *

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

+ * @public + */ + customizationConfiguration?: CustomizationConfiguration | undefined; } /** @@ -4800,6 +5165,46 @@ export interface AppliedCreatorModeConfiguration { creatorModeControl: CreatorModeControl | undefined; } +/** + * @public + */ +export interface AssociatePermissionRequest { + /** + *

The unique identifier of the Q Business application.

+ * @public + */ + applicationId: string | undefined; + + /** + *

A unique identifier for the policy statement.

+ * @public + */ + statementId: string | undefined; + + /** + *

The list of Q Business actions that the ISV is allowed to perform.

+ * @public + */ + actions: string[] | undefined; + + /** + *

The Amazon Resource Name (ARN) of the IAM role for the ISV that is being granted permission.

+ * @public + */ + principal: string | undefined; +} + +/** + * @public + */ +export interface AssociatePermissionResponse { + /** + *

The JSON representation of the added permission statement.

+ * @public + */ + statement?: string | undefined; +} + /** *

The source reference for an existing attachment in an existing conversation.

* @public @@ -5009,24 +5414,6 @@ export interface AttachmentOutput { conversationId?: string | undefined; } -/** - *

A document attribute or metadata field.

- * @public - */ -export interface DocumentAttribute { - /** - *

The identifier for the attribute.

- * @public - */ - name: string | undefined; - - /** - *

The value of the attribute.

- * @public - */ - value: DocumentAttributeValue | undefined; -} - /** *

A request made by Amazon Q Business to a third paty authentication server to authenticate * a custom plugin user.

@@ -5963,6 +6350,56 @@ export interface ContentRetrievalRule { eligibleDataSources?: EligibleDataSource[] | undefined; } +/** + *

Specifies a retriever as the content source for a search.

+ * @public + */ +export interface RetrieverContentSource { + /** + *

The unique identifier of the retriever to use as the content source.

+ * @public + */ + retrieverId: string | undefined; +} + +/** + *

Specifies the source of content to search in.

+ * @public + */ +export type ContentSource = ContentSource.RetrieverMember | ContentSource.$UnknownMember; + +/** + * @public + */ +export namespace ContentSource { + /** + *

The retriever to use as the content source.

+ * @public + */ + export interface RetrieverMember { + retriever: RetrieverContentSource; + $unknown?: never; + } + + /** + * @public + */ + export interface $UnknownMember { + retriever?: never; + $unknown: [string, any]; + } + + export interface Visitor { + retriever: (value: RetrieverContentSource) => T; + _: (name: string, value: any) => T; + } + + export const visit = (value: ContentSource, visitor: Visitor): T => { + if (value.retriever !== undefined) return visitor.retriever(value.retriever); + return visitor._(value.$unknown[0], value.$unknown[1]); + }; +} + /** *

A conversation in an Amazon Q Business application.

* @public @@ -6285,6 +6722,28 @@ export interface DeleteUserRequest { */ export interface DeleteUserResponse {} +/** + * @public + */ +export interface DisassociatePermissionRequest { + /** + *

The unique identifier of the Q Business application.

+ * @public + */ + applicationId: string | undefined; + + /** + *

The statement ID of the permission to remove.

+ * @public + */ + statementId: string | undefined; +} + +/** + * @public + */ +export interface DisassociatePermissionResponse {} + /** * @public * @enum @@ -6731,14 +7190,36 @@ export class MediaTooLargeException extends __BaseException { /** * @public */ -export interface GetUserRequest { +export interface GetPolicyRequest { /** - *

The identifier of the application connected to the user.

+ *

The unique identifier of the Q Business application.

* @public */ applicationId: string | undefined; +} - /** +/** + * @public + */ +export interface GetPolicyResponse { + /** + *

The JSON representation of the permission policy.

+ * @public + */ + policy?: string | undefined; +} + +/** + * @public + */ +export interface GetUserRequest { + /** + *

The identifier of the application connected to the user.

+ * @public + */ + applicationId: string | undefined; + + /** *

The user email address attached to the user.

* @public */ @@ -7196,913 +7677,540 @@ export interface ListMessagesResponse { /** * @public */ -export interface ListTagsForResourceRequest { - /** - *

The Amazon Resource Name (ARN) of the Amazon Q Business application or data source to get - * a list of tags for.

- * @public - */ - resourceARN: string | undefined; -} - -/** - * @public - */ -export interface ListTagsForResourceResponse { - /** - *

A list of tags associated with the Amazon Q Business application or data source.

- * @public - */ - tags?: Tag[] | undefined; -} - -/** - * @public - * @enum - */ -export const MessageUsefulnessReason = { - COMPLETE: "COMPLETE", - FACTUALLY_CORRECT: "FACTUALLY_CORRECT", - HARMFUL_OR_UNSAFE: "HARMFUL_OR_UNSAFE", - HELPFUL: "HELPFUL", - INCORRECT_OR_MISSING_SOURCES: "INCORRECT_OR_MISSING_SOURCES", - NOT_BASED_ON_DOCUMENTS: "NOT_BASED_ON_DOCUMENTS", - NOT_COMPLETE: "NOT_COMPLETE", - NOT_CONCISE: "NOT_CONCISE", - NOT_FACTUALLY_CORRECT: "NOT_FACTUALLY_CORRECT", - NOT_HELPFUL: "NOT_HELPFUL", - OTHER: "OTHER", - RELEVANT_SOURCES: "RELEVANT_SOURCES", -} as const; - -/** - * @public - */ -export type MessageUsefulnessReason = (typeof MessageUsefulnessReason)[keyof typeof MessageUsefulnessReason]; - -/** - * @public - * @enum - */ -export const MessageUsefulness = { - NOT_USEFUL: "NOT_USEFUL", - USEFUL: "USEFUL", -} as const; - -/** - * @public - */ -export type MessageUsefulness = (typeof MessageUsefulness)[keyof typeof MessageUsefulness]; - -/** - *

End user feedback on an AI-generated web experience chat message usefulness.

- * @public - */ -export interface MessageUsefulnessFeedback { +export interface ListPluginActionsRequest { /** - *

The usefulness value assigned by an end user to a message.

+ *

The identifier of the Amazon Q Business application the plugin is attached + * to.

* @public */ - usefulness: MessageUsefulness | undefined; + applicationId: string | undefined; /** - *

The reason for a usefulness rating.

+ *

The identifier of the Amazon Q Business plugin.

* @public */ - reason?: MessageUsefulnessReason | undefined; + pluginId: string | undefined; /** - *

A comment given by an end user on the usefulness of an AI-generated chat - * message.

+ *

If the number of plugin actions returned exceeds maxResults, Amazon Q Business returns a next token as a pagination token to retrieve the next set + * of plugin actions.

* @public */ - comment?: string | undefined; + nextToken?: string | undefined; /** - *

The timestamp for when the feedback was submitted.

+ *

The maximum number of plugin actions to return.

* @public */ - submittedAt: Date | undefined; + maxResults?: number | undefined; } /** * @public */ -export interface PutFeedbackRequest { +export interface ListPluginActionsResponse { /** - *

The identifier of the application associated with the feedback.

+ *

If the response is truncated, Amazon Q Business returns this token, which you + * can use in a later request to list the next set of plugin actions.

* @public */ - applicationId: string | undefined; - - /** - *

The identifier of the user giving the feedback.

- * @public - */ - userId?: string | undefined; - - /** - *

The identifier of the conversation the feedback is attached to.

- * @public - */ - conversationId: string | undefined; - - /** - *

The identifier of the chat message that the feedback was given for.

- * @public - */ - messageId: string | undefined; - - /** - *

The timestamp for when the feedback was recorded.

- * @public - */ - messageCopiedAt?: Date | undefined; + nextToken?: string | undefined; /** - *

The feedback usefulness value given by the user to the chat message.

+ *

An array of information on one or more plugin actions.

* @public */ - messageUsefulness?: MessageUsefulnessFeedback | undefined; + items?: ActionSummary[] | undefined; } /** - *

The sub groups that belong to a group.

* @public */ -export interface MemberGroup { - /** - *

The name of the sub group.

- * @public - */ - groupName: string | undefined; - +export interface ListPluginTypeActionsRequest { /** - *

The type of the sub group.

+ *

The type of the plugin.

* @public */ - type?: MembershipType | undefined; -} + pluginType: PluginType | undefined; -/** - *

The users that belong to a group.

- * @public - */ -export interface MemberUser { /** - *

The identifier of the user you want to map to a group.

+ *

If the number of plugins returned exceeds maxResults, Amazon Q Business returns a next token as a pagination token to retrieve the next set + * of plugins.

* @public */ - userId: string | undefined; + nextToken?: string | undefined; /** - *

The type of the user.

+ *

The maximum number of plugins to return.

* @public */ - type?: MembershipType | undefined; + maxResults?: number | undefined; } /** - *

A list of users or sub groups that belong to a group. This is for generating - * Amazon Q Business chat results only from document a user has access to.

* @public */ -export interface GroupMembers { - /** - *

A list of sub groups that belong to a group. For example, the sub groups "Research", - * "Engineering", and "Sales and Marketing" all belong to the group "Company".

- * @public - */ - memberGroups?: MemberGroup[] | undefined; - +export interface ListPluginTypeActionsResponse { /** - *

A list of users that belong to a group. For example, a list of interns all belong to - * the "Interns" group.

+ *

If the response is truncated, Amazon Q Business returns this token, which you + * can use in a later request to list the next set of plugins.

* @public */ - memberUsers?: MemberUser[] | undefined; + nextToken?: string | undefined; /** - *

Information required for Amazon Q Business to find a specific file in an Amazon S3 - * bucket.

+ *

An array of information on one or more plugins.

* @public */ - s3PathForGroupMembers?: S3 | undefined; + items?: ActionSummary[] | undefined; } /** * @public */ -export interface PutGroupRequest { - /** - *

The identifier of the application in which the user and group mapping belongs.

- * @public - */ - applicationId: string | undefined; - - /** - *

The identifier of the index in which you want to map users to their groups.

- * @public - */ - indexId: string | undefined; - - /** - *

The list that contains your users or sub groups that belong the same group. For - * example, the group "Company" includes the user "CEO" and the sub groups "Research", - * "Engineering", and "Sales and Marketing".

- * @public - */ - groupName: string | undefined; - - /** - *

The identifier of the data source for which you want to map users to their groups. - * This is useful if a group is tied to multiple data sources, but you only want the group - * to access documents of a certain data source. For example, the groups "Research", - * "Engineering", and "Sales and Marketing" are all tied to the company's documents stored - * in the data sources Confluence and Salesforce. However, "Sales and Marketing" team only - * needs access to customer-related documents stored in Salesforce.

- * @public - */ - dataSourceId?: string | undefined; - - /** - *

The type of the group.

- * @public - */ - type: MembershipType | undefined; - +export interface ListPluginTypeMetadataRequest { /** - *

A list of users or sub groups that belong to a group. This is for generating - * Amazon Q Business chat results only from document a user has access to.

+ *

If the metadata returned exceeds maxResults, Amazon Q Business + * returns a next token as a pagination token to retrieve the next set of metadata.

* @public */ - groupMembers: GroupMembers | undefined; + nextToken?: string | undefined; /** - *

The Amazon Resource Name (ARN) of an IAM role that has access to the S3 file that contains - * your list of users that belong to a group.The Amazon Resource Name (ARN) of an IAM role that - * has access to the S3 file that contains your list of users that belong to a group.

+ *

The maximum number of plugin metadata items to return.

* @public */ - roleArn?: string | undefined; + maxResults?: number | undefined; } /** * @public + * @enum */ -export interface PutGroupResponse {} +export const PluginTypeCategory = { + COMMUNICATION: "Communication", + CRM: "Customer relationship management (CRM)", + PRODUCTIVITY: "Productivity", + PROJECT_MANAGEMENT: "Project management", + TICKETING_MANAGEMENT: "Ticketing and incident management", +} as const; /** * @public */ -export interface StartDataSourceSyncJobRequest { - /** - *

The identifier of the data source connector.

- * @public - */ - dataSourceId: string | undefined; +export type PluginTypeCategory = (typeof PluginTypeCategory)[keyof typeof PluginTypeCategory]; +/** + *

Summary metadata information for a Amazon Q Business plugin.

+ * @public + */ +export interface PluginTypeMetadataSummary { /** - *

The identifier of Amazon Q Business application the data source is connected to.

+ *

The type of the plugin.

* @public */ - applicationId: string | undefined; + type?: PluginType | undefined; /** - *

The identifier of the index used with the data source connector.

+ *

The category of the plugin type.

* @public */ - indexId: string | undefined; -} + category?: PluginTypeCategory | undefined; -/** - * @public - */ -export interface StartDataSourceSyncJobResponse { /** - *

The identifier for a particular synchronization job.

+ *

The description assigned by Amazon Q Business to a plugin. You can't + * modify this value.

* @public */ - executionId?: string | undefined; + description?: string | undefined; } /** * @public */ -export interface StopDataSourceSyncJobRequest { - /** - *

The identifier of the data source connector.

- * @public - */ - dataSourceId: string | undefined; - +export interface ListPluginTypeMetadataResponse { /** - *

The identifier of the Amazon Q Business application that the data source is connected - * to.

+ *

If the response is truncated, Amazon Q Business returns this token, which you + * can use in a later request to list the next set of plugin metadata.

* @public */ - applicationId: string | undefined; + nextToken?: string | undefined; /** - *

The identifier of the index used with the Amazon Q Business data source connector.

+ *

An array of information on plugin metadata.

* @public */ - indexId: string | undefined; + items?: PluginTypeMetadataSummary[] | undefined; } /** * @public */ -export interface StopDataSourceSyncJobResponse {} - -/** - * @public - */ -export interface TagResourceRequest { +export interface ListTagsForResourceRequest { /** - *

The Amazon Resource Name (ARN) of the Amazon Q Business application or data source to - * tag.

+ *

The Amazon Resource Name (ARN) of the Amazon Q Business application or data source to get + * a list of tags for.

* @public */ resourceARN: string | undefined; - - /** - *

A list of tag keys to add to the Amazon Q Business application or data source. If a tag - * already exists, the existing value is replaced with the new value.

- * @public - */ - tags: Tag[] | undefined; } /** * @public */ -export interface TagResourceResponse {} - -/** - * @public - */ -export interface UntagResourceRequest { - /** - *

The Amazon Resource Name (ARN) of the Amazon Q Business application, or data source to - * remove the tag from.

- * @public - */ - resourceARN: string | undefined; - +export interface ListTagsForResourceResponse { /** - *

A list of tag keys to remove from the Amazon Q Business application or data source. If a - * tag key does not exist on the resource, it is ignored.

+ *

A list of tags associated with the Amazon Q Business application or data source.

* @public */ - tagKeys: string[] | undefined; + tags?: Tag[] | undefined; } /** * @public + * @enum */ -export interface UntagResourceResponse {} +export const MessageUsefulnessReason = { + COMPLETE: "COMPLETE", + FACTUALLY_CORRECT: "FACTUALLY_CORRECT", + HARMFUL_OR_UNSAFE: "HARMFUL_OR_UNSAFE", + HELPFUL: "HELPFUL", + INCORRECT_OR_MISSING_SOURCES: "INCORRECT_OR_MISSING_SOURCES", + NOT_BASED_ON_DOCUMENTS: "NOT_BASED_ON_DOCUMENTS", + NOT_COMPLETE: "NOT_COMPLETE", + NOT_CONCISE: "NOT_CONCISE", + NOT_FACTUALLY_CORRECT: "NOT_FACTUALLY_CORRECT", + NOT_HELPFUL: "NOT_HELPFUL", + OTHER: "OTHER", + RELEVANT_SOURCES: "RELEVANT_SOURCES", +} as const; /** * @public */ -export interface UpdateChatControlsConfigurationRequest { - /** - *

The identifier of the application for which the chat controls are configured.

- * @public - */ - applicationId: string | undefined; - - /** - *

A token that you provide to identify the request to update a Amazon Q Business application - * chat configuration.

- * @public - */ - clientToken?: string | undefined; - - /** - *

The response scope configured for your application. This determines whether your - * application uses its retrieval augmented generation (RAG) system to generate answers - * only from your enterprise data, or also uses the large language models (LLM) knowledge - * to respons to end user questions in chat.

- * @public - */ - responseScope?: ResponseScope | undefined; - - /** - *

The phrases blocked from chat by your chat control configuration.

- * @public - */ - blockedPhrasesConfigurationUpdate?: BlockedPhrasesConfigurationUpdate | undefined; - - /** - *

The configured topic specific chat controls you want to update.

- * @public - */ - topicConfigurationsToCreateOrUpdate?: TopicConfiguration[] | undefined; - - /** - *

The configured topic specific chat controls you want to delete.

- * @public - */ - topicConfigurationsToDelete?: TopicConfiguration[] | undefined; +export type MessageUsefulnessReason = (typeof MessageUsefulnessReason)[keyof typeof MessageUsefulnessReason]; - /** - *

The configuration details for CREATOR_MODE.

- * @public - */ - creatorModeConfiguration?: CreatorModeConfiguration | undefined; -} +/** + * @public + * @enum + */ +export const MessageUsefulness = { + NOT_USEFUL: "NOT_USEFUL", + USEFUL: "USEFUL", +} as const; /** * @public */ -export interface UpdateChatControlsConfigurationResponse {} +export type MessageUsefulness = (typeof MessageUsefulness)[keyof typeof MessageUsefulness]; /** + *

End user feedback on an AI-generated web experience chat message usefulness.

* @public */ -export interface UpdateUserRequest { +export interface MessageUsefulnessFeedback { /** - *

The identifier of the application the user is attached to.

+ *

The usefulness value assigned by an end user to a message.

* @public */ - applicationId: string | undefined; + usefulness: MessageUsefulness | undefined; /** - *

The email id attached to the user.

+ *

The reason for a usefulness rating.

* @public */ - userId: string | undefined; + reason?: MessageUsefulnessReason | undefined; /** - *

The user aliases attached to the user id that are to be updated.

+ *

A comment given by an end user on the usefulness of an AI-generated chat + * message.

* @public */ - userAliasesToUpdate?: UserAlias[] | undefined; + comment?: string | undefined; /** - *

The user aliases attached to the user id that are to be deleted.

+ *

The timestamp for when the feedback was submitted.

* @public */ - userAliasesToDelete?: UserAlias[] | undefined; + submittedAt: Date | undefined; } /** * @public */ -export interface UpdateUserResponse { +export interface PutFeedbackRequest { /** - *

The user aliases that have been to be added to a user id.

+ *

The identifier of the application associated with the feedback.

* @public */ - userAliasesAdded?: UserAlias[] | undefined; + applicationId: string | undefined; /** - *

The user aliases attached to a user id that have been updated.

+ *

The identifier of the user giving the feedback.

* @public */ - userAliasesUpdated?: UserAlias[] | undefined; + userId?: string | undefined; /** - *

The user aliases that have been deleted from a user id.

+ *

The identifier of the conversation the feedback is attached to.

* @public */ - userAliasesDeleted?: UserAlias[] | undefined; -} + conversationId: string | undefined; -/** - *

Enables filtering of responses based on document attributes or metadata fields.

- * @public - */ -export interface AttributeFilter { /** - *

Performs a logical AND operation on all supplied filters.

+ *

The identifier of the chat message that the feedback was given for.

* @public */ - andAllFilters?: AttributeFilter[] | undefined; + messageId: string | undefined; /** - *

Performs a logical OR operation on all supplied filters.

+ *

The timestamp for when the feedback was recorded.

* @public */ - orAllFilters?: AttributeFilter[] | undefined; + messageCopiedAt?: Date | undefined; /** - *

Performs a logical NOT operation on all supplied filters.

+ *

The feedback usefulness value given by the user to the chat message.

* @public */ - notFilter?: AttributeFilter | undefined; + messageUsefulness?: MessageUsefulnessFeedback | undefined; +} +/** + *

The sub groups that belong to a group.

+ * @public + */ +export interface MemberGroup { /** - *

Performs an equals operation on two document attributes or metadata fields. Supported - * for the following document attribute value types: dateValue, - * longValue, stringListValue and - * stringValue.

+ *

The name of the sub group.

* @public */ - equalsTo?: DocumentAttribute | undefined; + groupName: string | undefined; /** - *

Returns true when a document contains all the specified document - * attributes or metadata fields. Supported for the following document attribute value types: - * stringListValue.

+ *

The type of the sub group.

* @public */ - containsAll?: DocumentAttribute | undefined; + type?: MembershipType | undefined; +} +/** + *

The users that belong to a group.

+ * @public + */ +export interface MemberUser { /** - *

Returns true when a document contains any of the specified document - * attributes or metadata fields. Supported for the following document attribute value types: - * stringListValue.

+ *

The identifier of the user you want to map to a group.

* @public */ - containsAny?: DocumentAttribute | undefined; + userId: string | undefined; /** - *

Performs a greater than operation on two document attributes or metadata fields. - * Supported for the following document attribute value types: dateValue - * and longValue.

+ *

The type of the user.

* @public */ - greaterThan?: DocumentAttribute | undefined; + type?: MembershipType | undefined; +} +/** + *

A list of users or sub groups that belong to a group. This is for generating + * Amazon Q Business chat results only from document a user has access to.

+ * @public + */ +export interface GroupMembers { /** - *

Performs a greater or equals than operation on two document attributes or metadata - * fields. Supported for the following document attribute value types: dateValue - * and longValue.

+ *

A list of sub groups that belong to a group. For example, the sub groups "Research", + * "Engineering", and "Sales and Marketing" all belong to the group "Company".

* @public */ - greaterThanOrEquals?: DocumentAttribute | undefined; + memberGroups?: MemberGroup[] | undefined; /** - *

Performs a less than operation on two document attributes or metadata fields. - * Supported for the following document attribute value types: dateValue - * and longValue.

+ *

A list of users that belong to a group. For example, a list of interns all belong to + * the "Interns" group.

* @public */ - lessThan?: DocumentAttribute | undefined; + memberUsers?: MemberUser[] | undefined; /** - *

Performs a less than or equals operation on two document attributes or metadata - * fields.Supported for the following document attribute value type: dateValue - * and longValue.

+ *

Information required for Amazon Q Business to find a specific file in an Amazon S3 + * bucket.

* @public */ - lessThanOrEquals?: DocumentAttribute | undefined; + s3PathForGroupMembers?: S3 | undefined; } /** * @public */ -export interface ChatSyncInput { +export interface PutGroupRequest { /** - *

The identifier of the Amazon Q Business application linked to the Amazon Q Business - * conversation.

+ *

The identifier of the application in which the user and group mapping belongs.

* @public */ applicationId: string | undefined; /** - *

The identifier of the user attached to the chat input.

- * @public - */ - userId?: string | undefined; - - /** - *

The group names that a user associated with the chat input belongs to.

- * @public - */ - userGroups?: string[] | undefined; - - /** - *

A end user message in a conversation.

- * @public - */ - userMessage?: string | undefined; - - /** - *

A list of files uploaded directly during chat. You can upload a maximum of 5 files of - * upto 10 MB each.

- * @public - */ - attachments?: AttachmentInput[] | undefined; - - /** - *

A request from an end user to perform an Amazon Q Business plugin action.

- * @public - */ - actionExecution?: ActionExecution | undefined; - - /** - *

An authentication verification event response by a third party authentication server - * to Amazon Q Business.

- * @public - */ - authChallengeResponse?: AuthChallengeResponse | undefined; - - /** - *

The identifier of the Amazon Q Business conversation.

+ *

The identifier of the index in which you want to map users to their groups.

* @public */ - conversationId?: string | undefined; + indexId: string | undefined; /** - *

The identifier of the previous system message in a conversation.

+ *

The list that contains your users or sub groups that belong the same group. For + * example, the group "Company" includes the user "CEO" and the sub groups "Research", + * "Engineering", and "Sales and Marketing".

* @public */ - parentMessageId?: string | undefined; + groupName: string | undefined; /** - *

Enables filtering of Amazon Q Business web experience responses based on document - * attributes or metadata fields.

+ *

The identifier of the data source for which you want to map users to their groups. + * This is useful if a group is tied to multiple data sources, but you only want the group + * to access documents of a certain data source. For example, the groups "Research", + * "Engineering", and "Sales and Marketing" are all tied to the company's documents stored + * in the data sources Confluence and Salesforce. However, "Sales and Marketing" team only + * needs access to customer-related documents stored in Salesforce.

* @public */ - attributeFilter?: AttributeFilter | undefined; + dataSourceId?: string | undefined; /** - *

The chatMode parameter determines the chat modes available to - * Amazon Q Business users:

- *
    - *
  • - *

    - * RETRIEVAL_MODE - If you choose this mode, Amazon Q generates responses solely from the data sources connected and - * indexed by the application. If an answer is not found in the data sources or - * there are no data sources available, Amazon Q will respond with a - * "No Answer Found" message, unless LLM knowledge has - * been enabled. In that case, Amazon Q will generate a response from - * the LLM knowledge

    - *
  • - *
  • - *

    - * CREATOR_MODE - By selecting this mode, you can choose to generate - * responses only from the LLM knowledge. You can also attach files and have Amazon Q - * generate a response based on the data in those files. - * If the attached files do not contain an answer for the query, Amazon Q - * will automatically fall back to generating a response from the LLM knowledge.

    - *
  • - *
  • - *

    - * PLUGIN_MODE - By selecting this mode, users can choose to - * use plugins in chat to get their responses.

    - *
  • - *
- * - *

If none of the modes are selected, Amazon Q will only respond using the information - * from the attached files.

- *
- *

For more information, see Admin controls and guardrails, Plugins, - * and Response sources.

+ *

The type of the group.

* @public */ - chatMode?: ChatMode | undefined; + type: MembershipType | undefined; /** - *

The chat mode configuration for an Amazon Q Business application.

+ *

A list of users or sub groups that belong to a group. This is for generating + * Amazon Q Business chat results only from document a user has access to.

* @public */ - chatModeConfiguration?: ChatModeConfiguration | undefined; + groupMembers: GroupMembers | undefined; /** - *

A token that you provide to identify a chat request.

+ *

The Amazon Resource Name (ARN) of an IAM role that has access to the S3 file that contains + * your list of users that belong to a group.The Amazon Resource Name (ARN) of an IAM role that + * has access to the S3 file that contains your list of users that belong to a group.

* @public */ - clientToken?: string | undefined; + roleArn?: string | undefined; } /** - *

A configuration event activated by an end user request to select a specific chat - * mode.

* @public */ -export interface ConfigurationEvent { - /** - *

The chat modes available to an Amazon Q Business end user.

- *
    - *
  • - *

    - * RETRIEVAL_MODE - The default chat mode for an - * Amazon Q Business application. When this mode is enabled, Amazon Q Business generates - * responses only from data sources connected to an Amazon Q Business - * application.

    - *
  • - *
  • - *

    - * CREATOR_MODE - By selecting this mode, users can choose to - * generate responses only from the LLM knowledge, without consulting connected - * data sources, for a chat request.

    - *
  • - *
  • - *

    - * PLUGIN_MODE - By selecting this mode, users can choose to - * use plugins in chat.

    - *
  • - *
- *

For more information, see Admin controls and guardrails, Plugins, - * and Conversation settings.

- * @public - */ - chatMode?: ChatMode | undefined; - - /** - *

Configuration information for Amazon Q Business conversation modes.

- *

For more information, see Admin controls and guardrails and Conversation settings.

- * @public - */ - chatModeConfiguration?: ChatModeConfiguration | undefined; +export interface PutGroupResponse {} - /** - *

Enables filtering of responses based on document attributes or metadata fields.

- * @public - */ - attributeFilter?: AttributeFilter | undefined; -} +/** + * @public + * @enum + */ +export const ScoreConfidence = { + HIGH: "HIGH", + LOW: "LOW", + MEDIUM: "MEDIUM", + NOT_AVAILABLE: "NOT_AVAILABLE", + VERY_HIGH: "VERY_HIGH", +} as const; /** - *

The streaming input for the Chat API.

* @public */ -export type ChatInputStream = - | ChatInputStream.ActionExecutionEventMember - | ChatInputStream.AttachmentEventMember - | ChatInputStream.AuthChallengeResponseEventMember - | ChatInputStream.ConfigurationEventMember - | ChatInputStream.EndOfInputEventMember - | ChatInputStream.TextEventMember - | ChatInputStream.$UnknownMember; +export type ScoreConfidence = (typeof ScoreConfidence)[keyof typeof ScoreConfidence]; /** + *

Provides information about the relevance score of content.

* @public */ -export namespace ChatInputStream { +export interface ScoreAttributes { /** - *

A configuration event activated by an end user request to select a specific chat - * mode.

+ *

The confidence level of the relevance score.

* @public */ - export interface ConfigurationEventMember { - configurationEvent: ConfigurationEvent; - textEvent?: never; - attachmentEvent?: never; - actionExecutionEvent?: never; - endOfInputEvent?: never; - authChallengeResponseEvent?: never; - $unknown?: never; - } + scoreConfidence?: ScoreConfidence | undefined; +} +/** + *

Represents a piece of content that is relevant to a search query.

+ * @public + */ +export interface RelevantContent { /** - *

Information about the payload of the ChatInputStream event containing the - * end user message input.

+ *

The actual content of the relevant item.

* @public */ - export interface TextEventMember { - configurationEvent?: never; - textEvent: TextInputEvent; - attachmentEvent?: never; - actionExecutionEvent?: never; - endOfInputEvent?: never; - authChallengeResponseEvent?: never; - $unknown?: never; - } + content?: string | undefined; /** - *

A request by an end user to upload a file during chat.

+ *

The unique identifier of the document containing the relevant content.

* @public */ - export interface AttachmentEventMember { - configurationEvent?: never; - textEvent?: never; - attachmentEvent: AttachmentInputEvent; - actionExecutionEvent?: never; - endOfInputEvent?: never; - authChallengeResponseEvent?: never; - $unknown?: never; - } + documentId?: string | undefined; /** - *

A request from an end user to perform an Amazon Q Business plugin action.

+ *

The title of the document containing the relevant content.

* @public */ - export interface ActionExecutionEventMember { - configurationEvent?: never; - textEvent?: never; - attachmentEvent?: never; - actionExecutionEvent: ActionExecutionEvent; - endOfInputEvent?: never; - authChallengeResponseEvent?: never; - $unknown?: never; - } + documentTitle?: string | undefined; /** - *

The end of the streaming input for the Chat API.

+ *

The URI of the document containing the relevant content.

* @public */ - export interface EndOfInputEventMember { - configurationEvent?: never; - textEvent?: never; - attachmentEvent?: never; - actionExecutionEvent?: never; - endOfInputEvent: EndOfInputEvent; - authChallengeResponseEvent?: never; - $unknown?: never; - } + documentUri?: string | undefined; /** - *

An authentication verification event response by a third party authentication server - * to Amazon Q Business.

+ *

Additional attributes of the document containing the relevant content.

* @public */ - export interface AuthChallengeResponseEventMember { - configurationEvent?: never; - textEvent?: never; - attachmentEvent?: never; - actionExecutionEvent?: never; - endOfInputEvent?: never; - authChallengeResponseEvent: AuthChallengeResponseEvent; - $unknown?: never; - } + documentAttributes?: DocumentAttribute[] | undefined; /** + *

Attributes related to the relevance score of the content.

* @public */ - export interface $UnknownMember { - configurationEvent?: never; - textEvent?: never; - attachmentEvent?: never; - actionExecutionEvent?: never; - endOfInputEvent?: never; - authChallengeResponseEvent?: never; - $unknown: [string, any]; - } - - export interface Visitor { - configurationEvent: (value: ConfigurationEvent) => T; - textEvent: (value: TextInputEvent) => T; - attachmentEvent: (value: AttachmentInputEvent) => T; - actionExecutionEvent: (value: ActionExecutionEvent) => T; - endOfInputEvent: (value: EndOfInputEvent) => T; - authChallengeResponseEvent: (value: AuthChallengeResponseEvent) => T; - _: (name: string, value: any) => T; - } - - export const visit = (value: ChatInputStream, visitor: Visitor): T => { - if (value.configurationEvent !== undefined) return visitor.configurationEvent(value.configurationEvent); - if (value.textEvent !== undefined) return visitor.textEvent(value.textEvent); - if (value.attachmentEvent !== undefined) return visitor.attachmentEvent(value.attachmentEvent); - if (value.actionExecutionEvent !== undefined) return visitor.actionExecutionEvent(value.actionExecutionEvent); - if (value.endOfInputEvent !== undefined) return visitor.endOfInputEvent(value.endOfInputEvent); - if (value.authChallengeResponseEvent !== undefined) - return visitor.authChallengeResponseEvent(value.authChallengeResponseEvent); - return visitor._(value.$unknown[0], value.$unknown[1]); - }; + scoreAttributes?: ScoreAttributes | undefined; } /** * @public */ -export interface ChatInput { - /** - *

The identifier of the Amazon Q Business application linked to a streaming Amazon Q Business - * conversation.

- * @public - */ - applicationId: string | undefined; - - /** - *

The identifier of the user attached to the chat input.

- * @public - */ - userId?: string | undefined; - +export interface SearchRelevantContentResponse { /** - *

The group names that a user associated with the chat input belongs to.

+ *

The list of relevant content items found.

* @public */ - userGroups?: string[] | undefined; + relevantContent?: RelevantContent[] | undefined; /** - *

The identifier of the Amazon Q Business conversation.

+ *

The token to use to retrieve the next set of results, if there are any.

* @public */ - conversationId?: string | undefined; + nextToken?: string | undefined; +} +/** + * @public + */ +export interface StartDataSourceSyncJobRequest { /** - *

The identifier used to associate a user message with a AI generated response.

+ *

The identifier of the data source connector.

* @public */ - parentMessageId?: string | undefined; + dataSourceId: string | undefined; /** - *

A token that you provide to identify the chat input.

+ *

The identifier of Amazon Q Business application the data source is connected to.

* @public */ - clientToken?: string | undefined; + applicationId: string | undefined; /** - *

The streaming input for the Chat API.

+ *

The identifier of the index used with the data source connector.

* @public */ - inputStream?: AsyncIterable | undefined; + indexId: string | undefined; } /** @@ -8132,6 +8240,22 @@ export const CreateApplicationRequestFilterSensitiveLog = (obj: CreateApplicatio }), }); +/** + * @internal + */ +export const DataAccessorFilterSensitiveLog = (obj: DataAccessor): any => ({ + ...obj, + ...(obj.displayName && { displayName: SENSITIVE_STRING }), +}); + +/** + * @internal + */ +export const ListDataAccessorsResponseFilterSensitiveLog = (obj: ListDataAccessorsResponse): any => ({ + ...obj, + ...(obj.dataAccessors && { dataAccessors: obj.dataAccessors.map((item) => DataAccessorFilterSensitiveLog(item)) }), +}); + /** * @internal */ @@ -8202,25 +8326,3 @@ export const ChatOutputFilterSensitiveLog = (obj: ChatOutput): any => ({ ...obj, ...(obj.outputStream && { outputStream: "STREAMING_CONTENT" }), }); - -/** - * @internal - */ -export const ChatInputStreamFilterSensitiveLog = (obj: ChatInputStream): any => { - if (obj.configurationEvent !== undefined) return { configurationEvent: obj.configurationEvent }; - if (obj.textEvent !== undefined) return { textEvent: obj.textEvent }; - if (obj.attachmentEvent !== undefined) return { attachmentEvent: obj.attachmentEvent }; - if (obj.actionExecutionEvent !== undefined) return { actionExecutionEvent: obj.actionExecutionEvent }; - if (obj.endOfInputEvent !== undefined) return { endOfInputEvent: obj.endOfInputEvent }; - if (obj.authChallengeResponseEvent !== undefined) - return { authChallengeResponseEvent: obj.authChallengeResponseEvent }; - if (obj.$unknown !== undefined) return { [obj.$unknown[0]]: "UNKNOWN" }; -}; - -/** - * @internal - */ -export const ChatInputFilterSensitiveLog = (obj: ChatInput): any => ({ - ...obj, - ...(obj.inputStream && { inputStream: "STREAMING_CONTENT" }), -}); diff --git a/clients/client-qbusiness/src/models/models_1.ts b/clients/client-qbusiness/src/models/models_1.ts new file mode 100644 index 000000000000..11f5df1307ab --- /dev/null +++ b/clients/client-qbusiness/src/models/models_1.ts @@ -0,0 +1,914 @@ +// smithy-typescript generated code +import { SENSITIVE_STRING } from "@smithy/smithy-client"; + +import { + ActionExecution, + ActionExecutionEvent, + AttachmentInput, + AttachmentInputEvent, + AuthChallengeResponse, + AuthChallengeResponseEvent, + BlockedPhrasesConfigurationUpdate, + ChatMode, + ChatModeConfiguration, + ContentSource, + CreatorModeConfiguration, + DocumentAttribute, + EndOfInputEvent, + ResponseScope, + Tag, + TextInputEvent, + TopicConfiguration, + UserAlias, +} from "./models_0"; + +/** + * @public + */ +export interface StartDataSourceSyncJobResponse { + /** + *

The identifier for a particular synchronization job.

+ * @public + */ + executionId?: string | undefined; +} + +/** + * @public + */ +export interface StopDataSourceSyncJobRequest { + /** + *

The identifier of the data source connector.

+ * @public + */ + dataSourceId: string | undefined; + + /** + *

The identifier of the Amazon Q Business application that the data source is connected + * to.

+ * @public + */ + applicationId: string | undefined; + + /** + *

The identifier of the index used with the Amazon Q Business data source connector.

+ * @public + */ + indexId: string | undefined; +} + +/** + * @public + */ +export interface StopDataSourceSyncJobResponse {} + +/** + * @public + */ +export interface TagResourceRequest { + /** + *

The Amazon Resource Name (ARN) of the Amazon Q Business application or data source to + * tag.

+ * @public + */ + resourceARN: string | undefined; + + /** + *

A list of tag keys to add to the Amazon Q Business application or data source. If a tag + * already exists, the existing value is replaced with the new value.

+ * @public + */ + tags: Tag[] | undefined; +} + +/** + * @public + */ +export interface TagResourceResponse {} + +/** + * @public + */ +export interface UntagResourceRequest { + /** + *

The Amazon Resource Name (ARN) of the Amazon Q Business application, or data source to + * remove the tag from.

+ * @public + */ + resourceARN: string | undefined; + + /** + *

A list of tag keys to remove from the Amazon Q Business application or data source. If a + * tag key does not exist on the resource, it is ignored.

+ * @public + */ + tagKeys: string[] | undefined; +} + +/** + * @public + */ +export interface UntagResourceResponse {} + +/** + * @public + */ +export interface UpdateChatControlsConfigurationRequest { + /** + *

The identifier of the application for which the chat controls are configured.

+ * @public + */ + applicationId: string | undefined; + + /** + *

A token that you provide to identify the request to update a Amazon Q Business application + * chat configuration.

+ * @public + */ + clientToken?: string | undefined; + + /** + *

The response scope configured for your application. This determines whether your + * application uses its retrieval augmented generation (RAG) system to generate answers + * only from your enterprise data, or also uses the large language models (LLM) knowledge + * to respons to end user questions in chat.

+ * @public + */ + responseScope?: ResponseScope | undefined; + + /** + *

The phrases blocked from chat by your chat control configuration.

+ * @public + */ + blockedPhrasesConfigurationUpdate?: BlockedPhrasesConfigurationUpdate | undefined; + + /** + *

The configured topic specific chat controls you want to update.

+ * @public + */ + topicConfigurationsToCreateOrUpdate?: TopicConfiguration[] | undefined; + + /** + *

The configured topic specific chat controls you want to delete.

+ * @public + */ + topicConfigurationsToDelete?: TopicConfiguration[] | undefined; + + /** + *

The configuration details for CREATOR_MODE.

+ * @public + */ + creatorModeConfiguration?: CreatorModeConfiguration | undefined; +} + +/** + * @public + */ +export interface UpdateChatControlsConfigurationResponse {} + +/** + * @public + */ +export interface UpdateUserRequest { + /** + *

The identifier of the application the user is attached to.

+ * @public + */ + applicationId: string | undefined; + + /** + *

The email id attached to the user.

+ * @public + */ + userId: string | undefined; + + /** + *

The user aliases attached to the user id that are to be updated.

+ * @public + */ + userAliasesToUpdate?: UserAlias[] | undefined; + + /** + *

The user aliases attached to the user id that are to be deleted.

+ * @public + */ + userAliasesToDelete?: UserAlias[] | undefined; +} + +/** + * @public + */ +export interface UpdateUserResponse { + /** + *

The user aliases that have been to be added to a user id.

+ * @public + */ + userAliasesAdded?: UserAlias[] | undefined; + + /** + *

The user aliases attached to a user id that have been updated.

+ * @public + */ + userAliasesUpdated?: UserAlias[] | undefined; + + /** + *

The user aliases that have been deleted from a user id.

+ * @public + */ + userAliasesDeleted?: UserAlias[] | undefined; +} + +/** + *

Enables filtering of responses based on document attributes or metadata fields.

+ * @public + */ +export interface AttributeFilter { + /** + *

Performs a logical AND operation on all supplied filters.

+ * @public + */ + andAllFilters?: AttributeFilter[] | undefined; + + /** + *

Performs a logical OR operation on all supplied filters.

+ * @public + */ + orAllFilters?: AttributeFilter[] | undefined; + + /** + *

Performs a logical NOT operation on all supplied filters.

+ * @public + */ + notFilter?: AttributeFilter | undefined; + + /** + *

Performs an equals operation on two document attributes or metadata fields. Supported + * for the following document attribute value types: dateValue, + * longValue, stringListValue and + * stringValue.

+ * @public + */ + equalsTo?: DocumentAttribute | undefined; + + /** + *

Returns true when a document contains all the specified document + * attributes or metadata fields. Supported for the following document attribute value types: + * stringListValue.

+ * @public + */ + containsAll?: DocumentAttribute | undefined; + + /** + *

Returns true when a document contains any of the specified document + * attributes or metadata fields. Supported for the following document attribute value types: + * stringListValue.

+ * @public + */ + containsAny?: DocumentAttribute | undefined; + + /** + *

Performs a greater than operation on two document attributes or metadata fields. + * Supported for the following document attribute value types: dateValue + * and longValue.

+ * @public + */ + greaterThan?: DocumentAttribute | undefined; + + /** + *

Performs a greater or equals than operation on two document attributes or metadata + * fields. Supported for the following document attribute value types: dateValue + * and longValue.

+ * @public + */ + greaterThanOrEquals?: DocumentAttribute | undefined; + + /** + *

Performs a less than operation on two document attributes or metadata fields. + * Supported for the following document attribute value types: dateValue + * and longValue.

+ * @public + */ + lessThan?: DocumentAttribute | undefined; + + /** + *

Performs a less than or equals operation on two document attributes or metadata + * fields.Supported for the following document attribute value type: dateValue + * and longValue.

+ * @public + */ + lessThanOrEquals?: DocumentAttribute | undefined; +} + +/** + *

Specifies filters to apply to an allowed action.

+ * @public + */ +export interface ActionFilterConfiguration { + /** + *

Enables filtering of responses based on document attributes or metadata fields.

+ * @public + */ + documentAttributeFilter: AttributeFilter | undefined; +} + +/** + * @public + */ +export interface ChatSyncInput { + /** + *

The identifier of the Amazon Q Business application linked to the Amazon Q Business + * conversation.

+ * @public + */ + applicationId: string | undefined; + + /** + *

The identifier of the user attached to the chat input.

+ * @public + */ + userId?: string | undefined; + + /** + *

The group names that a user associated with the chat input belongs to.

+ * @public + */ + userGroups?: string[] | undefined; + + /** + *

A end user message in a conversation.

+ * @public + */ + userMessage?: string | undefined; + + /** + *

A list of files uploaded directly during chat. You can upload a maximum of 5 files of + * upto 10 MB each.

+ * @public + */ + attachments?: AttachmentInput[] | undefined; + + /** + *

A request from an end user to perform an Amazon Q Business plugin action.

+ * @public + */ + actionExecution?: ActionExecution | undefined; + + /** + *

An authentication verification event response by a third party authentication server + * to Amazon Q Business.

+ * @public + */ + authChallengeResponse?: AuthChallengeResponse | undefined; + + /** + *

The identifier of the Amazon Q Business conversation.

+ * @public + */ + conversationId?: string | undefined; + + /** + *

The identifier of the previous system message in a conversation.

+ * @public + */ + parentMessageId?: string | undefined; + + /** + *

Enables filtering of Amazon Q Business web experience responses based on document + * attributes or metadata fields.

+ * @public + */ + attributeFilter?: AttributeFilter | undefined; + + /** + *

The chatMode parameter determines the chat modes available to + * Amazon Q Business users:

+ *
    + *
  • + *

    + * RETRIEVAL_MODE - If you choose this mode, Amazon Q generates responses solely from the data sources connected and + * indexed by the application. If an answer is not found in the data sources or + * there are no data sources available, Amazon Q will respond with a + * "No Answer Found" message, unless LLM knowledge has + * been enabled. In that case, Amazon Q will generate a response from + * the LLM knowledge

    + *
  • + *
  • + *

    + * CREATOR_MODE - By selecting this mode, you can choose to generate + * responses only from the LLM knowledge. You can also attach files and have Amazon Q + * generate a response based on the data in those files. + * If the attached files do not contain an answer for the query, Amazon Q + * will automatically fall back to generating a response from the LLM knowledge.

    + *
  • + *
  • + *

    + * PLUGIN_MODE - By selecting this mode, users can choose to + * use plugins in chat to get their responses.

    + *
  • + *
+ * + *

If none of the modes are selected, Amazon Q will only respond using the information + * from the attached files.

+ *
+ *

For more information, see Admin controls and guardrails, Plugins, + * and Response sources.

+ * @public + */ + chatMode?: ChatMode | undefined; + + /** + *

The chat mode configuration for an Amazon Q Business application.

+ * @public + */ + chatModeConfiguration?: ChatModeConfiguration | undefined; + + /** + *

A token that you provide to identify a chat request.

+ * @public + */ + clientToken?: string | undefined; +} + +/** + *

A configuration event activated by an end user request to select a specific chat + * mode.

+ * @public + */ +export interface ConfigurationEvent { + /** + *

The chat modes available to an Amazon Q Business end user.

+ *
    + *
  • + *

    + * RETRIEVAL_MODE - The default chat mode for an + * Amazon Q Business application. When this mode is enabled, Amazon Q Business generates + * responses only from data sources connected to an Amazon Q Business + * application.

    + *
  • + *
  • + *

    + * CREATOR_MODE - By selecting this mode, users can choose to + * generate responses only from the LLM knowledge, without consulting connected + * data sources, for a chat request.

    + *
  • + *
  • + *

    + * PLUGIN_MODE - By selecting this mode, users can choose to + * use plugins in chat.

    + *
  • + *
+ *

For more information, see Admin controls and guardrails, Plugins, + * and Conversation settings.

+ * @public + */ + chatMode?: ChatMode | undefined; + + /** + *

Configuration information for Amazon Q Business conversation modes.

+ *

For more information, see Admin controls and guardrails and Conversation settings.

+ * @public + */ + chatModeConfiguration?: ChatModeConfiguration | undefined; + + /** + *

Enables filtering of responses based on document attributes or metadata fields.

+ * @public + */ + attributeFilter?: AttributeFilter | undefined; +} + +/** + * @public + */ +export interface SearchRelevantContentRequest { + /** + *

The unique identifier of the Q Business application to search.

+ * @public + */ + applicationId: string | undefined; + + /** + *

The ID of the user performing the search. Used for access control.

+ * @public + */ + userId?: string | undefined; + + /** + *

The groups the user belongs to. Used for access control.

+ * @public + */ + userGroups?: string[] | undefined; + + /** + *

The text to search for.

+ * @public + */ + queryText: string | undefined; + + /** + *

The source of content to search in.

+ * @public + */ + contentSource: ContentSource | undefined; + + /** + *

Enables filtering of responses based on document attributes or metadata fields.

+ * @public + */ + attributeFilter?: AttributeFilter | undefined; + + /** + *

The maximum number of results to return.

+ * @public + */ + maxResults?: number | undefined; + + /** + *

The token for the next set of results. (You received this token from a previous call.)

+ * @public + */ + nextToken?: string | undefined; +} + +/** + *

Specifies an allowed action and its associated filter configuration.

+ * @public + */ +export interface ActionConfiguration { + /** + *

The Q Business action that is allowed.

+ * @public + */ + action: string | undefined; + + /** + *

The filter configuration for the action, if any.

+ * @public + */ + filterConfiguration?: ActionFilterConfiguration | undefined; +} + +/** + *

The streaming input for the Chat API.

+ * @public + */ +export type ChatInputStream = + | ChatInputStream.ActionExecutionEventMember + | ChatInputStream.AttachmentEventMember + | ChatInputStream.AuthChallengeResponseEventMember + | ChatInputStream.ConfigurationEventMember + | ChatInputStream.EndOfInputEventMember + | ChatInputStream.TextEventMember + | ChatInputStream.$UnknownMember; + +/** + * @public + */ +export namespace ChatInputStream { + /** + *

A configuration event activated by an end user request to select a specific chat + * mode.

+ * @public + */ + export interface ConfigurationEventMember { + configurationEvent: ConfigurationEvent; + textEvent?: never; + attachmentEvent?: never; + actionExecutionEvent?: never; + endOfInputEvent?: never; + authChallengeResponseEvent?: never; + $unknown?: never; + } + + /** + *

Information about the payload of the ChatInputStream event containing the + * end user message input.

+ * @public + */ + export interface TextEventMember { + configurationEvent?: never; + textEvent: TextInputEvent; + attachmentEvent?: never; + actionExecutionEvent?: never; + endOfInputEvent?: never; + authChallengeResponseEvent?: never; + $unknown?: never; + } + + /** + *

A request by an end user to upload a file during chat.

+ * @public + */ + export interface AttachmentEventMember { + configurationEvent?: never; + textEvent?: never; + attachmentEvent: AttachmentInputEvent; + actionExecutionEvent?: never; + endOfInputEvent?: never; + authChallengeResponseEvent?: never; + $unknown?: never; + } + + /** + *

A request from an end user to perform an Amazon Q Business plugin action.

+ * @public + */ + export interface ActionExecutionEventMember { + configurationEvent?: never; + textEvent?: never; + attachmentEvent?: never; + actionExecutionEvent: ActionExecutionEvent; + endOfInputEvent?: never; + authChallengeResponseEvent?: never; + $unknown?: never; + } + + /** + *

The end of the streaming input for the Chat API.

+ * @public + */ + export interface EndOfInputEventMember { + configurationEvent?: never; + textEvent?: never; + attachmentEvent?: never; + actionExecutionEvent?: never; + endOfInputEvent: EndOfInputEvent; + authChallengeResponseEvent?: never; + $unknown?: never; + } + + /** + *

An authentication verification event response by a third party authentication server + * to Amazon Q Business.

+ * @public + */ + export interface AuthChallengeResponseEventMember { + configurationEvent?: never; + textEvent?: never; + attachmentEvent?: never; + actionExecutionEvent?: never; + endOfInputEvent?: never; + authChallengeResponseEvent: AuthChallengeResponseEvent; + $unknown?: never; + } + + /** + * @public + */ + export interface $UnknownMember { + configurationEvent?: never; + textEvent?: never; + attachmentEvent?: never; + actionExecutionEvent?: never; + endOfInputEvent?: never; + authChallengeResponseEvent?: never; + $unknown: [string, any]; + } + + export interface Visitor { + configurationEvent: (value: ConfigurationEvent) => T; + textEvent: (value: TextInputEvent) => T; + attachmentEvent: (value: AttachmentInputEvent) => T; + actionExecutionEvent: (value: ActionExecutionEvent) => T; + endOfInputEvent: (value: EndOfInputEvent) => T; + authChallengeResponseEvent: (value: AuthChallengeResponseEvent) => T; + _: (name: string, value: any) => T; + } + + export const visit = (value: ChatInputStream, visitor: Visitor): T => { + if (value.configurationEvent !== undefined) return visitor.configurationEvent(value.configurationEvent); + if (value.textEvent !== undefined) return visitor.textEvent(value.textEvent); + if (value.attachmentEvent !== undefined) return visitor.attachmentEvent(value.attachmentEvent); + if (value.actionExecutionEvent !== undefined) return visitor.actionExecutionEvent(value.actionExecutionEvent); + if (value.endOfInputEvent !== undefined) return visitor.endOfInputEvent(value.endOfInputEvent); + if (value.authChallengeResponseEvent !== undefined) + return visitor.authChallengeResponseEvent(value.authChallengeResponseEvent); + return visitor._(value.$unknown[0], value.$unknown[1]); + }; +} + +/** + * @public + */ +export interface ChatInput { + /** + *

The identifier of the Amazon Q Business application linked to a streaming Amazon Q Business + * conversation.

+ * @public + */ + applicationId: string | undefined; + + /** + *

The identifier of the user attached to the chat input.

+ * @public + */ + userId?: string | undefined; + + /** + *

The group names that a user associated with the chat input belongs to.

+ * @public + */ + userGroups?: string[] | undefined; + + /** + *

The identifier of the Amazon Q Business conversation.

+ * @public + */ + conversationId?: string | undefined; + + /** + *

The identifier used to associate a user message with a AI generated response.

+ * @public + */ + parentMessageId?: string | undefined; + + /** + *

A token that you provide to identify the chat input.

+ * @public + */ + clientToken?: string | undefined; + + /** + *

The streaming input for the Chat API.

+ * @public + */ + inputStream?: AsyncIterable | undefined; +} + +/** + * @public + */ +export interface CreateDataAccessorRequest { + /** + *

The unique identifier of the Q Business application.

+ * @public + */ + applicationId: string | undefined; + + /** + *

The Amazon Resource Name (ARN) of the IAM role for the ISV that will be accessing the data.

+ * @public + */ + principal: string | undefined; + + /** + *

A list of action configurations specifying the allowed actions and any associated filters.

+ * @public + */ + actionConfigurations: ActionConfiguration[] | undefined; + + /** + *

A unique, case-sensitive identifier you provide to ensure idempotency of the request.

+ * @public + */ + clientToken?: string | undefined; + + /** + *

A friendly name for the data accessor.

+ * @public + */ + displayName: string | undefined; + + /** + *

The tags to associate with the data accessor.

+ * @public + */ + tags?: Tag[] | undefined; +} + +/** + * @public + */ +export interface GetDataAccessorResponse { + /** + *

The friendly name of the data accessor.

+ * @public + */ + displayName?: string | undefined; + + /** + *

The unique identifier of the data accessor.

+ * @public + */ + dataAccessorId?: string | undefined; + + /** + *

The Amazon Resource Name (ARN) of the data accessor.

+ * @public + */ + dataAccessorArn?: string | undefined; + + /** + *

The unique identifier of the Q Business application associated with this data accessor.

+ * @public + */ + applicationId?: string | undefined; + + /** + *

The Amazon Resource Name (ARN) of the AWS IAM Identity Center application associated with this data accessor.

+ * @public + */ + idcApplicationArn?: string | undefined; + + /** + *

The Amazon Resource Name (ARN) of the IAM role for the ISV associated with this data accessor.

+ * @public + */ + principal?: string | undefined; + + /** + *

The list of action configurations specifying the allowed actions and any associated filters.

+ * @public + */ + actionConfigurations?: ActionConfiguration[] | undefined; + + /** + *

The timestamp when the data accessor was created.

+ * @public + */ + createdAt?: Date | undefined; + + /** + *

The timestamp when the data accessor was last updated.

+ * @public + */ + updatedAt?: Date | undefined; +} + +/** + * @public + */ +export interface UpdateDataAccessorRequest { + /** + *

The unique identifier of the Q Business application.

+ * @public + */ + applicationId: string | undefined; + + /** + *

The unique identifier of the data accessor to update.

+ * @public + */ + dataAccessorId: string | undefined; + + /** + *

The updated list of action configurations specifying the allowed actions and any associated filters.

+ * @public + */ + actionConfigurations: ActionConfiguration[] | undefined; + + /** + *

The updated friendly name for the data accessor.

+ * @public + */ + displayName?: string | undefined; +} + +/** + * @internal + */ +export const ChatInputStreamFilterSensitiveLog = (obj: ChatInputStream): any => { + if (obj.configurationEvent !== undefined) return { configurationEvent: obj.configurationEvent }; + if (obj.textEvent !== undefined) return { textEvent: obj.textEvent }; + if (obj.attachmentEvent !== undefined) return { attachmentEvent: obj.attachmentEvent }; + if (obj.actionExecutionEvent !== undefined) return { actionExecutionEvent: obj.actionExecutionEvent }; + if (obj.endOfInputEvent !== undefined) return { endOfInputEvent: obj.endOfInputEvent }; + if (obj.authChallengeResponseEvent !== undefined) + return { authChallengeResponseEvent: obj.authChallengeResponseEvent }; + if (obj.$unknown !== undefined) return { [obj.$unknown[0]]: "UNKNOWN" }; +}; + +/** + * @internal + */ +export const ChatInputFilterSensitiveLog = (obj: ChatInput): any => ({ + ...obj, + ...(obj.inputStream && { inputStream: "STREAMING_CONTENT" }), +}); + +/** + * @internal + */ +export const CreateDataAccessorRequestFilterSensitiveLog = (obj: CreateDataAccessorRequest): any => ({ + ...obj, + ...(obj.actionConfigurations && { actionConfigurations: obj.actionConfigurations.map((item) => item) }), + ...(obj.displayName && { displayName: SENSITIVE_STRING }), +}); + +/** + * @internal + */ +export const GetDataAccessorResponseFilterSensitiveLog = (obj: GetDataAccessorResponse): any => ({ + ...obj, + ...(obj.displayName && { displayName: SENSITIVE_STRING }), + ...(obj.actionConfigurations && { actionConfigurations: obj.actionConfigurations.map((item) => item) }), +}); + +/** + * @internal + */ +export const UpdateDataAccessorRequestFilterSensitiveLog = (obj: UpdateDataAccessorRequest): any => ({ + ...obj, + ...(obj.actionConfigurations && { actionConfigurations: obj.actionConfigurations.map((item) => item) }), + ...(obj.displayName && { displayName: SENSITIVE_STRING }), +}); diff --git a/clients/client-qbusiness/src/pagination/ListDataAccessorsPaginator.ts b/clients/client-qbusiness/src/pagination/ListDataAccessorsPaginator.ts new file mode 100644 index 000000000000..e41f042b92a8 --- /dev/null +++ b/clients/client-qbusiness/src/pagination/ListDataAccessorsPaginator.ts @@ -0,0 +1,24 @@ +// smithy-typescript generated code +import { createPaginator } from "@smithy/core"; +import { Paginator } from "@smithy/types"; + +import { + ListDataAccessorsCommand, + ListDataAccessorsCommandInput, + ListDataAccessorsCommandOutput, +} from "../commands/ListDataAccessorsCommand"; +import { QBusinessClient } from "../QBusinessClient"; +import { QBusinessPaginationConfiguration } from "./Interfaces"; + +/** + * @public + */ +export const paginateListDataAccessors: ( + config: QBusinessPaginationConfiguration, + input: ListDataAccessorsCommandInput, + ...rest: any[] +) => Paginator = createPaginator< + QBusinessPaginationConfiguration, + ListDataAccessorsCommandInput, + ListDataAccessorsCommandOutput +>(QBusinessClient, ListDataAccessorsCommand, "nextToken", "nextToken", "maxResults"); diff --git a/clients/client-qbusiness/src/pagination/ListPluginActionsPaginator.ts b/clients/client-qbusiness/src/pagination/ListPluginActionsPaginator.ts new file mode 100644 index 000000000000..4e356102b9dc --- /dev/null +++ b/clients/client-qbusiness/src/pagination/ListPluginActionsPaginator.ts @@ -0,0 +1,24 @@ +// smithy-typescript generated code +import { createPaginator } from "@smithy/core"; +import { Paginator } from "@smithy/types"; + +import { + ListPluginActionsCommand, + ListPluginActionsCommandInput, + ListPluginActionsCommandOutput, +} from "../commands/ListPluginActionsCommand"; +import { QBusinessClient } from "../QBusinessClient"; +import { QBusinessPaginationConfiguration } from "./Interfaces"; + +/** + * @public + */ +export const paginateListPluginActions: ( + config: QBusinessPaginationConfiguration, + input: ListPluginActionsCommandInput, + ...rest: any[] +) => Paginator = createPaginator< + QBusinessPaginationConfiguration, + ListPluginActionsCommandInput, + ListPluginActionsCommandOutput +>(QBusinessClient, ListPluginActionsCommand, "nextToken", "nextToken", "maxResults"); diff --git a/clients/client-qbusiness/src/pagination/ListPluginTypeActionsPaginator.ts b/clients/client-qbusiness/src/pagination/ListPluginTypeActionsPaginator.ts new file mode 100644 index 000000000000..b463145e16c5 --- /dev/null +++ b/clients/client-qbusiness/src/pagination/ListPluginTypeActionsPaginator.ts @@ -0,0 +1,24 @@ +// smithy-typescript generated code +import { createPaginator } from "@smithy/core"; +import { Paginator } from "@smithy/types"; + +import { + ListPluginTypeActionsCommand, + ListPluginTypeActionsCommandInput, + ListPluginTypeActionsCommandOutput, +} from "../commands/ListPluginTypeActionsCommand"; +import { QBusinessClient } from "../QBusinessClient"; +import { QBusinessPaginationConfiguration } from "./Interfaces"; + +/** + * @public + */ +export const paginateListPluginTypeActions: ( + config: QBusinessPaginationConfiguration, + input: ListPluginTypeActionsCommandInput, + ...rest: any[] +) => Paginator = createPaginator< + QBusinessPaginationConfiguration, + ListPluginTypeActionsCommandInput, + ListPluginTypeActionsCommandOutput +>(QBusinessClient, ListPluginTypeActionsCommand, "nextToken", "nextToken", "maxResults"); diff --git a/clients/client-qbusiness/src/pagination/ListPluginTypeMetadataPaginator.ts b/clients/client-qbusiness/src/pagination/ListPluginTypeMetadataPaginator.ts new file mode 100644 index 000000000000..ff76da19f4f9 --- /dev/null +++ b/clients/client-qbusiness/src/pagination/ListPluginTypeMetadataPaginator.ts @@ -0,0 +1,24 @@ +// smithy-typescript generated code +import { createPaginator } from "@smithy/core"; +import { Paginator } from "@smithy/types"; + +import { + ListPluginTypeMetadataCommand, + ListPluginTypeMetadataCommandInput, + ListPluginTypeMetadataCommandOutput, +} from "../commands/ListPluginTypeMetadataCommand"; +import { QBusinessClient } from "../QBusinessClient"; +import { QBusinessPaginationConfiguration } from "./Interfaces"; + +/** + * @public + */ +export const paginateListPluginTypeMetadata: ( + config: QBusinessPaginationConfiguration, + input: ListPluginTypeMetadataCommandInput, + ...rest: any[] +) => Paginator = createPaginator< + QBusinessPaginationConfiguration, + ListPluginTypeMetadataCommandInput, + ListPluginTypeMetadataCommandOutput +>(QBusinessClient, ListPluginTypeMetadataCommand, "nextToken", "nextToken", "maxResults"); diff --git a/clients/client-qbusiness/src/pagination/SearchRelevantContentPaginator.ts b/clients/client-qbusiness/src/pagination/SearchRelevantContentPaginator.ts new file mode 100644 index 000000000000..9fb997a84628 --- /dev/null +++ b/clients/client-qbusiness/src/pagination/SearchRelevantContentPaginator.ts @@ -0,0 +1,24 @@ +// smithy-typescript generated code +import { createPaginator } from "@smithy/core"; +import { Paginator } from "@smithy/types"; + +import { + SearchRelevantContentCommand, + SearchRelevantContentCommandInput, + SearchRelevantContentCommandOutput, +} from "../commands/SearchRelevantContentCommand"; +import { QBusinessClient } from "../QBusinessClient"; +import { QBusinessPaginationConfiguration } from "./Interfaces"; + +/** + * @public + */ +export const paginateSearchRelevantContent: ( + config: QBusinessPaginationConfiguration, + input: SearchRelevantContentCommandInput, + ...rest: any[] +) => Paginator = createPaginator< + QBusinessPaginationConfiguration, + SearchRelevantContentCommandInput, + SearchRelevantContentCommandOutput +>(QBusinessClient, SearchRelevantContentCommand, "nextToken", "nextToken", "maxResults"); diff --git a/clients/client-qbusiness/src/pagination/index.ts b/clients/client-qbusiness/src/pagination/index.ts index ce3047871158..326c386790fe 100644 --- a/clients/client-qbusiness/src/pagination/index.ts +++ b/clients/client-qbusiness/src/pagination/index.ts @@ -4,12 +4,17 @@ export * from "./Interfaces"; export * from "./ListApplicationsPaginator"; export * from "./ListAttachmentsPaginator"; export * from "./ListConversationsPaginator"; +export * from "./ListDataAccessorsPaginator"; export * from "./ListDataSourceSyncJobsPaginator"; export * from "./ListDataSourcesPaginator"; export * from "./ListDocumentsPaginator"; export * from "./ListGroupsPaginator"; export * from "./ListIndicesPaginator"; export * from "./ListMessagesPaginator"; +export * from "./ListPluginActionsPaginator"; +export * from "./ListPluginTypeActionsPaginator"; +export * from "./ListPluginTypeMetadataPaginator"; export * from "./ListPluginsPaginator"; export * from "./ListRetrieversPaginator"; export * from "./ListWebExperiencesPaginator"; +export * from "./SearchRelevantContentPaginator"; diff --git a/clients/client-qbusiness/src/protocols/Aws_restJson1.ts b/clients/client-qbusiness/src/protocols/Aws_restJson1.ts index b29c146aaaed..0cec134fe0a1 100644 --- a/clients/client-qbusiness/src/protocols/Aws_restJson1.ts +++ b/clients/client-qbusiness/src/protocols/Aws_restJson1.ts @@ -37,6 +37,10 @@ import { } from "@smithy/types"; import { v4 as generateIdempotencyToken } from "uuid"; +import { + AssociatePermissionCommandInput, + AssociatePermissionCommandOutput, +} from "../commands/AssociatePermissionCommand"; import { BatchDeleteDocumentCommandInput, BatchDeleteDocumentCommandOutput, @@ -45,6 +49,7 @@ import { BatchPutDocumentCommandInput, BatchPutDocumentCommandOutput } from "../ import { ChatCommandInput, ChatCommandOutput } from "../commands/ChatCommand"; import { ChatSyncCommandInput, ChatSyncCommandOutput } from "../commands/ChatSyncCommand"; import { CreateApplicationCommandInput, CreateApplicationCommandOutput } from "../commands/CreateApplicationCommand"; +import { CreateDataAccessorCommandInput, CreateDataAccessorCommandOutput } from "../commands/CreateDataAccessorCommand"; import { CreateDataSourceCommandInput, CreateDataSourceCommandOutput } from "../commands/CreateDataSourceCommand"; import { CreateIndexCommandInput, CreateIndexCommandOutput } from "../commands/CreateIndexCommand"; import { CreatePluginCommandInput, CreatePluginCommandOutput } from "../commands/CreatePluginCommand"; @@ -60,6 +65,7 @@ import { DeleteChatControlsConfigurationCommandOutput, } from "../commands/DeleteChatControlsConfigurationCommand"; import { DeleteConversationCommandInput, DeleteConversationCommandOutput } from "../commands/DeleteConversationCommand"; +import { DeleteDataAccessorCommandInput, DeleteDataAccessorCommandOutput } from "../commands/DeleteDataAccessorCommand"; import { DeleteDataSourceCommandInput, DeleteDataSourceCommandOutput } from "../commands/DeleteDataSourceCommand"; import { DeleteGroupCommandInput, DeleteGroupCommandOutput } from "../commands/DeleteGroupCommand"; import { DeleteIndexCommandInput, DeleteIndexCommandOutput } from "../commands/DeleteIndexCommand"; @@ -70,22 +76,29 @@ import { DeleteWebExperienceCommandInput, DeleteWebExperienceCommandOutput, } from "../commands/DeleteWebExperienceCommand"; +import { + DisassociatePermissionCommandInput, + DisassociatePermissionCommandOutput, +} from "../commands/DisassociatePermissionCommand"; import { GetApplicationCommandInput, GetApplicationCommandOutput } from "../commands/GetApplicationCommand"; import { GetChatControlsConfigurationCommandInput, GetChatControlsConfigurationCommandOutput, } from "../commands/GetChatControlsConfigurationCommand"; +import { GetDataAccessorCommandInput, GetDataAccessorCommandOutput } from "../commands/GetDataAccessorCommand"; import { GetDataSourceCommandInput, GetDataSourceCommandOutput } from "../commands/GetDataSourceCommand"; import { GetGroupCommandInput, GetGroupCommandOutput } from "../commands/GetGroupCommand"; import { GetIndexCommandInput, GetIndexCommandOutput } from "../commands/GetIndexCommand"; import { GetMediaCommandInput, GetMediaCommandOutput } from "../commands/GetMediaCommand"; import { GetPluginCommandInput, GetPluginCommandOutput } from "../commands/GetPluginCommand"; +import { GetPolicyCommandInput, GetPolicyCommandOutput } from "../commands/GetPolicyCommand"; import { GetRetrieverCommandInput, GetRetrieverCommandOutput } from "../commands/GetRetrieverCommand"; import { GetUserCommandInput, GetUserCommandOutput } from "../commands/GetUserCommand"; import { GetWebExperienceCommandInput, GetWebExperienceCommandOutput } from "../commands/GetWebExperienceCommand"; import { ListApplicationsCommandInput, ListApplicationsCommandOutput } from "../commands/ListApplicationsCommand"; import { ListAttachmentsCommandInput, ListAttachmentsCommandOutput } from "../commands/ListAttachmentsCommand"; import { ListConversationsCommandInput, ListConversationsCommandOutput } from "../commands/ListConversationsCommand"; +import { ListDataAccessorsCommandInput, ListDataAccessorsCommandOutput } from "../commands/ListDataAccessorsCommand"; import { ListDataSourcesCommandInput, ListDataSourcesCommandOutput } from "../commands/ListDataSourcesCommand"; import { ListDataSourceSyncJobsCommandInput, @@ -95,7 +108,16 @@ import { ListDocumentsCommandInput, ListDocumentsCommandOutput } from "../comman import { ListGroupsCommandInput, ListGroupsCommandOutput } from "../commands/ListGroupsCommand"; import { ListIndicesCommandInput, ListIndicesCommandOutput } from "../commands/ListIndicesCommand"; import { ListMessagesCommandInput, ListMessagesCommandOutput } from "../commands/ListMessagesCommand"; +import { ListPluginActionsCommandInput, ListPluginActionsCommandOutput } from "../commands/ListPluginActionsCommand"; import { ListPluginsCommandInput, ListPluginsCommandOutput } from "../commands/ListPluginsCommand"; +import { + ListPluginTypeActionsCommandInput, + ListPluginTypeActionsCommandOutput, +} from "../commands/ListPluginTypeActionsCommand"; +import { + ListPluginTypeMetadataCommandInput, + ListPluginTypeMetadataCommandOutput, +} from "../commands/ListPluginTypeMetadataCommand"; import { ListRetrieversCommandInput, ListRetrieversCommandOutput } from "../commands/ListRetrieversCommand"; import { ListTagsForResourceCommandInput, @@ -104,6 +126,10 @@ import { import { ListWebExperiencesCommandInput, ListWebExperiencesCommandOutput } from "../commands/ListWebExperiencesCommand"; import { PutFeedbackCommandInput, PutFeedbackCommandOutput } from "../commands/PutFeedbackCommand"; import { PutGroupCommandInput, PutGroupCommandOutput } from "../commands/PutGroupCommand"; +import { + SearchRelevantContentCommandInput, + SearchRelevantContentCommandOutput, +} from "../commands/SearchRelevantContentCommand"; import { StartDataSourceSyncJobCommandInput, StartDataSourceSyncJobCommandOutput, @@ -119,6 +145,7 @@ import { UpdateChatControlsConfigurationCommandInput, UpdateChatControlsConfigurationCommandOutput, } from "../commands/UpdateChatControlsConfigurationCommand"; +import { UpdateDataAccessorCommandInput, UpdateDataAccessorCommandOutput } from "../commands/UpdateDataAccessorCommand"; import { UpdateDataSourceCommandInput, UpdateDataSourceCommandOutput } from "../commands/UpdateDataSourceCommand"; import { UpdateIndexCommandInput, UpdateIndexCommandOutput } from "../commands/UpdateIndexCommand"; import { UpdatePluginCommandInput, UpdatePluginCommandOutput } from "../commands/UpdatePluginCommand"; @@ -145,7 +172,6 @@ import { AttachmentInput, AttachmentInputEvent, AttachmentsConfiguration, - AttributeFilter, AuthChallengeRequestEvent, AuthChallengeResponse, AuthChallengeResponseEvent, @@ -154,18 +180,19 @@ import { BlockedPhrasesConfigurationUpdate, BrowserExtension, BrowserExtensionConfiguration, - ChatInputStream, ChatModeConfiguration, ChatOutputStream, - ConfigurationEvent, ConflictException, ContentBlockerRule, ContentRetrievalRule, + ContentSource, Conversation, ConversationSource, CopyFromSource, CreatorModeConfiguration, + CustomizationConfiguration, CustomPluginConfiguration, + DataAccessor, DataSource, DataSourceSyncJob, DataSourceVpcConfiguration, @@ -189,6 +216,7 @@ import { GroupMembers, GroupStatusDetail, HookConfiguration, + IdcAuthConfiguration, IdentityProviderConfiguration, ImageExtractionConfiguration, Index, @@ -217,8 +245,11 @@ import { PrincipalGroup, PrincipalUser, QAppsConfiguration, + QuickSightConfiguration, + RelevantContent, ResourceNotFoundException, RetrieverConfiguration, + RetrieverContentSource, Rule, RuleConfiguration, S3, @@ -240,8 +271,40 @@ import { WebExperience, WebExperienceAuthConfiguration, } from "../models/models_0"; +import { + ActionConfiguration, + ActionFilterConfiguration, + AttributeFilter, + ChatInputStream, + ConfigurationEvent, +} from "../models/models_1"; import { QBusinessServiceException as __BaseException } from "../models/QBusinessServiceException"; +/** + * serializeAws_restJson1AssociatePermissionCommand + */ +export const se_AssociatePermissionCommand = async ( + input: AssociatePermissionCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = { + "content-type": "application/json", + }; + b.bp("/applications/{applicationId}/policy"); + b.p("applicationId", () => input.applicationId!, "{applicationId}", false); + let body: any; + body = JSON.stringify( + take(input, { + actions: (_) => _json(_), + principal: [], + statementId: [], + }) + ); + b.m("POST").h(headers).b(body); + return b.build(); +}; + /** * serializeAws_restJson1BatchDeleteDocumentCommand */ @@ -384,6 +447,7 @@ export const se_CreateApplicationCommand = async ( identityType: [], personalizationConfiguration: (_) => _json(_), qAppsConfiguration: (_) => _json(_), + quickSightConfiguration: (_) => _json(_), roleArn: [], tags: (_) => _json(_), }) @@ -392,6 +456,33 @@ export const se_CreateApplicationCommand = async ( return b.build(); }; +/** + * serializeAws_restJson1CreateDataAccessorCommand + */ +export const se_CreateDataAccessorCommand = async ( + input: CreateDataAccessorCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = { + "content-type": "application/json", + }; + b.bp("/applications/{applicationId}/dataaccessors"); + b.p("applicationId", () => input.applicationId!, "{applicationId}", false); + let body: any; + body = JSON.stringify( + take(input, { + actionConfigurations: (_) => se_ActionConfigurationList(_, context), + clientToken: [true, (_) => _ ?? generateIdempotencyToken()], + displayName: [], + principal: [], + tags: (_) => _json(_), + }) + ); + b.m("POST").h(headers).b(body); + return b.build(); +}; + /** * serializeAws_restJson1CreateDataSourceCommand */ @@ -553,6 +644,7 @@ export const se_CreateWebExperienceCommand = async ( take(input, { browserExtensionConfiguration: (_) => _json(_), clientToken: [true, (_) => _ ?? generateIdempotencyToken()], + customizationConfiguration: (_) => _json(_), identityProviderConfiguration: (_) => _json(_), origins: (_) => _json(_), roleArn: [], @@ -619,6 +711,23 @@ export const se_DeleteConversationCommand = async ( return b.build(); }; +/** + * serializeAws_restJson1DeleteDataAccessorCommand + */ +export const se_DeleteDataAccessorCommand = async ( + input: DeleteDataAccessorCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = {}; + b.bp("/applications/{applicationId}/dataaccessors/{dataAccessorId}"); + b.p("applicationId", () => input.applicationId!, "{applicationId}", false); + b.p("dataAccessorId", () => input.dataAccessorId!, "{dataAccessorId}", false); + let body: any; + b.m("DELETE").h(headers).b(body); + return b.build(); +}; + /** * serializeAws_restJson1DeleteDataSourceCommand */ @@ -743,6 +852,23 @@ export const se_DeleteWebExperienceCommand = async ( return b.build(); }; +/** + * serializeAws_restJson1DisassociatePermissionCommand + */ +export const se_DisassociatePermissionCommand = async ( + input: DisassociatePermissionCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = {}; + b.bp("/applications/{applicationId}/policy/{statementId}"); + b.p("applicationId", () => input.applicationId!, "{applicationId}", false); + b.p("statementId", () => input.statementId!, "{statementId}", false); + let body: any; + b.m("DELETE").h(headers).b(body); + return b.build(); +}; + /** * serializeAws_restJson1GetApplicationCommand */ @@ -779,6 +905,23 @@ export const se_GetChatControlsConfigurationCommand = async ( return b.build(); }; +/** + * serializeAws_restJson1GetDataAccessorCommand + */ +export const se_GetDataAccessorCommand = async ( + input: GetDataAccessorCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = {}; + b.bp("/applications/{applicationId}/dataaccessors/{dataAccessorId}"); + b.p("applicationId", () => input.applicationId!, "{applicationId}", false); + b.p("dataAccessorId", () => input.dataAccessorId!, "{dataAccessorId}", false); + let body: any; + b.m("GET").h(headers).b(body); + return b.build(); +}; + /** * serializeAws_restJson1GetDataSourceCommand */ @@ -871,6 +1014,22 @@ export const se_GetPluginCommand = async ( return b.build(); }; +/** + * serializeAws_restJson1GetPolicyCommand + */ +export const se_GetPolicyCommand = async ( + input: GetPolicyCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = {}; + b.bp("/applications/{applicationId}/policy"); + b.p("applicationId", () => input.applicationId!, "{applicationId}", false); + let body: any; + b.m("GET").h(headers).b(body); + return b.build(); +}; + /** * serializeAws_restJson1GetRetrieverCommand */ @@ -984,6 +1143,26 @@ export const se_ListConversationsCommand = async ( return b.build(); }; +/** + * serializeAws_restJson1ListDataAccessorsCommand + */ +export const se_ListDataAccessorsCommand = async ( + input: ListDataAccessorsCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = {}; + b.bp("/applications/{applicationId}/dataaccessors"); + b.p("applicationId", () => input.applicationId!, "{applicationId}", false); + const query: any = map({ + [_nT]: [, input[_nT]!], + [_mR]: [() => input.maxResults !== void 0, () => input[_mR]!.toString()], + }); + let body: any; + b.m("GET").h(headers).q(query).b(body); + return b.build(); +}; + /** * serializeAws_restJson1ListDataSourcesCommand */ @@ -1120,6 +1299,27 @@ export const se_ListMessagesCommand = async ( return b.build(); }; +/** + * serializeAws_restJson1ListPluginActionsCommand + */ +export const se_ListPluginActionsCommand = async ( + input: ListPluginActionsCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = {}; + b.bp("/applications/{applicationId}/plugins/{pluginId}/actions"); + b.p("applicationId", () => input.applicationId!, "{applicationId}", false); + b.p("pluginId", () => input.pluginId!, "{pluginId}", false); + const query: any = map({ + [_nT]: [, input[_nT]!], + [_mR]: [() => input.maxResults !== void 0, () => input[_mR]!.toString()], + }); + let body: any; + b.m("GET").h(headers).q(query).b(body); + return b.build(); +}; + /** * serializeAws_restJson1ListPluginsCommand */ @@ -1140,6 +1340,45 @@ export const se_ListPluginsCommand = async ( return b.build(); }; +/** + * serializeAws_restJson1ListPluginTypeActionsCommand + */ +export const se_ListPluginTypeActionsCommand = async ( + input: ListPluginTypeActionsCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = {}; + b.bp("/pluginTypes/{pluginType}/actions"); + b.p("pluginType", () => input.pluginType!, "{pluginType}", false); + const query: any = map({ + [_nT]: [, input[_nT]!], + [_mR]: [() => input.maxResults !== void 0, () => input[_mR]!.toString()], + }); + let body: any; + b.m("GET").h(headers).q(query).b(body); + return b.build(); +}; + +/** + * serializeAws_restJson1ListPluginTypeMetadataCommand + */ +export const se_ListPluginTypeMetadataCommand = async ( + input: ListPluginTypeMetadataCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = {}; + b.bp("/pluginTypeMetadata"); + const query: any = map({ + [_nT]: [, input[_nT]!], + [_mR]: [() => input.maxResults !== void 0, () => input[_mR]!.toString()], + }); + let body: any; + b.m("GET").h(headers).q(query).b(body); + return b.build(); +}; + /** * serializeAws_restJson1ListRetrieversCommand */ @@ -1253,6 +1492,37 @@ export const se_PutGroupCommand = async ( return b.build(); }; +/** + * serializeAws_restJson1SearchRelevantContentCommand + */ +export const se_SearchRelevantContentCommand = async ( + input: SearchRelevantContentCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = { + "content-type": "application/json", + }; + b.bp("/applications/{applicationId}/relevant-content"); + b.p("applicationId", () => input.applicationId!, "{applicationId}", false); + const query: any = map({ + [_uI]: [, input[_uI]!], + [_uG]: [() => input.userGroups !== void 0, () => input[_uG]! || []], + }); + let body: any; + body = JSON.stringify( + take(input, { + attributeFilter: (_) => se_AttributeFilter(_, context), + contentSource: (_) => _json(_), + maxResults: [], + nextToken: [], + queryText: [], + }) + ); + b.m("POST").h(headers).q(query).b(body); + return b.build(); +}; + /** * serializeAws_restJson1StartDataSourceSyncJobCommand */ @@ -1389,6 +1659,31 @@ export const se_UpdateChatControlsConfigurationCommand = async ( return b.build(); }; +/** + * serializeAws_restJson1UpdateDataAccessorCommand + */ +export const se_UpdateDataAccessorCommand = async ( + input: UpdateDataAccessorCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const b = rb(input, context); + const headers: any = { + "content-type": "application/json", + }; + b.bp("/applications/{applicationId}/dataaccessors/{dataAccessorId}"); + b.p("applicationId", () => input.applicationId!, "{applicationId}", false); + b.p("dataAccessorId", () => input.dataAccessorId!, "{dataAccessorId}", false); + let body: any; + body = JSON.stringify( + take(input, { + actionConfigurations: (_) => se_ActionConfigurationList(_, context), + displayName: [], + }) + ); + b.m("PUT").h(headers).b(body); + return b.build(); +}; + /** * serializeAws_restJson1UpdateDataSourceCommand */ @@ -1546,6 +1841,7 @@ export const se_UpdateWebExperienceCommand = async ( take(input, { authenticationConfiguration: (_) => _json(_), browserExtensionConfiguration: (_) => _json(_), + customizationConfiguration: (_) => _json(_), identityProviderConfiguration: (_) => _json(_), origins: (_) => _json(_), roleArn: [], @@ -1559,6 +1855,27 @@ export const se_UpdateWebExperienceCommand = async ( return b.build(); }; +/** + * deserializeAws_restJson1AssociatePermissionCommand + */ +export const de_AssociatePermissionCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + statement: __expectString, + }); + Object.assign(contents, doc); + return contents; +}; + /** * deserializeAws_restJson1BatchDeleteDocumentCommand */ @@ -1669,6 +1986,29 @@ export const de_CreateApplicationCommand = async ( return contents; }; +/** + * deserializeAws_restJson1CreateDataAccessorCommand + */ +export const de_CreateDataAccessorCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + dataAccessorArn: __expectString, + dataAccessorId: __expectString, + idcApplicationArn: __expectString, + }); + Object.assign(contents, doc); + return contents; +}; + /** * deserializeAws_restJson1CreateDataSourceCommand */ @@ -1848,6 +2188,23 @@ export const de_DeleteConversationCommand = async ( return contents; }; +/** + * deserializeAws_restJson1DeleteDataAccessorCommand + */ +export const de_DeleteDataAccessorCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + await collectBody(output.body, context); + return contents; +}; + /** * deserializeAws_restJson1DeleteDataSourceCommand */ @@ -1967,6 +2324,23 @@ export const de_DeleteWebExperienceCommand = async ( return contents; }; +/** + * deserializeAws_restJson1DisassociatePermissionCommand + */ +export const de_DisassociatePermissionCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + await collectBody(output.body, context); + return contents; +}; + /** * deserializeAws_restJson1GetApplicationCommand */ @@ -1997,6 +2371,7 @@ export const de_GetApplicationCommand = async ( identityType: __expectString, personalizationConfiguration: _json, qAppsConfiguration: _json, + quickSightConfiguration: _json, roleArn: __expectString, status: __expectString, updatedAt: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), @@ -2030,6 +2405,35 @@ export const de_GetChatControlsConfigurationCommand = async ( return contents; }; +/** + * deserializeAws_restJson1GetDataAccessorCommand + */ +export const de_GetDataAccessorCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + actionConfigurations: (_) => de_ActionConfigurationList(_, context), + applicationId: __expectString, + createdAt: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + dataAccessorArn: __expectString, + dataAccessorId: __expectString, + displayName: __expectString, + idcApplicationArn: __expectString, + principal: __expectString, + updatedAt: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + }); + Object.assign(contents, doc); + return contents; +}; + /** * deserializeAws_restJson1GetDataSourceCommand */ @@ -2176,6 +2580,27 @@ export const de_GetPluginCommand = async ( return contents; }; +/** + * deserializeAws_restJson1GetPolicyCommand + */ +export const de_GetPolicyCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + policy: __expectString, + }); + Object.assign(contents, doc); + return contents; +}; + /** * deserializeAws_restJson1GetRetrieverCommand */ @@ -2246,6 +2671,7 @@ export const de_GetWebExperienceCommand = async ( authenticationConfiguration: (_) => _json(__expectUnion(_)), browserExtensionConfiguration: _json, createdAt: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + customizationConfiguration: _json, defaultEndpoint: __expectString, error: _json, identityProviderConfiguration: (_) => _json(__expectUnion(_)), @@ -2330,6 +2756,28 @@ export const de_ListConversationsCommand = async ( return contents; }; +/** + * deserializeAws_restJson1ListDataAccessorsCommand + */ +export const de_ListDataAccessorsCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + dataAccessors: (_) => de_DataAccessors(_, context), + nextToken: __expectString, + }); + Object.assign(contents, doc); + return contents; +}; + /** * deserializeAws_restJson1ListDataSourcesCommand */ @@ -2462,6 +2910,28 @@ export const de_ListMessagesCommand = async ( return contents; }; +/** + * deserializeAws_restJson1ListPluginActionsCommand + */ +export const de_ListPluginActionsCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + items: _json, + nextToken: __expectString, + }); + Object.assign(contents, doc); + return contents; +}; + /** * deserializeAws_restJson1ListPluginsCommand */ @@ -2484,6 +2954,50 @@ export const de_ListPluginsCommand = async ( return contents; }; +/** + * deserializeAws_restJson1ListPluginTypeActionsCommand + */ +export const de_ListPluginTypeActionsCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + items: _json, + nextToken: __expectString, + }); + Object.assign(contents, doc); + return contents; +}; + +/** + * deserializeAws_restJson1ListPluginTypeMetadataCommand + */ +export const de_ListPluginTypeMetadataCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + items: _json, + nextToken: __expectString, + }); + Object.assign(contents, doc); + return contents; +}; + /** * deserializeAws_restJson1ListRetrieversCommand */ @@ -2583,6 +3097,28 @@ export const de_PutGroupCommand = async ( return contents; }; +/** + * deserializeAws_restJson1SearchRelevantContentCommand + */ +export const de_SearchRelevantContentCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + const data: Record = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body"); + const doc = take(data, { + nextToken: __expectString, + relevantContent: (_) => de_RelevantContentList(_, context), + }); + Object.assign(contents, doc); + return contents; +}; + /** * deserializeAws_restJson1StartDataSourceSyncJobCommand */ @@ -2689,6 +3225,23 @@ export const de_UpdateChatControlsConfigurationCommand = async ( return contents; }; +/** + * deserializeAws_restJson1UpdateDataAccessorCommand + */ +export const de_UpdateDataAccessorCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode !== 200 && output.statusCode >= 300) { + return de_CommandError(output, context); + } + const contents: any = map({ + $metadata: deserializeMetadata(output), + }); + await collectBody(output.body, context); + return contents; +}; + /** * deserializeAws_restJson1UpdateDataSourceCommand */ @@ -2819,15 +3372,15 @@ const de_CommandError = async (output: __HttpResponse, context: __SerdeContext): case "ResourceNotFoundException": case "com.amazonaws.qbusiness#ResourceNotFoundException": throw await de_ResourceNotFoundExceptionRes(parsedOutput, context); + case "ServiceQuotaExceededException": + case "com.amazonaws.qbusiness#ServiceQuotaExceededException": + throw await de_ServiceQuotaExceededExceptionRes(parsedOutput, context); case "ThrottlingException": case "com.amazonaws.qbusiness#ThrottlingException": throw await de_ThrottlingExceptionRes(parsedOutput, context); case "ValidationException": case "com.amazonaws.qbusiness#ValidationException": throw await de_ValidationExceptionRes(parsedOutput, context); - case "ServiceQuotaExceededException": - case "com.amazonaws.qbusiness#ServiceQuotaExceededException": - throw await de_ServiceQuotaExceededExceptionRes(parsedOutput, context); case "ExternalResourceException": case "com.amazonaws.qbusiness#ExternalResourceException": throw await de_ExternalResourceExceptionRes(parsedOutput, context); @@ -3207,6 +3760,27 @@ const de_TextOutputEvent_event = async (output: any, context: __SerdeContext): P // se_AccessControls omitted. +/** + * serializeAws_restJson1ActionConfiguration + */ +const se_ActionConfiguration = (input: ActionConfiguration, context: __SerdeContext): any => { + return take(input, { + action: [], + filterConfiguration: (_) => se_ActionFilterConfiguration(_, context), + }); +}; + +/** + * serializeAws_restJson1ActionConfigurationList + */ +const se_ActionConfigurationList = (input: ActionConfiguration[], context: __SerdeContext): any => { + return input + .filter((e: any) => e != null) + .map((entry) => { + return se_ActionConfiguration(entry, context); + }); +}; + /** * serializeAws_restJson1ActionExecution */ @@ -3254,6 +3828,15 @@ const se_ActionExecutionPayloadField = (input: ActionExecutionPayloadField, cont }); }; +/** + * serializeAws_restJson1ActionFilterConfiguration + */ +const se_ActionFilterConfiguration = (input: ActionFilterConfiguration, context: __SerdeContext): any => { + return take(input, { + documentAttributeFilter: (_) => se_AttributeFilter(_, context), + }); +}; + /** * serializeAws_restJson1ActionPayloadFieldValue */ @@ -3362,12 +3945,16 @@ const se_ConfigurationEvent = (input: ConfigurationEvent, context: __SerdeContex // se_ContentRetrievalRule omitted. +// se_ContentSource omitted. + // se_ConversationSource omitted. // se_CopyFromSource omitted. // se_CreatorModeConfiguration omitted. +// se_CustomizationConfiguration omitted. + // se_CustomPluginConfiguration omitted. /** @@ -3524,6 +4111,8 @@ const se_HookConfiguration = (input: HookConfiguration, context: __SerdeContext) }); }; +// se_IdcAuthConfiguration omitted. + // se_IdentityProviderConfiguration omitted. // se_ImageExtractionConfiguration omitted. @@ -3608,8 +4197,14 @@ const se_MessageUsefulnessFeedback = (input: MessageUsefulnessFeedback, context: // se_QAppsConfiguration omitted. +// se_QIamActions omitted. + +// se_QuickSightConfiguration omitted. + // se_RetrieverConfiguration omitted. +// se_RetrieverContentSource omitted. + // se_Rule omitted. // se_RuleConfiguration omitted. @@ -3656,6 +4251,28 @@ const se_MessageUsefulnessFeedback = (input: MessageUsefulnessFeedback, context: // se_WebExperienceOrigins omitted. +/** + * deserializeAws_restJson1ActionConfiguration + */ +const de_ActionConfiguration = (output: any, context: __SerdeContext): ActionConfiguration => { + return take(output, { + action: __expectString, + filterConfiguration: (_: any) => de_ActionFilterConfiguration(_, context), + }) as any; +}; + +/** + * deserializeAws_restJson1ActionConfigurationList + */ +const de_ActionConfigurationList = (output: any, context: __SerdeContext): ActionConfiguration[] => { + const retVal = (output || []) + .filter((e: any) => e != null) + .map((entry: any) => { + return de_ActionConfiguration(entry, context); + }); + return retVal; +}; + /** * deserializeAws_restJson1ActionExecution */ @@ -3695,6 +4312,15 @@ const de_ActionExecutionPayloadField = (output: any, context: __SerdeContext): A }) as any; }; +/** + * deserializeAws_restJson1ActionFilterConfiguration + */ +const de_ActionFilterConfiguration = (output: any, context: __SerdeContext): ActionFilterConfiguration => { + return take(output, { + documentAttributeFilter: (_: any) => de_AttributeFilter(_, context), + }) as any; +}; + /** * deserializeAws_restJson1ActionPayloadFieldValue */ @@ -3794,6 +4420,10 @@ const de_ActionReviewPayloadFieldArrayItemJsonSchema = (output: any, context: __ return output; }; +// de_Actions omitted. + +// de_ActionSummary omitted. + // de_APISchema omitted. /** @@ -3805,6 +4435,7 @@ const de_Application = (output: any, context: __SerdeContext): Application => { createdAt: (_: any) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), displayName: __expectString, identityType: __expectString, + quickSightConfiguration: _json, status: __expectString, updatedAt: (_: any) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), }) as any; @@ -3860,6 +4491,36 @@ const de_AttachmentList = (output: any, context: __SerdeContext): Attachment[] = // de_AttachmentsOutput omitted. +/** + * deserializeAws_restJson1AttributeFilter + */ +const de_AttributeFilter = (output: any, context: __SerdeContext): AttributeFilter => { + return take(output, { + andAllFilters: (_: any) => de_AttributeFilters(_, context), + containsAll: (_: any) => de_DocumentAttribute(_, context), + containsAny: (_: any) => de_DocumentAttribute(_, context), + equalsTo: (_: any) => de_DocumentAttribute(_, context), + greaterThan: (_: any) => de_DocumentAttribute(_, context), + greaterThanOrEquals: (_: any) => de_DocumentAttribute(_, context), + lessThan: (_: any) => de_DocumentAttribute(_, context), + lessThanOrEquals: (_: any) => de_DocumentAttribute(_, context), + notFilter: (_: any) => de_AttributeFilter(_, context), + orAllFilters: (_: any) => de_AttributeFilters(_, context), + }) as any; +}; + +/** + * deserializeAws_restJson1AttributeFilters + */ +const de_AttributeFilters = (output: any, context: __SerdeContext): AttributeFilter[] => { + const retVal = (output || []) + .filter((e: any) => e != null) + .map((entry: any) => { + return de_AttributeFilter(entry, context); + }); + return retVal; +}; + // de_AuthChallengeRequest omitted. // de_AuthChallengeRequestEvent omitted. @@ -3909,8 +4570,37 @@ const de_Conversations = (output: any, context: __SerdeContext): Conversation[] // de_CopyFromSource omitted. +// de_CustomizationConfiguration omitted. + // de_CustomPluginConfiguration omitted. +/** + * deserializeAws_restJson1DataAccessor + */ +const de_DataAccessor = (output: any, context: __SerdeContext): DataAccessor => { + return take(output, { + createdAt: (_: any) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + dataAccessorArn: __expectString, + dataAccessorId: __expectString, + displayName: __expectString, + idcApplicationArn: __expectString, + principal: __expectString, + updatedAt: (_: any) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + }) as any; +}; + +/** + * deserializeAws_restJson1DataAccessors + */ +const de_DataAccessors = (output: any, context: __SerdeContext): DataAccessor[] => { + const retVal = (output || []) + .filter((e: any) => e != null) + .map((entry: any) => { + return de_DataAccessor(entry, context); + }); + return retVal; +}; + /** * deserializeAws_restJson1DataSource */ @@ -3977,6 +4667,16 @@ const de_DataSourceSyncJobs = (output: any, context: __SerdeContext): DataSource // de_DateAttributeBoostingConfiguration omitted. +/** + * deserializeAws_restJson1DocumentAttribute + */ +const de_DocumentAttribute = (output: any, context: __SerdeContext): DocumentAttribute => { + return take(output, { + name: __expectString, + value: (_: any) => de_DocumentAttributeValue(__expectUnion(_), context), + }) as any; +}; + // de_DocumentAttributeBoostingConfiguration omitted. // de_DocumentAttributeBoostingOverrideMap omitted. @@ -3996,6 +4696,18 @@ const de_DocumentAttributeCondition = (output: any, context: __SerdeContext): Do // de_DocumentAttributeConfigurations omitted. +/** + * deserializeAws_restJson1DocumentAttributes + */ +const de_DocumentAttributes = (output: any, context: __SerdeContext): DocumentAttribute[] => { + const retVal = (output || []) + .filter((e: any) => e != null) + .map((entry: any) => { + return de_DocumentAttribute(entry, context); + }); + return retVal; +}; + // de_DocumentAttributeStringListValue omitted. /** @@ -4123,6 +4835,8 @@ const de_HookConfiguration = (output: any, context: __SerdeContext): HookConfigu }) as any; }; +// de_IdcAuthConfiguration omitted. + // de_IdentityProviderConfiguration omitted. // de_ImageExtractionConfiguration omitted. @@ -4187,6 +4901,8 @@ const de_InlineDocumentEnrichmentConfigurations = ( // de_KendraIndexConfiguration omitted. +// de_ListPluginTypeMetadataSummaries omitted. + // de_MediaExtractionConfiguration omitted. /** @@ -4272,8 +4988,38 @@ const de_Plugins = (output: any, context: __SerdeContext): Plugin[] => { return retVal; }; +// de_PluginTypeMetadataSummary omitted. + // de_QAppsConfiguration omitted. +// de_QuickSightConfiguration omitted. + +/** + * deserializeAws_restJson1RelevantContent + */ +const de_RelevantContent = (output: any, context: __SerdeContext): RelevantContent => { + return take(output, { + content: __expectString, + documentAttributes: (_: any) => de_DocumentAttributes(_, context), + documentId: __expectString, + documentTitle: __expectString, + documentUri: __expectString, + scoreAttributes: _json, + }) as any; +}; + +/** + * deserializeAws_restJson1RelevantContentList + */ +const de_RelevantContentList = (output: any, context: __SerdeContext): RelevantContent[] => { + const retVal = (output || []) + .filter((e: any) => e != null) + .map((entry: any) => { + return de_RelevantContent(entry, context); + }); + return retVal; +}; + // de_Retriever omitted. // de_RetrieverConfiguration omitted. @@ -4292,6 +5038,8 @@ const de_Plugins = (output: any, context: __SerdeContext): Plugin[] => { // de_SamlProviderConfiguration omitted. +// de_ScoreAttributes omitted. + // de_SecurityGroupIds omitted. // de_SnippetExcerpt omitted. diff --git a/codegen/sdk-codegen/aws-models/qbusiness.json b/codegen/sdk-codegen/aws-models/qbusiness.json index 5eee06618dbf..acca8e83ee35 100644 --- a/codegen/sdk-codegen/aws-models/qbusiness.json +++ b/codegen/sdk-codegen/aws-models/qbusiness.json @@ -96,6 +96,39 @@ "smithy.api#httpError": 403 } }, + "com.amazonaws.qbusiness#ActionConfiguration": { + "type": "structure", + "members": { + "action": { + "target": "com.amazonaws.qbusiness#QIamAction", + "traits": { + "smithy.api#documentation": "

The Q Business action that is allowed.

", + "smithy.api#required": {} + } + }, + "filterConfiguration": { + "target": "com.amazonaws.qbusiness#ActionFilterConfiguration", + "traits": { + "smithy.api#documentation": "

The filter configuration for the action, if any.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies an allowed action and its associated filter configuration.

" + } + }, + "com.amazonaws.qbusiness#ActionConfigurationList": { + "type": "list", + "member": { + "target": "com.amazonaws.qbusiness#ActionConfiguration" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 10 + } + } + }, "com.amazonaws.qbusiness#ActionExecution": { "type": "structure", "members": { @@ -178,6 +211,20 @@ "smithy.api#documentation": "

A user input field in an plugin action execution payload.

" } }, + "com.amazonaws.qbusiness#ActionFilterConfiguration": { + "type": "structure", + "members": { + "documentAttributeFilter": { + "target": "com.amazonaws.qbusiness#AttributeFilter", + "traits": { + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies filters to apply to an allowed action.

" + } + }, "com.amazonaws.qbusiness#ActionPayloadFieldKey": { "type": "string", "traits": { @@ -366,7 +413,7 @@ "arrayItemJsonSchema": { "target": "com.amazonaws.qbusiness#ActionReviewPayloadFieldArrayItemJsonSchema", "traits": { - "smithy.api#documentation": "

Use to create a custom form with array fields (fields with nested objects inside an\n array).

" + "smithy.api#documentation": "

Use to create a custom form with array fields (fields with nested objects inside an\n array).

" } }, "required": { @@ -409,6 +456,44 @@ "com.amazonaws.qbusiness#ActionReviewPayloadFieldArrayItemJsonSchema": { "type": "document" }, + "com.amazonaws.qbusiness#ActionSummary": { + "type": "structure", + "members": { + "actionIdentifier": { + "target": "com.amazonaws.qbusiness#String", + "traits": { + "smithy.api#documentation": "

The identifier of an Amazon Q Business plugin action.

" + } + }, + "displayName": { + "target": "com.amazonaws.qbusiness#String", + "traits": { + "smithy.api#documentation": "

The display name assigned by Amazon Q Business to a plugin action. You can't\n modify this value.

" + } + }, + "instructionExample": { + "target": "com.amazonaws.qbusiness#String", + "traits": { + "smithy.api#documentation": "

An Amazon Q Business suggested prompt and end user can use to invoke a plugin\n action. This value can be modified and sent as input to initiate an action. For\n example:

\n
    \n
  • \n

    Create a Jira task

    \n
  • \n
  • \n

    Create a chat assistant task to find the root cause of a specific\n incident

    \n
  • \n
" + } + }, + "description": { + "target": "com.amazonaws.qbusiness#String", + "traits": { + "smithy.api#documentation": "

The description of an Amazon Q Business plugin action.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Summary information for an Amazon Q Business plugin action.

" + } + }, + "com.amazonaws.qbusiness#Actions": { + "type": "list", + "member": { + "target": "com.amazonaws.qbusiness#ActionSummary" + } + }, "com.amazonaws.qbusiness#AmazonResourceName": { "type": "string", "traits": { @@ -456,6 +541,12 @@ "traits": { "smithy.api#documentation": "

The authentication type being used by a Amazon Q Business application.

" } + }, + "quickSightConfiguration": { + "target": "com.amazonaws.qbusiness#QuickSightConfiguration", + "traits": { + "smithy.api#documentation": "

The Amazon QuickSight configuration for an Amazon Q Business application that uses QuickSight as the identity provider.

" + } } }, "traits": { @@ -610,6 +701,96 @@ "smithy.api#documentation": "

The creator mode specific admin controls configured for an Amazon Q Business application.\n Determines whether an end user can generate LLM-only responses when they use the web\n experience.

\n

For more information, see Admin controls and guardrails and Conversation settings.

" } }, + "com.amazonaws.qbusiness#AssociatePermission": { + "type": "operation", + "input": { + "target": "com.amazonaws.qbusiness#AssociatePermissionRequest" + }, + "output": { + "target": "com.amazonaws.qbusiness#AssociatePermissionResponse" + }, + "errors": [ + { + "target": "com.amazonaws.qbusiness#AccessDeniedException" + }, + { + "target": "com.amazonaws.qbusiness#ConflictException" + }, + { + "target": "com.amazonaws.qbusiness#InternalServerException" + }, + { + "target": "com.amazonaws.qbusiness#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.qbusiness#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.qbusiness#ThrottlingException" + }, + { + "target": "com.amazonaws.qbusiness#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Adds or updates a permission policy for a Q Business application, allowing cross-account access for an ISV. \n This operation creates a new policy statement for the specified Q Business application. \n The policy statement defines the IAM actions that the ISV is allowed to perform on the Q Business application's resources.

", + "smithy.api#http": { + "uri": "/applications/{applicationId}/policy", + "method": "POST" + } + } + }, + "com.amazonaws.qbusiness#AssociatePermissionRequest": { + "type": "structure", + "members": { + "applicationId": { + "target": "com.amazonaws.qbusiness#ApplicationId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the Q Business application.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "statementId": { + "target": "com.amazonaws.qbusiness#StatementId", + "traits": { + "smithy.api#documentation": "

A unique identifier for the policy statement.

", + "smithy.api#required": {} + } + }, + "actions": { + "target": "com.amazonaws.qbusiness#QIamActions", + "traits": { + "smithy.api#documentation": "

The list of Q Business actions that the ISV is allowed to perform.

", + "smithy.api#required": {} + } + }, + "principal": { + "target": "com.amazonaws.qbusiness#PrincipalRoleArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IAM role for the ISV that is being granted permission.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.qbusiness#AssociatePermissionResponse": { + "type": "structure", + "members": { + "statement": { + "target": "com.amazonaws.qbusiness#String", + "traits": { + "smithy.api#documentation": "

The JSON representation of the added permission statement.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.qbusiness#Attachment": { "type": "structure", "members": { @@ -1843,6 +2024,16 @@ "target": "com.amazonaws.qbusiness#ClientIdForOIDC" } }, + "com.amazonaws.qbusiness#ClientNamespace": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 64 + }, + "smithy.api#pattern": "^[a-zA-Z0-9._-]*$" + } + }, "com.amazonaws.qbusiness#ClientToken": { "type": "string", "traits": { @@ -1931,6 +2122,20 @@ "smithy.api#documentation": "

Rules for retrieving content from data sources connected to a Amazon Q Business\n application for a specific topic control configuration.

" } }, + "com.amazonaws.qbusiness#ContentSource": { + "type": "union", + "members": { + "retriever": { + "target": "com.amazonaws.qbusiness#RetrieverContentSource", + "traits": { + "smithy.api#documentation": "

The retriever to use as the content source.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies the source of content to search in.

" + } + }, "com.amazonaws.qbusiness#ContentType": { "type": "enum", "members": { @@ -2232,6 +2437,12 @@ "traits": { "smithy.api#documentation": "

Configuration information about chat response personalization. For more information,\n see Personalizing chat responses\n

" } + }, + "quickSightConfiguration": { + "target": "com.amazonaws.qbusiness#QuickSightConfiguration", + "traits": { + "smithy.api#documentation": "

The Amazon QuickSight configuration for an Amazon Q Business application that uses QuickSight for authentication. This configuration is\n required if your application uses QuickSight as the identity provider. For more information, see Creating an\n Amazon QuickSight integrated application.

" + } } }, "traits": { @@ -2258,6 +2469,132 @@ "smithy.api#output": {} } }, + "com.amazonaws.qbusiness#CreateDataAccessor": { + "type": "operation", + "input": { + "target": "com.amazonaws.qbusiness#CreateDataAccessorRequest" + }, + "output": { + "target": "com.amazonaws.qbusiness#CreateDataAccessorResponse" + }, + "errors": [ + { + "target": "com.amazonaws.qbusiness#AccessDeniedException" + }, + { + "target": "com.amazonaws.qbusiness#ConflictException" + }, + { + "target": "com.amazonaws.qbusiness#InternalServerException" + }, + { + "target": "com.amazonaws.qbusiness#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.qbusiness#ServiceQuotaExceededException" + }, + { + "target": "com.amazonaws.qbusiness#ThrottlingException" + }, + { + "target": "com.amazonaws.qbusiness#ValidationException" + } + ], + "traits": { + "aws.iam#conditionKeys": ["aws:RequestTag/${TagKey}", "aws:TagKeys"], + "aws.iam#requiredActions": [ + "qbusiness:GetDataAccessor", + "qbusiness:TagResource", + "qbusiness:ListTagsForResource" + ], + "smithy.api#documentation": "

Creates a new data accessor for an ISV to access data from a Q Business application. \n The data accessor is an entity that represents the ISV's access to the Q Business application's data. \n It includes the IAM role ARN for the ISV, a friendly name, and a set of action configurations that define the \n specific actions the ISV is allowed to perform and any associated data filters. When the data accessor is created, \n an AWS IAM Identity Center application is also created to manage the ISV's identity and authentication for \n accessing the Q Business application.

", + "smithy.api#http": { + "uri": "/applications/{applicationId}/dataaccessors", + "method": "POST" + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.qbusiness#CreateDataAccessorRequest": { + "type": "structure", + "members": { + "applicationId": { + "target": "com.amazonaws.qbusiness#ApplicationId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the Q Business application.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "principal": { + "target": "com.amazonaws.qbusiness#PrincipalRoleArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IAM role for the ISV that will be accessing the data.

", + "smithy.api#required": {} + } + }, + "actionConfigurations": { + "target": "com.amazonaws.qbusiness#ActionConfigurationList", + "traits": { + "smithy.api#documentation": "

A list of action configurations specifying the allowed actions and any associated filters.

", + "smithy.api#required": {} + } + }, + "clientToken": { + "target": "com.amazonaws.qbusiness#ClientToken", + "traits": { + "smithy.api#documentation": "

A unique, case-sensitive identifier you provide to ensure idempotency of the request.

", + "smithy.api#idempotencyToken": {} + } + }, + "displayName": { + "target": "com.amazonaws.qbusiness#DataAccessorName", + "traits": { + "smithy.api#documentation": "

A friendly name for the data accessor.

", + "smithy.api#required": {} + } + }, + "tags": { + "target": "com.amazonaws.qbusiness#Tags", + "traits": { + "aws.cloudformation#cfnMutability": "full", + "smithy.api#documentation": "

The tags to associate with the data accessor.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.qbusiness#CreateDataAccessorResponse": { + "type": "structure", + "members": { + "dataAccessorId": { + "target": "com.amazonaws.qbusiness#DataAccessorId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the created data accessor.

", + "smithy.api#required": {} + } + }, + "idcApplicationArn": { + "target": "com.amazonaws.qbusiness#IdcApplicationArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the AWS IAM Identity Center application created for this data accessor.

", + "smithy.api#required": {} + } + }, + "dataAccessorArn": { + "target": "com.amazonaws.qbusiness#DataAccessorArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the created data accessor.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.qbusiness#CreateDataSource": { "type": "operation", "input": { @@ -2993,7 +3330,13 @@ "traits": { "smithy.api#documentation": "

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

\n \n

\n For Amazon Q Business application using external OIDC-compliant identity providers (IdPs).\n The IdP administrator must add the browser extension sign-in redirect URLs to the IdP application.\n For more information, see Configure external OIDC identity provider for your browser extensions..\n

\n
" } - } + }, + "customizationConfiguration": { + "target": "com.amazonaws.qbusiness#CustomizationConfiguration", + "traits": { + "smithy.api#documentation": "

Sets the custom logo, favicon, font, and color used in the Amazon Q web experience.

" + } + } }, "traits": { "smithy.api#input": {} @@ -3051,6 +3394,16 @@ } } }, + "com.amazonaws.qbusiness#CustomCSSUrl": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 1284 + }, + "smithy.api#pattern": "^(https?://[a-zA-Z0-9-_.+%/]+\\.css)?$" + } + }, "com.amazonaws.qbusiness#CustomPluginConfiguration": { "type": "structure", "members": { @@ -3080,6 +3433,98 @@ "smithy.api#documentation": "

Configuration information required to create a custom plugin.

" } }, + "com.amazonaws.qbusiness#CustomizationConfiguration": { + "type": "structure", + "members": { + "customCSSUrl": { + "target": "com.amazonaws.qbusiness#CustomCSSUrl", + "traits": { + "smithy.api#documentation": "

Provides the URL where the custom CSS file is hosted for an Amazon Q web experience.

" + } + }, + "logoUrl": { + "target": "com.amazonaws.qbusiness#LogoUrl", + "traits": { + "smithy.api#documentation": "

Provides the URL where the custom logo file is hosted for an Amazon Q web experience.

" + } + }, + "fontUrl": { + "target": "com.amazonaws.qbusiness#FontUrl", + "traits": { + "smithy.api#documentation": "

Provides the URL where the custom font file is hosted for an Amazon Q web experience.

" + } + }, + "faviconUrl": { + "target": "com.amazonaws.qbusiness#FaviconUrl", + "traits": { + "smithy.api#documentation": "

Provides the URL where the custom favicon file is hosted for an Amazon Q web experience.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Contains the configuration information to customize the logo, font, and color of an Amazon Q Business web experience with individual files for each property or a CSS file for them all.

" + } + }, + "com.amazonaws.qbusiness#DataAccessor": { + "type": "structure", + "members": { + "displayName": { + "target": "com.amazonaws.qbusiness#DataAccessorName", + "traits": { + "smithy.api#documentation": "

The friendly name of the data accessor.

" + } + }, + "dataAccessorId": { + "target": "com.amazonaws.qbusiness#DataAccessorId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the data accessor.

" + } + }, + "dataAccessorArn": { + "target": "com.amazonaws.qbusiness#DataAccessorArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the data accessor.

" + } + }, + "idcApplicationArn": { + "target": "com.amazonaws.qbusiness#IdcApplicationArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the associated AWS IAM Identity Center application.

" + } + }, + "principal": { + "target": "com.amazonaws.qbusiness#PrincipalRoleArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IAM role for the ISV associated with this data accessor.

" + } + }, + "createdAt": { + "target": "com.amazonaws.qbusiness#Timestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the data accessor was created.

" + } + }, + "updatedAt": { + "target": "com.amazonaws.qbusiness#Timestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the data accessor was last updated.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Provides summary information about a data accessor.

" + } + }, + "com.amazonaws.qbusiness#DataAccessorArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 1284 + }, + "smithy.api#pattern": "^arn:[a-z0-9-\\.]{1,63}:[a-z0-9-\\.]{0,63}:[a-z0-9-\\.]{0,63}:[a-z0-9-\\.]{0,63}:[^/].{0,1023}$" + } + }, "com.amazonaws.qbusiness#DataAccessorId": { "type": "string", "traits": { @@ -3090,6 +3535,17 @@ "smithy.api#pattern": "^[a-zA-Z0-9][a-zA-Z0-9-]{35}$" } }, + "com.amazonaws.qbusiness#DataAccessorName": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 100 + }, + "smithy.api#pattern": "^[a-zA-Z0-9][a-zA-Z0-9_-]*$", + "smithy.api#sensitive": {} + } + }, "com.amazonaws.qbusiness#DataAccessorResource": { "type": "resource", "identifiers": { @@ -3100,12 +3556,33 @@ "target": "com.amazonaws.qbusiness#DataAccessorId" } }, + "create": { + "target": "com.amazonaws.qbusiness#CreateDataAccessor" + }, + "read": { + "target": "com.amazonaws.qbusiness#GetDataAccessor" + }, + "update": { + "target": "com.amazonaws.qbusiness#UpdateDataAccessor" + }, + "delete": { + "target": "com.amazonaws.qbusiness#DeleteDataAccessor" + }, + "list": { + "target": "com.amazonaws.qbusiness#ListDataAccessors" + }, "traits": { "aws.cloudformation#cfnResource": { "name": "DataAccessor" } } }, + "com.amazonaws.qbusiness#DataAccessors": { + "type": "list", + "member": { + "target": "com.amazonaws.qbusiness#DataAccessor" + } + }, "com.amazonaws.qbusiness#DataSource": { "type": "structure", "members": { @@ -3667,6 +4144,75 @@ "smithy.api#output": {} } }, + "com.amazonaws.qbusiness#DeleteDataAccessor": { + "type": "operation", + "input": { + "target": "com.amazonaws.qbusiness#DeleteDataAccessorRequest" + }, + "output": { + "target": "com.amazonaws.qbusiness#DeleteDataAccessorResponse" + }, + "errors": [ + { + "target": "com.amazonaws.qbusiness#AccessDeniedException" + }, + { + "target": "com.amazonaws.qbusiness#ConflictException" + }, + { + "target": "com.amazonaws.qbusiness#InternalServerException" + }, + { + "target": "com.amazonaws.qbusiness#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.qbusiness#ThrottlingException" + }, + { + "target": "com.amazonaws.qbusiness#ValidationException" + } + ], + "traits": { + "aws.iam#requiredActions": ["qbusiness:GetDataAccessor"], + "smithy.api#documentation": "

Deletes a specified data accessor. This operation permanently removes the data accessor \n and its associated AWS IAM Identity Center application. Any access granted to the ISV through this data accessor will be revoked

", + "smithy.api#http": { + "uri": "/applications/{applicationId}/dataaccessors/{dataAccessorId}", + "method": "DELETE" + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.qbusiness#DeleteDataAccessorRequest": { + "type": "structure", + "members": { + "applicationId": { + "target": "com.amazonaws.qbusiness#ApplicationId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the Q Business application.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "dataAccessorId": { + "target": "com.amazonaws.qbusiness#DataAccessorId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the data accessor to delete.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.qbusiness#DeleteDataAccessorResponse": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.qbusiness#DeleteDataSource": { "type": "operation", "input": { @@ -4202,6 +4748,74 @@ "smithy.api#pattern": "^[\\s\\S]*$" } }, + "com.amazonaws.qbusiness#DisassociatePermission": { + "type": "operation", + "input": { + "target": "com.amazonaws.qbusiness#DisassociatePermissionRequest" + }, + "output": { + "target": "com.amazonaws.qbusiness#DisassociatePermissionResponse" + }, + "errors": [ + { + "target": "com.amazonaws.qbusiness#AccessDeniedException" + }, + { + "target": "com.amazonaws.qbusiness#ConflictException" + }, + { + "target": "com.amazonaws.qbusiness#InternalServerException" + }, + { + "target": "com.amazonaws.qbusiness#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.qbusiness#ThrottlingException" + }, + { + "target": "com.amazonaws.qbusiness#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Removes a permission policy from a Q Business application, revoking the cross-account access that was \n previously granted to an ISV. This operation deletes the specified policy statement from the application's permission policy.

", + "smithy.api#http": { + "uri": "/applications/{applicationId}/policy/{statementId}", + "method": "DELETE" + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.qbusiness#DisassociatePermissionRequest": { + "type": "structure", + "members": { + "applicationId": { + "target": "com.amazonaws.qbusiness#ApplicationId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the Q Business application.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "statementId": { + "target": "com.amazonaws.qbusiness#String", + "traits": { + "smithy.api#documentation": "

The statement ID of the permission to remove.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.qbusiness#DisassociatePermissionResponse": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.qbusiness#Document": { "type": "structure", "members": { @@ -4916,6 +5530,9 @@ "type": "service", "version": "2023-11-27", "operations": [ + { + "target": "com.amazonaws.qbusiness#AssociatePermission" + }, { "target": "com.amazonaws.qbusiness#BatchDeleteDocument" }, @@ -4943,6 +5560,9 @@ { "target": "com.amazonaws.qbusiness#DeleteUser" }, + { + "target": "com.amazonaws.qbusiness#DisassociatePermission" + }, { "target": "com.amazonaws.qbusiness#GetChatControlsConfiguration" }, @@ -4952,6 +5572,9 @@ { "target": "com.amazonaws.qbusiness#GetMedia" }, + { + "target": "com.amazonaws.qbusiness#GetPolicy" + }, { "target": "com.amazonaws.qbusiness#GetUser" }, @@ -4973,6 +5596,15 @@ { "target": "com.amazonaws.qbusiness#ListMessages" }, + { + "target": "com.amazonaws.qbusiness#ListPluginActions" + }, + { + "target": "com.amazonaws.qbusiness#ListPluginTypeActions" + }, + { + "target": "com.amazonaws.qbusiness#ListPluginTypeMetadata" + }, { "target": "com.amazonaws.qbusiness#ListTagsForResource" }, @@ -4982,6 +5614,9 @@ { "target": "com.amazonaws.qbusiness#PutGroup" }, + { + "target": "com.amazonaws.qbusiness#SearchRelevantContent" + }, { "target": "com.amazonaws.qbusiness#StartDataSourceSyncJob" }, @@ -5467,6 +6102,26 @@ "target": "com.amazonaws.qbusiness#FailedDocument" } }, + "com.amazonaws.qbusiness#FaviconUrl": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 1284 + }, + "smithy.api#pattern": "^(https?://[a-zA-Z0-9-_.+%/]+\\.(svg|ico))?$" + } + }, + "com.amazonaws.qbusiness#FontUrl": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 1284 + }, + "smithy.api#pattern": "^(https?://[a-zA-Z0-9-_.+%/]+\\.(ttf|woff|woff2|otf))?$" + } + }, "com.amazonaws.qbusiness#GetApplication": { "type": "operation", "input": { @@ -5631,6 +6286,12 @@ "traits": { "smithy.api#documentation": "

The OIDC client ID for a Amazon Q Business application.

" } + }, + "quickSightConfiguration": { + "target": "com.amazonaws.qbusiness#QuickSightConfiguration", + "traits": { + "smithy.api#documentation": "

The Amazon QuickSight authentication configuration for the Amazon Q Business application.

" + } } }, "traits": { @@ -5746,13 +6407,13 @@ "smithy.api#output": {} } }, - "com.amazonaws.qbusiness#GetDataSource": { + "com.amazonaws.qbusiness#GetDataAccessor": { "type": "operation", "input": { - "target": "com.amazonaws.qbusiness#GetDataSourceRequest" + "target": "com.amazonaws.qbusiness#GetDataAccessorRequest" }, "output": { - "target": "com.amazonaws.qbusiness#GetDataSourceResponse" + "target": "com.amazonaws.qbusiness#GetDataAccessorResponse" }, "errors": [ { @@ -5773,29 +6434,150 @@ ], "traits": { "aws.iam#requiredActions": ["qbusiness:ListTagsForResource"], - "smithy.api#documentation": "

Gets information about an existing Amazon Q Business data source connector.

", + "smithy.api#documentation": "

Retrieves information about a specified data accessor. This operation returns details about the \n data accessor, including its display name, unique identifier, Amazon Resource Name (ARN), the associated \n Q Business application and AWS IAM Identity Center application, the IAM role for the ISV, the \n action configurations, and the timestamps for when the data accessor was created and last updated.

", "smithy.api#http": { - "uri": "/applications/{applicationId}/indices/{indexId}/datasources/{dataSourceId}", + "uri": "/applications/{applicationId}/dataaccessors/{dataAccessorId}", "method": "GET" }, "smithy.api#readonly": {} } }, - "com.amazonaws.qbusiness#GetDataSourceRequest": { + "com.amazonaws.qbusiness#GetDataAccessorRequest": { "type": "structure", "members": { "applicationId": { "target": "com.amazonaws.qbusiness#ApplicationId", "traits": { - "smithy.api#documentation": "

The identifier of the Amazon Q Business application.

", + "smithy.api#documentation": "

The unique identifier of the Q Business application.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } }, - "indexId": { - "target": "com.amazonaws.qbusiness#IndexId", + "dataAccessorId": { + "target": "com.amazonaws.qbusiness#DataAccessorId", "traits": { - "smithy.api#documentation": "

The identfier of the index used with the data source connector.

", + "smithy.api#documentation": "

The unique identifier of the data accessor to retrieve.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.qbusiness#GetDataAccessorResponse": { + "type": "structure", + "members": { + "displayName": { + "target": "com.amazonaws.qbusiness#DataAccessorName", + "traits": { + "smithy.api#documentation": "

The friendly name of the data accessor.

" + } + }, + "dataAccessorId": { + "target": "com.amazonaws.qbusiness#DataAccessorId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the data accessor.

" + } + }, + "dataAccessorArn": { + "target": "com.amazonaws.qbusiness#DataAccessorArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the data accessor.

" + } + }, + "applicationId": { + "target": "com.amazonaws.qbusiness#ApplicationId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the Q Business application associated with this data accessor.

" + } + }, + "idcApplicationArn": { + "target": "com.amazonaws.qbusiness#IdcApplicationArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the AWS IAM Identity Center application associated with this data accessor.

" + } + }, + "principal": { + "target": "com.amazonaws.qbusiness#PrincipalRoleArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IAM role for the ISV associated with this data accessor.

" + } + }, + "actionConfigurations": { + "target": "com.amazonaws.qbusiness#ActionConfigurationList", + "traits": { + "smithy.api#documentation": "

The list of action configurations specifying the allowed actions and any associated filters.

" + } + }, + "createdAt": { + "target": "com.amazonaws.qbusiness#Timestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the data accessor was created.

" + } + }, + "updatedAt": { + "target": "com.amazonaws.qbusiness#Timestamp", + "traits": { + "smithy.api#documentation": "

The timestamp when the data accessor was last updated.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.qbusiness#GetDataSource": { + "type": "operation", + "input": { + "target": "com.amazonaws.qbusiness#GetDataSourceRequest" + }, + "output": { + "target": "com.amazonaws.qbusiness#GetDataSourceResponse" + }, + "errors": [ + { + "target": "com.amazonaws.qbusiness#AccessDeniedException" + }, + { + "target": "com.amazonaws.qbusiness#InternalServerException" + }, + { + "target": "com.amazonaws.qbusiness#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.qbusiness#ThrottlingException" + }, + { + "target": "com.amazonaws.qbusiness#ValidationException" + } + ], + "traits": { + "aws.iam#requiredActions": ["qbusiness:ListTagsForResource"], + "smithy.api#documentation": "

Gets information about an existing Amazon Q Business data source connector.

", + "smithy.api#http": { + "uri": "/applications/{applicationId}/indices/{indexId}/datasources/{dataSourceId}", + "method": "GET" + }, + "smithy.api#readonly": {} + } + }, + "com.amazonaws.qbusiness#GetDataSourceRequest": { + "type": "structure", + "members": { + "applicationId": { + "target": "com.amazonaws.qbusiness#ApplicationId", + "traits": { + "smithy.api#documentation": "

The identifier of the Amazon Q Business application.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "indexId": { + "target": "com.amazonaws.qbusiness#IndexId", + "traits": { + "smithy.api#documentation": "

The identfier of the index used with the data source connector.

", "smithy.api#httpLabel": {}, "smithy.api#required": {} } @@ -6399,6 +7181,70 @@ "smithy.api#output": {} } }, + "com.amazonaws.qbusiness#GetPolicy": { + "type": "operation", + "input": { + "target": "com.amazonaws.qbusiness#GetPolicyRequest" + }, + "output": { + "target": "com.amazonaws.qbusiness#GetPolicyResponse" + }, + "errors": [ + { + "target": "com.amazonaws.qbusiness#AccessDeniedException" + }, + { + "target": "com.amazonaws.qbusiness#InternalServerException" + }, + { + "target": "com.amazonaws.qbusiness#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.qbusiness#ThrottlingException" + }, + { + "target": "com.amazonaws.qbusiness#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Retrieves the current permission policy for a Q Business application. The policy is \n returned as a JSON-formatted string and defines the IAM actions that are allowed or denied for the application's resources.

", + "smithy.api#http": { + "uri": "/applications/{applicationId}/policy", + "method": "GET" + }, + "smithy.api#readonly": {} + } + }, + "com.amazonaws.qbusiness#GetPolicyRequest": { + "type": "structure", + "members": { + "applicationId": { + "target": "com.amazonaws.qbusiness#ApplicationId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the Q Business application.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.qbusiness#GetPolicyResponse": { + "type": "structure", + "members": { + "policy": { + "target": "com.amazonaws.qbusiness#String", + "traits": { + "smithy.api#documentation": "

The JSON representation of the permission policy.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.qbusiness#GetRetriever": { "type": "operation", "input": { @@ -6765,6 +7611,12 @@ "traits": { "smithy.api#documentation": "

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

" } + }, + "customizationConfiguration": { + "target": "com.amazonaws.qbusiness#CustomizationConfiguration", + "traits": { + "smithy.api#documentation": "

Gets the custom logo, favicon, font, and color used in the Amazon Q web experience.\n

" + } } }, "traits": { @@ -6943,6 +7795,28 @@ "smithy.api#pattern": "^arn:(aws|aws-us-gov|aws-cn|aws-iso|aws-iso-b):sso::\\d{12}:application/(sso)?ins-[a-zA-Z0-9-.]{16}/apl-[a-zA-Z0-9]{16}$" } }, + "com.amazonaws.qbusiness#IdcAuthConfiguration": { + "type": "structure", + "members": { + "idcApplicationArn": { + "target": "com.amazonaws.qbusiness#IdcApplicationArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IAM Identity Center Application used to configure authentication.

", + "smithy.api#required": {} + } + }, + "roleArn": { + "target": "com.amazonaws.qbusiness#RoleArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the IAM role with permissions to perform actions on Amazon Web Services services\n on your behalf.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Information about the IAM Identity Center Application used to configure authentication for a plugin.

" + } + }, "com.amazonaws.qbusiness#IdentityProviderConfiguration": { "type": "union", "members": { @@ -6977,6 +7851,12 @@ "traits": { "smithy.api#enumValue": "AWS_IAM_IDC" } + }, + "AWS_QUICKSIGHT_IDP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AWS_QUICKSIGHT_IDP" + } } } }, @@ -7660,6 +8540,96 @@ "smithy.api#output": {} } }, + "com.amazonaws.qbusiness#ListDataAccessors": { + "type": "operation", + "input": { + "target": "com.amazonaws.qbusiness#ListDataAccessorsRequest" + }, + "output": { + "target": "com.amazonaws.qbusiness#ListDataAccessorsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.qbusiness#AccessDeniedException" + }, + { + "target": "com.amazonaws.qbusiness#InternalServerException" + }, + { + "target": "com.amazonaws.qbusiness#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.qbusiness#ThrottlingException" + }, + { + "target": "com.amazonaws.qbusiness#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Lists the data accessors for a Q Business application. This operation returns a paginated \n list of data accessor summaries, including the friendly name, unique identifier, ARN, \n associated IAM role, and creation/update timestamps for each data accessor.

", + "smithy.api#http": { + "uri": "/applications/{applicationId}/dataaccessors", + "method": "GET" + }, + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults", + "items": "dataAccessors" + }, + "smithy.api#readonly": {} + } + }, + "com.amazonaws.qbusiness#ListDataAccessorsRequest": { + "type": "structure", + "members": { + "applicationId": { + "target": "com.amazonaws.qbusiness#ApplicationId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the Q Business application.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "nextToken": { + "target": "com.amazonaws.qbusiness#NextToken1500", + "traits": { + "smithy.api#documentation": "

The token for the next set of results. (You received this token from a previous call.)

", + "smithy.api#httpQuery": "nextToken" + } + }, + "maxResults": { + "target": "com.amazonaws.qbusiness#MaxResultsIntegerForListDataAccessors", + "traits": { + "smithy.api#documentation": "

The maximum number of results to return in a single call.

", + "smithy.api#httpQuery": "maxResults" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.qbusiness#ListDataAccessorsResponse": { + "type": "structure", + "members": { + "dataAccessors": { + "target": "com.amazonaws.qbusiness#DataAccessors", + "traits": { + "smithy.api#documentation": "

The list of data accessors.

" + } + }, + "nextToken": { + "target": "com.amazonaws.qbusiness#NextToken1500", + "traits": { + "smithy.api#documentation": "

The token to use to retrieve the next set of results, if there are any.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.qbusiness#ListDataSourceSyncJobs": { "type": "operation", "input": { @@ -8307,13 +9277,13 @@ "smithy.api#output": {} } }, - "com.amazonaws.qbusiness#ListPlugins": { + "com.amazonaws.qbusiness#ListPluginActions": { "type": "operation", "input": { - "target": "com.amazonaws.qbusiness#ListPluginsRequest" + "target": "com.amazonaws.qbusiness#ListPluginActionsRequest" }, "output": { - "target": "com.amazonaws.qbusiness#ListPluginsResponse" + "target": "com.amazonaws.qbusiness#ListPluginActionsResponse" }, "errors": [ { @@ -8333,7 +9303,277 @@ } ], "traits": { - "smithy.api#documentation": "

Lists configured Amazon Q Business plugins.

", + "smithy.api#documentation": "

Lists configured Amazon Q Business actions for a specific plugin in an Amazon Q Business application.

", + "smithy.api#http": { + "method": "GET", + "uri": "/applications/{applicationId}/plugins/{pluginId}/actions" + }, + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults", + "items": "items" + }, + "smithy.api#readonly": {} + } + }, + "com.amazonaws.qbusiness#ListPluginActionsRequest": { + "type": "structure", + "members": { + "applicationId": { + "target": "com.amazonaws.qbusiness#ApplicationId", + "traits": { + "smithy.api#documentation": "

The identifier of the Amazon Q Business application the plugin is attached\n to.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "pluginId": { + "target": "com.amazonaws.qbusiness#PluginId", + "traits": { + "smithy.api#documentation": "

The identifier of the Amazon Q Business plugin.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "nextToken": { + "target": "com.amazonaws.qbusiness#NextToken", + "traits": { + "smithy.api#documentation": "

If the number of plugin actions returned exceeds maxResults, Amazon Q Business returns a next token as a pagination token to retrieve the next set\n of plugin actions.

", + "smithy.api#httpQuery": "nextToken" + } + }, + "maxResults": { + "target": "com.amazonaws.qbusiness#MaxResultsIntegerForListPluginActions", + "traits": { + "smithy.api#documentation": "

The maximum number of plugin actions to return.

", + "smithy.api#httpQuery": "maxResults" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.qbusiness#ListPluginActionsResponse": { + "type": "structure", + "members": { + "nextToken": { + "target": "com.amazonaws.qbusiness#NextToken", + "traits": { + "smithy.api#documentation": "

If the response is truncated, Amazon Q Business returns this token, which you\n can use in a later request to list the next set of plugin actions.

" + } + }, + "items": { + "target": "com.amazonaws.qbusiness#Actions", + "traits": { + "smithy.api#documentation": "

An array of information on one or more plugin actions.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.qbusiness#ListPluginTypeActions": { + "type": "operation", + "input": { + "target": "com.amazonaws.qbusiness#ListPluginTypeActionsRequest" + }, + "output": { + "target": "com.amazonaws.qbusiness#ListPluginTypeActionsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.qbusiness#AccessDeniedException" + }, + { + "target": "com.amazonaws.qbusiness#InternalServerException" + }, + { + "target": "com.amazonaws.qbusiness#ThrottlingException" + }, + { + "target": "com.amazonaws.qbusiness#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Lists configured Amazon Q Business actions for any plugin type—both\n built-in and custom.

", + "smithy.api#http": { + "method": "GET", + "uri": "/pluginTypes/{pluginType}/actions" + }, + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults", + "items": "items" + }, + "smithy.api#readonly": {} + } + }, + "com.amazonaws.qbusiness#ListPluginTypeActionsRequest": { + "type": "structure", + "members": { + "pluginType": { + "target": "com.amazonaws.qbusiness#PluginType", + "traits": { + "smithy.api#documentation": "

The type of the plugin.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "nextToken": { + "target": "com.amazonaws.qbusiness#NextToken", + "traits": { + "smithy.api#documentation": "

If the number of plugins returned exceeds maxResults, Amazon Q Business returns a next token as a pagination token to retrieve the next set\n of plugins.

", + "smithy.api#httpQuery": "nextToken" + } + }, + "maxResults": { + "target": "com.amazonaws.qbusiness#MaxResultsIntegerForListPluginTypeActions", + "traits": { + "smithy.api#documentation": "

The maximum number of plugins to return.

", + "smithy.api#httpQuery": "maxResults" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.qbusiness#ListPluginTypeActionsResponse": { + "type": "structure", + "members": { + "nextToken": { + "target": "com.amazonaws.qbusiness#NextToken", + "traits": { + "smithy.api#documentation": "

If the response is truncated, Amazon Q Business returns this token, which you\n can use in a later request to list the next set of plugins.

" + } + }, + "items": { + "target": "com.amazonaws.qbusiness#Actions", + "traits": { + "smithy.api#documentation": "

An array of information on one or more plugins.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.qbusiness#ListPluginTypeMetadata": { + "type": "operation", + "input": { + "target": "com.amazonaws.qbusiness#ListPluginTypeMetadataRequest" + }, + "output": { + "target": "com.amazonaws.qbusiness#ListPluginTypeMetadataResponse" + }, + "errors": [ + { + "target": "com.amazonaws.qbusiness#AccessDeniedException" + }, + { + "target": "com.amazonaws.qbusiness#InternalServerException" + }, + { + "target": "com.amazonaws.qbusiness#ThrottlingException" + }, + { + "target": "com.amazonaws.qbusiness#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Lists metadata for all Amazon Q Business plugin types.

", + "smithy.api#http": { + "method": "GET", + "uri": "/pluginTypeMetadata" + }, + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults", + "items": "items" + }, + "smithy.api#readonly": {} + } + }, + "com.amazonaws.qbusiness#ListPluginTypeMetadataRequest": { + "type": "structure", + "members": { + "nextToken": { + "target": "com.amazonaws.qbusiness#NextToken", + "traits": { + "smithy.api#documentation": "

If the metadata returned exceeds maxResults, Amazon Q Business\n returns a next token as a pagination token to retrieve the next set of metadata.

", + "smithy.api#httpQuery": "nextToken" + } + }, + "maxResults": { + "target": "com.amazonaws.qbusiness#MaxResultsIntegerForListPluginTypeMetadata", + "traits": { + "smithy.api#documentation": "

The maximum number of plugin metadata items to return.

", + "smithy.api#httpQuery": "maxResults" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.qbusiness#ListPluginTypeMetadataResponse": { + "type": "structure", + "members": { + "nextToken": { + "target": "com.amazonaws.qbusiness#NextToken", + "traits": { + "smithy.api#documentation": "

If the response is truncated, Amazon Q Business returns this token, which you\n can use in a later request to list the next set of plugin metadata.

" + } + }, + "items": { + "target": "com.amazonaws.qbusiness#ListPluginTypeMetadataSummaries", + "traits": { + "smithy.api#documentation": "

An array of information on plugin metadata.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.qbusiness#ListPluginTypeMetadataSummaries": { + "type": "list", + "member": { + "target": "com.amazonaws.qbusiness#PluginTypeMetadataSummary" + } + }, + "com.amazonaws.qbusiness#ListPlugins": { + "type": "operation", + "input": { + "target": "com.amazonaws.qbusiness#ListPluginsRequest" + }, + "output": { + "target": "com.amazonaws.qbusiness#ListPluginsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.qbusiness#AccessDeniedException" + }, + { + "target": "com.amazonaws.qbusiness#InternalServerException" + }, + { + "target": "com.amazonaws.qbusiness#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.qbusiness#ThrottlingException" + }, + { + "target": "com.amazonaws.qbusiness#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Lists configured Amazon Q Business plugins.

", "smithy.api#http": { "method": "GET", "uri": "/applications/{applicationId}/plugins" @@ -8641,9 +9881,22 @@ "smithy.api#output": {} } }, + "com.amazonaws.qbusiness#LogoUrl": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 1284 + }, + "smithy.api#pattern": "^(https?://[a-zA-Z0-9-_.+%/]+\\.(svg|png))?$" + } + }, "com.amazonaws.qbusiness#Long": { "type": "long" }, + "com.amazonaws.qbusiness#MaxResults": { + "type": "integer" + }, "com.amazonaws.qbusiness#MaxResultsIntegerForGetTopicConfigurations": { "type": "integer", "traits": { @@ -8680,6 +9933,15 @@ } } }, + "com.amazonaws.qbusiness#MaxResultsIntegerForListDataAccessors": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 10 + } + } + }, "com.amazonaws.qbusiness#MaxResultsIntegerForListDataSources": { "type": "integer", "traits": { @@ -8734,6 +9996,33 @@ } } }, + "com.amazonaws.qbusiness#MaxResultsIntegerForListPluginActions": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 50 + } + } + }, + "com.amazonaws.qbusiness#MaxResultsIntegerForListPluginTypeActions": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 50 + } + } + }, + "com.amazonaws.qbusiness#MaxResultsIntegerForListPluginTypeMetadata": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 1, + "max": 50 + } + } + }, "com.amazonaws.qbusiness#MaxResultsIntegerForListPlugins": { "type": "integer", "traits": { @@ -9194,6 +10483,15 @@ } } }, + "com.amazonaws.qbusiness#NextToken1500": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 1500 + } + } + }, "com.amazonaws.qbusiness#NoAuthConfiguration": { "type": "structure", "members": {}, @@ -9255,6 +10553,18 @@ "smithy.api#documentation": "

The ARN of an IAM role used by Amazon Q Business to access the OAuth 2.0\n authentication credentials stored in a Secrets Manager secret.

", "smithy.api#required": {} } + }, + "authorizationUrl": { + "target": "com.amazonaws.qbusiness#Url", + "traits": { + "smithy.api#documentation": "

The redirect URL required by the OAuth 2.0 protocol for Amazon Q Business to\n authenticate a plugin user through a third party authentication server.

" + } + }, + "tokenUrl": { + "target": "com.amazonaws.qbusiness#Url", + "traits": { + "smithy.api#documentation": "

The URL required by the OAuth 2.0 protocol to exchange an end user authorization code\n for an access token.

" + } } }, "traits": { @@ -9417,6 +10727,12 @@ "traits": { "smithy.api#documentation": "

Information about invoking a custom plugin without any authentication.

" } + }, + "idcAuthConfiguration": { + "target": "com.amazonaws.qbusiness#IdcAuthConfiguration", + "traits": { + "smithy.api#documentation": "

Information about the IAM Identity Center Application used to configure authentication for a plugin.

" + } } }, "traits": { @@ -9594,9 +10910,142 @@ "traits": { "smithy.api#enumValue": "CUSTOM" } + }, + "QUICKSIGHT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "QUICKSIGHT" + } + }, + "SERVICENOW_NOW_PLATFORM": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SERVICENOW_NOW_PLATFORM" + } + }, + "JIRA_CLOUD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "JIRA_CLOUD" + } + }, + "SALESFORCE_CRM": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SALESFORCE_CRM" + } + }, + "ZENDESK_SUITE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ZENDESK_SUITE" + } + }, + "ATLASSIAN_CONFLUENCE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ATLASSIAN_CONFLUENCE" + } + }, + "GOOGLE_CALENDAR": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "GOOGLE_CALENDAR" + } + }, + "MICROSOFT_TEAMS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MICROSOFT_TEAMS" + } + }, + "MICROSOFT_EXCHANGE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MICROSOFT_EXCHANGE" + } + }, + "PAGERDUTY_ADVANCE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PAGERDUTY_ADVANCE" + } + }, + "SMARTSHEET": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SMARTSHEET" + } + }, + "ASANA": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ASANA" + } } } }, + "com.amazonaws.qbusiness#PluginTypeCategory": { + "type": "enum", + "members": { + "CRM": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Customer relationship management (CRM)" + } + }, + "PROJECT_MANAGEMENT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Project management" + } + }, + "COMMUNICATION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Communication" + } + }, + "PRODUCTIVITY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Productivity" + } + }, + "TICKETING_MANAGEMENT": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "Ticketing and incident management" + } + } + } + }, + "com.amazonaws.qbusiness#PluginTypeMetadataSummary": { + "type": "structure", + "members": { + "type": { + "target": "com.amazonaws.qbusiness#PluginType", + "traits": { + "smithy.api#documentation": "

The type of the plugin.

" + } + }, + "category": { + "target": "com.amazonaws.qbusiness#PluginTypeCategory", + "traits": { + "smithy.api#documentation": "

The category of the plugin type.

" + } + }, + "description": { + "target": "com.amazonaws.qbusiness#String", + "traits": { + "smithy.api#documentation": "

The description assigned by Amazon Q Business to a plugin. You can't\n modify this value.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Summary metadata information for a Amazon Q Business plugin.

" + } + }, "com.amazonaws.qbusiness#Plugins": { "type": "list", "member": { @@ -9650,6 +11099,16 @@ "smithy.api#documentation": "

Provides information about a group associated with the principal.

" } }, + "com.amazonaws.qbusiness#PrincipalRoleArn": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 1284 + }, + "smithy.api#pattern": "^arn:aws:iam::[0-9]{12}:role/[a-zA-Z0-9_/+=,.@-]+$" + } + }, "com.amazonaws.qbusiness#PrincipalUser": { "type": "structure", "members": { @@ -9894,29 +11353,115 @@ "smithy.api#enumValue": "ENABLED" } }, - "DISABLED": { - "target": "smithy.api#Unit", + "DISABLED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DISABLED" + } + } + } + }, + "com.amazonaws.qbusiness#QIamAction": { + "type": "string", + "traits": { + "smithy.api#pattern": "^qbusiness:[a-zA-Z]+$" + } + }, + "com.amazonaws.qbusiness#QIamActions": { + "type": "list", + "member": { + "target": "com.amazonaws.qbusiness#QIamAction" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 10 + } + } + }, + "com.amazonaws.qbusiness#QueryText": { + "type": "string" + }, + "com.amazonaws.qbusiness#QuickSightConfiguration": { + "type": "structure", + "members": { + "clientNamespace": { + "target": "com.amazonaws.qbusiness#ClientNamespace", + "traits": { + "smithy.api#documentation": "

The Amazon QuickSight namespace that is used as the identity provider. For more information about QuickSight namespaces, see \n Namespace operations.\n

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

The Amazon QuickSight configuration for an Amazon Q Business application that uses QuickSight as the identity provider.\n For more information, see Creating an\n Amazon QuickSight integrated application.

" + } + }, + "com.amazonaws.qbusiness#ReadAccessType": { + "type": "enum", + "members": { + "ALLOW": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ALLOW" + } + }, + "DENY": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "DENY" + } + } + } + }, + "com.amazonaws.qbusiness#RelevantContent": { + "type": "structure", + "members": { + "content": { + "target": "com.amazonaws.qbusiness#String", + "traits": { + "smithy.api#documentation": "

The actual content of the relevant item.

" + } + }, + "documentId": { + "target": "com.amazonaws.qbusiness#DocumentId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the document containing the relevant content.

" + } + }, + "documentTitle": { + "target": "com.amazonaws.qbusiness#Title", + "traits": { + "smithy.api#documentation": "

The title of the document containing the relevant content.

" + } + }, + "documentUri": { + "target": "com.amazonaws.qbusiness#Url", "traits": { - "smithy.api#enumValue": "DISABLED" + "smithy.api#documentation": "

The URI of the document containing the relevant content.

" } - } - } - }, - "com.amazonaws.qbusiness#ReadAccessType": { - "type": "enum", - "members": { - "ALLOW": { - "target": "smithy.api#Unit", + }, + "documentAttributes": { + "target": "com.amazonaws.qbusiness#DocumentAttributes", "traits": { - "smithy.api#enumValue": "ALLOW" + "smithy.api#documentation": "

Additional attributes of the document containing the relevant content.

" } }, - "DENY": { - "target": "smithy.api#Unit", + "scoreAttributes": { + "target": "com.amazonaws.qbusiness#ScoreAttributes", "traits": { - "smithy.api#enumValue": "DENY" + "smithy.api#documentation": "

Attributes related to the relevance score of the content.

" } } + }, + "traits": { + "smithy.api#documentation": "

Represents a piece of content that is relevant to a search query.

" + } + }, + "com.amazonaws.qbusiness#RelevantContentList": { + "type": "list", + "member": { + "target": "com.amazonaws.qbusiness#RelevantContent" } }, "com.amazonaws.qbusiness#ResourceNotFoundException": { @@ -9945,7 +11490,7 @@ } }, "traits": { - "smithy.api#documentation": "

The resource you want to use doesn’t exist. Make sure you have provided the correct\n resource and try again.

", + "smithy.api#documentation": "

The application or plugin resource you want to use doesn’t exist. Make sure you have\n provided the correct resource and try again.

", "smithy.api#error": "client", "smithy.api#httpError": 404 } @@ -10035,6 +11580,21 @@ "smithy.api#documentation": "

Provides information on how the retriever used for your Amazon Q Business application is\n configured.

" } }, + "com.amazonaws.qbusiness#RetrieverContentSource": { + "type": "structure", + "members": { + "retrieverId": { + "target": "com.amazonaws.qbusiness#RetrieverId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the retriever to use as the content source.

", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

Specifies a retriever as the content source for a search.

" + } + }, "com.amazonaws.qbusiness#RetrieverId": { "type": "string", "traits": { @@ -10340,6 +11900,176 @@ "smithy.api#documentation": "

Information about the SAML 2.0-compliant identity provider (IdP) used to authenticate\n end users of an Amazon Q Business web experience.

" } }, + "com.amazonaws.qbusiness#ScoreAttributes": { + "type": "structure", + "members": { + "scoreConfidence": { + "target": "com.amazonaws.qbusiness#ScoreConfidence", + "traits": { + "smithy.api#documentation": "

The confidence level of the relevance score.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Provides information about the relevance score of content.

" + } + }, + "com.amazonaws.qbusiness#ScoreConfidence": { + "type": "enum", + "members": { + "VERY_HIGH": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "VERY_HIGH" + } + }, + "HIGH": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "HIGH" + } + }, + "MEDIUM": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "MEDIUM" + } + }, + "LOW": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "LOW" + } + }, + "NOT_AVAILABLE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NOT_AVAILABLE" + } + } + } + }, + "com.amazonaws.qbusiness#SearchRelevantContent": { + "type": "operation", + "input": { + "target": "com.amazonaws.qbusiness#SearchRelevantContentRequest" + }, + "output": { + "target": "com.amazonaws.qbusiness#SearchRelevantContentResponse" + }, + "errors": [ + { + "target": "com.amazonaws.qbusiness#AccessDeniedException" + }, + { + "target": "com.amazonaws.qbusiness#InternalServerException" + }, + { + "target": "com.amazonaws.qbusiness#LicenseNotFoundException" + }, + { + "target": "com.amazonaws.qbusiness#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.qbusiness#ThrottlingException" + }, + { + "target": "com.amazonaws.qbusiness#ValidationException" + } + ], + "traits": { + "smithy.api#documentation": "

Searches for relevant content in a Q Business application based on a query. This operation takes a \n search query text, the Q Business application identifier, and optional filters \n (such as user ID, user groups, content source, and maximum results) as input. It returns a list of \n relevant content items, where each item includes the content text, the unique document identifier, \n the document title, the document URI, any relevant document attributes, and score attributes \n indicating the confidence level of the relevance.

", + "smithy.api#http": { + "uri": "/applications/{applicationId}/relevant-content", + "method": "POST" + }, + "smithy.api#paginated": { + "inputToken": "nextToken", + "outputToken": "nextToken", + "pageSize": "maxResults", + "items": "relevantContent" + } + } + }, + "com.amazonaws.qbusiness#SearchRelevantContentRequest": { + "type": "structure", + "members": { + "applicationId": { + "target": "com.amazonaws.qbusiness#ApplicationId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the Q Business application to search.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "userId": { + "target": "com.amazonaws.qbusiness#UserId", + "traits": { + "smithy.api#documentation": "

The ID of the user performing the search. Used for access control.

", + "smithy.api#httpQuery": "userId" + } + }, + "userGroups": { + "target": "com.amazonaws.qbusiness#UserGroups", + "traits": { + "smithy.api#documentation": "

The groups the user belongs to. Used for access control.

", + "smithy.api#httpQuery": "userGroups" + } + }, + "queryText": { + "target": "com.amazonaws.qbusiness#QueryText", + "traits": { + "smithy.api#documentation": "

The text to search for.

", + "smithy.api#required": {} + } + }, + "contentSource": { + "target": "com.amazonaws.qbusiness#ContentSource", + "traits": { + "smithy.api#documentation": "

The source of content to search in.

", + "smithy.api#required": {} + } + }, + "attributeFilter": { + "target": "com.amazonaws.qbusiness#AttributeFilter" + }, + "maxResults": { + "target": "com.amazonaws.qbusiness#MaxResults", + "traits": { + "smithy.api#documentation": "

The maximum number of results to return.

" + } + }, + "nextToken": { + "target": "com.amazonaws.qbusiness#NextToken", + "traits": { + "smithy.api#documentation": "

The token for the next set of results. (You received this token from a previous call.)

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.qbusiness#SearchRelevantContentResponse": { + "type": "structure", + "members": { + "relevantContent": { + "target": "com.amazonaws.qbusiness#RelevantContentList", + "traits": { + "smithy.api#documentation": "

The list of relevant content items found.

" + } + }, + "nextToken": { + "target": "com.amazonaws.qbusiness#NextToken", + "traits": { + "smithy.api#documentation": "

The token to use to retrieve the next set of results, if there are any.

" + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.qbusiness#SecretArn": { "type": "string", "traits": { @@ -10568,6 +12298,16 @@ "smithy.api#output": {} } }, + "com.amazonaws.qbusiness#StatementId": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 100 + }, + "smithy.api#pattern": "^[a-zA-Z0-9_-]+$" + } + }, "com.amazonaws.qbusiness#Status": { "type": "enum", "members": { @@ -11434,6 +13174,93 @@ "smithy.api#output": {} } }, + "com.amazonaws.qbusiness#UpdateDataAccessor": { + "type": "operation", + "input": { + "target": "com.amazonaws.qbusiness#UpdateDataAccessorRequest" + }, + "output": { + "target": "com.amazonaws.qbusiness#UpdateDataAccessorResponse" + }, + "errors": [ + { + "target": "com.amazonaws.qbusiness#AccessDeniedException" + }, + { + "target": "com.amazonaws.qbusiness#ConflictException" + }, + { + "target": "com.amazonaws.qbusiness#InternalServerException" + }, + { + "target": "com.amazonaws.qbusiness#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.qbusiness#ThrottlingException" + }, + { + "target": "com.amazonaws.qbusiness#ValidationException" + } + ], + "traits": { + "aws.iam#requiredActions": [ + "qbusiness:GetDataAccessor", + "qbusiness:TagResource", + "qbusiness:UntagResource", + "qbusiness:ListTagsForResource" + ], + "smithy.api#documentation": "

Updates an existing data accessor. This operation allows modifying the action configurations \n (the allowed actions and associated filters) and the display name of the data accessor. \n It does not allow changing the IAM role associated with the data accessor or other core properties of the data accessor.

", + "smithy.api#http": { + "uri": "/applications/{applicationId}/dataaccessors/{dataAccessorId}", + "method": "PUT" + }, + "smithy.api#idempotent": {} + } + }, + "com.amazonaws.qbusiness#UpdateDataAccessorRequest": { + "type": "structure", + "members": { + "applicationId": { + "target": "com.amazonaws.qbusiness#ApplicationId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the Q Business application.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "dataAccessorId": { + "target": "com.amazonaws.qbusiness#DataAccessorId", + "traits": { + "smithy.api#documentation": "

The unique identifier of the data accessor to update.

", + "smithy.api#httpLabel": {}, + "smithy.api#required": {} + } + }, + "actionConfigurations": { + "target": "com.amazonaws.qbusiness#ActionConfigurationList", + "traits": { + "smithy.api#documentation": "

The updated list of action configurations specifying the allowed actions and any associated filters.

", + "smithy.api#required": {} + } + }, + "displayName": { + "target": "com.amazonaws.qbusiness#DataAccessorName", + "traits": { + "smithy.api#documentation": "

The updated friendly name for the data accessor.

" + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.qbusiness#UpdateDataAccessorResponse": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.qbusiness#UpdateDataSource": { "type": "operation", "input": { @@ -12078,6 +13905,12 @@ "traits": { "smithy.api#documentation": "

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

\n \n

\n For Amazon Q Business application using external OIDC-compliant identity providers (IdPs).\n The IdP administrator must add the browser extension sign-in redirect URLs to the IdP application.\n For more information, see Configure external OIDC identity provider for your browser extensions..\n

\n
" } + }, + "customizationConfiguration": { + "target": "com.amazonaws.qbusiness#CustomizationConfiguration", + "traits": { + "smithy.api#documentation": "

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

" + } } }, "traits": {