class Aws::Kendra::Types::Document

A document in an index.

@note When making an API call, you may pass Document

data as a hash:

    {
      id: "DocumentId", # required
      title: "Title",
      blob: "data",
      s3_path: {
        bucket: "S3BucketName", # required
        key: "S3ObjectKey", # required
      },
      attributes: [
        {
          key: "DocumentAttributeKey", # required
          value: { # required
            string_value: "DocumentAttributeStringValue",
            string_list_value: ["String"],
            long_value: 1,
            date_value: Time.now,
          },
        },
      ],
      access_control_list: [
        {
          name: "PrincipalName", # required
          type: "USER", # required, accepts USER, GROUP
          access: "ALLOW", # required, accepts ALLOW, DENY
          data_source_id: "DataSourceId",
        },
      ],
      hierarchical_access_control_list: [
        {
          principal_list: [ # required
            {
              name: "PrincipalName", # required
              type: "USER", # required, accepts USER, GROUP
              access: "ALLOW", # required, accepts ALLOW, DENY
              data_source_id: "DataSourceId",
            },
          ],
        },
      ],
      content_type: "PDF", # accepts PDF, HTML, MS_WORD, PLAIN_TEXT, PPT
    }

@!attribute [rw] id

A unique identifier of the document in the index.
@return [String]

@!attribute [rw] title

The title of the document.
@return [String]

@!attribute [rw] blob

The contents of the document.

Documents passed to the `Blob` parameter must be base64 encoded.
Your code might not need to encode the document file bytes if
you're using an Amazon Web Services SDK to call Amazon Kendra
operations. If you are calling the Amazon Kendra endpoint directly
using REST, you must base64 encode the contents before sending.
@return [String]

@!attribute [rw] s3_path

Information required to find a specific file in an Amazon S3 bucket.
@return [Types::S3Path]

@!attribute [rw] attributes

Custom attributes to apply to the document. Use the custom
attributes to provide additional information for searching, to
provide facets for refining searches, and to provide additional
information in the query response.
@return [Array<Types::DocumentAttribute>]

@!attribute [rw] access_control_list

Information on user and group access rights, which is used for user
context filtering.
@return [Array<Types::Principal>]

@!attribute [rw] hierarchical_access_control_list

The list of [principal][1] lists that define the hierarchy for which
documents users should have access to.

[1]: https://docs.aws.amazon.com/kendra/latest/dg/API_Principal.html
@return [Array<Types::HierarchicalPrincipal>]

@!attribute [rw] content_type

The file type of the document in the `Blob` field.
@return [String]

@see docs.aws.amazon.com/goto/WebAPI/kendra-2019-02-03/Document AWS API Documentation

Constants

SENSITIVE