Amazon Textract

2021/11/29 - Amazon Textract - 1 new api methods

Changes  This release adds support for synchronously analyzing identity documents through a new API: AnalyzeID

AnalyzeID (new) Link ΒΆ

Analyzes identity documents for relevant information. This information is extracted and returned as IdentityDocumentFields , which records both the normalized field and value of the extracted text.

See also: AWS API Documentation

Request Syntax

client.analyze_id(
    DocumentPages=[
        {
            'Bytes': b'bytes',
            'S3Object': {
                'Bucket': 'string',
                'Name': 'string',
                'Version': 'string'
            }
        },
    ]
)
type DocumentPages

list

param DocumentPages

[REQUIRED]

The document being passed to AnalyzeID.

  • (dict) --

    The input document, either as bytes or as an S3 object.

    You pass image bytes to an Amazon Textract API operation by using the Bytes property. For example, you would use the Bytes property to pass a document loaded from a local file system. Image bytes passed by using the Bytes property must be base64 encoded. Your code might not need to encode document file bytes if you're using an AWS SDK to call Amazon Textract API operations.

    You pass images stored in an S3 bucket to an Amazon Textract API operation by using the S3Object property. Documents stored in an S3 bucket don't need to be base64 encoded.

    The AWS Region for the S3 bucket that contains the S3 object must match the AWS Region that you use for Amazon Textract operations.

    If you use the AWS CLI to call Amazon Textract operations, passing image bytes using the Bytes property isn't supported. You must first upload the document to an Amazon S3 bucket, and then call the operation using the S3Object property.

    For Amazon Textract to process an S3 object, the user must have permission to access the S3 object.

    • Bytes (bytes) --

      A blob of base64-encoded document bytes. The maximum size of a document that's provided in a blob of bytes is 5 MB. The document bytes must be in PNG or JPEG format.

      If you're using an AWS SDK to call Amazon Textract, you might not need to base64-encode image bytes passed using the Bytes field.

    • S3Object (dict) --

      Identifies an S3 object as the document source. The maximum size of a document that's stored in an S3 bucket is 5 MB.

      • Bucket (string) --

        The name of the S3 bucket. Note that the # character is not valid in the file name.

      • Name (string) --

        The file name of the input document. Synchronous operations can use image files that are in JPEG or PNG format. Asynchronous operations also support PDF and TIFF format files.

      • Version (string) --

        If the bucket has versioning enabled, you can specify the object version.

rtype

dict

returns

Response Syntax

{
    'IdentityDocuments': [
        {
            'DocumentIndex': 123,
            'IdentityDocumentFields': [
                {
                    'Type': {
                        'Text': 'string',
                        'NormalizedValue': {
                            'Value': 'string',
                            'ValueType': 'DATE'
                        },
                        'Confidence': ...
                    },
                    'ValueDetection': {
                        'Text': 'string',
                        'NormalizedValue': {
                            'Value': 'string',
                            'ValueType': 'DATE'
                        },
                        'Confidence': ...
                    }
                },
            ]
        },
    ],
    'DocumentMetadata': {
        'Pages': 123
    },
    'AnalyzeIDModelVersion': 'string'
}

Response Structure

  • (dict) --

    • IdentityDocuments (list) --

      The list of documents processed by AnalyzeID. Includes a number denoting their place in the list and the response structure for the document.

      • (dict) --

        The structure that lists each document processed in an AnalyzeID operation.

        • DocumentIndex (integer) --

          Denotes the placement of a document in the IdentityDocument list. The first document is marked 1, the second 2 and so on.

        • IdentityDocumentFields (list) --

          The structure used to record information extracted from identity documents. Contains both normalized field and value of the extracted text.

          • (dict) --

            Structure containing both the normalized type of the extracted information and the text associated with it. These are extracted as Type and Value respectively.

            • Type (dict) --

              Used to contain the information detected by an AnalyzeID operation.

              • Text (string) --

                Text of either the normalized field or value associated with it.

              • NormalizedValue (dict) --

                Only returned for dates, returns the type of value detected and the date written in a more machine readable way.

                • Value (string) --

                  The value of the date, written as Year-Month-DayTHour:Minute:Second.

                • ValueType (string) --

                  The normalized type of the value detected. In this case, DATE.

              • Confidence (float) --

                The confidence score of the detected text.

            • ValueDetection (dict) --

              Used to contain the information detected by an AnalyzeID operation.

              • Text (string) --

                Text of either the normalized field or value associated with it.

              • NormalizedValue (dict) --

                Only returned for dates, returns the type of value detected and the date written in a more machine readable way.

                • Value (string) --

                  The value of the date, written as Year-Month-DayTHour:Minute:Second.

                • ValueType (string) --

                  The normalized type of the value detected. In this case, DATE.

              • Confidence (float) --

                The confidence score of the detected text.

    • DocumentMetadata (dict) --

      Information about the input document.

      • Pages (integer) --

        The number of pages that are detected in the document.

    • AnalyzeIDModelVersion (string) --

      The version of the AnalyzeIdentity API being used to process documents.