From 104b8bea02e626b2d80009b9a91deb712ef8bcd0 Mon Sep 17 00:00:00 2001 From: awstools Date: Thu, 30 Jun 2022 20:20:32 +0000 Subject: [PATCH] feat(client-kendra): Amazon Kendra now provides a data source connector for alfresco --- clients/client-kendra/src/Kendra.ts | 25 +- .../src/commands/BatchPutDocumentCommand.ts | 3 + .../src/commands/CreateDataSourceCommand.ts | 4 + .../src/commands/CreateExperienceCommand.ts | 3 +- .../src/commands/CreateFaqCommand.ts | 3 + .../src/commands/CreateIndexCommand.ts | 6 +- .../CreateQuerySuggestionsBlockListCommand.ts | 3 + .../src/commands/CreateThesaurusCommand.ts | 3 + clients/client-kendra/src/models/models_0.ts | 430 ++++++++++++------ .../src/protocols/Aws_json1_1.ts | 119 +++++ codegen/sdk-codegen/aws-models/kendra.json | 227 +++++++-- 11 files changed, 636 insertions(+), 190 deletions(-) diff --git a/clients/client-kendra/src/Kendra.ts b/clients/client-kendra/src/Kendra.ts index 2519acb1d36d..fc2f133ec2e1 100644 --- a/clients/client-kendra/src/Kendra.ts +++ b/clients/client-kendra/src/Kendra.ts @@ -404,6 +404,9 @@ export class Kendra extends KendraClient { *

The documents are indexed asynchronously. You can see the progress of * the batch using Amazon Web Services CloudWatch. Any error messages related to processing * the batch are sent to your Amazon Web Services CloudWatch log.

+ *

For an example of ingesting inline documents using Python and Java SDKs, + * see Adding + * files directly to an index.

*/ public batchPutDocument( args: BatchPutDocumentCommandInput, @@ -486,6 +489,10 @@ export class Kendra extends KendraClient { * Otherwise, an exception is raised.

*

Amazon S3 and custom data sources are * the only supported data sources in the Amazon Web Services GovCloud (US-West) region.

+ *

For an example of creating an index and data source using the Python SDK, + * see Getting + * started with Python SDK. For an example of creating an index and data + * source using the Java SDK, see Getting started with Java SDK.

*/ public createDataSource( args: CreateDataSourceCommandInput, @@ -518,7 +525,8 @@ export class Kendra extends KendraClient { /** *

Creates an Amazon Kendra experience such as a search application. For more information - * on creating a search application experience, see Building a + * on creating a search application experience, including using the Python and Java SDKs, + * see Building a * search experience with no code.

*/ public createExperience( @@ -553,6 +561,9 @@ export class Kendra extends KendraClient { /** *

Creates an new set of frequently asked question (FAQ) questions and answers.

*

Adding FAQs to an index is an asynchronous operation.

+ *

For an example of adding an FAQ to an index using Python and Java SDKs, + * see Using you + * FAQ file.

*/ public createFaq(args: CreateFaqCommandInput, options?: __HttpHandlerOptions): Promise; public createFaq(args: CreateFaqCommandInput, cb: (err: any, data?: CreateFaqCommandOutput) => void): void; @@ -585,7 +596,11 @@ export class Kendra extends KendraClient { * ACTIVE when the index is ready to use.

*

Once the index is active you can index your documents using the * BatchPutDocument API or using one of the supported - * data sources.

+ * data sources.

+ *

For an example of creating an index and data source using the Python SDK, + * see Getting + * started with Python SDK. For an example of creating an index and data + * source using the Java SDK, see Getting started with Java SDK.

*/ public createIndex(args: CreateIndexCommandInput, options?: __HttpHandlerOptions): Promise; public createIndex(args: CreateIndexCommandInput, cb: (err: any, data?: CreateIndexCommandOutput) => void): void; @@ -623,6 +638,9 @@ export class Kendra extends KendraClient { *

* CreateQuerySuggestionsBlockList is currently not supported in the * Amazon Web Services GovCloud (US-West) region.

+ *

For an example of creating a block list for query suggestions using the + * Python SDK, see Query + * suggestions block list.

*/ public createQuerySuggestionsBlockList( args: CreateQuerySuggestionsBlockListCommandInput, @@ -656,6 +674,9 @@ export class Kendra extends KendraClient { /** *

Creates a thesaurus for an index. The thesaurus * contains a list of synonyms in Solr format.

+ *

For an example of adding a thesaurus file to an index, see + * Adding + * custom synonyms to an index.

*/ public createThesaurus( args: CreateThesaurusCommandInput, diff --git a/clients/client-kendra/src/commands/BatchPutDocumentCommand.ts b/clients/client-kendra/src/commands/BatchPutDocumentCommand.ts index 29be7109aeef..ff5bc38df3cb 100644 --- a/clients/client-kendra/src/commands/BatchPutDocumentCommand.ts +++ b/clients/client-kendra/src/commands/BatchPutDocumentCommand.ts @@ -32,6 +32,9 @@ export interface BatchPutDocumentCommandOutput extends BatchPutDocumentResponse, *

The documents are indexed asynchronously. You can see the progress of * the batch using Amazon Web Services CloudWatch. Any error messages related to processing * the batch are sent to your Amazon Web Services CloudWatch log.

+ *

For an example of ingesting inline documents using Python and Java SDKs, + * see Adding + * files directly to an index.

* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript diff --git a/clients/client-kendra/src/commands/CreateDataSourceCommand.ts b/clients/client-kendra/src/commands/CreateDataSourceCommand.ts index 0eff45bd2d62..be4d640a2818 100644 --- a/clients/client-kendra/src/commands/CreateDataSourceCommand.ts +++ b/clients/client-kendra/src/commands/CreateDataSourceCommand.ts @@ -33,6 +33,10 @@ export interface CreateDataSourceCommandOutput extends CreateDataSourceResponse, * Otherwise, an exception is raised.

*

Amazon S3 and custom data sources are * the only supported data sources in the Amazon Web Services GovCloud (US-West) region.

+ *

For an example of creating an index and data source using the Python SDK, + * see Getting + * started with Python SDK. For an example of creating an index and data + * source using the Java SDK, see Getting started with Java SDK.

* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript diff --git a/clients/client-kendra/src/commands/CreateExperienceCommand.ts b/clients/client-kendra/src/commands/CreateExperienceCommand.ts index 1d509f4bb519..658d3d08131b 100644 --- a/clients/client-kendra/src/commands/CreateExperienceCommand.ts +++ b/clients/client-kendra/src/commands/CreateExperienceCommand.ts @@ -24,7 +24,8 @@ export interface CreateExperienceCommandOutput extends CreateExperienceResponse, /** *

Creates an Amazon Kendra experience such as a search application. For more information - * on creating a search application experience, see Building a + * on creating a search application experience, including using the Python and Java SDKs, + * see Building a * search experience with no code.

* @example * Use a bare-bones client and the command you need to make an API call. diff --git a/clients/client-kendra/src/commands/CreateFaqCommand.ts b/clients/client-kendra/src/commands/CreateFaqCommand.ts index 10ce50fc8729..9a79eb9e7d86 100644 --- a/clients/client-kendra/src/commands/CreateFaqCommand.ts +++ b/clients/client-kendra/src/commands/CreateFaqCommand.ts @@ -22,6 +22,9 @@ export interface CreateFaqCommandOutput extends CreateFaqResponse, __MetadataBea /** *

Creates an new set of frequently asked question (FAQ) questions and answers.

*

Adding FAQs to an index is an asynchronous operation.

+ *

For an example of adding an FAQ to an index using Python and Java SDKs, + * see Using you + * FAQ file.

* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript diff --git a/clients/client-kendra/src/commands/CreateIndexCommand.ts b/clients/client-kendra/src/commands/CreateIndexCommand.ts index 47504d17a21c..f6984f1f2257 100644 --- a/clients/client-kendra/src/commands/CreateIndexCommand.ts +++ b/clients/client-kendra/src/commands/CreateIndexCommand.ts @@ -30,7 +30,11 @@ export interface CreateIndexCommandOutput extends CreateIndexResponse, __Metadat * ACTIVE when the index is ready to use.

*

Once the index is active you can index your documents using the * BatchPutDocument API or using one of the supported - * data sources.

+ * data sources.

+ *

For an example of creating an index and data source using the Python SDK, + * see Getting + * started with Python SDK. For an example of creating an index and data + * source using the Java SDK, see Getting started with Java SDK.

* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript diff --git a/clients/client-kendra/src/commands/CreateQuerySuggestionsBlockListCommand.ts b/clients/client-kendra/src/commands/CreateQuerySuggestionsBlockListCommand.ts index ed1d33826534..8d9f27cddb90 100644 --- a/clients/client-kendra/src/commands/CreateQuerySuggestionsBlockListCommand.ts +++ b/clients/client-kendra/src/commands/CreateQuerySuggestionsBlockListCommand.ts @@ -37,6 +37,9 @@ export interface CreateQuerySuggestionsBlockListCommandOutput *

* CreateQuerySuggestionsBlockList is currently not supported in the * Amazon Web Services GovCloud (US-West) region.

+ *

For an example of creating a block list for query suggestions using the + * Python SDK, see Query + * suggestions block list.

* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript diff --git a/clients/client-kendra/src/commands/CreateThesaurusCommand.ts b/clients/client-kendra/src/commands/CreateThesaurusCommand.ts index e681e74fada8..c22428172a11 100644 --- a/clients/client-kendra/src/commands/CreateThesaurusCommand.ts +++ b/clients/client-kendra/src/commands/CreateThesaurusCommand.ts @@ -25,6 +25,9 @@ export interface CreateThesaurusCommandOutput extends CreateThesaurusResponse, _ /** *

Creates a thesaurus for an index. The thesaurus * contains a list of synonyms in Solr format.

+ *

For an example of adding a thesaurus file to an index, see + * Adding + * custom synonyms to an index.

* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript diff --git a/clients/client-kendra/src/models/models_0.ts b/clients/client-kendra/src/models/models_0.ts index 5869a6d9c8ed..b662ad1fcc62 100644 --- a/clients/client-kendra/src/models/models_0.ts +++ b/clients/client-kendra/src/models/models_0.ts @@ -192,6 +192,219 @@ export namespace AdditionalResultAttribute { }); } +/** + *

Maps a column or attribute in the data source to an index field. + * You must first create the fields in the index using the + * UpdateIndex API.

+ */ +export interface DataSourceToIndexFieldMapping { + /** + *

The name of the column or attribute in the data source.

+ */ + DataSourceFieldName: string | undefined; + + /** + *

The type of data stored in the column or attribute.

+ */ + DateFieldFormat?: string; + + /** + *

The name of the field in the index.

+ */ + IndexFieldName: string | undefined; +} + +export namespace DataSourceToIndexFieldMapping { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DataSourceToIndexFieldMapping): any => ({ + ...obj, + }); +} + +export enum AlfrescoEntity { + blog = "blog", + documentLibrary = "documentLibrary", + wiki = "wiki", +} + +/** + *

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

+ */ +export interface S3Path { + /** + *

The name of the S3 bucket that contains the file.

+ */ + Bucket: string | undefined; + + /** + *

The name of the file.

+ */ + Key: string | undefined; +} + +export namespace S3Path { + /** + * @internal + */ + export const filterSensitiveLog = (obj: S3Path): any => ({ + ...obj, + }); +} + +/** + *

Provides the configuration information to connect to an Amazon VPC.

+ */ +export interface DataSourceVpcConfiguration { + /** + *

A list of identifiers for subnets within your Amazon VPC. The + * subnets should be able to connect to each other in the VPC, and they + * should have outgoing access to the Internet through a NAT + * device.

+ */ + SubnetIds: string[] | undefined; + + /** + *

A list of identifiers of security groups within your Amazon VPC. + * The security groups should enable Amazon Kendra to connect to the data + * source.

+ */ + SecurityGroupIds: string[] | undefined; +} + +export namespace DataSourceVpcConfiguration { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DataSourceVpcConfiguration): any => ({ + ...obj, + }); +} + +/** + *

Provides the configuration information to connect to Alfresco as your + * data source.

+ */ +export interface AlfrescoConfiguration { + /** + *

The URL of the Alfresco site. For example, https://hostname:8080.

+ */ + SiteUrl: string | undefined; + + /** + *

The identifier of the Alfresco site. For example, my-site.

+ */ + SiteId: string | undefined; + + /** + *

The Amazon Resource Name (ARN) of an Secrets Manager secret that + * contains the key-value pairs required to connect to your Alfresco + * data source. The secret must contain a JSON structure with the following keys:

+ *
    + *
  • + *

    username—The user name of the Alfresco account.

    + *
  • + *
  • + *

    password—The password of the Alfresco account.

    + *
  • + *
+ */ + SecretArn: string | undefined; + + /** + *

The path to the SSL certificate stored in an Amazon S3 bucket. You + * use this to connect to Alfresco.

+ */ + SslCertificateS3Path: S3Path | undefined; + + /** + *

+ * TRUE to index shared files.

+ */ + CrawlSystemFolders?: boolean; + + /** + *

+ * TRUE to index comments of wikis and blogs.

+ */ + CrawlComments?: boolean; + + /** + *

Specify whether to index document libraries, wikis, + * or blogs. You can specify one or more of these options.

+ */ + EntityFilter?: (AlfrescoEntity | string)[]; + + /** + *

A list of DataSourceToIndexFieldMapping objects that map attributes + * or field names of Alfresco document libraries to Amazon Kendra index field names. + * To create custom fields, use the UpdateIndex API before you map to Alfresco + * fields. For more information, see + * Mapping data source fields. The Alfresco data source field names + * must exist in your Alfresco custom metadata.

+ */ + DocumentLibraryFieldMappings?: DataSourceToIndexFieldMapping[]; + + /** + *

A list of DataSourceToIndexFieldMapping objects that map attributes + * or field names of Alfresco blogs to Amazon Kendra index field names. + * To create custom fields, use the UpdateIndex API before you map to Alfresco + * fields. For more information, see + * Mapping data source fields. The Alfresco data source field names + * must exist in your Alfresco custom metadata.

+ */ + BlogFieldMappings?: DataSourceToIndexFieldMapping[]; + + /** + *

A list of DataSourceToIndexFieldMapping objects that map attributes + * or field names of Alfresco wikis to Amazon Kendra index field names. + * To create custom fields, use the UpdateIndex API before you map to Alfresco + * fields. For more information, see + * Mapping data source fields. The Alfresco data source field names + * must exist in your Alfresco custom metadata.

+ */ + WikiFieldMappings?: DataSourceToIndexFieldMapping[]; + + /** + *

A list of regular expression patterns to include certain files + * in your Alfresco data source. Files that match + * the patterns are included in the index. Files that don't match the patterns + * are excluded from the index. If a file matches both an inclusion pattern + * and an exclusion pattern, the exclusion pattern takes precedence and the + * file isn't included in the index.

+ */ + InclusionPatterns?: string[]; + + /** + *

A list of regular expression patterns to exclude certain files + * in your Alfresco data source. Files that + * match the patterns are excluded from the index. Files that don't match + * the patterns are included in the index. If a file matches both an inclusion + * pattern and an exclusion pattern, the exclusion pattern takes precedence + * and the file isn't included in the index.

+ */ + ExclusionPatterns?: string[]; + + /** + *

Configuration information for an + * Amazon Virtual Private Cloud to connect to your Alfresco. For more information, + * see Configuring + * a VPC.

+ */ + VpcConfiguration?: DataSourceVpcConfiguration; +} + +export namespace AlfrescoConfiguration { + /** + * @internal + */ + export const filterSensitiveLog = (obj: AlfrescoConfiguration): any => ({ + ...obj, + }); +} + export enum EntityType { GROUP = "GROUP", USER = "USER", @@ -1253,31 +1466,6 @@ export namespace HierarchicalPrincipal { }); } -/** - *

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

- */ -export interface S3Path { - /** - *

The name of the S3 bucket that contains the file.

- */ - Bucket: string | undefined; - - /** - *

The name of the file.

- */ - Key: string | undefined; -} - -export namespace S3Path { - /** - * @internal - */ - export const filterSensitiveLog = (obj: S3Path): any => ({ - ...obj, - }); -} - /** *

A document in an index.

*/ @@ -1502,66 +1690,6 @@ export namespace ClearQuerySuggestionsRequest { }); } -/** - *

Maps a column or attribute in the data source to an index field. - * You must first create the fields in the index using the - * UpdateIndex API.

- */ -export interface DataSourceToIndexFieldMapping { - /** - *

The name of the column or attribute in the data source.

- */ - DataSourceFieldName: string | undefined; - - /** - *

The type of data stored in the column or attribute.

- */ - DateFieldFormat?: string; - - /** - *

The name of the field in the index.

- */ - IndexFieldName: string | undefined; -} - -export namespace DataSourceToIndexFieldMapping { - /** - * @internal - */ - export const filterSensitiveLog = (obj: DataSourceToIndexFieldMapping): any => ({ - ...obj, - }); -} - -/** - *

Provides the configuration information to connect to an Amazon VPC.

- */ -export interface DataSourceVpcConfiguration { - /** - *

A list of identifiers for subnets within your Amazon VPC. The - * subnets should be able to connect to each other in the VPC, and they - * should have outgoing access to the Internet through a NAT - * device.

- */ - SubnetIds: string[] | undefined; - - /** - *

A list of identifiers of security groups within your Amazon VPC. - * The security groups should enable Amazon Kendra to connect to the data - * source.

- */ - SecurityGroupIds: string[] | undefined; -} - -export namespace DataSourceVpcConfiguration { - /** - * @internal - */ - export const filterSensitiveLog = (obj: DataSourceVpcConfiguration): any => ({ - ...obj, - }); -} - /** *

Provides the configuration information to connect to Box as * your data source.

@@ -1763,8 +1891,8 @@ export namespace ConfluenceAttachmentToIndexFieldMapping { */ export interface ConfluenceAttachmentConfiguration { /** - *

Indicates whether Amazon Kendra indexes attachments to the pages and blogs - * in the Confluence data source.

+ *

+ * TRUE to index attachments of pages and blogs in Confluence.

*/ CrawlAttachments?: boolean; @@ -1925,7 +2053,7 @@ export namespace ConfluencePageToIndexFieldMapping { */ export interface ConfluencePageConfiguration { /** - *

>Maps attributes or field names of Confluence pages to Amazon Kendra index field + *

Maps attributes or field names of Confluence pages to Amazon Kendra index field * names. To create custom fields, use the UpdateIndex API before * you map to Confluence fields. * For more information, see Mapping data source fields. @@ -1995,7 +2123,8 @@ export namespace ConfluenceSpaceToIndexFieldMapping { */ export interface ConfluenceSpaceConfiguration { /** - *

Specifies whether Amazon Kendra should index personal spaces. Users can + *

+ * TRUE to index personal spaces. You can * add restrictions to items in personal spaces. If personal spaces are * indexed, queries without user context information may return * restricted items from a personal space in their results. For more @@ -2005,7 +2134,8 @@ export interface ConfluenceSpaceConfiguration { CrawlPersonalSpaces?: boolean; /** - *

Specifies whether Amazon Kendra should index archived spaces.

+ *

+ * TRUE to index archived spaces.

*/ CrawlArchivedSpaces?: boolean; @@ -2069,25 +2199,16 @@ export interface ConfluenceConfiguration { /** *

The Amazon Resource Name (ARN) of an Secrets Manager secret - * that contains the key-value pairs required to connect to your - * Confluence server. The secret must contain a JSON structure with the - * following keys:

- *
    - *
  • - *

    username—The user name or email address of a user with - * administrative privileges for the Confluence server.

    - *
  • - *
  • - *

    password—The password associated with the user logging - * in to the Confluence server.

    - *
  • - *
+ * that contains the user name and password required to connect to the + * Confluence instance. If you use Confluence cloud, you use a + * generated API token as the password. For more information, see + * Using a + * Confluemce data source.

*/ SecretArn: string | undefined; /** - *

Specifies the version of the Confluence installation that you are - * connecting to.

+ *

The version or the type of the Confluence installation to connect to.

*/ Version: ConfluenceVersion | string | undefined; @@ -2128,7 +2249,7 @@ export interface ConfluenceConfiguration { InclusionPatterns?: string[]; /** - *

>A list of regular expression patterns to exclude certain blog posts, pages, + *

A list of regular expression patterns to exclude certain blog posts, pages, * spaces, or attachments in your Confluence. Content that matches the patterns are * excluded from the index. Content that doesn't match the patterns is included in * the index. If content matches both an inclusion and exclusion pattern, the @@ -2498,7 +2619,8 @@ export interface OnPremiseConfiguration { OrganizationName: string | undefined; /** - *

Information required to find a specific file in an Amazon S3 bucket.

+ *

The path to the SSL certificate stored in an Amazon S3 bucket. + * You use this to connect to GitHub.

*/ SslCertificateS3Path: S3Path | undefined; } @@ -2828,30 +2950,31 @@ export enum IssueSubEntity { */ export interface JiraConfiguration { /** - *

The URL of the Jira account. For example, company.attlassian.net or - * https://jira.company.com. You can find your Jira account URL in the URL of - * your profile page for Jira desktop.

+ *

The URL of the Jira account. For example, company.atlassian.net + * or https://jira.company.com. You can find your Jira account URL in + * the URL of your profile page for Jira desktop.

*/ JiraAccountUrl: string | undefined; /** - *

The Amazon Resource Name (ARN) of an Secrets Manager secret that - * contains the key-value pairs required to connect to your Jira - * data source. The secret must - * contain a JSON structure with the following keys:

+ *

The Amazon Resource Name (ARN) of a secret in Secrets Manager contains the + * key-value pairs required to connect to your Jira data source. The secret must contain a + * JSON structure with the following keys:

*
    *
  • - *

    jira-id—The ID of the Jira account.

    + *

    jiraId—The Jira username.

    *
  • *
  • - *

    jiraCredentials—The password of the Jira account user.

    + *

    jiraCredentials—The Jira API token. For more information on creating an + * API token in Jira, see Authentication for a Jira data source.

    *
  • *
*/ SecretArn: string | undefined; /** - *

Specify to use the change log option to update your index.

+ *

+ * TRUE to use the Jira change log to determine which documents require updating in the index. Depending on the change log's size, it may take longer for Amazon Kendra to use the change log than to scan all of your documents in Jira.

*/ UseChangeLog?: boolean; @@ -3060,9 +3183,8 @@ export interface OneDriveConfiguration { FieldMappings?: DataSourceToIndexFieldMapping[]; /** - *

A Boolean value that specifies whether local - * groups are disabled (True) or enabled (False). - *

+ *

+ * TRUE to disable local groups information.

*/ DisableLocalGroups?: boolean; } @@ -3100,25 +3222,25 @@ export interface QuipConfiguration { SecretArn: string | undefined; /** - *

Specify whether to crawl file comments in Quip. - * You can specify one or more of these options.

+ *

+ * TRUE to index file comments.

*/ CrawlFileComments?: boolean; /** - *

Specify whether to crawl chat rooms in Quip. - * You can specify one or more of these options.

+ *

+ * TRUE to index the contents of chat rooms.

*/ CrawlChatRooms?: boolean; /** - *

Specify whether to crawl attachments in Quip. - * You can specify one or more of these options.

+ *

+ * TRUE to index attachments.

*/ CrawlAttachments?: boolean; /** - *

The identifier of the Quip folder IDs to index.

+ *

The identifier of the Quip folders you want to index.

*/ FolderIds?: string[]; @@ -3836,7 +3958,10 @@ export interface ServiceNowConfiguration { /** *

The Amazon Resource Name (ARN) of the Secrets Manager secret * that contains the user name and password required to connect to the - * ServiceNow instance.

+ * ServiceNow instance. You can also provide OAuth authentication credentials + * of user name, password, client ID, and client secret. For more information, + * see Authentication + * for a ServiceNow data source.

*/ SecretArn: string | undefined; @@ -3897,35 +4022,29 @@ export enum SharePointVersion { */ export interface SharePointConfiguration { /** - *

The version of Microsoft SharePoint that you are using as a data - * source.

+ *

The version of Microsoft SharePoint that you use.

*/ SharePointVersion: SharePointVersion | string | undefined; /** - *

The URLs of the Microsoft SharePoint site that contains the - * documents that should be indexed.

+ *

The Microsoft SharePoint site URLs for the documents you want to indext.

*/ Urls: string[] | undefined; /** - *

The Amazon Resource Name (ARN) of credentials stored in - * Secrets Manager. The credentials should be a user/password pair. + *

The Amazon Resource Name (ARN) of an Secrets Manager + * secret that contains the user name and password required to + * connect to the SharePoint instance. * If you use SharePoint Server, you also need to provide the sever * domain name as part of the credentials. For * more information, see Using a - * Microsoft SharePoint Data Source. For more information - * about Secrets Manager see What Is - * Secrets Manager in the Secrets Manager - * user guide.

+ * Microsoft SharePoint Data Source.

*/ SecretArn: string | undefined; /** *

- * TRUE to include attachments to documents stored in - * your Microsoft SharePoint site in the index; otherwise, - * FALSE.

+ * TRUE to index document attachments.

*/ CrawlAttachments?: boolean; @@ -3944,7 +4063,7 @@ export interface SharePointConfiguration { * don't match the patterns are excluded from the index. If a document matches both * an inclusion and exclusion pattern, the exclusion pattern takes precedence and the * document isn't included in the index.

- *

The regex is applied to the display URL of the SharePoint + *

The regex applies to the display URL of the SharePoint * document.

*/ InclusionPatterns?: string[]; @@ -3955,13 +4074,16 @@ export interface SharePointConfiguration { * don't match the patterns are included in the index. If a document matches both * an inclusion and exclusion pattern, the exclusion pattern takes precedence and the * document isn't included in the index.

- *

The regex is applied to the display URL of the SharePoint + *

The regex applies to the display URL of the SharePoint * document.

*/ ExclusionPatterns?: string[]; /** - *

Provides the configuration information to connect to an Amazon VPC.

+ *

Configuration information for an Amazon Virtual Private Cloud to connect + * to your Microsoft SharePoint. For more information, see + * Configuring + * a VPC.

*/ VpcConfiguration?: DataSourceVpcConfiguration; @@ -3981,15 +4103,14 @@ export interface SharePointConfiguration { DocumentTitleFieldName?: string; /** - *

A Boolean value that specifies whether local - * groups are disabled (True) or enabled (False). - *

+ *

+ * TRUE to disable local groups information.

*/ DisableLocalGroups?: boolean; /** - *

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

+ *

The path to the SSL certificate stored in an Amazon S3 bucket. You use + * this to connect to SharePoint.

*/ SslCertificateS3Path?: S3Path; } @@ -4594,6 +4715,12 @@ export interface DataSourceConfiguration { * your data source.

*/ GitHubConfiguration?: GitHubConfiguration; + + /** + *

Provides the configuration information to connect to Alfresco as your + * data source.

+ */ + AlfrescoConfiguration?: AlfrescoConfiguration; } export namespace DataSourceConfiguration { @@ -4634,6 +4761,7 @@ export namespace Tag { } export enum DataSourceType { + ALFRESCO = "ALFRESCO", BOX = "BOX", CONFLUENCE = "CONFLUENCE", CUSTOM = "CUSTOM", @@ -6045,7 +6173,7 @@ export interface CapacityUnitsConfiguration { /** *

The amount of extra storage capacity for an index. * A single capacity unit provides 30 GB of storage space or 100,000 documents, - * whichever is reached first.

+ * whichever is reached first. You can add up to 100 extra capacity units.

*/ StorageCapacityUnits: number | undefined; @@ -6054,7 +6182,7 @@ export interface CapacityUnitsConfiguration { * GetQuerySuggestions * capacity.

*

A single extra capacity unit for an index provides 0.1 queries per second or approximately - * 8,000 queries per day.

+ * 8,000 queries per day. You can add up to 100 extra capacity units.

*

* GetQuerySuggestions capacity is five times the * provisioned query capacity for an index, or the base capacity of 2.5 calls per second, diff --git a/clients/client-kendra/src/protocols/Aws_json1_1.ts b/clients/client-kendra/src/protocols/Aws_json1_1.ts index 9969bc824e2e..2501bafb5631 100644 --- a/clients/client-kendra/src/protocols/Aws_json1_1.ts +++ b/clients/client-kendra/src/protocols/Aws_json1_1.ts @@ -154,6 +154,8 @@ import { AclConfiguration, AdditionalResultAttribute, AdditionalResultAttributeValue, + AlfrescoConfiguration, + AlfrescoEntity, AssociateEntitiesToExperienceRequest, AssociateEntitiesToExperienceResponse, AssociatePersonasToEntitiesRequest, @@ -4424,6 +4426,50 @@ const serializeAws_json1_1AclConfiguration = (input: AclConfiguration, context: }; }; +const serializeAws_json1_1AlfrescoConfiguration = (input: AlfrescoConfiguration, context: __SerdeContext): any => { + return { + ...(input.BlogFieldMappings !== undefined && + input.BlogFieldMappings !== null && { + BlogFieldMappings: serializeAws_json1_1DataSourceToIndexFieldMappingList(input.BlogFieldMappings, context), + }), + ...(input.CrawlComments !== undefined && input.CrawlComments !== null && { CrawlComments: input.CrawlComments }), + ...(input.CrawlSystemFolders !== undefined && + input.CrawlSystemFolders !== null && { CrawlSystemFolders: input.CrawlSystemFolders }), + ...(input.DocumentLibraryFieldMappings !== undefined && + input.DocumentLibraryFieldMappings !== null && { + DocumentLibraryFieldMappings: serializeAws_json1_1DataSourceToIndexFieldMappingList( + input.DocumentLibraryFieldMappings, + context + ), + }), + ...(input.EntityFilter !== undefined && + input.EntityFilter !== null && { EntityFilter: serializeAws_json1_1EntityFilter(input.EntityFilter, context) }), + ...(input.ExclusionPatterns !== undefined && + input.ExclusionPatterns !== null && { + ExclusionPatterns: serializeAws_json1_1DataSourceInclusionsExclusionsStrings(input.ExclusionPatterns, context), + }), + ...(input.InclusionPatterns !== undefined && + input.InclusionPatterns !== null && { + InclusionPatterns: serializeAws_json1_1DataSourceInclusionsExclusionsStrings(input.InclusionPatterns, context), + }), + ...(input.SecretArn !== undefined && input.SecretArn !== null && { SecretArn: input.SecretArn }), + ...(input.SiteId !== undefined && input.SiteId !== null && { SiteId: input.SiteId }), + ...(input.SiteUrl !== undefined && input.SiteUrl !== null && { SiteUrl: input.SiteUrl }), + ...(input.SslCertificateS3Path !== undefined && + input.SslCertificateS3Path !== null && { + SslCertificateS3Path: serializeAws_json1_1S3Path(input.SslCertificateS3Path, context), + }), + ...(input.VpcConfiguration !== undefined && + input.VpcConfiguration !== null && { + VpcConfiguration: serializeAws_json1_1DataSourceVpcConfiguration(input.VpcConfiguration, context), + }), + ...(input.WikiFieldMappings !== undefined && + input.WikiFieldMappings !== null && { + WikiFieldMappings: serializeAws_json1_1DataSourceToIndexFieldMappingList(input.WikiFieldMappings, context), + }), + }; +}; + const serializeAws_json1_1AssociateEntitiesToExperienceRequest = ( input: AssociateEntitiesToExperienceRequest, context: __SerdeContext @@ -5135,6 +5181,10 @@ const serializeAws_json1_1DatabaseConfiguration = (input: DatabaseConfiguration, const serializeAws_json1_1DataSourceConfiguration = (input: DataSourceConfiguration, context: __SerdeContext): any => { return { + ...(input.AlfrescoConfiguration !== undefined && + input.AlfrescoConfiguration !== null && { + AlfrescoConfiguration: serializeAws_json1_1AlfrescoConfiguration(input.AlfrescoConfiguration, context), + }), ...(input.BoxConfiguration !== undefined && input.BoxConfiguration !== null && { BoxConfiguration: serializeAws_json1_1BoxConfiguration(input.BoxConfiguration, context), @@ -5688,6 +5738,17 @@ const serializeAws_json1_1EntityConfiguration = (input: EntityConfiguration, con }; }; +const serializeAws_json1_1EntityFilter = (input: (AlfrescoEntity | string)[], context: __SerdeContext): any => { + return input + .filter((e: any) => e != null) + .map((entry) => { + if (entry === null) { + return null as any; + } + return entry; + }); +}; + const serializeAws_json1_1EntityIdsList = (input: string[], context: __SerdeContext): any => { return input .filter((e: any) => e != null) @@ -7670,6 +7731,48 @@ const deserializeAws_json1_1AdditionalResultAttributeValue = ( } as any; }; +const deserializeAws_json1_1AlfrescoConfiguration = (output: any, context: __SerdeContext): AlfrescoConfiguration => { + return { + BlogFieldMappings: + output.BlogFieldMappings !== undefined && output.BlogFieldMappings !== null + ? deserializeAws_json1_1DataSourceToIndexFieldMappingList(output.BlogFieldMappings, context) + : undefined, + CrawlComments: __expectBoolean(output.CrawlComments), + CrawlSystemFolders: __expectBoolean(output.CrawlSystemFolders), + DocumentLibraryFieldMappings: + output.DocumentLibraryFieldMappings !== undefined && output.DocumentLibraryFieldMappings !== null + ? deserializeAws_json1_1DataSourceToIndexFieldMappingList(output.DocumentLibraryFieldMappings, context) + : undefined, + EntityFilter: + output.EntityFilter !== undefined && output.EntityFilter !== null + ? deserializeAws_json1_1EntityFilter(output.EntityFilter, context) + : undefined, + ExclusionPatterns: + output.ExclusionPatterns !== undefined && output.ExclusionPatterns !== null + ? deserializeAws_json1_1DataSourceInclusionsExclusionsStrings(output.ExclusionPatterns, context) + : undefined, + InclusionPatterns: + output.InclusionPatterns !== undefined && output.InclusionPatterns !== null + ? deserializeAws_json1_1DataSourceInclusionsExclusionsStrings(output.InclusionPatterns, context) + : undefined, + SecretArn: __expectString(output.SecretArn), + SiteId: __expectString(output.SiteId), + SiteUrl: __expectString(output.SiteUrl), + SslCertificateS3Path: + output.SslCertificateS3Path !== undefined && output.SslCertificateS3Path !== null + ? deserializeAws_json1_1S3Path(output.SslCertificateS3Path, context) + : undefined, + VpcConfiguration: + output.VpcConfiguration !== undefined && output.VpcConfiguration !== null + ? deserializeAws_json1_1DataSourceVpcConfiguration(output.VpcConfiguration, context) + : undefined, + WikiFieldMappings: + output.WikiFieldMappings !== undefined && output.WikiFieldMappings !== null + ? deserializeAws_json1_1DataSourceToIndexFieldMappingList(output.WikiFieldMappings, context) + : undefined, + } as any; +}; + const deserializeAws_json1_1AssociateEntitiesToExperienceFailedEntityList = ( output: any, context: __SerdeContext @@ -8313,6 +8416,10 @@ const deserializeAws_json1_1DataSourceConfiguration = ( context: __SerdeContext ): DataSourceConfiguration => { return { + AlfrescoConfiguration: + output.AlfrescoConfiguration !== undefined && output.AlfrescoConfiguration !== null + ? deserializeAws_json1_1AlfrescoConfiguration(output.AlfrescoConfiguration, context) + : undefined, BoxConfiguration: output.BoxConfiguration !== undefined && output.BoxConfiguration !== null ? deserializeAws_json1_1BoxConfiguration(output.BoxConfiguration, context) @@ -8970,6 +9077,18 @@ const deserializeAws_json1_1EntityDisplayData = (output: any, context: __SerdeCo } as any; }; +const deserializeAws_json1_1EntityFilter = (output: any, context: __SerdeContext): (AlfrescoEntity | string)[] => { + const retVal = (output || []) + .filter((e: any) => e != null) + .map((entry: any) => { + if (entry === null) { + return null as any; + } + return __expectString(entry) as any; + }); + return retVal; +}; + const deserializeAws_json1_1ExcludeMimeTypesList = (output: any, context: __SerdeContext): string[] => { const retVal = (output || []) .filter((e: any) => e != null) diff --git a/codegen/sdk-codegen/aws-models/kendra.json b/codegen/sdk-codegen/aws-models/kendra.json index 6e899ede2282..a20c82de0a98 100644 --- a/codegen/sdk-codegen/aws-models/kendra.json +++ b/codegen/sdk-codegen/aws-models/kendra.json @@ -317,6 +317,115 @@ ] } }, + "com.amazonaws.kendra#AlfrescoConfiguration": { + "type": "structure", + "members": { + "SiteUrl": { + "target": "com.amazonaws.kendra#SiteUrl", + "traits": { + "smithy.api#documentation": "

The URL of the Alfresco site. For example, https://hostname:8080.

", + "smithy.api#required": {} + } + }, + "SiteId": { + "target": "com.amazonaws.kendra#SiteId", + "traits": { + "smithy.api#documentation": "

The identifier of the Alfresco site. For example, my-site.

", + "smithy.api#required": {} + } + }, + "SecretArn": { + "target": "com.amazonaws.kendra#SecretArn", + "traits": { + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of an Secrets Manager secret that \n contains the key-value pairs required to connect to your Alfresco \n data source. The secret must contain a JSON structure with the following keys:

\n
    \n
  • \n

    username—The user name of the Alfresco account.

    \n
  • \n
  • \n

    password—The password of the Alfresco account.

    \n
  • \n
", + "smithy.api#required": {} + } + }, + "SslCertificateS3Path": { + "target": "com.amazonaws.kendra#S3Path", + "traits": { + "smithy.api#documentation": "

The path to the SSL certificate stored in an Amazon S3 bucket. You \n use this to connect to Alfresco.

", + "smithy.api#required": {} + } + }, + "CrawlSystemFolders": { + "target": "com.amazonaws.kendra#Boolean", + "traits": { + "smithy.api#documentation": "

\n TRUE to index shared files.

" + } + }, + "CrawlComments": { + "target": "com.amazonaws.kendra#Boolean", + "traits": { + "smithy.api#documentation": "

\n TRUE to index comments of wikis and blogs.

" + } + }, + "EntityFilter": { + "target": "com.amazonaws.kendra#EntityFilter", + "traits": { + "smithy.api#documentation": "

Specify whether to index document libraries, wikis, \n or blogs. You can specify one or more of these options.

" + } + }, + "DocumentLibraryFieldMappings": { + "target": "com.amazonaws.kendra#DataSourceToIndexFieldMappingList", + "traits": { + "smithy.api#documentation": "

A list of DataSourceToIndexFieldMapping objects that map attributes \n or field names of Alfresco document libraries to Amazon Kendra index field names. \n To create custom fields, use the UpdateIndex API before you map to Alfresco \n fields. For more information, see \n Mapping data source fields. The Alfresco data source field names \n must exist in your Alfresco custom metadata.

" + } + }, + "BlogFieldMappings": { + "target": "com.amazonaws.kendra#DataSourceToIndexFieldMappingList", + "traits": { + "smithy.api#documentation": "

A list of DataSourceToIndexFieldMapping objects that map attributes \n or field names of Alfresco blogs to Amazon Kendra index field names. \n To create custom fields, use the UpdateIndex API before you map to Alfresco \n fields. For more information, see \n Mapping data source fields. The Alfresco data source field names \n must exist in your Alfresco custom metadata.

" + } + }, + "WikiFieldMappings": { + "target": "com.amazonaws.kendra#DataSourceToIndexFieldMappingList", + "traits": { + "smithy.api#documentation": "

A list of DataSourceToIndexFieldMapping objects that map attributes \n or field names of Alfresco wikis to Amazon Kendra index field names. \n To create custom fields, use the UpdateIndex API before you map to Alfresco \n fields. For more information, see \n Mapping data source fields. The Alfresco data source field names \n must exist in your Alfresco custom metadata.

" + } + }, + "InclusionPatterns": { + "target": "com.amazonaws.kendra#DataSourceInclusionsExclusionsStrings", + "traits": { + "smithy.api#documentation": "

A list of regular expression patterns to include certain files \n in your Alfresco data source. Files that match \n the patterns are included in the index. Files that don't match the patterns \n are excluded from the index. If a file matches both an inclusion pattern \n and an exclusion pattern, the exclusion pattern takes precedence and the \n file isn't included in the index.

" + } + }, + "ExclusionPatterns": { + "target": "com.amazonaws.kendra#DataSourceInclusionsExclusionsStrings", + "traits": { + "smithy.api#documentation": "

A list of regular expression patterns to exclude certain files \n in your Alfresco data source. Files that \n match the patterns are excluded from the index. Files that don't match \n the patterns are included in the index. If a file matches both an inclusion \n pattern and an exclusion pattern, the exclusion pattern takes precedence \n and the file isn't included in the index.

" + } + }, + "VpcConfiguration": { + "target": "com.amazonaws.kendra#DataSourceVpcConfiguration", + "traits": { + "smithy.api#documentation": "

Configuration information for an \n Amazon Virtual Private Cloud to connect to your Alfresco. For more information, \n see Configuring \n a VPC.

" + } + } + }, + "traits": { + "smithy.api#documentation": "

Provides the configuration information to connect to Alfresco as your \n data source.

" + } + }, + "com.amazonaws.kendra#AlfrescoEntity": { + "type": "string", + "traits": { + "smithy.api#enum": [ + { + "value": "wiki", + "name": "wiki" + }, + { + "value": "blog", + "name": "blog" + }, + { + "value": "documentLibrary", + "name": "documentLibrary" + } + ] + } + }, "com.amazonaws.kendra#AmazonResourceName": { "type": "string", "traits": { @@ -846,7 +955,7 @@ } ], "traits": { - "smithy.api#documentation": "

Adds one or more documents to an index.

\n

The BatchPutDocument API enables you to ingest\n inline documents or a set of documents stored in an Amazon S3 bucket. Use\n this API to ingest your text and unstructured text into an index,\n add custom attributes to the documents, and to attach an access control\n list to the documents added to the index.

\n

The documents are indexed asynchronously. You can see the progress of\n the batch using Amazon Web Services CloudWatch. Any error messages related to processing\n the batch are sent to your Amazon Web Services CloudWatch log.

" + "smithy.api#documentation": "

Adds one or more documents to an index.

\n

The BatchPutDocument API enables you to ingest\n inline documents or a set of documents stored in an Amazon S3 bucket. Use\n this API to ingest your text and unstructured text into an index,\n add custom attributes to the documents, and to attach an access control\n list to the documents added to the index.

\n

The documents are indexed asynchronously. You can see the progress of\n the batch using Amazon Web Services CloudWatch. Any error messages related to processing\n the batch are sent to your Amazon Web Services CloudWatch log.

\n

For an example of ingesting inline documents using Python and Java SDKs, \n see Adding \n files directly to an index.

" } }, "com.amazonaws.kendra#BatchPutDocumentRequest": { @@ -1023,14 +1132,14 @@ "StorageCapacityUnits": { "target": "com.amazonaws.kendra#StorageCapacityUnit", "traits": { - "smithy.api#documentation": "

The amount of extra storage capacity for an index. \n A single capacity unit provides 30 GB of storage space or 100,000 documents, \n whichever is reached first.

", + "smithy.api#documentation": "

The amount of extra storage capacity for an index. \n A single capacity unit provides 30 GB of storage space or 100,000 documents, \n whichever is reached first. You can add up to 100 extra capacity units.

", "smithy.api#required": {} } }, "QueryCapacityUnits": { "target": "com.amazonaws.kendra#QueryCapacityUnit", "traits": { - "smithy.api#documentation": "

The amount of extra query capacity for an index and \n GetQuerySuggestions \n capacity.

\n

A single extra capacity unit for an index provides 0.1 queries per second or approximately \n 8,000 queries per day.

\n

\n GetQuerySuggestions capacity is five times the \n provisioned query capacity for an index, or the base capacity of 2.5 calls per second, \n whichever is higher. For example, the base capacity for an index is 0.1 queries per \n second, and GetQuerySuggestions capacity has a base of 2.5 calls per second. \n If you add another 0.1 queries per second to total 0.2 queries per second for an index, the \n GetQuerySuggestions capacity is 2.5 calls per second \n (higher than five times 0.2 queries per second).

", + "smithy.api#documentation": "

The amount of extra query capacity for an index and \n GetQuerySuggestions \n capacity.

\n

A single extra capacity unit for an index provides 0.1 queries per second or approximately \n 8,000 queries per day. You can add up to 100 extra capacity units.

\n

\n GetQuerySuggestions capacity is five times the \n provisioned query capacity for an index, or the base capacity of 2.5 calls per second, \n whichever is higher. For example, the base capacity for an index is 0.1 queries per \n second, and GetQuerySuggestions capacity has a base of 2.5 calls per second. \n If you add another 0.1 queries per second to total 0.2 queries per second for an index, the \n GetQuerySuggestions capacity is 2.5 calls per second \n (higher than five times 0.2 queries per second).

", "smithy.api#required": {} } } @@ -1263,7 +1372,7 @@ "CrawlAttachments": { "target": "com.amazonaws.kendra#Boolean", "traits": { - "smithy.api#documentation": "

Indicates whether Amazon Kendra indexes attachments to the pages and blogs\n in the Confluence data source.

" + "smithy.api#documentation": "

\n TRUE to index attachments of pages and blogs in Confluence.

" } }, "AttachmentFieldMappings": { @@ -1474,14 +1583,14 @@ "SecretArn": { "target": "com.amazonaws.kendra#SecretArn", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of an Secrets Manager secret\n that contains the key-value pairs required to connect to your\n Confluence server. The secret must contain a JSON structure with the\n following keys:

\n
    \n
  • \n

    username—The user name or email address of a user with\n administrative privileges for the Confluence server.

    \n
  • \n
  • \n

    password—The password associated with the user logging\n in to the Confluence server.

    \n
  • \n
", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of an Secrets Manager secret\n that contains the user name and password required to connect to the\n Confluence instance. If you use Confluence cloud, you use a \n generated API token as the password. For more information, see \n Using a \n Confluemce data source.

", "smithy.api#required": {} } }, "Version": { "target": "com.amazonaws.kendra#ConfluenceVersion", "traits": { - "smithy.api#documentation": "

Specifies the version of the Confluence installation that you are\n connecting to.

", + "smithy.api#documentation": "

The version or the type of the Confluence installation to connect to.

", "smithy.api#required": {} } }, @@ -1524,7 +1633,7 @@ "ExclusionPatterns": { "target": "com.amazonaws.kendra#DataSourceInclusionsExclusionsStrings", "traits": { - "smithy.api#documentation": "

>A list of regular expression patterns to exclude certain blog posts, pages,\n spaces, or attachments in your Confluence. Content that matches the patterns are \n excluded from the index. Content that doesn't match the patterns is included in \n the index. If content matches both an inclusion and exclusion pattern, the \n exclusion pattern takes precedence and the content isn't included in the index.

" + "smithy.api#documentation": "

A list of regular expression patterns to exclude certain blog posts, pages,\n spaces, or attachments in your Confluence. Content that matches the patterns are \n excluded from the index. Content that doesn't match the patterns is included in \n the index. If content matches both an inclusion and exclusion pattern, the \n exclusion pattern takes precedence and the content isn't included in the index.

" } } }, @@ -1538,7 +1647,7 @@ "PageFieldMappings": { "target": "com.amazonaws.kendra#ConfluencePageFieldMappingsList", "traits": { - "smithy.api#documentation": "

>Maps attributes or field names of Confluence pages to Amazon Kendra index field \n names. To create custom fields, use the UpdateIndex API before \n you map to Confluence fields. \n For more information, see Mapping data source fields. \n The Confluence data source field names must exist in your Confluence custom metadata.

\n

If you specify the PageFieldMappings parameter, you\n must specify at least one field mapping.

" + "smithy.api#documentation": "

Maps attributes or field names of Confluence pages to Amazon Kendra index field \n names. To create custom fields, use the UpdateIndex API before \n you map to Confluence fields. \n For more information, see Mapping data source fields. \n The Confluence data source field names must exist in your Confluence custom metadata.

\n

If you specify the PageFieldMappings parameter, you\n must specify at least one field mapping.

" } } }, @@ -1645,13 +1754,13 @@ "CrawlPersonalSpaces": { "target": "com.amazonaws.kendra#Boolean", "traits": { - "smithy.api#documentation": "

Specifies whether Amazon Kendra should index personal spaces. Users can\n add restrictions to items in personal spaces. If personal spaces are\n indexed, queries without user context information may return\n restricted items from a personal space in their results. For more\n information, see Filtering on\n user context.

" + "smithy.api#documentation": "

\n TRUE to index personal spaces. You can\n add restrictions to items in personal spaces. If personal spaces are\n indexed, queries without user context information may return\n restricted items from a personal space in their results. For more\n information, see Filtering on\n user context.

" } }, "CrawlArchivedSpaces": { "target": "com.amazonaws.kendra#Boolean", "traits": { - "smithy.api#documentation": "

Specifies whether Amazon Kendra should index archived spaces.

" + "smithy.api#documentation": "

\n TRUE to index archived spaces.

" } }, "IncludeSpaces": { @@ -1953,7 +2062,7 @@ } ], "traits": { - "smithy.api#documentation": "

Creates a data source that you want to use with an Amazon Kendra index.

\n

You specify a name, data source connector type and description for\n your data source. You also specify configuration information for the \n data source connector.

\n

\n CreateDataSource is a synchronous operation. The\n operation returns 200 if the data source was successfully created.\n Otherwise, an exception is raised.

\n

Amazon S3 and custom data sources are \n the only supported data sources in the Amazon Web Services GovCloud (US-West) region.

" + "smithy.api#documentation": "

Creates a data source that you want to use with an Amazon Kendra index.

\n

You specify a name, data source connector type and description for\n your data source. You also specify configuration information for the \n data source connector.

\n

\n CreateDataSource is a synchronous operation. The\n operation returns 200 if the data source was successfully created.\n Otherwise, an exception is raised.

\n

Amazon S3 and custom data sources are \n the only supported data sources in the Amazon Web Services GovCloud (US-West) region.

\n

For an example of creating an index and data source using the Python SDK, \n see Getting \n started with Python SDK. For an example of creating an index and data \n source using the Java SDK, see Getting started with Java SDK.

" } }, "com.amazonaws.kendra#CreateDataSourceRequest": { @@ -2075,7 +2184,7 @@ } ], "traits": { - "smithy.api#documentation": "

Creates an Amazon Kendra experience such as a search application. For more information \n on creating a search application experience, see Building a \n search experience with no code.

" + "smithy.api#documentation": "

Creates an Amazon Kendra experience such as a search application. For more information \n on creating a search application experience, including using the Python and Java SDKs, \n see Building a \n search experience with no code.

" } }, "com.amazonaws.kendra#CreateExperienceRequest": { @@ -2166,7 +2275,7 @@ } ], "traits": { - "smithy.api#documentation": "

Creates an new set of frequently asked question (FAQ) questions and answers.

\n

Adding FAQs to an index is an asynchronous operation.

" + "smithy.api#documentation": "

Creates an new set of frequently asked question (FAQ) questions and answers.

\n

Adding FAQs to an index is an asynchronous operation.

\n

For an example of adding an FAQ to an index using Python and Java SDKs, \n see Using you \n FAQ file.

" } }, "com.amazonaws.kendra#CreateFaqRequest": { @@ -2276,7 +2385,7 @@ } ], "traits": { - "smithy.api#documentation": "

Creates a new Amazon Kendra index. Index creation is an asynchronous\n API. To determine if index creation has completed, check the\n Status field returned from a call to\n DescribeIndex. The Status field is set to\n ACTIVE when the index is ready to use.

\n

Once the index is active you can index your documents using the\n BatchPutDocument API or using one of the supported\n data sources.

" + "smithy.api#documentation": "

Creates a new Amazon Kendra index. Index creation is an asynchronous\n API. To determine if index creation has completed, check the\n Status field returned from a call to\n DescribeIndex. The Status field is set to\n ACTIVE when the index is ready to use.

\n

Once the index is active you can index your documents using the\n BatchPutDocument API or using one of the supported\n data sources.

\n

For an example of creating an index and data source using the Python SDK, \n see Getting \n started with Python SDK. For an example of creating an index and data \n source using the Java SDK, see Getting started with Java SDK.

" } }, "com.amazonaws.kendra#CreateIndexRequest": { @@ -2390,7 +2499,7 @@ } ], "traits": { - "smithy.api#documentation": "

Creates a block list to exlcude certain queries from suggestions.

\n

Any query that contains words or phrases specified in the block \n list is blocked or filtered out from being shown as a suggestion.

\n

You need to provide the file location of your block list text file \n in your S3 bucket. In your text file, enter each block word or phrase \n on a separate line.

\n

For information on the current quota limits for block lists, see \n Quotas \n for Amazon Kendra.

\n

\n CreateQuerySuggestionsBlockList is currently not supported in the \n Amazon Web Services GovCloud (US-West) region.

" + "smithy.api#documentation": "

Creates a block list to exlcude certain queries from suggestions.

\n

Any query that contains words or phrases specified in the block \n list is blocked or filtered out from being shown as a suggestion.

\n

You need to provide the file location of your block list text file \n in your S3 bucket. In your text file, enter each block word or phrase \n on a separate line.

\n

For information on the current quota limits for block lists, see \n Quotas \n for Amazon Kendra.

\n

\n CreateQuerySuggestionsBlockList is currently not supported in the \n Amazon Web Services GovCloud (US-West) region.

\n

For an example of creating a block list for query suggestions using the \n Python SDK, see Query \n suggestions block list.

" } }, "com.amazonaws.kendra#CreateQuerySuggestionsBlockListRequest": { @@ -2488,7 +2597,7 @@ } ], "traits": { - "smithy.api#documentation": "

Creates a thesaurus for an index. The thesaurus\n contains a list of synonyms in Solr format.

" + "smithy.api#documentation": "

Creates a thesaurus for an index. The thesaurus\n contains a list of synonyms in Solr format.

\n

For an example of adding a thesaurus file to an index, see \n Adding \n custom synonyms to an index.

" } }, "com.amazonaws.kendra#CreateThesaurusRequest": { @@ -2681,6 +2790,12 @@ "traits": { "smithy.api#documentation": "

Provides the configuration information to connect to GitHub as \n your data source.

" } + }, + "AlfrescoConfiguration": { + "target": "com.amazonaws.kendra#AlfrescoConfiguration", + "traits": { + "smithy.api#documentation": "

Provides the configuration information to connect to Alfresco as your \n data source.

" + } } }, "traits": { @@ -3154,6 +3269,10 @@ { "value": "GITHUB", "name": "GITHUB" + }, + { + "value": "ALFRESCO", + "name": "ALFRESCO" } ] } @@ -5334,6 +5453,18 @@ "smithy.api#documentation": "

Information about the user entity.

" } }, + "com.amazonaws.kendra#EntityFilter": { + "type": "list", + "member": { + "target": "com.amazonaws.kendra#AlfrescoEntity" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 3 + } + } + }, "com.amazonaws.kendra#EntityId": { "type": "string", "traits": { @@ -7016,21 +7147,21 @@ "JiraAccountUrl": { "target": "com.amazonaws.kendra#JiraAccountUrl", "traits": { - "smithy.api#documentation": "

The URL of the Jira account. For example, company.attlassian.net or \n https://jira.company.com. You can find your Jira account URL in the URL of \n your profile page for Jira desktop.

", + "smithy.api#documentation": "

The URL of the Jira account. For example, company.atlassian.net\n or https://jira.company.com. You can find your Jira account URL in\n the URL of your profile page for Jira desktop.

", "smithy.api#required": {} } }, "SecretArn": { "target": "com.amazonaws.kendra#SecretArn", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of an Secrets Manager secret that \n contains the key-value pairs required to connect to your Jira \n data source. The secret must \n contain a JSON structure with the following keys:

\n
    \n
  • \n

    jira-id—The ID of the Jira account.

    \n
  • \n
  • \n

    jiraCredentials—The password of the Jira account user.

    \n
  • \n
", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of a secret in Secrets Manager contains the\n key-value pairs required to connect to your Jira data source. The secret must contain a\n JSON structure with the following keys:

\n ", "smithy.api#required": {} } }, "UseChangeLog": { "target": "com.amazonaws.kendra#Boolean", "traits": { - "smithy.api#documentation": "

Specify to use the change log option to update your index.

" + "smithy.api#documentation": "

\n TRUE to use the Jira change log to determine which documents require updating in the index. Depending on the change log's size, it may take longer for Amazon Kendra to use the change log than to scan all of your documents in Jira.

" } }, "Project": { @@ -8402,7 +8533,7 @@ "SslCertificateS3Path": { "target": "com.amazonaws.kendra#S3Path", "traits": { - "smithy.api#documentation": "

Information required to find a specific file in an Amazon S3 bucket.

", + "smithy.api#documentation": "

The path to the SSL certificate stored in an Amazon S3 bucket. \n You use this to connect to GitHub.

", "smithy.api#required": {} } } @@ -8456,7 +8587,7 @@ "DisableLocalGroups": { "target": "com.amazonaws.kendra#Boolean", "traits": { - "smithy.api#documentation": "

A Boolean value that specifies whether local\n groups are disabled (True) or enabled (False).\n

" + "smithy.api#documentation": "

\n TRUE to disable local groups information.

" } } }, @@ -9273,25 +9404,25 @@ "CrawlFileComments": { "target": "com.amazonaws.kendra#Boolean", "traits": { - "smithy.api#documentation": "

Specify whether to crawl file comments in Quip. \n You can specify one or more of these options.

" + "smithy.api#documentation": "

\n TRUE to index file comments.

" } }, "CrawlChatRooms": { "target": "com.amazonaws.kendra#Boolean", "traits": { - "smithy.api#documentation": "

Specify whether to crawl chat rooms in Quip. \n You can specify one or more of these options.

" + "smithy.api#documentation": "

\n TRUE to index the contents of chat rooms.

" } }, "CrawlAttachments": { "target": "com.amazonaws.kendra#Boolean", "traits": { - "smithy.api#documentation": "

Specify whether to crawl attachments in Quip. \n You can specify one or more of these options.

" + "smithy.api#documentation": "

\n TRUE to index attachments.

" } }, "FolderIds": { "target": "com.amazonaws.kendra#FolderIdList", "traits": { - "smithy.api#documentation": "

The identifier of the Quip folder IDs to index.

" + "smithy.api#documentation": "

The identifier of the Quip folders you want to index.

" } }, "ThreadFieldMappings": { @@ -10228,7 +10359,7 @@ "SecretArn": { "target": "com.amazonaws.kendra#SecretArn", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Secrets Manager secret\n that contains the user name and password required to connect to the\n ServiceNow instance.

", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of the Secrets Manager secret\n that contains the user name and password required to connect to the\n ServiceNow instance. You can also provide OAuth authentication credentials \n of user name, password, client ID, and client secret. For more information, \n see Authentication \n for a ServiceNow data source.

", "smithy.api#required": {} } }, @@ -10397,28 +10528,28 @@ "SharePointVersion": { "target": "com.amazonaws.kendra#SharePointVersion", "traits": { - "smithy.api#documentation": "

The version of Microsoft SharePoint that you are using as a data\n source.

", + "smithy.api#documentation": "

The version of Microsoft SharePoint that you use.

", "smithy.api#required": {} } }, "Urls": { "target": "com.amazonaws.kendra#SharePointUrlList", "traits": { - "smithy.api#documentation": "

The URLs of the Microsoft SharePoint site that contains the\n documents that should be indexed.

", + "smithy.api#documentation": "

The Microsoft SharePoint site URLs for the documents you want to indext.

", "smithy.api#required": {} } }, "SecretArn": { "target": "com.amazonaws.kendra#SecretArn", "traits": { - "smithy.api#documentation": "

The Amazon Resource Name (ARN) of credentials stored in \n Secrets Manager. The credentials should be a user/password pair. \n If you use SharePoint Server, you also need to provide the sever \n domain name as part of the credentials. For\n more information, see Using a\n Microsoft SharePoint Data Source. For more information\n about Secrets Manager see What Is \n Secrets Manager in the Secrets Manager\n user guide.

", + "smithy.api#documentation": "

The Amazon Resource Name (ARN) of an Secrets Manager \n secret that contains the user name and password required to \n connect to the SharePoint instance. \n If you use SharePoint Server, you also need to provide the sever \n domain name as part of the credentials. For\n more information, see Using a\n Microsoft SharePoint Data Source.

", "smithy.api#required": {} } }, "CrawlAttachments": { "target": "com.amazonaws.kendra#Boolean", "traits": { - "smithy.api#documentation": "

\n TRUE to include attachments to documents stored in\n your Microsoft SharePoint site in the index; otherwise,\n FALSE.

" + "smithy.api#documentation": "

\n TRUE to index document attachments.

" } }, "UseChangeLog": { @@ -10430,17 +10561,20 @@ "InclusionPatterns": { "target": "com.amazonaws.kendra#DataSourceInclusionsExclusionsStrings", "traits": { - "smithy.api#documentation": "

A list of regular expression patterns to include certain documents in your SharePoint.\n Documents that match the patterns are included in the index. Documents that\n don't match the patterns are excluded from the index. If a document matches both\n an inclusion and exclusion pattern, the exclusion pattern takes precedence and the \n document isn't included in the index.

\n

The regex is applied to the display URL of the SharePoint\n document.

" + "smithy.api#documentation": "

A list of regular expression patterns to include certain documents in your SharePoint.\n Documents that match the patterns are included in the index. Documents that\n don't match the patterns are excluded from the index. If a document matches both\n an inclusion and exclusion pattern, the exclusion pattern takes precedence and the \n document isn't included in the index.

\n

The regex applies to the display URL of the SharePoint\n document.

" } }, "ExclusionPatterns": { "target": "com.amazonaws.kendra#DataSourceInclusionsExclusionsStrings", "traits": { - "smithy.api#documentation": "

A list of regular expression patterns to exclude certain documents in your SharePoint.\n Documents that match the patterns are excluded from the index. Documents that\n don't match the patterns are included in the index. If a document matches both\n an inclusion and exclusion pattern, the exclusion pattern takes precedence and the \n document isn't included in the index.

\n

The regex is applied to the display URL of the SharePoint\n document.

" + "smithy.api#documentation": "

A list of regular expression patterns to exclude certain documents in your SharePoint.\n Documents that match the patterns are excluded from the index. Documents that\n don't match the patterns are included in the index. If a document matches both\n an inclusion and exclusion pattern, the exclusion pattern takes precedence and the \n document isn't included in the index.

\n

The regex applies to the display URL of the SharePoint\n document.

" } }, "VpcConfiguration": { - "target": "com.amazonaws.kendra#DataSourceVpcConfiguration" + "target": "com.amazonaws.kendra#DataSourceVpcConfiguration", + "traits": { + "smithy.api#documentation": "

Configuration information for an Amazon Virtual Private Cloud to connect \n to your Microsoft SharePoint. For more information, see \n Configuring \n a VPC.

" + } }, "FieldMappings": { "target": "com.amazonaws.kendra#DataSourceToIndexFieldMappingList", @@ -10457,11 +10591,14 @@ "DisableLocalGroups": { "target": "com.amazonaws.kendra#Boolean", "traits": { - "smithy.api#documentation": "

A Boolean value that specifies whether local\n groups are disabled (True) or enabled (False).\n

" + "smithy.api#documentation": "

\n TRUE to disable local groups information.

" } }, "SslCertificateS3Path": { - "target": "com.amazonaws.kendra#S3Path" + "target": "com.amazonaws.kendra#S3Path", + "traits": { + "smithy.api#documentation": "

The path to the SSL certificate stored in an Amazon S3 bucket. You use \n this to connect to SharePoint.

" + } } }, "traits": { @@ -10519,6 +10656,16 @@ "smithy.api#pattern": "^(20\\d{2})-(0?[1-9]|1[0-2])-(0?[1-9]|1\\d|2\\d|3[01])$" } }, + "com.amazonaws.kendra#SiteId": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 128 + }, + "smithy.api#pattern": "^[A-Za-z0-9-]+$" + } + }, "com.amazonaws.kendra#SiteMap": { "type": "string", "traits": { @@ -10556,6 +10703,16 @@ } } }, + "com.amazonaws.kendra#SiteUrl": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 2048 + }, + "smithy.api#pattern": "^https:\\/\\/[a-zA-Z0-9_\\-\\.]+$" + } + }, "com.amazonaws.kendra#SlackConfiguration": { "type": "structure", "members": {