com.amazonaws.services.qapps.AWSQApps Maven / Gradle / Ivy
/*
* Copyright 2019-2024 Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
* the License. A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
* CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
* and limitations under the License.
*/
package com.amazonaws.services.qapps;
import javax.annotation.Generated;
import com.amazonaws.*;
import com.amazonaws.regions.*;
import com.amazonaws.services.qapps.model.*;
/**
* Interface for accessing QApps.
*
* Note: Do not directly implement this interface, new methods are added to it regularly. Extend from
* {@link com.amazonaws.services.qapps.AbstractAWSQApps} instead.
*
*
*
* The Amazon Q Apps feature capability within Amazon Q Business allows web experience users to create lightweight,
* purpose-built AI apps to fulfill specific tasks from within their web experience. For example, users can create an Q
* Appthat exclusively generates marketing-related content to improve your marketing team's productivity or a Q App for
* marketing content-generation like writing customer emails and creating promotional content using a certain style of
* voice, tone, and branding. For more information, see Amazon Q App in the
* Amazon Q Business User Guide.
*
*/
@Generated("com.amazonaws:aws-java-sdk-code-generator")
public interface AWSQApps {
/**
* The region metadata service name for computing region endpoints. You can use this value to retrieve metadata
* (such as supported regions) of the service.
*
* @see RegionUtils#getRegionsForService(String)
*/
String ENDPOINT_PREFIX = "data.qapps";
/**
*
* Associates a rating or review for a library item with the user submitting the request. This increments the rating
* count for the specified library item.
*
*
* @param associateLibraryItemReviewRequest
* @return Result of the AssociateLibraryItemReview operation returned by the service.
* @throws ResourceNotFoundException
* The requested resource could not be found.
* @throws AccessDeniedException
* The client is not authorized to perform the requested operation.
* @throws ValidationException
* The input failed to satisfy the constraints specified by the service.
* @throws InternalServerException
* An internal service error occurred while processing the request.
* @throws UnauthorizedException
* The client is not authenticated or authorized to perform the requested operation.
* @throws ServiceQuotaExceededException
* The requested operation could not be completed because it would exceed the service's quota or limit.
* @throws ThrottlingException
* The requested operation could not be completed because too many requests were sent at once. Wait a bit
* and try again later.
* @sample AWSQApps.AssociateLibraryItemReview
* @see AWS API Documentation
*/
AssociateLibraryItemReviewResult associateLibraryItemReview(AssociateLibraryItemReviewRequest associateLibraryItemReviewRequest);
/**
*
* This operation creates a link between the user's identity calling the operation and a specific Q App. This is
* useful to mark the Q App as a favorite for the user if the user doesn't own the Amazon Q App so they can
* still run it and see it in their inventory of Q Apps.
*
*
* @param associateQAppWithUserRequest
* @return Result of the AssociateQAppWithUser operation returned by the service.
* @throws ResourceNotFoundException
* The requested resource could not be found.
* @throws AccessDeniedException
* The client is not authorized to perform the requested operation.
* @throws ValidationException
* The input failed to satisfy the constraints specified by the service.
* @throws InternalServerException
* An internal service error occurred while processing the request.
* @throws UnauthorizedException
* The client is not authenticated or authorized to perform the requested operation.
* @throws ServiceQuotaExceededException
* The requested operation could not be completed because it would exceed the service's quota or limit.
* @throws ThrottlingException
* The requested operation could not be completed because too many requests were sent at once. Wait a bit
* and try again later.
* @sample AWSQApps.AssociateQAppWithUser
* @see AWS
* API Documentation
*/
AssociateQAppWithUserResult associateQAppWithUser(AssociateQAppWithUserRequest associateQAppWithUserRequest);
/**
*
* Creates a new library item for an Amazon Q App, allowing it to be discovered and used by other allowed users.
*
*
* @param createLibraryItemRequest
* @return Result of the CreateLibraryItem operation returned by the service.
* @throws ResourceNotFoundException
* The requested resource could not be found.
* @throws AccessDeniedException
* The client is not authorized to perform the requested operation.
* @throws ValidationException
* The input failed to satisfy the constraints specified by the service.
* @throws InternalServerException
* An internal service error occurred while processing the request.
* @throws UnauthorizedException
* The client is not authenticated or authorized to perform the requested operation.
* @throws ServiceQuotaExceededException
* The requested operation could not be completed because it would exceed the service's quota or limit.
* @throws ThrottlingException
* The requested operation could not be completed because too many requests were sent at once. Wait a bit
* and try again later.
* @sample AWSQApps.CreateLibraryItem
* @see AWS API
* Documentation
*/
CreateLibraryItemResult createLibraryItem(CreateLibraryItemRequest createLibraryItemRequest);
/**
*
* Creates a new Amazon Q App based on the provided definition. The Q App definition specifies the cards and flow of
* the Q App. This operation also calculates the dependencies between the cards by inspecting the references in the
* prompts.
*
*
* @param createQAppRequest
* @return Result of the CreateQApp operation returned by the service.
* @throws AccessDeniedException
* The client is not authorized to perform the requested operation.
* @throws ConflictException
* The requested operation could not be completed due to a conflict with the current state of the resource.
* @throws ValidationException
* The input failed to satisfy the constraints specified by the service.
* @throws InternalServerException
* An internal service error occurred while processing the request.
* @throws UnauthorizedException
* The client is not authenticated or authorized to perform the requested operation.
* @throws ServiceQuotaExceededException
* The requested operation could not be completed because it would exceed the service's quota or limit.
* @throws ContentTooLargeException
* The requested operation could not be completed because the content exceeds the maximum allowed size.
* @throws ThrottlingException
* The requested operation could not be completed because too many requests were sent at once. Wait a bit
* and try again later.
* @sample AWSQApps.CreateQApp
* @see AWS API
* Documentation
*/
CreateQAppResult createQApp(CreateQAppRequest createQAppRequest);
/**
*
* Deletes a library item for an Amazon Q App, removing it from the library so it can no longer be discovered or
* used by other users.
*
*
* @param deleteLibraryItemRequest
* @return Result of the DeleteLibraryItem operation returned by the service.
* @throws ResourceNotFoundException
* The requested resource could not be found.
* @throws AccessDeniedException
* The client is not authorized to perform the requested operation.
* @throws ValidationException
* The input failed to satisfy the constraints specified by the service.
* @throws InternalServerException
* An internal service error occurred while processing the request.
* @throws UnauthorizedException
* The client is not authenticated or authorized to perform the requested operation.
* @throws ServiceQuotaExceededException
* The requested operation could not be completed because it would exceed the service's quota or limit.
* @throws ThrottlingException
* The requested operation could not be completed because too many requests were sent at once. Wait a bit
* and try again later.
* @sample AWSQApps.DeleteLibraryItem
* @see AWS API
* Documentation
*/
DeleteLibraryItemResult deleteLibraryItem(DeleteLibraryItemRequest deleteLibraryItemRequest);
/**
*
* Deletes an Amazon Q App owned by the user. If the Q App was previously published to the library, it is also
* removed from the library.
*
*
* @param deleteQAppRequest
* @return Result of the DeleteQApp operation returned by the service.
* @throws ResourceNotFoundException
* The requested resource could not be found.
* @throws AccessDeniedException
* The client is not authorized to perform the requested operation.
* @throws ValidationException
* The input failed to satisfy the constraints specified by the service.
* @throws InternalServerException
* An internal service error occurred while processing the request.
* @throws UnauthorizedException
* The client is not authenticated or authorized to perform the requested operation.
* @throws ThrottlingException
* The requested operation could not be completed because too many requests were sent at once. Wait a bit
* and try again later.
* @sample AWSQApps.DeleteQApp
* @see AWS API
* Documentation
*/
DeleteQAppResult deleteQApp(DeleteQAppRequest deleteQAppRequest);
/**
*
* Removes a rating or review previously submitted by the user for a library item.
*
*
* @param disassociateLibraryItemReviewRequest
* @return Result of the DisassociateLibraryItemReview operation returned by the service.
* @throws ResourceNotFoundException
* The requested resource could not be found.
* @throws AccessDeniedException
* The client is not authorized to perform the requested operation.
* @throws ValidationException
* The input failed to satisfy the constraints specified by the service.
* @throws InternalServerException
* An internal service error occurred while processing the request.
* @throws UnauthorizedException
* The client is not authenticated or authorized to perform the requested operation.
* @throws ServiceQuotaExceededException
* The requested operation could not be completed because it would exceed the service's quota or limit.
* @throws ThrottlingException
* The requested operation could not be completed because too many requests were sent at once. Wait a bit
* and try again later.
* @sample AWSQApps.DisassociateLibraryItemReview
* @see AWS API Documentation
*/
DisassociateLibraryItemReviewResult disassociateLibraryItemReview(DisassociateLibraryItemReviewRequest disassociateLibraryItemReviewRequest);
/**
*
* Disassociates a Q App from a user removing the user's access to run the Q App.
*
*
* @param disassociateQAppFromUserRequest
* @return Result of the DisassociateQAppFromUser operation returned by the service.
* @throws ResourceNotFoundException
* The requested resource could not be found.
* @throws AccessDeniedException
* The client is not authorized to perform the requested operation.
* @throws ValidationException
* The input failed to satisfy the constraints specified by the service.
* @throws InternalServerException
* An internal service error occurred while processing the request.
* @throws UnauthorizedException
* The client is not authenticated or authorized to perform the requested operation.
* @throws ThrottlingException
* The requested operation could not be completed because too many requests were sent at once. Wait a bit
* and try again later.
* @sample AWSQApps.DisassociateQAppFromUser
* @see AWS
* API Documentation
*/
DisassociateQAppFromUserResult disassociateQAppFromUser(DisassociateQAppFromUserRequest disassociateQAppFromUserRequest);
/**
*
* Retrieves details about a library item for an Amazon Q App, including its metadata, categories, ratings, and
* usage statistics.
*
*
* @param getLibraryItemRequest
* @return Result of the GetLibraryItem operation returned by the service.
* @throws ResourceNotFoundException
* The requested resource could not be found.
* @throws AccessDeniedException
* The client is not authorized to perform the requested operation.
* @throws ValidationException
* The input failed to satisfy the constraints specified by the service.
* @throws InternalServerException
* An internal service error occurred while processing the request.
* @throws UnauthorizedException
* The client is not authenticated or authorized to perform the requested operation.
* @throws ThrottlingException
* The requested operation could not be completed because too many requests were sent at once. Wait a bit
* and try again later.
* @sample AWSQApps.GetLibraryItem
* @see AWS API
* Documentation
*/
GetLibraryItemResult getLibraryItem(GetLibraryItemRequest getLibraryItemRequest);
/**
*
* Retrieves the full details of an Q App, including its definition specifying the cards and flow.
*
*
* @param getQAppRequest
* @return Result of the GetQApp operation returned by the service.
* @throws ResourceNotFoundException
* The requested resource could not be found.
* @throws AccessDeniedException
* The client is not authorized to perform the requested operation.
* @throws ValidationException
* The input failed to satisfy the constraints specified by the service.
* @throws InternalServerException
* An internal service error occurred while processing the request.
* @throws UnauthorizedException
* The client is not authenticated or authorized to perform the requested operation.
* @throws ThrottlingException
* The requested operation could not be completed because too many requests were sent at once. Wait a bit
* and try again later.
* @sample AWSQApps.GetQApp
* @see AWS API
* Documentation
*/
GetQAppResult getQApp(GetQAppRequest getQAppRequest);
/**
*
* Retrieves the current state and results for an active session of an Amazon Q App.
*
*
* @param getQAppSessionRequest
* @return Result of the GetQAppSession operation returned by the service.
* @throws ResourceNotFoundException
* The requested resource could not be found.
* @throws AccessDeniedException
* The client is not authorized to perform the requested operation.
* @throws ValidationException
* The input failed to satisfy the constraints specified by the service.
* @throws InternalServerException
* An internal service error occurred while processing the request.
* @throws UnauthorizedException
* The client is not authenticated or authorized to perform the requested operation.
* @throws ServiceQuotaExceededException
* The requested operation could not be completed because it would exceed the service's quota or limit.
* @throws ThrottlingException
* The requested operation could not be completed because too many requests were sent at once. Wait a bit
* and try again later.
* @sample AWSQApps.GetQAppSession
* @see AWS API
* Documentation
*/
GetQAppSessionResult getQAppSession(GetQAppSessionRequest getQAppSessionRequest);
/**
*
* Uploads a file that can then be used either as a default in a FileUploadCard
from Q App definition
* or as a file that is used inside a single Q App run. The purpose of the document is determined by a scope
* parameter that indicates whether it is at the app definition level or at the app session level.
*
*
* @param importDocumentRequest
* @return Result of the ImportDocument operation returned by the service.
* @throws ResourceNotFoundException
* The requested resource could not be found.
* @throws AccessDeniedException
* The client is not authorized to perform the requested operation.
* @throws ValidationException
* The input failed to satisfy the constraints specified by the service.
* @throws InternalServerException
* An internal service error occurred while processing the request.
* @throws UnauthorizedException
* The client is not authenticated or authorized to perform the requested operation.
* @throws ServiceQuotaExceededException
* The requested operation could not be completed because it would exceed the service's quota or limit.
* @throws ContentTooLargeException
* The requested operation could not be completed because the content exceeds the maximum allowed size.
* @throws ThrottlingException
* The requested operation could not be completed because too many requests were sent at once. Wait a bit
* and try again later.
* @sample AWSQApps.ImportDocument
* @see AWS API
* Documentation
*/
ImportDocumentResult importDocument(ImportDocumentRequest importDocumentRequest);
/**
*
* Lists the library items for Amazon Q Apps that are published and available for users in your Amazon Web Services
* account.
*
*
* @param listLibraryItemsRequest
* @return Result of the ListLibraryItems operation returned by the service.
* @throws ResourceNotFoundException
* The requested resource could not be found.
* @throws AccessDeniedException
* The client is not authorized to perform the requested operation.
* @throws ValidationException
* The input failed to satisfy the constraints specified by the service.
* @throws InternalServerException
* An internal service error occurred while processing the request.
* @throws UnauthorizedException
* The client is not authenticated or authorized to perform the requested operation.
* @throws ThrottlingException
* The requested operation could not be completed because too many requests were sent at once. Wait a bit
* and try again later.
* @sample AWSQApps.ListLibraryItems
* @see AWS API
* Documentation
*/
ListLibraryItemsResult listLibraryItems(ListLibraryItemsRequest listLibraryItemsRequest);
/**
*
* Lists the Amazon Q Apps owned by or associated with the user either because they created it or because they used
* it from the library in the past. The user identity is extracted from the credentials used to invoke this
* operation..
*
*
* @param listQAppsRequest
* @return Result of the ListQApps operation returned by the service.
* @throws AccessDeniedException
* The client is not authorized to perform the requested operation.
* @throws ValidationException
* The input failed to satisfy the constraints specified by the service.
* @throws InternalServerException
* An internal service error occurred while processing the request.
* @throws UnauthorizedException
* The client is not authenticated or authorized to perform the requested operation.
* @throws ThrottlingException
* The requested operation could not be completed because too many requests were sent at once. Wait a bit
* and try again later.
* @sample AWSQApps.ListQApps
* @see AWS API
* Documentation
*/
ListQAppsResult listQApps(ListQAppsRequest listQAppsRequest);
/**
*
* Lists the tags associated with an Amazon Q Apps resource.
*
*
* @param listTagsForResourceRequest
* @return Result of the ListTagsForResource operation returned by the service.
* @throws ResourceNotFoundException
* The requested resource could not be found.
* @throws AccessDeniedException
* The client is not authorized to perform the requested operation.
* @throws ValidationException
* The input failed to satisfy the constraints specified by the service.
* @throws InternalServerException
* An internal service error occurred while processing the request.
* @throws ThrottlingException
* The requested operation could not be completed because too many requests were sent at once. Wait a bit
* and try again later.
* @sample AWSQApps.ListTagsForResource
* @see AWS API
* Documentation
*/
ListTagsForResourceResult listTagsForResource(ListTagsForResourceRequest listTagsForResourceRequest);
/**
*
* Generates an Amazon Q App definition based on either a conversation or a problem statement provided as input.The
* resulting app definition can be used to call CreateQApp
. This API doesn't create Amazon Q Apps
* directly.
*
*
* @param predictQAppRequest
* @return Result of the PredictQApp operation returned by the service.
* @throws AccessDeniedException
* The client is not authorized to perform the requested operation.
* @throws ValidationException
* The input failed to satisfy the constraints specified by the service.
* @throws InternalServerException
* An internal service error occurred while processing the request.
* @throws UnauthorizedException
* The client is not authenticated or authorized to perform the requested operation.
* @throws ThrottlingException
* The requested operation could not be completed because too many requests were sent at once. Wait a bit
* and try again later.
* @sample AWSQApps.PredictQApp
* @see AWS API
* Documentation
*/
PredictQAppResult predictQApp(PredictQAppRequest predictQAppRequest);
/**
*
* Starts a new session for an Amazon Q App, allowing inputs to be provided and the app to be run.
*
*
*
* Each Q App session will be condensed into a single conversation in the web experience.
*
*
*
* @param startQAppSessionRequest
* @return Result of the StartQAppSession operation returned by the service.
* @throws ResourceNotFoundException
* The requested resource could not be found.
* @throws AccessDeniedException
* The client is not authorized to perform the requested operation.
* @throws ValidationException
* The input failed to satisfy the constraints specified by the service.
* @throws InternalServerException
* An internal service error occurred while processing the request.
* @throws UnauthorizedException
* The client is not authenticated or authorized to perform the requested operation.
* @throws ServiceQuotaExceededException
* The requested operation could not be completed because it would exceed the service's quota or limit.
* @throws ThrottlingException
* The requested operation could not be completed because too many requests were sent at once. Wait a bit
* and try again later.
* @sample AWSQApps.StartQAppSession
* @see AWS API
* Documentation
*/
StartQAppSessionResult startQAppSession(StartQAppSessionRequest startQAppSessionRequest);
/**
*
* Stops an active session for an Amazon Q App.This deletes all data related to the session and makes it invalid for
* future uses. The results of the session will be persisted as part of the conversation.
*
*
* @param stopQAppSessionRequest
* @return Result of the StopQAppSession operation returned by the service.
* @throws ResourceNotFoundException
* The requested resource could not be found.
* @throws AccessDeniedException
* The client is not authorized to perform the requested operation.
* @throws ValidationException
* The input failed to satisfy the constraints specified by the service.
* @throws InternalServerException
* An internal service error occurred while processing the request.
* @throws UnauthorizedException
* The client is not authenticated or authorized to perform the requested operation.
* @throws ServiceQuotaExceededException
* The requested operation could not be completed because it would exceed the service's quota or limit.
* @throws ThrottlingException
* The requested operation could not be completed because too many requests were sent at once. Wait a bit
* and try again later.
* @sample AWSQApps.StopQAppSession
* @see AWS API
* Documentation
*/
StopQAppSessionResult stopQAppSession(StopQAppSessionRequest stopQAppSessionRequest);
/**
*
* Associates tags with an Amazon Q Apps resource.
*
*
* @param tagResourceRequest
* @return Result of the TagResource operation returned by the service.
* @throws ResourceNotFoundException
* The requested resource could not be found.
* @throws AccessDeniedException
* The client is not authorized to perform the requested operation.
* @throws ConflictException
* The requested operation could not be completed due to a conflict with the current state of the resource.
* @throws ValidationException
* The input failed to satisfy the constraints specified by the service.
* @throws InternalServerException
* An internal service error occurred while processing the request.
* @throws ThrottlingException
* The requested operation could not be completed because too many requests were sent at once. Wait a bit
* and try again later.
* @sample AWSQApps.TagResource
* @see AWS API
* Documentation
*/
TagResourceResult tagResource(TagResourceRequest tagResourceRequest);
/**
*
* Disassociates tags from an Amazon Q Apps resource.
*
*
* @param untagResourceRequest
* @return Result of the UntagResource operation returned by the service.
* @throws ResourceNotFoundException
* The requested resource could not be found.
* @throws AccessDeniedException
* The client is not authorized to perform the requested operation.
* @throws ValidationException
* The input failed to satisfy the constraints specified by the service.
* @throws InternalServerException
* An internal service error occurred while processing the request.
* @throws ThrottlingException
* The requested operation could not be completed because too many requests were sent at once. Wait a bit
* and try again later.
* @sample AWSQApps.UntagResource
* @see AWS API
* Documentation
*/
UntagResourceResult untagResource(UntagResourceRequest untagResourceRequest);
/**
*
* Updates the metadata and status of a library item for an Amazon Q App.
*
*
* @param updateLibraryItemRequest
* @return Result of the UpdateLibraryItem operation returned by the service.
* @throws ResourceNotFoundException
* The requested resource could not be found.
* @throws AccessDeniedException
* The client is not authorized to perform the requested operation.
* @throws ValidationException
* The input failed to satisfy the constraints specified by the service.
* @throws InternalServerException
* An internal service error occurred while processing the request.
* @throws UnauthorizedException
* The client is not authenticated or authorized to perform the requested operation.
* @throws ThrottlingException
* The requested operation could not be completed because too many requests were sent at once. Wait a bit
* and try again later.
* @sample AWSQApps.UpdateLibraryItem
* @see AWS API
* Documentation
*/
UpdateLibraryItemResult updateLibraryItem(UpdateLibraryItemRequest updateLibraryItemRequest);
/**
*
* Updates an existing Amazon Q App, allowing modifications to its title, description, and definition.
*
*
* @param updateQAppRequest
* @return Result of the UpdateQApp operation returned by the service.
* @throws ResourceNotFoundException
* The requested resource could not be found.
* @throws AccessDeniedException
* The client is not authorized to perform the requested operation.
* @throws ValidationException
* The input failed to satisfy the constraints specified by the service.
* @throws InternalServerException
* An internal service error occurred while processing the request.
* @throws UnauthorizedException
* The client is not authenticated or authorized to perform the requested operation.
* @throws ContentTooLargeException
* The requested operation could not be completed because the content exceeds the maximum allowed size.
* @throws ThrottlingException
* The requested operation could not be completed because too many requests were sent at once. Wait a bit
* and try again later.
* @sample AWSQApps.UpdateQApp
* @see AWS API
* Documentation
*/
UpdateQAppResult updateQApp(UpdateQAppRequest updateQAppRequest);
/**
*
* Updates the session for a given Q App sessionId
. This is only valid when at least one card of the
* session is in the WAITING
state. Data for each WAITING
card can be provided as input.
* If inputs are not provided, the call will be accepted but session will not move forward. Inputs for cards that
* are not in the WAITING
status will be ignored.
*
*
* @param updateQAppSessionRequest
* @return Result of the UpdateQAppSession operation returned by the service.
* @throws ResourceNotFoundException
* The requested resource could not be found.
* @throws AccessDeniedException
* The client is not authorized to perform the requested operation.
* @throws ValidationException
* The input failed to satisfy the constraints specified by the service.
* @throws InternalServerException
* An internal service error occurred while processing the request.
* @throws UnauthorizedException
* The client is not authenticated or authorized to perform the requested operation.
* @throws ServiceQuotaExceededException
* The requested operation could not be completed because it would exceed the service's quota or limit.
* @throws ThrottlingException
* The requested operation could not be completed because too many requests were sent at once. Wait a bit
* and try again later.
* @sample AWSQApps.UpdateQAppSession
* @see AWS API
* Documentation
*/
UpdateQAppSessionResult updateQAppSession(UpdateQAppSessionRequest updateQAppSessionRequest);
/**
* Shuts down this client object, releasing any resources that might be held open. This is an optional method, and
* callers are not expected to call it, but can if they want to explicitly release any open resources. Once a client
* has been shutdown, it should not be used to make any more requests.
*/
void shutdown();
/**
* Returns additional metadata for a previously executed successful request, typically used for debugging issues
* where a service isn't acting as expected. This data isn't considered part of the result data returned by an
* operation, so it's available through this separate, diagnostic interface.
*
* Response metadata is only cached for a limited period of time, so if you need to access this extra diagnostic
* information for an executed request, you should use this method to retrieve it as soon as possible after
* executing a request.
*
* @param request
* The originally executed request.
*
* @return The response metadata for the specified request, or null if none is available.
*/
ResponseMetadata getCachedResponseMetadata(AmazonWebServiceRequest request);
}