Class: Aws::Kendra::Types::DataSourceConfiguration

Inherits:
Struct
  • Object
show all
Defined in:
gems/aws-sdk-kendra/lib/aws-sdk-kendra/types.rb

Overview

Note:

When making an API call, you may pass DataSourceConfiguration data as a hash:

{
  s3_configuration: {
    bucket_name: "S3BucketName", # required
    inclusion_prefixes: ["DataSourceInclusionsExclusionsStringsMember"],
    inclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
    exclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
    documents_metadata_configuration: {
      s3_prefix: "S3ObjectKey",
    },
    access_control_list_configuration: {
      key_path: "S3ObjectKey",
    },
  },
  share_point_configuration: {
    share_point_version: "SHAREPOINT_2013", # required, accepts SHAREPOINT_2013, SHAREPOINT_2016, SHAREPOINT_ONLINE
    urls: ["Url"], # required
    secret_arn: "SecretArn", # required
    crawl_attachments: false,
    use_change_log: false,
    inclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
    exclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
    vpc_configuration: {
      subnet_ids: ["SubnetId"], # required
      security_group_ids: ["VpcSecurityGroupId"], # required
    },
    field_mappings: [
      {
        data_source_field_name: "DataSourceFieldName", # required
        date_field_format: "DataSourceDateFieldFormat",
        index_field_name: "IndexFieldName", # required
      },
    ],
    document_title_field_name: "DataSourceFieldName",
    disable_local_groups: false,
    ssl_certificate_s3_path: {
      bucket: "S3BucketName", # required
      key: "S3ObjectKey", # required
    },
  },
  database_configuration: {
    database_engine_type: "RDS_AURORA_MYSQL", # required, accepts RDS_AURORA_MYSQL, RDS_AURORA_POSTGRESQL, RDS_MYSQL, RDS_POSTGRESQL
    connection_configuration: { # required
      database_host: "DatabaseHost", # required
      database_port: 1, # required
      database_name: "DatabaseName", # required
      table_name: "TableName", # required
      secret_arn: "SecretArn", # required
    },
    vpc_configuration: {
      subnet_ids: ["SubnetId"], # required
      security_group_ids: ["VpcSecurityGroupId"], # required
    },
    column_configuration: { # required
      document_id_column_name: "ColumnName", # required
      document_data_column_name: "ColumnName", # required
      document_title_column_name: "ColumnName",
      field_mappings: [
        {
          data_source_field_name: "DataSourceFieldName", # required
          date_field_format: "DataSourceDateFieldFormat",
          index_field_name: "IndexFieldName", # required
        },
      ],
      change_detecting_columns: ["ColumnName"], # required
    },
    acl_configuration: {
      allowed_groups_column_name: "ColumnName", # required
    },
    sql_configuration: {
      query_identifiers_enclosing_option: "DOUBLE_QUOTES", # accepts DOUBLE_QUOTES, NONE
    },
  },
  salesforce_configuration: {
    server_url: "Url", # required
    secret_arn: "SecretArn", # required
    standard_object_configurations: [
      {
        name: "ACCOUNT", # required, accepts ACCOUNT, CAMPAIGN, CASE, CONTACT, CONTRACT, DOCUMENT, GROUP, IDEA, LEAD, OPPORTUNITY, PARTNER, PRICEBOOK, PRODUCT, PROFILE, SOLUTION, TASK, USER
        document_data_field_name: "DataSourceFieldName", # required
        document_title_field_name: "DataSourceFieldName",
        field_mappings: [
          {
            data_source_field_name: "DataSourceFieldName", # required
            date_field_format: "DataSourceDateFieldFormat",
            index_field_name: "IndexFieldName", # required
          },
        ],
      },
    ],
    knowledge_article_configuration: {
      included_states: ["DRAFT"], # required, accepts DRAFT, PUBLISHED, ARCHIVED
      standard_knowledge_article_type_configuration: {
        document_data_field_name: "DataSourceFieldName", # required
        document_title_field_name: "DataSourceFieldName",
        field_mappings: [
          {
            data_source_field_name: "DataSourceFieldName", # required
            date_field_format: "DataSourceDateFieldFormat",
            index_field_name: "IndexFieldName", # required
          },
        ],
      },
      custom_knowledge_article_type_configurations: [
        {
          name: "SalesforceCustomKnowledgeArticleTypeName", # required
          document_data_field_name: "DataSourceFieldName", # required
          document_title_field_name: "DataSourceFieldName",
          field_mappings: [
            {
              data_source_field_name: "DataSourceFieldName", # required
              date_field_format: "DataSourceDateFieldFormat",
              index_field_name: "IndexFieldName", # required
            },
          ],
        },
      ],
    },
    chatter_feed_configuration: {
      document_data_field_name: "DataSourceFieldName", # required
      document_title_field_name: "DataSourceFieldName",
      field_mappings: [
        {
          data_source_field_name: "DataSourceFieldName", # required
          date_field_format: "DataSourceDateFieldFormat",
          index_field_name: "IndexFieldName", # required
        },
      ],
      include_filter_types: ["ACTIVE_USER"], # accepts ACTIVE_USER, STANDARD_USER
    },
    crawl_attachments: false,
    standard_object_attachment_configuration: {
      document_title_field_name: "DataSourceFieldName",
      field_mappings: [
        {
          data_source_field_name: "DataSourceFieldName", # required
          date_field_format: "DataSourceDateFieldFormat",
          index_field_name: "IndexFieldName", # required
        },
      ],
    },
    include_attachment_file_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
    exclude_attachment_file_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
  },
  one_drive_configuration: {
    tenant_domain: "TenantDomain", # required
    secret_arn: "SecretArn", # required
    one_drive_users: { # required
      one_drive_user_list: ["OneDriveUser"],
      one_drive_user_s3_path: {
        bucket: "S3BucketName", # required
        key: "S3ObjectKey", # required
      },
    },
    inclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
    exclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
    field_mappings: [
      {
        data_source_field_name: "DataSourceFieldName", # required
        date_field_format: "DataSourceDateFieldFormat",
        index_field_name: "IndexFieldName", # required
      },
    ],
    disable_local_groups: false,
  },
  service_now_configuration: {
    host_url: "ServiceNowHostUrl", # required
    secret_arn: "SecretArn", # required
    service_now_build_version: "LONDON", # required, accepts LONDON, OTHERS
    knowledge_article_configuration: {
      crawl_attachments: false,
      include_attachment_file_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
      exclude_attachment_file_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
      document_data_field_name: "DataSourceFieldName", # required
      document_title_field_name: "DataSourceFieldName",
      field_mappings: [
        {
          data_source_field_name: "DataSourceFieldName", # required
          date_field_format: "DataSourceDateFieldFormat",
          index_field_name: "IndexFieldName", # required
        },
      ],
      filter_query: "ServiceNowKnowledgeArticleFilterQuery",
    },
    service_catalog_configuration: {
      crawl_attachments: false,
      include_attachment_file_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
      exclude_attachment_file_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
      document_data_field_name: "DataSourceFieldName", # required
      document_title_field_name: "DataSourceFieldName",
      field_mappings: [
        {
          data_source_field_name: "DataSourceFieldName", # required
          date_field_format: "DataSourceDateFieldFormat",
          index_field_name: "IndexFieldName", # required
        },
      ],
    },
    authentication_type: "HTTP_BASIC", # accepts HTTP_BASIC, OAUTH2
  },
  confluence_configuration: {
    server_url: "Url", # required
    secret_arn: "SecretArn", # required
    version: "CLOUD", # required, accepts CLOUD, SERVER
    space_configuration: {
      crawl_personal_spaces: false,
      crawl_archived_spaces: false,
      include_spaces: ["ConfluenceSpaceIdentifier"],
      exclude_spaces: ["ConfluenceSpaceIdentifier"],
      space_field_mappings: [
        {
          data_source_field_name: "DISPLAY_URL", # accepts DISPLAY_URL, ITEM_TYPE, SPACE_KEY, URL
          date_field_format: "DataSourceDateFieldFormat",
          index_field_name: "IndexFieldName",
        },
      ],
    },
    page_configuration: {
      page_field_mappings: [
        {
          data_source_field_name: "AUTHOR", # accepts AUTHOR, CONTENT_STATUS, CREATED_DATE, DISPLAY_URL, ITEM_TYPE, LABELS, MODIFIED_DATE, PARENT_ID, SPACE_KEY, SPACE_NAME, URL, VERSION
          date_field_format: "DataSourceDateFieldFormat",
          index_field_name: "IndexFieldName",
        },
      ],
    },
    blog_configuration: {
      blog_field_mappings: [
        {
          data_source_field_name: "AUTHOR", # accepts AUTHOR, DISPLAY_URL, ITEM_TYPE, LABELS, PUBLISH_DATE, SPACE_KEY, SPACE_NAME, URL, VERSION
          date_field_format: "DataSourceDateFieldFormat",
          index_field_name: "IndexFieldName",
        },
      ],
    },
    attachment_configuration: {
      crawl_attachments: false,
      attachment_field_mappings: [
        {
          data_source_field_name: "AUTHOR", # accepts AUTHOR, CONTENT_TYPE, CREATED_DATE, DISPLAY_URL, FILE_SIZE, ITEM_TYPE, PARENT_ID, SPACE_KEY, SPACE_NAME, URL, VERSION
          date_field_format: "DataSourceDateFieldFormat",
          index_field_name: "IndexFieldName",
        },
      ],
    },
    vpc_configuration: {
      subnet_ids: ["SubnetId"], # required
      security_group_ids: ["VpcSecurityGroupId"], # required
    },
    inclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
    exclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
  },
  google_drive_configuration: {
    secret_arn: "SecretArn", # required
    inclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
    exclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
    field_mappings: [
      {
        data_source_field_name: "DataSourceFieldName", # required
        date_field_format: "DataSourceDateFieldFormat",
        index_field_name: "IndexFieldName", # required
      },
    ],
    exclude_mime_types: ["MimeType"],
    exclude_user_accounts: ["UserAccount"],
    exclude_shared_drives: ["SharedDriveId"],
  },
  web_crawler_configuration: {
    urls: { # required
      seed_url_configuration: {
        seed_urls: ["SeedUrl"], # required
        web_crawler_mode: "HOST_ONLY", # accepts HOST_ONLY, SUBDOMAINS, EVERYTHING
      },
      site_maps_configuration: {
        site_maps: ["SiteMap"], # required
      },
    },
    crawl_depth: 1,
    max_links_per_page: 1,
    max_content_size_per_page_in_mega_bytes: 1.0,
    max_urls_per_minute_crawl_rate: 1,
    url_inclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
    url_exclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
    proxy_configuration: {
      host: "Host", # required
      port: 1, # required
      credentials: "SecretArn",
    },
    authentication_configuration: {
      basic_authentication: [
        {
          host: "Host", # required
          port: 1, # required
          credentials: "SecretArn", # required
        },
      ],
    },
  },
  work_docs_configuration: {
    organization_id: "OrganizationId", # required
    crawl_comments: false,
    use_change_log: false,
    inclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
    exclusion_patterns: ["DataSourceInclusionsExclusionsStringsMember"],
    field_mappings: [
      {
        data_source_field_name: "DataSourceFieldName", # required
        date_field_format: "DataSourceDateFieldFormat",
        index_field_name: "IndexFieldName", # required
      },
    ],
  },
}

Configuration information for an Amazon Kendra data source.

Constant Summary collapse

SENSITIVE =
[]

Instance Attribute Summary collapse

Instance Attribute Details

#confluence_configurationTypes::ConfluenceConfiguration

Provides configuration information for connecting to a Confluence data source.



3393
3394
3395
3396
3397
3398
3399
3400
3401
3402
3403
3404
3405
3406
# File 'gems/aws-sdk-kendra/lib/aws-sdk-kendra/types.rb', line 3393

class DataSourceConfiguration < Struct.new(
  :s3_configuration,
  :share_point_configuration,
  :database_configuration,
  :salesforce_configuration,
  :one_drive_configuration,
  :service_now_configuration,
  :confluence_configuration,
  :google_drive_configuration,
  :web_crawler_configuration,
  :work_docs_configuration)
  SENSITIVE = []
  include Aws::Structure
end

#database_configurationTypes::DatabaseConfiguration

Provides information necessary to create a data source connector for a database.



3393
3394
3395
3396
3397
3398
3399
3400
3401
3402
3403
3404
3405
3406
# File 'gems/aws-sdk-kendra/lib/aws-sdk-kendra/types.rb', line 3393

class DataSourceConfiguration < Struct.new(
  :s3_configuration,
  :share_point_configuration,
  :database_configuration,
  :salesforce_configuration,
  :one_drive_configuration,
  :service_now_configuration,
  :confluence_configuration,
  :google_drive_configuration,
  :web_crawler_configuration,
  :work_docs_configuration)
  SENSITIVE = []
  include Aws::Structure
end

#google_drive_configurationTypes::GoogleDriveConfiguration

Provides configuration for data sources that connect to Google Drive.



3393
3394
3395
3396
3397
3398
3399
3400
3401
3402
3403
3404
3405
3406
# File 'gems/aws-sdk-kendra/lib/aws-sdk-kendra/types.rb', line 3393

class DataSourceConfiguration < Struct.new(
  :s3_configuration,
  :share_point_configuration,
  :database_configuration,
  :salesforce_configuration,
  :one_drive_configuration,
  :service_now_configuration,
  :confluence_configuration,
  :google_drive_configuration,
  :web_crawler_configuration,
  :work_docs_configuration)
  SENSITIVE = []
  include Aws::Structure
end

#one_drive_configurationTypes::OneDriveConfiguration

Provides configuration for data sources that connect to Microsoft OneDrive.



3393
3394
3395
3396
3397
3398
3399
3400
3401
3402
3403
3404
3405
3406
# File 'gems/aws-sdk-kendra/lib/aws-sdk-kendra/types.rb', line 3393

class DataSourceConfiguration < Struct.new(
  :s3_configuration,
  :share_point_configuration,
  :database_configuration,
  :salesforce_configuration,
  :one_drive_configuration,
  :service_now_configuration,
  :confluence_configuration,
  :google_drive_configuration,
  :web_crawler_configuration,
  :work_docs_configuration)
  SENSITIVE = []
  include Aws::Structure
end

#s3_configurationTypes::S3DataSourceConfiguration

Provides information to create a data source connector for a document repository in an Amazon S3 bucket.



3393
3394
3395
3396
3397
3398
3399
3400
3401
3402
3403
3404
3405
3406
# File 'gems/aws-sdk-kendra/lib/aws-sdk-kendra/types.rb', line 3393

class DataSourceConfiguration < Struct.new(
  :s3_configuration,
  :share_point_configuration,
  :database_configuration,
  :salesforce_configuration,
  :one_drive_configuration,
  :service_now_configuration,
  :confluence_configuration,
  :google_drive_configuration,
  :web_crawler_configuration,
  :work_docs_configuration)
  SENSITIVE = []
  include Aws::Structure
end

#salesforce_configurationTypes::SalesforceConfiguration

Provides configuration information for data sources that connect to a Salesforce site.



3393
3394
3395
3396
3397
3398
3399
3400
3401
3402
3403
3404
3405
3406
# File 'gems/aws-sdk-kendra/lib/aws-sdk-kendra/types.rb', line 3393

class DataSourceConfiguration < Struct.new(
  :s3_configuration,
  :share_point_configuration,
  :database_configuration,
  :salesforce_configuration,
  :one_drive_configuration,
  :service_now_configuration,
  :confluence_configuration,
  :google_drive_configuration,
  :web_crawler_configuration,
  :work_docs_configuration)
  SENSITIVE = []
  include Aws::Structure
end

#service_now_configurationTypes::ServiceNowConfiguration

Provides configuration for data sources that connect to ServiceNow instances.



3393
3394
3395
3396
3397
3398
3399
3400
3401
3402
3403
3404
3405
3406
# File 'gems/aws-sdk-kendra/lib/aws-sdk-kendra/types.rb', line 3393

class DataSourceConfiguration < Struct.new(
  :s3_configuration,
  :share_point_configuration,
  :database_configuration,
  :salesforce_configuration,
  :one_drive_configuration,
  :service_now_configuration,
  :confluence_configuration,
  :google_drive_configuration,
  :web_crawler_configuration,
  :work_docs_configuration)
  SENSITIVE = []
  include Aws::Structure
end

#share_point_configurationTypes::SharePointConfiguration

Provides information necessary to create a data source connector for a Microsoft SharePoint site.



3393
3394
3395
3396
3397
3398
3399
3400
3401
3402
3403
3404
3405
3406
# File 'gems/aws-sdk-kendra/lib/aws-sdk-kendra/types.rb', line 3393

class DataSourceConfiguration < Struct.new(
  :s3_configuration,
  :share_point_configuration,
  :database_configuration,
  :salesforce_configuration,
  :one_drive_configuration,
  :service_now_configuration,
  :confluence_configuration,
  :google_drive_configuration,
  :web_crawler_configuration,
  :work_docs_configuration)
  SENSITIVE = []
  include Aws::Structure
end

#web_crawler_configurationTypes::WebCrawlerConfiguration

Provides the configuration information required for Amazon Kendra Web Crawler.



3393
3394
3395
3396
3397
3398
3399
3400
3401
3402
3403
3404
3405
3406
# File 'gems/aws-sdk-kendra/lib/aws-sdk-kendra/types.rb', line 3393

class DataSourceConfiguration < Struct.new(
  :s3_configuration,
  :share_point_configuration,
  :database_configuration,
  :salesforce_configuration,
  :one_drive_configuration,
  :service_now_configuration,
  :confluence_configuration,
  :google_drive_configuration,
  :web_crawler_configuration,
  :work_docs_configuration)
  SENSITIVE = []
  include Aws::Structure
end

#work_docs_configurationTypes::WorkDocsConfiguration

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



3393
3394
3395
3396
3397
3398
3399
3400
3401
3402
3403
3404
3405
3406
# File 'gems/aws-sdk-kendra/lib/aws-sdk-kendra/types.rb', line 3393

class DataSourceConfiguration < Struct.new(
  :s3_configuration,
  :share_point_configuration,
  :database_configuration,
  :salesforce_configuration,
  :one_drive_configuration,
  :service_now_configuration,
  :confluence_configuration,
  :google_drive_configuration,
  :web_crawler_configuration,
  :work_docs_configuration)
  SENSITIVE = []
  include Aws::Structure
end