/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
namespace Aws
{
namespace Http
{
class HttpClient;
class HttpClientFactory;
} // namespace Http
namespace Utils
{
template< typename R, typename E> class Outcome;
namespace Threading
{
class Executor;
} // namespace Threading
} // namespace Utils
namespace Auth
{
class AWSCredentials;
class AWSCredentialsProvider;
} // namespace Auth
namespace Client
{
class RetryStrategy;
} // namespace Client
namespace kendra
{
namespace Model
{
class BatchDeleteDocumentRequest;
class BatchPutDocumentRequest;
class CreateDataSourceRequest;
class CreateFaqRequest;
class CreateIndexRequest;
class DeleteDataSourceRequest;
class DeleteFaqRequest;
class DeleteIndexRequest;
class DescribeDataSourceRequest;
class DescribeFaqRequest;
class DescribeIndexRequest;
class ListDataSourceSyncJobsRequest;
class ListDataSourcesRequest;
class ListFaqsRequest;
class ListIndicesRequest;
class ListTagsForResourceRequest;
class QueryRequest;
class StartDataSourceSyncJobRequest;
class StopDataSourceSyncJobRequest;
class SubmitFeedbackRequest;
class TagResourceRequest;
class UntagResourceRequest;
class UpdateDataSourceRequest;
class UpdateIndexRequest;
typedef Aws::Utils::Outcome BatchDeleteDocumentOutcome;
typedef Aws::Utils::Outcome BatchPutDocumentOutcome;
typedef Aws::Utils::Outcome CreateDataSourceOutcome;
typedef Aws::Utils::Outcome CreateFaqOutcome;
typedef Aws::Utils::Outcome CreateIndexOutcome;
typedef Aws::Utils::Outcome DeleteDataSourceOutcome;
typedef Aws::Utils::Outcome DeleteFaqOutcome;
typedef Aws::Utils::Outcome DeleteIndexOutcome;
typedef Aws::Utils::Outcome DescribeDataSourceOutcome;
typedef Aws::Utils::Outcome DescribeFaqOutcome;
typedef Aws::Utils::Outcome DescribeIndexOutcome;
typedef Aws::Utils::Outcome ListDataSourceSyncJobsOutcome;
typedef Aws::Utils::Outcome ListDataSourcesOutcome;
typedef Aws::Utils::Outcome ListFaqsOutcome;
typedef Aws::Utils::Outcome ListIndicesOutcome;
typedef Aws::Utils::Outcome ListTagsForResourceOutcome;
typedef Aws::Utils::Outcome QueryOutcome;
typedef Aws::Utils::Outcome StartDataSourceSyncJobOutcome;
typedef Aws::Utils::Outcome StopDataSourceSyncJobOutcome;
typedef Aws::Utils::Outcome SubmitFeedbackOutcome;
typedef Aws::Utils::Outcome TagResourceOutcome;
typedef Aws::Utils::Outcome UntagResourceOutcome;
typedef Aws::Utils::Outcome UpdateDataSourceOutcome;
typedef Aws::Utils::Outcome UpdateIndexOutcome;
typedef std::future BatchDeleteDocumentOutcomeCallable;
typedef std::future BatchPutDocumentOutcomeCallable;
typedef std::future CreateDataSourceOutcomeCallable;
typedef std::future CreateFaqOutcomeCallable;
typedef std::future CreateIndexOutcomeCallable;
typedef std::future DeleteDataSourceOutcomeCallable;
typedef std::future DeleteFaqOutcomeCallable;
typedef std::future DeleteIndexOutcomeCallable;
typedef std::future DescribeDataSourceOutcomeCallable;
typedef std::future DescribeFaqOutcomeCallable;
typedef std::future DescribeIndexOutcomeCallable;
typedef std::future ListDataSourceSyncJobsOutcomeCallable;
typedef std::future ListDataSourcesOutcomeCallable;
typedef std::future ListFaqsOutcomeCallable;
typedef std::future ListIndicesOutcomeCallable;
typedef std::future ListTagsForResourceOutcomeCallable;
typedef std::future QueryOutcomeCallable;
typedef std::future StartDataSourceSyncJobOutcomeCallable;
typedef std::future StopDataSourceSyncJobOutcomeCallable;
typedef std::future SubmitFeedbackOutcomeCallable;
typedef std::future TagResourceOutcomeCallable;
typedef std::future UntagResourceOutcomeCallable;
typedef std::future UpdateDataSourceOutcomeCallable;
typedef std::future UpdateIndexOutcomeCallable;
} // namespace Model
class KendraClient;
typedef std::function&) > BatchDeleteDocumentResponseReceivedHandler;
typedef std::function&) > BatchPutDocumentResponseReceivedHandler;
typedef std::function&) > CreateDataSourceResponseReceivedHandler;
typedef std::function&) > CreateFaqResponseReceivedHandler;
typedef std::function&) > CreateIndexResponseReceivedHandler;
typedef std::function&) > DeleteDataSourceResponseReceivedHandler;
typedef std::function&) > DeleteFaqResponseReceivedHandler;
typedef std::function&) > DeleteIndexResponseReceivedHandler;
typedef std::function&) > DescribeDataSourceResponseReceivedHandler;
typedef std::function&) > DescribeFaqResponseReceivedHandler;
typedef std::function&) > DescribeIndexResponseReceivedHandler;
typedef std::function&) > ListDataSourceSyncJobsResponseReceivedHandler;
typedef std::function&) > ListDataSourcesResponseReceivedHandler;
typedef std::function&) > ListFaqsResponseReceivedHandler;
typedef std::function&) > ListIndicesResponseReceivedHandler;
typedef std::function&) > ListTagsForResourceResponseReceivedHandler;
typedef std::function&) > QueryResponseReceivedHandler;
typedef std::function&) > StartDataSourceSyncJobResponseReceivedHandler;
typedef std::function&) > StopDataSourceSyncJobResponseReceivedHandler;
typedef std::function&) > SubmitFeedbackResponseReceivedHandler;
typedef std::function&) > TagResourceResponseReceivedHandler;
typedef std::function&) > UntagResourceResponseReceivedHandler;
typedef std::function&) > UpdateDataSourceResponseReceivedHandler;
typedef std::function&) > UpdateIndexResponseReceivedHandler;
/**
* Amazon Kendra is a service for indexing large document sets.
*/
class AWS_KENDRA_API KendraClient : public Aws::Client::AWSJsonClient
{
public:
typedef Aws::Client::AWSJsonClient BASECLASS;
/**
* Initializes client to use DefaultCredentialProviderChain, with default http client factory, and optional client config. If client config
* is not specified, it will be initialized to default values.
*/
KendraClient(const Aws::Client::ClientConfiguration& clientConfiguration = Aws::Client::ClientConfiguration());
/**
* Initializes client to use SimpleAWSCredentialsProvider, with default http client factory, and optional client config. If client config
* is not specified, it will be initialized to default values.
*/
KendraClient(const Aws::Auth::AWSCredentials& credentials, const Aws::Client::ClientConfiguration& clientConfiguration = Aws::Client::ClientConfiguration());
/**
* Initializes client to use specified credentials provider with specified client config. If http client factory is not supplied,
* the default http client factory will be used
*/
KendraClient(const std::shared_ptr& credentialsProvider,
const Aws::Client::ClientConfiguration& clientConfiguration = Aws::Client::ClientConfiguration());
virtual ~KendraClient();
/**
* Removes one or more documents from an index. The documents must have been
* added with the BatchPutDocument operation.
The documents are
* deleted asynchronously. You can see the progress of the deletion by using AWS
* CloudWatch. Any error messages releated to the processing of the batch are sent
* to you CloudWatch log.
See Also:
AWS
* API Reference
*/
virtual Model::BatchDeleteDocumentOutcome BatchDeleteDocument(const Model::BatchDeleteDocumentRequest& request) const;
/**
* Removes one or more documents from an index. The documents must have been
* added with the BatchPutDocument operation.
The documents are
* deleted asynchronously. You can see the progress of the deletion by using AWS
* CloudWatch. Any error messages releated to the processing of the batch are sent
* to you CloudWatch log.
Removes one or more documents from an index. The documents must have been
* added with the BatchPutDocument operation.
The documents are
* deleted asynchronously. You can see the progress of the deletion by using AWS
* CloudWatch. Any error messages releated to the processing of the batch are sent
* to you CloudWatch log.
& context = nullptr) const;
/**
* Adds one or more documents to an index.
The
* BatchPutDocument operation enables you to ingest inline documents
* or a set of documents stored in an Amazon S3 bucket. Use this operation to
* ingest your text and unstructured text into an index, add custom attributes to
* the documents, and to attach an access control list to the documents added to
* the index.
The documents are indexed asynchronously. You can see the
* progress of the batch using AWS CloudWatch. Any error messages related to
* processing the batch are sent to your AWS CloudWatch log.
See
* Also:
AWS
* API Reference
*/
virtual Model::BatchPutDocumentOutcome BatchPutDocument(const Model::BatchPutDocumentRequest& request) const;
/**
* Adds one or more documents to an index.
The
* BatchPutDocument operation enables you to ingest inline documents
* or a set of documents stored in an Amazon S3 bucket. Use this operation to
* ingest your text and unstructured text into an index, add custom attributes to
* the documents, and to attach an access control list to the documents added to
* the index.
The documents are indexed asynchronously. You can see the
* progress of the batch using AWS CloudWatch. Any error messages related to
* processing the batch are sent to your AWS CloudWatch log.
See
* Also:
AWS
* API Reference
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::BatchPutDocumentOutcomeCallable BatchPutDocumentCallable(const Model::BatchPutDocumentRequest& request) const;
/**
* Adds one or more documents to an index.
The
* BatchPutDocument operation enables you to ingest inline documents
* or a set of documents stored in an Amazon S3 bucket. Use this operation to
* ingest your text and unstructured text into an index, add custom attributes to
* the documents, and to attach an access control list to the documents added to
* the index.
The documents are indexed asynchronously. You can see the
* progress of the batch using AWS CloudWatch. Any error messages related to
* processing the batch are sent to your AWS CloudWatch log.
See
* Also:
AWS
* API Reference
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void BatchPutDocumentAsync(const Model::BatchPutDocumentRequest& request, const BatchPutDocumentResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const;
/**
* Creates a data source that you use to with an Amazon Kendra index.
* You specify a name, connector type and description for your data source. You
* can choose between an S3 connector, a SharePoint Online connector, and a
* database connector.
You also specify configuration information such as
* document metadata (author, source URI, and so on) and user context
* information.
CreateDataSource is a synchronous operation.
* The operation returns 200 if the data source was successfully created.
* Otherwise, an exception is raised.
See Also:
AWS
* API Reference
*/
virtual Model::CreateDataSourceOutcome CreateDataSource(const Model::CreateDataSourceRequest& request) const;
/**
* Creates a data source that you use to with an Amazon Kendra index.
* You specify a name, connector type and description for your data source. You
* can choose between an S3 connector, a SharePoint Online connector, and a
* database connector.
You also specify configuration information such as
* document metadata (author, source URI, and so on) and user context
* information.
CreateDataSource is a synchronous operation.
* The operation returns 200 if the data source was successfully created.
* Otherwise, an exception is raised.
See Also:
AWS
* API Reference
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::CreateDataSourceOutcomeCallable CreateDataSourceCallable(const Model::CreateDataSourceRequest& request) const;
/**
* Creates a data source that you use to with an Amazon Kendra index.
* You specify a name, connector type and description for your data source. You
* can choose between an S3 connector, a SharePoint Online connector, and a
* database connector.
You also specify configuration information such as
* document metadata (author, source URI, and so on) and user context
* information.
CreateDataSource is a synchronous operation.
* The operation returns 200 if the data source was successfully created.
* Otherwise, an exception is raised.
See Also:
AWS
* API Reference
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void CreateDataSourceAsync(const Model::CreateDataSourceRequest& request, const CreateDataSourceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const;
/**
* Creates an new set of frequently asked question (FAQ) questions and
* answers.
See Also:
AWS
* API Reference
*/
virtual Model::CreateFaqOutcome CreateFaq(const Model::CreateFaqRequest& request) const;
/**
* Creates an new set of frequently asked question (FAQ) questions and
* answers.
See Also:
AWS
* API Reference
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::CreateFaqOutcomeCallable CreateFaqCallable(const Model::CreateFaqRequest& request) const;
/**
* Creates an new set of frequently asked question (FAQ) questions and
* answers.
See Also:
AWS
* API Reference
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void CreateFaqAsync(const Model::CreateFaqRequest& request, const CreateFaqResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const;
/**
* Creates a new Amazon Kendra index. Index creation is an asynchronous
* operation. To determine if index creation has completed, check the
* Status field returned from a call to . The Status
* field is set to ACTIVE when the index is ready to use.
Once
* the index is active you can index your documents using the operation or using
* one of the supported data sources.
See Also:
AWS
* API Reference
*/
virtual Model::CreateIndexOutcome CreateIndex(const Model::CreateIndexRequest& request) const;
/**
* Creates a new Amazon Kendra index. Index creation is an asynchronous
* operation. To determine if index creation has completed, check the
* Status field returned from a call to . The Status
* field is set to ACTIVE when the index is ready to use.
Once
* the index is active you can index your documents using the operation or using
* one of the supported data sources.
See Also:
AWS
* API Reference
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::CreateIndexOutcomeCallable CreateIndexCallable(const Model::CreateIndexRequest& request) const;
/**
* Creates a new Amazon Kendra index. Index creation is an asynchronous
* operation. To determine if index creation has completed, check the
* Status field returned from a call to . The Status
* field is set to ACTIVE when the index is ready to use.
Once
* the index is active you can index your documents using the operation or using
* one of the supported data sources.
See Also:
AWS
* API Reference
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void CreateIndexAsync(const Model::CreateIndexRequest& request, const CreateIndexResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const;
/**
* Deletes an Amazon Kendra data source. An exception is not thrown if the data
* source is already being deleted. While the data source is being deleted, the
* Status field returned by a call to the operation is set to
* DELETING. For more information, see Deleting
* Data Sources.
See Also:
AWS
* API Reference
*/
virtual Model::DeleteDataSourceOutcome DeleteDataSource(const Model::DeleteDataSourceRequest& request) const;
/**
* Deletes an Amazon Kendra data source. An exception is not thrown if the data
* source is already being deleted. While the data source is being deleted, the
* Status field returned by a call to the operation is set to
* DELETING. For more information, see Deleting
* Data Sources.
See Also:
AWS
* API Reference
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::DeleteDataSourceOutcomeCallable DeleteDataSourceCallable(const Model::DeleteDataSourceRequest& request) const;
/**
* Deletes an Amazon Kendra data source. An exception is not thrown if the data
* source is already being deleted. While the data source is being deleted, the
* Status field returned by a call to the operation is set to
* DELETING. For more information, see Deleting
* Data Sources.
See Also:
AWS
* API Reference
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void DeleteDataSourceAsync(const Model::DeleteDataSourceRequest& request, const DeleteDataSourceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const;
/**
* Removes an FAQ from an index.
See Also:
AWS
* API Reference
*/
virtual Model::DeleteFaqOutcome DeleteFaq(const Model::DeleteFaqRequest& request) const;
/**
* Removes an FAQ from an index.
See Also:
AWS
* API Reference
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::DeleteFaqOutcomeCallable DeleteFaqCallable(const Model::DeleteFaqRequest& request) const;
/**
* Removes an FAQ from an index.
See Also:
AWS
* API Reference
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void DeleteFaqAsync(const Model::DeleteFaqRequest& request, const DeleteFaqResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const;
/**
* Deletes an existing Amazon Kendra index. An exception is not thrown if the
* index is already being deleted. While the index is being deleted, the
* Status field returned by a call to the DescribeIndex
* operation is set to DELETING.
See Also:
AWS
* API Reference
*/
virtual Model::DeleteIndexOutcome DeleteIndex(const Model::DeleteIndexRequest& request) const;
/**
* Deletes an existing Amazon Kendra index. An exception is not thrown if the
* index is already being deleted. While the index is being deleted, the
* Status field returned by a call to the DescribeIndex
* operation is set to DELETING.
See Also:
AWS
* API Reference
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::DeleteIndexOutcomeCallable DeleteIndexCallable(const Model::DeleteIndexRequest& request) const;
/**
* Deletes an existing Amazon Kendra index. An exception is not thrown if the
* index is already being deleted. While the index is being deleted, the
* Status field returned by a call to the DescribeIndex
* operation is set to DELETING.
See Also:
AWS
* API Reference
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void DeleteIndexAsync(const Model::DeleteIndexRequest& request, const DeleteIndexResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const;
/**
* Gets information about a Amazon Kendra data source.
See Also:
* AWS
* API Reference
*/
virtual Model::DescribeDataSourceOutcome DescribeDataSource(const Model::DescribeDataSourceRequest& request) const;
/**
* Gets information about a Amazon Kendra data source.
See Also:
* AWS
* API Reference
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::DescribeDataSourceOutcomeCallable DescribeDataSourceCallable(const Model::DescribeDataSourceRequest& request) const;
/**
* Gets information about a Amazon Kendra data source.
See Also:
* AWS
* API Reference
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void DescribeDataSourceAsync(const Model::DescribeDataSourceRequest& request, const DescribeDataSourceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const;
/**
* Gets information about an FAQ list.
See Also:
AWS
* API Reference
*/
virtual Model::DescribeFaqOutcome DescribeFaq(const Model::DescribeFaqRequest& request) const;
/**
* Gets information about an FAQ list.
See Also:
AWS
* API Reference
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::DescribeFaqOutcomeCallable DescribeFaqCallable(const Model::DescribeFaqRequest& request) const;
/**
* Gets information about an FAQ list.
See Also:
AWS
* API Reference
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void DescribeFaqAsync(const Model::DescribeFaqRequest& request, const DescribeFaqResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const;
/**
* Describes an existing Amazon Kendra index
See Also:
AWS
* API Reference
*/
virtual Model::DescribeIndexOutcome DescribeIndex(const Model::DescribeIndexRequest& request) const;
/**
* Describes an existing Amazon Kendra index
See Also:
AWS
* API Reference
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::DescribeIndexOutcomeCallable DescribeIndexCallable(const Model::DescribeIndexRequest& request) const;
/**
* Describes an existing Amazon Kendra index
See Also:
AWS
* API Reference
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void DescribeIndexAsync(const Model::DescribeIndexRequest& request, const DescribeIndexResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const;
/**
* Gets statistics about synchronizing Amazon Kendra with a data
* source.
See Also:
AWS
* API Reference
*/
virtual Model::ListDataSourceSyncJobsOutcome ListDataSourceSyncJobs(const Model::ListDataSourceSyncJobsRequest& request) const;
/**
* Gets statistics about synchronizing Amazon Kendra with a data
* source.
See Also:
AWS
* API Reference
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::ListDataSourceSyncJobsOutcomeCallable ListDataSourceSyncJobsCallable(const Model::ListDataSourceSyncJobsRequest& request) const;
/**
* Gets statistics about synchronizing Amazon Kendra with a data
* source.
See Also:
AWS
* API Reference
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void ListDataSourceSyncJobsAsync(const Model::ListDataSourceSyncJobsRequest& request, const ListDataSourceSyncJobsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const;
/**
* Lists the data sources that you have created.
See Also:
AWS
* API Reference
*/
virtual Model::ListDataSourcesOutcome ListDataSources(const Model::ListDataSourcesRequest& request) const;
/**
* Lists the data sources that you have created.
See Also:
AWS
* API Reference
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::ListDataSourcesOutcomeCallable ListDataSourcesCallable(const Model::ListDataSourcesRequest& request) const;
/**
* Lists the data sources that you have created.
See Also:
AWS
* API Reference
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void ListDataSourcesAsync(const Model::ListDataSourcesRequest& request, const ListDataSourcesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const;
/**
* Gets a list of FAQ lists associated with an index.
See Also:
* AWS
* API Reference
*/
virtual Model::ListFaqsOutcome ListFaqs(const Model::ListFaqsRequest& request) const;
/**
* Gets a list of FAQ lists associated with an index.
See Also:
* AWS
* API Reference
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::ListFaqsOutcomeCallable ListFaqsCallable(const Model::ListFaqsRequest& request) const;
/**
* Gets a list of FAQ lists associated with an index.
See Also:
* AWS
* API Reference
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void ListFaqsAsync(const Model::ListFaqsRequest& request, const ListFaqsResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const;
/**
* Lists the Amazon Kendra indexes that you have created.
See
* Also:
AWS
* API Reference
*/
virtual Model::ListIndicesOutcome ListIndices(const Model::ListIndicesRequest& request) const;
/**
* Lists the Amazon Kendra indexes that you have created.
See
* Also:
AWS
* API Reference
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::ListIndicesOutcomeCallable ListIndicesCallable(const Model::ListIndicesRequest& request) const;
/**
* Lists the Amazon Kendra indexes that you have created.
See
* Also:
AWS
* API Reference
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void ListIndicesAsync(const Model::ListIndicesRequest& request, const ListIndicesResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const;
/**
* Gets a list of tags associated with a specified resource. Indexes, FAQs, and
* data sources can have tags associated with them.
See Also:
AWS
* API Reference
*/
virtual Model::ListTagsForResourceOutcome ListTagsForResource(const Model::ListTagsForResourceRequest& request) const;
/**
* Gets a list of tags associated with a specified resource. Indexes, FAQs, and
* data sources can have tags associated with them.
See Also:
AWS
* API Reference
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::ListTagsForResourceOutcomeCallable ListTagsForResourceCallable(const Model::ListTagsForResourceRequest& request) const;
/**
* Gets a list of tags associated with a specified resource. Indexes, FAQs, and
* data sources can have tags associated with them.
See Also:
AWS
* API Reference
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void ListTagsForResourceAsync(const Model::ListTagsForResourceRequest& request, const ListTagsForResourceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const;
/**
* Searches an active index. Use this API to search your documents using query.
* The Query operation enables to do faceted search and to filter
* results based on document attributes.
It also enables you to provide user
* context that Amazon Kendra uses to enforce document access control in the search
* results.
Amazon Kendra searches your index for text content and question
* and answer (FAQ) content. By default the response contains three types of
* results.
-
Relevant passages
-
Matching FAQs
* -
Relevant documents
You can specify that the
* query return only one type of result using the
* QueryResultTypeConfig parameter.
See Also:
AWS API
* Reference
*/
virtual Model::QueryOutcome Query(const Model::QueryRequest& request) const;
/**
* Searches an active index. Use this API to search your documents using query.
* The Query operation enables to do faceted search and to filter
* results based on document attributes.
It also enables you to provide user
* context that Amazon Kendra uses to enforce document access control in the search
* results.
Amazon Kendra searches your index for text content and question
* and answer (FAQ) content. By default the response contains three types of
* results.
-
Relevant passages
-
Matching FAQs
* -
Relevant documents
You can specify that the
* query return only one type of result using the
* QueryResultTypeConfig parameter.
See Also:
AWS API
* Reference
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::QueryOutcomeCallable QueryCallable(const Model::QueryRequest& request) const;
/**
* Searches an active index. Use this API to search your documents using query.
* The Query operation enables to do faceted search and to filter
* results based on document attributes.
It also enables you to provide user
* context that Amazon Kendra uses to enforce document access control in the search
* results.
Amazon Kendra searches your index for text content and question
* and answer (FAQ) content. By default the response contains three types of
* results.
-
Relevant passages
-
Matching FAQs
* -
Relevant documents
You can specify that the
* query return only one type of result using the
* QueryResultTypeConfig parameter.
See Also:
AWS API
* Reference
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void QueryAsync(const Model::QueryRequest& request, const QueryResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const;
/**
* Starts a synchronization job for a data source. If a synchronization job is
* already in progress, Amazon Kendra returns a ResourceInUseException
* exception.
See Also:
AWS
* API Reference
*/
virtual Model::StartDataSourceSyncJobOutcome StartDataSourceSyncJob(const Model::StartDataSourceSyncJobRequest& request) const;
/**
* Starts a synchronization job for a data source. If a synchronization job is
* already in progress, Amazon Kendra returns a ResourceInUseException
* exception.
See Also:
AWS
* API Reference
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::StartDataSourceSyncJobOutcomeCallable StartDataSourceSyncJobCallable(const Model::StartDataSourceSyncJobRequest& request) const;
/**
* Starts a synchronization job for a data source. If a synchronization job is
* already in progress, Amazon Kendra returns a ResourceInUseException
* exception.
See Also:
AWS
* API Reference
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void StartDataSourceSyncJobAsync(const Model::StartDataSourceSyncJobRequest& request, const StartDataSourceSyncJobResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const;
/**
* Stops a running synchronization job. You can't stop a scheduled
* synchronization job.
See Also:
AWS
* API Reference
*/
virtual Model::StopDataSourceSyncJobOutcome StopDataSourceSyncJob(const Model::StopDataSourceSyncJobRequest& request) const;
/**
* Stops a running synchronization job. You can't stop a scheduled
* synchronization job.
See Also:
AWS
* API Reference
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::StopDataSourceSyncJobOutcomeCallable StopDataSourceSyncJobCallable(const Model::StopDataSourceSyncJobRequest& request) const;
/**
* Stops a running synchronization job. You can't stop a scheduled
* synchronization job.
See Also:
AWS
* API Reference
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void StopDataSourceSyncJobAsync(const Model::StopDataSourceSyncJobRequest& request, const StopDataSourceSyncJobResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const;
/**
* Enables you to provide feedback to Amazon Kendra to improve the performance
* of the service.
See Also:
AWS
* API Reference
*/
virtual Model::SubmitFeedbackOutcome SubmitFeedback(const Model::SubmitFeedbackRequest& request) const;
/**
* Enables you to provide feedback to Amazon Kendra to improve the performance
* of the service.
See Also:
AWS
* API Reference
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::SubmitFeedbackOutcomeCallable SubmitFeedbackCallable(const Model::SubmitFeedbackRequest& request) const;
/**
* Enables you to provide feedback to Amazon Kendra to improve the performance
* of the service.
See Also:
AWS
* API Reference
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void SubmitFeedbackAsync(const Model::SubmitFeedbackRequest& request, const SubmitFeedbackResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const;
/**
* Adds the specified tag to the specified index, FAQ, or data source resource.
* If the tag already exists, the existing value is replaced with the new
* value.
See Also:
AWS
* API Reference
*/
virtual Model::TagResourceOutcome TagResource(const Model::TagResourceRequest& request) const;
/**
* Adds the specified tag to the specified index, FAQ, or data source resource.
* If the tag already exists, the existing value is replaced with the new
* value.
See Also:
AWS
* API Reference
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::TagResourceOutcomeCallable TagResourceCallable(const Model::TagResourceRequest& request) const;
/**
* Adds the specified tag to the specified index, FAQ, or data source resource.
* If the tag already exists, the existing value is replaced with the new
* value.
See Also:
AWS
* API Reference
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void TagResourceAsync(const Model::TagResourceRequest& request, const TagResourceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const;
/**
* Removes a tag from an index, FAQ, or a data source.
See Also:
* AWS
* API Reference
*/
virtual Model::UntagResourceOutcome UntagResource(const Model::UntagResourceRequest& request) const;
/**
* Removes a tag from an index, FAQ, or a data source.
See Also:
* AWS
* API Reference
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::UntagResourceOutcomeCallable UntagResourceCallable(const Model::UntagResourceRequest& request) const;
/**
* Removes a tag from an index, FAQ, or a data source.
See Also:
* AWS
* API Reference
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void UntagResourceAsync(const Model::UntagResourceRequest& request, const UntagResourceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const;
/**
* Updates an existing Amazon Kendra data source.
See Also:
AWS
* API Reference
*/
virtual Model::UpdateDataSourceOutcome UpdateDataSource(const Model::UpdateDataSourceRequest& request) const;
/**
* Updates an existing Amazon Kendra data source.
See Also:
AWS
* API Reference
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::UpdateDataSourceOutcomeCallable UpdateDataSourceCallable(const Model::UpdateDataSourceRequest& request) const;
/**
* Updates an existing Amazon Kendra data source.
See Also:
AWS
* API Reference
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void UpdateDataSourceAsync(const Model::UpdateDataSourceRequest& request, const UpdateDataSourceResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const;
/**
* Updates an existing Amazon Kendra index.
See Also:
AWS
* API Reference
*/
virtual Model::UpdateIndexOutcome UpdateIndex(const Model::UpdateIndexRequest& request) const;
/**
* Updates an existing Amazon Kendra index.
See Also:
AWS
* API Reference
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::UpdateIndexOutcomeCallable UpdateIndexCallable(const Model::UpdateIndexRequest& request) const;
/**
* Updates an existing Amazon Kendra index.
See Also:
AWS
* API Reference
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void UpdateIndexAsync(const Model::UpdateIndexRequest& request, const UpdateIndexResponseReceivedHandler& handler, const std::shared_ptr& context = nullptr) const;
void OverrideEndpoint(const Aws::String& endpoint);
private:
void init(const Aws::Client::ClientConfiguration& clientConfiguration);
void BatchDeleteDocumentAsyncHelper(const Model::BatchDeleteDocumentRequest& request, const BatchDeleteDocumentResponseReceivedHandler& handler, const std::shared_ptr& context) const;
void BatchPutDocumentAsyncHelper(const Model::BatchPutDocumentRequest& request, const BatchPutDocumentResponseReceivedHandler& handler, const std::shared_ptr& context) const;
void CreateDataSourceAsyncHelper(const Model::CreateDataSourceRequest& request, const CreateDataSourceResponseReceivedHandler& handler, const std::shared_ptr& context) const;
void CreateFaqAsyncHelper(const Model::CreateFaqRequest& request, const CreateFaqResponseReceivedHandler& handler, const std::shared_ptr& context) const;
void CreateIndexAsyncHelper(const Model::CreateIndexRequest& request, const CreateIndexResponseReceivedHandler& handler, const std::shared_ptr& context) const;
void DeleteDataSourceAsyncHelper(const Model::DeleteDataSourceRequest& request, const DeleteDataSourceResponseReceivedHandler& handler, const std::shared_ptr& context) const;
void DeleteFaqAsyncHelper(const Model::DeleteFaqRequest& request, const DeleteFaqResponseReceivedHandler& handler, const std::shared_ptr& context) const;
void DeleteIndexAsyncHelper(const Model::DeleteIndexRequest& request, const DeleteIndexResponseReceivedHandler& handler, const std::shared_ptr& context) const;
void DescribeDataSourceAsyncHelper(const Model::DescribeDataSourceRequest& request, const DescribeDataSourceResponseReceivedHandler& handler, const std::shared_ptr& context) const;
void DescribeFaqAsyncHelper(const Model::DescribeFaqRequest& request, const DescribeFaqResponseReceivedHandler& handler, const std::shared_ptr& context) const;
void DescribeIndexAsyncHelper(const Model::DescribeIndexRequest& request, const DescribeIndexResponseReceivedHandler& handler, const std::shared_ptr& context) const;
void ListDataSourceSyncJobsAsyncHelper(const Model::ListDataSourceSyncJobsRequest& request, const ListDataSourceSyncJobsResponseReceivedHandler& handler, const std::shared_ptr& context) const;
void ListDataSourcesAsyncHelper(const Model::ListDataSourcesRequest& request, const ListDataSourcesResponseReceivedHandler& handler, const std::shared_ptr& context) const;
void ListFaqsAsyncHelper(const Model::ListFaqsRequest& request, const ListFaqsResponseReceivedHandler& handler, const std::shared_ptr& context) const;
void ListIndicesAsyncHelper(const Model::ListIndicesRequest& request, const ListIndicesResponseReceivedHandler& handler, const std::shared_ptr& context) const;
void ListTagsForResourceAsyncHelper(const Model::ListTagsForResourceRequest& request, const ListTagsForResourceResponseReceivedHandler& handler, const std::shared_ptr& context) const;
void QueryAsyncHelper(const Model::QueryRequest& request, const QueryResponseReceivedHandler& handler, const std::shared_ptr& context) const;
void StartDataSourceSyncJobAsyncHelper(const Model::StartDataSourceSyncJobRequest& request, const StartDataSourceSyncJobResponseReceivedHandler& handler, const std::shared_ptr& context) const;
void StopDataSourceSyncJobAsyncHelper(const Model::StopDataSourceSyncJobRequest& request, const StopDataSourceSyncJobResponseReceivedHandler& handler, const std::shared_ptr& context) const;
void SubmitFeedbackAsyncHelper(const Model::SubmitFeedbackRequest& request, const SubmitFeedbackResponseReceivedHandler& handler, const std::shared_ptr& context) const;
void TagResourceAsyncHelper(const Model::TagResourceRequest& request, const TagResourceResponseReceivedHandler& handler, const std::shared_ptr& context) const;
void UntagResourceAsyncHelper(const Model::UntagResourceRequest& request, const UntagResourceResponseReceivedHandler& handler, const std::shared_ptr& context) const;
void UpdateDataSourceAsyncHelper(const Model::UpdateDataSourceRequest& request, const UpdateDataSourceResponseReceivedHandler& handler, const std::shared_ptr& context) const;
void UpdateIndexAsyncHelper(const Model::UpdateIndexRequest& request, const UpdateIndexResponseReceivedHandler& handler, const std::shared_ptr& context) const;
Aws::String m_uri;
Aws::String m_configScheme;
std::shared_ptr m_executor;
};
} // namespace kendra
} // namespace Aws