QBusiness class

This is the Amazon Q Business API Reference. Amazon Q Business is a fully managed, generative-AI powered enterprise chat assistant that you can deploy within your organization. Amazon Q Business enhances employee productivity by supporting key tasks such as question-answering, knowledge discovery, writing email messages, summarizing text, drafting document outlines, and brainstorming ideas. Users ask questions of Amazon Q Business and get answers that are presented in a conversational manner. For an introduction to the service, see the Amazon Q Business User Guide .

For an overview of the Amazon Q Business APIs, see Overview of Amazon Q Business API operations.

For information about the IAM access control permissions you need to use this API, see IAM roles for Amazon Q Business in the Amazon Q Business User Guide.

The following resources provide additional information about using the Amazon Q Business API:

Constructors

QBusiness({required String region, AwsClientCredentials? credentials, AwsClientCredentialsProvider? credentialsProvider, Client? client, String? endpointUrl})

Properties

hashCode int
The hash code for this object.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

associatePermission({required List<String> actions, required String applicationId, required String principal, required String statementId, List<PermissionCondition>? conditions}) Future<AssociatePermissionResponse>
Adds or updates a permission policy for a Amazon Q Business application, allowing cross-account access for an ISV. This operation creates a new policy statement for the specified Amazon Q Business application. The policy statement defines the IAM actions that the ISV is allowed to perform on the Amazon Q Business application's resources.
batchDeleteDocument({required String applicationId, required List<DeleteDocument> documents, required String indexId, String? dataSourceSyncId}) Future<BatchDeleteDocumentResponse>
Asynchronously deletes one or more documents added using the BatchPutDocument API from an Amazon Q Business index.
batchPutDocument({required String applicationId, required List<Document> documents, required String indexId, String? dataSourceSyncId, String? roleArn}) Future<BatchPutDocumentResponse>
Adds one or more documents to an Amazon Q Business index.
cancelSubscription({required String applicationId, required String subscriptionId}) Future<CancelSubscriptionResponse>
Unsubscribes a user or a group from their pricing tier in an Amazon Q Business application. An unsubscribed user or group loses all Amazon Q Business feature access at the start of next month.
chat({required String applicationId, String? clientToken, String? conversationId, ChatInputStream? inputStream, String? parentMessageId, List<String>? userGroups, String? userId}) Future<ChatOutput>
Starts or continues a streaming Amazon Q Business conversation.
chatSync({required String applicationId, ActionExecution? actionExecution, List<AttachmentInput>? attachments, AttributeFilter? attributeFilter, AuthChallengeResponse? authChallengeResponse, ChatMode? chatMode, ChatModeConfiguration? chatModeConfiguration, String? clientToken, String? conversationId, String? parentMessageId, List<String>? userGroups, String? userId, String? userMessage}) Future<ChatSyncOutput>
Starts or continues a non-streaming Amazon Q Business conversation.
checkDocumentAccess({required String applicationId, required String documentId, required String indexId, required String userId, String? dataSourceId}) Future<CheckDocumentAccessResponse>
Verifies if a user has access permissions for a specified document and returns the actual ACL attached to the document. Resolves user access on the document via user aliases and groups when verifying user access.
close() → void
Closes the internal HTTP client if none was provided at creation. If a client was passed as a constructor argument, this becomes a noop.
createAnonymousWebExperienceUrl({required String applicationId, required String webExperienceId, int? sessionDurationInMinutes}) Future<CreateAnonymousWebExperienceUrlResponse>
Creates a unique URL for anonymous Amazon Q Business web experience. This URL can only be used once and must be used within 5 minutes after it's generated.
createApplication({required String displayName, AttachmentsConfiguration? attachmentsConfiguration, List<String>? clientIdsForOIDC, String? clientToken, String? description, EncryptionConfiguration? encryptionConfiguration, String? iamIdentityProviderArn, String? identityCenterInstanceArn, IdentityType? identityType, PersonalizationConfiguration? personalizationConfiguration, QAppsConfiguration? qAppsConfiguration, QuickSightConfiguration? quickSightConfiguration, String? roleArn, List<Tag>? tags}) Future<CreateApplicationResponse>
Creates an Amazon Q Business application.
createChatResponseConfiguration({required String applicationId, required String displayName, required Map<ResponseConfigurationType, ResponseConfiguration> responseConfigurations, String? clientToken, List<Tag>? tags}) Future<CreateChatResponseConfigurationResponse>
Creates a new chat response configuration for an Amazon Q Business application. This operation establishes a set of parameters that define how the system generates and formats responses to user queries in chat interactions.
createDataAccessor({required List<ActionConfiguration> actionConfigurations, required String applicationId, required String displayName, required String principal, DataAccessorAuthenticationDetail? authenticationDetail, String? clientToken, List<Tag>? tags}) Future<CreateDataAccessorResponse>
Creates a new data accessor for an ISV to access data from a Amazon Q Business application. The data accessor is an entity that represents the ISV's access to the Amazon 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 IAM Identity Center application is also created to manage the ISV's identity and authentication for accessing the Amazon Q Business application.
createDataSource({required String applicationId, required Object configuration, required String displayName, required String indexId, String? clientToken, String? description, DocumentEnrichmentConfiguration? documentEnrichmentConfiguration, MediaExtractionConfiguration? mediaExtractionConfiguration, String? roleArn, String? syncSchedule, List<Tag>? tags, DataSourceVpcConfiguration? vpcConfiguration}) Future<CreateDataSourceResponse>
Creates a data source connector for an Amazon Q Business application.
createIndex({required String applicationId, required String displayName, IndexCapacityConfiguration? capacityConfiguration, String? clientToken, String? description, List<Tag>? tags, IndexType? type}) Future<CreateIndexResponse>
Creates an Amazon Q Business index.
createPlugin({required String applicationId, required PluginAuthConfiguration authConfiguration, required String displayName, required PluginType type, String? clientToken, CustomPluginConfiguration? customPluginConfiguration, String? serverUrl, List<Tag>? tags}) Future<CreatePluginResponse>
Creates an Amazon Q Business plugin.
createRetriever({required String applicationId, required RetrieverConfiguration configuration, required String displayName, required RetrieverType type, String? clientToken, String? roleArn, List<Tag>? tags}) Future<CreateRetrieverResponse>
Adds a retriever to your Amazon Q Business application.
createSubscription({required String applicationId, required SubscriptionPrincipal principal, required SubscriptionType type, String? clientToken}) Future<CreateSubscriptionResponse>
Subscribes an IAM Identity Center user or a group to a pricing tier for an Amazon Q Business application.
createUser({required String applicationId, required String userId, String? clientToken, List<UserAlias>? userAliases}) Future<void>
Creates a universally unique identifier (UUID) mapped to a list of local user ids within an application.
createWebExperience({required String applicationId, BrowserExtensionConfiguration? browserExtensionConfiguration, String? clientToken, CustomizationConfiguration? customizationConfiguration, IdentityProviderConfiguration? identityProviderConfiguration, List<String>? origins, String? roleArn, WebExperienceSamplePromptsControlMode? samplePromptsControlMode, String? subtitle, List<Tag>? tags, String? title, String? welcomeMessage}) Future<CreateWebExperienceResponse>
Creates an Amazon Q Business web experience.
deleteApplication({required String applicationId}) Future<void>
Deletes an Amazon Q Business application.
deleteAttachment({required String applicationId, required String attachmentId, required String conversationId, String? userId}) Future<void>
Deletes an attachment associated with a specific Amazon Q Business conversation.
deleteChatControlsConfiguration({required String applicationId}) Future<void>
Deletes chat controls configured for an existing Amazon Q Business application.
deleteChatResponseConfiguration({required String applicationId, required String chatResponseConfigurationId}) Future<void>
Deletes a specified chat response configuration from an Amazon Q Business application.
deleteConversation({required String applicationId, required String conversationId, String? userId}) Future<void>
Deletes an Amazon Q Business web experience conversation.
deleteDataAccessor({required String applicationId, required String dataAccessorId}) Future<void>
Deletes a specified data accessor. This operation permanently removes the data accessor and its associated IAM Identity Center application. Any access granted to the ISV through this data accessor will be revoked.
deleteDataSource({required String applicationId, required String dataSourceId, required String indexId}) Future<void>
Deletes an Amazon Q Business data source connector. While the data source is being deleted, the Status field returned by a call to the DescribeDataSource API is set to DELETING.
deleteGroup({required String applicationId, required String groupName, required String indexId, String? dataSourceId}) Future<void>
Deletes a group so that all users and sub groups that belong to the group can no longer access documents only available to that group. For example, after deleting the group "Summer Interns", all interns who belonged to that group no longer see intern-only documents in their chat results.
deleteIndex({required String applicationId, required String indexId}) Future<void>
Deletes an Amazon Q Business index.
deletePlugin({required String applicationId, required String pluginId}) Future<void>
Deletes an Amazon Q Business plugin.
deleteRetriever({required String applicationId, required String retrieverId}) Future<void>
Deletes the retriever used by an Amazon Q Business application.
deleteUser({required String applicationId, required String userId}) Future<void>
Deletes a user by email id.
deleteWebExperience({required String applicationId, required String webExperienceId}) Future<void>
Deletes an Amazon Q Business web experience.
disassociatePermission({required String applicationId, required String statementId}) Future<void>
Removes a permission policy from a Amazon 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.
getApplication({required String applicationId}) Future<GetApplicationResponse>
Gets information about an existing Amazon Q Business application.
getChatControlsConfiguration({required String applicationId, int? maxResults, String? nextToken}) Future<GetChatControlsConfigurationResponse>
Gets information about chat controls configured for an existing Amazon Q Business application.
getChatResponseConfiguration({required String applicationId, required String chatResponseConfigurationId}) Future<GetChatResponseConfigurationResponse>
Retrieves detailed information about a specific chat response configuration from an Amazon Q Business application. This operation returns the complete configuration settings and metadata.
getDataAccessor({required String applicationId, required String dataAccessorId}) Future<GetDataAccessorResponse>
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 Amazon Q Business application and 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.
getDataSource({required String applicationId, required String dataSourceId, required String indexId}) Future<GetDataSourceResponse>
Gets information about an existing Amazon Q Business data source connector.
getDocumentContent({required String applicationId, required String documentId, required String indexId, String? dataSourceId, OutputFormat? outputFormat}) Future<GetDocumentContentResponse>
Retrieves the content of a document that was ingested into Amazon Q Business. This API validates user authorization against document ACLs before returning a pre-signed URL for secure document access. You can download or view source documents referenced in chat responses through the URL.
getGroup({required String applicationId, required String groupName, required String indexId, String? dataSourceId}) Future<GetGroupResponse>
Describes a group by group name.
getIndex({required String applicationId, required String indexId}) Future<GetIndexResponse>
Gets information about an existing Amazon Q Business index.
getMedia({required String applicationId, required String conversationId, required String mediaId, required String messageId}) Future<GetMediaResponse>
Returns the image bytes corresponding to a media object. If you have implemented your own application with the Chat and ChatSync APIs, and have enabled content extraction from visual data in Amazon Q Business, you use the GetMedia API operation to download the images so you can show them in your UI with responses.
getPlugin({required String applicationId, required String pluginId}) Future<GetPluginResponse>
Gets information about an existing Amazon Q Business plugin.
getPolicy({required String applicationId}) Future<GetPolicyResponse>
Retrieves the current permission policy for a Amazon 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.
getRetriever({required String applicationId, required String retrieverId}) Future<GetRetrieverResponse>
Gets information about an existing retriever used by an Amazon Q Business application.
getUser({required String applicationId, required String userId}) Future<GetUserResponse>
Describes the universally unique identifier (UUID) associated with a local user in a data source.
getWebExperience({required String applicationId, required String webExperienceId}) Future<GetWebExperienceResponse>
Gets information about an existing Amazon Q Business web experience.
listApplications({int? maxResults, String? nextToken}) Future<ListApplicationsResponse>
Lists Amazon Q Business applications.
listAttachments({required String applicationId, String? conversationId, int? maxResults, String? nextToken, String? userId}) Future<ListAttachmentsResponse>
Gets a list of attachments associated with an Amazon Q Business web experience or a list of attachements associated with a specific Amazon Q Business conversation.
listChatResponseConfigurations({required String applicationId, int? maxResults, String? nextToken}) Future<ListChatResponseConfigurationsResponse>
Retrieves a list of all chat response configurations available in a specified Amazon Q Business application. This operation returns summary information about each configuration to help administrators manage and select appropriate response settings.
listConversations({required String applicationId, int? maxResults, String? nextToken, String? userId}) Future<ListConversationsResponse>
Lists one or more Amazon Q Business conversations.
listDataAccessors({required String applicationId, int? maxResults, String? nextToken}) Future<ListDataAccessorsResponse>
Lists the data accessors for a Amazon 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.
listDataSources({required String applicationId, required String indexId, int? maxResults, String? nextToken}) Future<ListDataSourcesResponse>
Lists the Amazon Q Business data source connectors that you have created.
listDataSourceSyncJobs({required String applicationId, required String dataSourceId, required String indexId, DateTime? endTime, int? maxResults, String? nextToken, DateTime? startTime, DataSourceSyncJobStatus? statusFilter}) Future<ListDataSourceSyncJobsResponse>
Get information about an Amazon Q Business data source connector synchronization.
listDocuments({required String applicationId, required String indexId, List<String>? dataSourceIds, int? maxResults, String? nextToken}) Future<ListDocumentsResponse>
A list of documents attached to an index.
listGroups({required String applicationId, required String indexId, required DateTime updatedEarlierThan, String? dataSourceId, int? maxResults, String? nextToken}) Future<ListGroupsResponse>
Provides a list of groups that are mapped to users.
listIndices({required String applicationId, int? maxResults, String? nextToken}) Future<ListIndicesResponse>
Lists the Amazon Q Business indices you have created.
listMessages({required String applicationId, required String conversationId, int? maxResults, String? nextToken, String? userId}) Future<ListMessagesResponse>
Gets a list of messages associated with an Amazon Q Business web experience.
listPluginActions({required String applicationId, required String pluginId, int? maxResults, String? nextToken}) Future<ListPluginActionsResponse>
Lists configured Amazon Q Business actions for a specific plugin in an Amazon Q Business application.
listPlugins({required String applicationId, int? maxResults, String? nextToken}) Future<ListPluginsResponse>
Lists configured Amazon Q Business plugins.
listPluginTypeActions({required PluginType pluginType, int? maxResults, String? nextToken}) Future<ListPluginTypeActionsResponse>
Lists configured Amazon Q Business actions for any plugin type—both built-in and custom.
listPluginTypeMetadata({int? maxResults, String? nextToken}) Future<ListPluginTypeMetadataResponse>
Lists metadata for all Amazon Q Business plugin types.
listRetrievers({required String applicationId, int? maxResults, String? nextToken}) Future<ListRetrieversResponse>
Lists the retriever used by an Amazon Q Business application.
listSubscriptions({required String applicationId, int? maxResults, String? nextToken}) Future<ListSubscriptionsResponse>
Lists all subscriptions created in an Amazon Q Business application.
listTagsForResource({required String resourceARN}) Future<ListTagsForResourceResponse>
Gets a list of tags associated with a specified resource. Amazon Q Business applications and data sources can have tags associated with them.
listWebExperiences({required String applicationId, int? maxResults, String? nextToken}) Future<ListWebExperiencesResponse>
Lists one or more Amazon Q Business Web Experiences.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
putFeedback({required String applicationId, required String conversationId, required String messageId, DateTime? messageCopiedAt, MessageUsefulnessFeedback? messageUsefulness, String? userId}) Future<void>
Enables your end user to provide feedback on their Amazon Q Business generated chat responses.
putGroup({required String applicationId, required GroupMembers groupMembers, required String groupName, required String indexId, required MembershipType type, String? dataSourceId, String? roleArn}) Future<void>
Create, or updates, a mapping of users—who have access to a document—to groups.
searchRelevantContent({required String applicationId, required ContentSource contentSource, required String queryText, AttributeFilter? attributeFilter, int? maxResults, String? nextToken}) Future<SearchRelevantContentResponse>
Searches for relevant content in a Amazon Q Business application based on a query. This operation takes a search query text, the Amazon Q Business application identifier, and optional filters (such as 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.
startDataSourceSyncJob({required String applicationId, required String dataSourceId, required String indexId}) Future<StartDataSourceSyncJobResponse>
Starts a data source connector synchronization job. If a synchronization job is already in progress, Amazon Q Business returns a ConflictException.
stopDataSourceSyncJob({required String applicationId, required String dataSourceId, required String indexId}) Future<void>
Stops an Amazon Q Business data source connector synchronization job already in progress.
tagResource({required String resourceARN, required List<Tag> tags}) Future<void>
Adds the specified tag to the specified Amazon Q Business application or data source resource. If the tag already exists, the existing value is replaced with the new value.
toString() String
A string representation of this object.
inherited
untagResource({required String resourceARN, required List<String> tagKeys}) Future<void>
Removes a tag from an Amazon Q Business application or a data source.
updateApplication({required String applicationId, AttachmentsConfiguration? attachmentsConfiguration, AutoSubscriptionConfiguration? autoSubscriptionConfiguration, String? description, String? displayName, String? identityCenterInstanceArn, PersonalizationConfiguration? personalizationConfiguration, QAppsConfiguration? qAppsConfiguration, String? roleArn}) Future<void>
Updates an existing Amazon Q Business application.
updateChatControlsConfiguration({required String applicationId, BlockedPhrasesConfigurationUpdate? blockedPhrasesConfigurationUpdate, String? clientToken, CreatorModeConfiguration? creatorModeConfiguration, HallucinationReductionConfiguration? hallucinationReductionConfiguration, OrchestrationConfiguration? orchestrationConfiguration, ResponseScope? responseScope, List<TopicConfiguration>? topicConfigurationsToCreateOrUpdate, List<TopicConfiguration>? topicConfigurationsToDelete}) Future<void>
Updates a set of chat controls configured for an existing Amazon Q Business application.
updateChatResponseConfiguration({required String applicationId, required String chatResponseConfigurationId, required Map<ResponseConfigurationType, ResponseConfiguration> responseConfigurations, String? clientToken, String? displayName}) Future<void>
Updates an existing chat response configuration in an Amazon Q Business application. This operation allows administrators to modify configuration settings, display name, and response parameters to refine how the system generates responses.
updateDataAccessor({required List<ActionConfiguration> actionConfigurations, required String applicationId, required String dataAccessorId, DataAccessorAuthenticationDetail? authenticationDetail, String? displayName}) Future<void>
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.
updateDataSource({required String applicationId, required String dataSourceId, required String indexId, Object? configuration, String? description, String? displayName, DocumentEnrichmentConfiguration? documentEnrichmentConfiguration, MediaExtractionConfiguration? mediaExtractionConfiguration, String? roleArn, String? syncSchedule, DataSourceVpcConfiguration? vpcConfiguration}) Future<void>
Updates an existing Amazon Q Business data source connector.
updateIndex({required String applicationId, required String indexId, IndexCapacityConfiguration? capacityConfiguration, String? description, String? displayName, List<DocumentAttributeConfiguration>? documentAttributeConfigurations}) Future<void>
Updates an Amazon Q Business index.
updatePlugin({required String applicationId, required String pluginId, PluginAuthConfiguration? authConfiguration, CustomPluginConfiguration? customPluginConfiguration, String? displayName, String? serverUrl, PluginState? state}) Future<void>
Updates an Amazon Q Business plugin.
updateRetriever({required String applicationId, required String retrieverId, RetrieverConfiguration? configuration, String? displayName, String? roleArn}) Future<void>
Updates the retriever used for your Amazon Q Business application.
updateSubscription({required String applicationId, required String subscriptionId, required SubscriptionType type}) Future<UpdateSubscriptionResponse>
Updates the pricing tier for an Amazon Q Business subscription. Upgrades are instant. Downgrades apply at the start of the next month. Subscription tier determines feature access for the user. For more information on subscriptions and pricing tiers, see Amazon Q Business pricing.
updateUser({required String applicationId, required String userId, List<UserAlias>? userAliasesToDelete, List<UserAlias>? userAliasesToUpdate}) Future<UpdateUserResponse>
Updates a information associated with a user id.
updateWebExperience({required String applicationId, required String webExperienceId, WebExperienceAuthConfiguration? authenticationConfiguration, BrowserExtensionConfiguration? browserExtensionConfiguration, CustomizationConfiguration? customizationConfiguration, IdentityProviderConfiguration? identityProviderConfiguration, List<String>? origins, String? roleArn, WebExperienceSamplePromptsControlMode? samplePromptsControlMode, String? subtitle, String? title, String? welcomeMessage}) Future<void>
Updates an Amazon Q Business web experience.

Operators

operator ==(Object other) bool
The equality operator.
inherited