aws-cdk-lib.aws_kendra.CfnDataSource.DataSourceConfigurationProperty

interface DataSourceConfigurationProperty

LanguageType name
.NETAmazon.CDK.AWS.Kendra.CfnDataSource.DataSourceConfigurationProperty
Gogithub.com/aws/aws-cdk-go/awscdk/v2/awskendra#CfnDataSource_DataSourceConfigurationProperty
Javasoftware.amazon.awscdk.services.kendra.CfnDataSource.DataSourceConfigurationProperty
Pythonaws_cdk.aws_kendra.CfnDataSource.DataSourceConfigurationProperty
TypeScript aws-cdk-lib » aws_kendra » CfnDataSource » DataSourceConfigurationProperty

Provides the configuration information for an Amazon Kendra data source.

Example

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import { aws_kendra as kendra } from 'aws-cdk-lib';
const dataSourceConfigurationProperty: kendra.CfnDataSource.DataSourceConfigurationProperty = {
  confluenceConfiguration: {
    secretArn: 'secretArn',
    serverUrl: 'serverUrl',
    version: 'version',

    // the properties below are optional
    attachmentConfiguration: {
      attachmentFieldMappings: [{
        dataSourceFieldName: 'dataSourceFieldName',
        indexFieldName: 'indexFieldName',

        // the properties below are optional
        dateFieldFormat: 'dateFieldFormat',
      }],
      crawlAttachments: false,
    },
    blogConfiguration: {
      blogFieldMappings: [{
        dataSourceFieldName: 'dataSourceFieldName',
        indexFieldName: 'indexFieldName',

        // the properties below are optional
        dateFieldFormat: 'dateFieldFormat',
      }],
    },
    exclusionPatterns: ['exclusionPatterns'],
    inclusionPatterns: ['inclusionPatterns'],
    pageConfiguration: {
      pageFieldMappings: [{
        dataSourceFieldName: 'dataSourceFieldName',
        indexFieldName: 'indexFieldName',

        // the properties below are optional
        dateFieldFormat: 'dateFieldFormat',
      }],
    },
    spaceConfiguration: {
      crawlArchivedSpaces: false,
      crawlPersonalSpaces: false,
      excludeSpaces: ['excludeSpaces'],
      includeSpaces: ['includeSpaces'],
      spaceFieldMappings: [{
        dataSourceFieldName: 'dataSourceFieldName',
        indexFieldName: 'indexFieldName',

        // the properties below are optional
        dateFieldFormat: 'dateFieldFormat',
      }],
    },
    vpcConfiguration: {
      securityGroupIds: ['securityGroupIds'],
      subnetIds: ['subnetIds'],
    },
  },
  databaseConfiguration: {
    columnConfiguration: {
      changeDetectingColumns: ['changeDetectingColumns'],
      documentDataColumnName: 'documentDataColumnName',
      documentIdColumnName: 'documentIdColumnName',

      // the properties below are optional
      documentTitleColumnName: 'documentTitleColumnName',
      fieldMappings: [{
        dataSourceFieldName: 'dataSourceFieldName',
        indexFieldName: 'indexFieldName',

        // the properties below are optional
        dateFieldFormat: 'dateFieldFormat',
      }],
    },
    connectionConfiguration: {
      databaseHost: 'databaseHost',
      databaseName: 'databaseName',
      databasePort: 123,
      secretArn: 'secretArn',
      tableName: 'tableName',
    },
    databaseEngineType: 'databaseEngineType',

    // the properties below are optional
    aclConfiguration: {
      allowedGroupsColumnName: 'allowedGroupsColumnName',
    },
    sqlConfiguration: {
      queryIdentifiersEnclosingOption: 'queryIdentifiersEnclosingOption',
    },
    vpcConfiguration: {
      securityGroupIds: ['securityGroupIds'],
      subnetIds: ['subnetIds'],
    },
  },
  googleDriveConfiguration: {
    secretArn: 'secretArn',

    // the properties below are optional
    excludeMimeTypes: ['excludeMimeTypes'],
    excludeSharedDrives: ['excludeSharedDrives'],
    excludeUserAccounts: ['excludeUserAccounts'],
    exclusionPatterns: ['exclusionPatterns'],
    fieldMappings: [{
      dataSourceFieldName: 'dataSourceFieldName',
      indexFieldName: 'indexFieldName',

      // the properties below are optional
      dateFieldFormat: 'dateFieldFormat',
    }],
    inclusionPatterns: ['inclusionPatterns'],
  },
  oneDriveConfiguration: {
    oneDriveUsers: {
      oneDriveUserList: ['oneDriveUserList'],
      oneDriveUserS3Path: {
        bucket: 'bucket',
        key: 'key',
      },
    },
    secretArn: 'secretArn',
    tenantDomain: 'tenantDomain',

    // the properties below are optional
    disableLocalGroups: false,
    exclusionPatterns: ['exclusionPatterns'],
    fieldMappings: [{
      dataSourceFieldName: 'dataSourceFieldName',
      indexFieldName: 'indexFieldName',

      // the properties below are optional
      dateFieldFormat: 'dateFieldFormat',
    }],
    inclusionPatterns: ['inclusionPatterns'],
  },
  s3Configuration: {
    bucketName: 'bucketName',

    // the properties below are optional
    accessControlListConfiguration: {
      keyPath: 'keyPath',
    },
    documentsMetadataConfiguration: {
      s3Prefix: 's3Prefix',
    },
    exclusionPatterns: ['exclusionPatterns'],
    inclusionPatterns: ['inclusionPatterns'],
    inclusionPrefixes: ['inclusionPrefixes'],
  },
  salesforceConfiguration: {
    secretArn: 'secretArn',
    serverUrl: 'serverUrl',

    // the properties below are optional
    chatterFeedConfiguration: {
      documentDataFieldName: 'documentDataFieldName',

      // the properties below are optional
      documentTitleFieldName: 'documentTitleFieldName',
      fieldMappings: [{
        dataSourceFieldName: 'dataSourceFieldName',
        indexFieldName: 'indexFieldName',

        // the properties below are optional
        dateFieldFormat: 'dateFieldFormat',
      }],
      includeFilterTypes: ['includeFilterTypes'],
    },
    crawlAttachments: false,
    excludeAttachmentFilePatterns: ['excludeAttachmentFilePatterns'],
    includeAttachmentFilePatterns: ['includeAttachmentFilePatterns'],
    knowledgeArticleConfiguration: {
      includedStates: ['includedStates'],

      // the properties below are optional
      customKnowledgeArticleTypeConfigurations: [{
        documentDataFieldName: 'documentDataFieldName',
        name: 'name',

        // the properties below are optional
        documentTitleFieldName: 'documentTitleFieldName',
        fieldMappings: [{
          dataSourceFieldName: 'dataSourceFieldName',
          indexFieldName: 'indexFieldName',

          // the properties below are optional
          dateFieldFormat: 'dateFieldFormat',
        }],
      }],
      standardKnowledgeArticleTypeConfiguration: {
        documentDataFieldName: 'documentDataFieldName',

        // the properties below are optional
        documentTitleFieldName: 'documentTitleFieldName',
        fieldMappings: [{
          dataSourceFieldName: 'dataSourceFieldName',
          indexFieldName: 'indexFieldName',

          // the properties below are optional
          dateFieldFormat: 'dateFieldFormat',
        }],
      },
    },
    standardObjectAttachmentConfiguration: {
      documentTitleFieldName: 'documentTitleFieldName',
      fieldMappings: [{
        dataSourceFieldName: 'dataSourceFieldName',
        indexFieldName: 'indexFieldName',

        // the properties below are optional
        dateFieldFormat: 'dateFieldFormat',
      }],
    },
    standardObjectConfigurations: [{
      documentDataFieldName: 'documentDataFieldName',
      name: 'name',

      // the properties below are optional
      documentTitleFieldName: 'documentTitleFieldName',
      fieldMappings: [{
        dataSourceFieldName: 'dataSourceFieldName',
        indexFieldName: 'indexFieldName',

        // the properties below are optional
        dateFieldFormat: 'dateFieldFormat',
      }],
    }],
  },
  serviceNowConfiguration: {
    hostUrl: 'hostUrl',
    secretArn: 'secretArn',
    serviceNowBuildVersion: 'serviceNowBuildVersion',

    // the properties below are optional
    authenticationType: 'authenticationType',
    knowledgeArticleConfiguration: {
      documentDataFieldName: 'documentDataFieldName',

      // the properties below are optional
      crawlAttachments: false,
      documentTitleFieldName: 'documentTitleFieldName',
      excludeAttachmentFilePatterns: ['excludeAttachmentFilePatterns'],
      fieldMappings: [{
        dataSourceFieldName: 'dataSourceFieldName',
        indexFieldName: 'indexFieldName',

        // the properties below are optional
        dateFieldFormat: 'dateFieldFormat',
      }],
      filterQuery: 'filterQuery',
      includeAttachmentFilePatterns: ['includeAttachmentFilePatterns'],
    },
    serviceCatalogConfiguration: {
      documentDataFieldName: 'documentDataFieldName',

      // the properties below are optional
      crawlAttachments: false,
      documentTitleFieldName: 'documentTitleFieldName',
      excludeAttachmentFilePatterns: ['excludeAttachmentFilePatterns'],
      fieldMappings: [{
        dataSourceFieldName: 'dataSourceFieldName',
        indexFieldName: 'indexFieldName',

        // the properties below are optional
        dateFieldFormat: 'dateFieldFormat',
      }],
      includeAttachmentFilePatterns: ['includeAttachmentFilePatterns'],
    },
  },
  sharePointConfiguration: {
    secretArn: 'secretArn',
    sharePointVersion: 'sharePointVersion',
    urls: ['urls'],

    // the properties below are optional
    crawlAttachments: false,
    disableLocalGroups: false,
    documentTitleFieldName: 'documentTitleFieldName',
    exclusionPatterns: ['exclusionPatterns'],
    fieldMappings: [{
      dataSourceFieldName: 'dataSourceFieldName',
      indexFieldName: 'indexFieldName',

      // the properties below are optional
      dateFieldFormat: 'dateFieldFormat',
    }],
    inclusionPatterns: ['inclusionPatterns'],
    sslCertificateS3Path: {
      bucket: 'bucket',
      key: 'key',
    },
    useChangeLog: false,
    vpcConfiguration: {
      securityGroupIds: ['securityGroupIds'],
      subnetIds: ['subnetIds'],
    },
  },
  webCrawlerConfiguration: {
    urls: {
      seedUrlConfiguration: {
        seedUrls: ['seedUrls'],

        // the properties below are optional
        webCrawlerMode: 'webCrawlerMode',
      },
      siteMapsConfiguration: {
        siteMaps: ['siteMaps'],
      },
    },

    // the properties below are optional
    authenticationConfiguration: {
      basicAuthentication: [{
        credentials: 'credentials',
        host: 'host',
        port: 123,
      }],
    },
    crawlDepth: 123,
    maxContentSizePerPageInMegaBytes: 123,
    maxLinksPerPage: 123,
    maxUrlsPerMinuteCrawlRate: 123,
    proxyConfiguration: {
      host: 'host',
      port: 123,

      // the properties below are optional
      credentials: 'credentials',
    },
    urlExclusionPatterns: ['urlExclusionPatterns'],
    urlInclusionPatterns: ['urlInclusionPatterns'],
  },
  workDocsConfiguration: {
    organizationId: 'organizationId',

    // the properties below are optional
    crawlComments: false,
    exclusionPatterns: ['exclusionPatterns'],
    fieldMappings: [{
      dataSourceFieldName: 'dataSourceFieldName',
      indexFieldName: 'indexFieldName',

      // the properties below are optional
      dateFieldFormat: 'dateFieldFormat',
    }],
    inclusionPatterns: ['inclusionPatterns'],
    useChangeLog: false,
  },
};

Properties

NameTypeDescription
confluenceConfiguration?IResolvable | ConfluenceConfigurationPropertyProvides the configuration information to connect to Confluence as your data source.
databaseConfiguration?IResolvable | DatabaseConfigurationPropertyProvides the configuration information to connect to a database as your data source.
googleDriveConfiguration?IResolvable | GoogleDriveConfigurationPropertyProvides the configuration information to connect to Google Drive as your data source.
oneDriveConfiguration?IResolvable | OneDriveConfigurationPropertyProvides the configuration information to connect to Microsoft OneDrive as your data source.
s3Configuration?IResolvable | S3DataSourceConfigurationPropertyProvides the configuration information to connect to an Amazon S3 bucket as your data source.
salesforceConfiguration?IResolvable | SalesforceConfigurationPropertyProvides the configuration information to connect to Salesforce as your data source.
serviceNowConfiguration?IResolvable | ServiceNowConfigurationPropertyProvides the configuration information to connect to ServiceNow as your data source.
sharePointConfiguration?IResolvable | SharePointConfigurationPropertyProvides the configuration information to connect to Microsoft SharePoint as your data source.
webCrawlerConfiguration?IResolvable | WebCrawlerConfigurationPropertyProvides the configuration information required for Amazon Kendra Web Crawler.
workDocsConfiguration?IResolvable | WorkDocsConfigurationPropertyProvides the configuration information to connect to Amazon WorkDocs as your data source.

confluenceConfiguration?

Type: IResolvable | ConfluenceConfigurationProperty (optional)

Provides the configuration information to connect to Confluence as your data source.


databaseConfiguration?

Type: IResolvable | DatabaseConfigurationProperty (optional)

Provides the configuration information to connect to a database as your data source.


googleDriveConfiguration?

Type: IResolvable | GoogleDriveConfigurationProperty (optional)

Provides the configuration information to connect to Google Drive as your data source.


oneDriveConfiguration?

Type: IResolvable | OneDriveConfigurationProperty (optional)

Provides the configuration information to connect to Microsoft OneDrive as your data source.


s3Configuration?

Type: IResolvable | S3DataSourceConfigurationProperty (optional)

Provides the configuration information to connect to an Amazon S3 bucket as your data source.


salesforceConfiguration?

Type: IResolvable | SalesforceConfigurationProperty (optional)

Provides the configuration information to connect to Salesforce as your data source.


serviceNowConfiguration?

Type: IResolvable | ServiceNowConfigurationProperty (optional)

Provides the configuration information to connect to ServiceNow as your data source.


sharePointConfiguration?

Type: IResolvable | SharePointConfigurationProperty (optional)

Provides the configuration information to connect to Microsoft SharePoint as your data source.


webCrawlerConfiguration?

Type: IResolvable | WebCrawlerConfigurationProperty (optional)

Provides the configuration information required for Amazon Kendra Web Crawler.


workDocsConfiguration?

Type: IResolvable | WorkDocsConfigurationProperty (optional)

Provides the configuration information to connect to Amazon WorkDocs as your data source.