# API Reference ## Constructs ### ComprehendGenericSyncSfnTask Calls a Comprehend Classification endpoint and parses the result, filters on > 50 % confidence and sets the highest confidence score classification. Input: "textract_result"."txt_output_location" Output: { "documentType": "AWS_PAYSTUBS" } (example will be at "classification"."documentType") Example (Python) ```python comprehend_sync_task = tcdk.ComprehendGenericSyncSfnTask( self, "Classification", comprehend_classifier_arn= '', integration_pattern=sfn.IntegrationPattern.WAIT_FOR_TASK_TOKEN, lambda_log_level="DEBUG", timeout=Duration.hours(24), input=sfn.TaskInput.from_object({ "Token": sfn.JsonPath.task_token, "ExecutionId": sfn.JsonPath.string_at('$$.Execution.Id'), "Payload": sfn.JsonPath.entire_payload, }), result_path="$.classification") ``` #### Initializers ```typescript import { ComprehendGenericSyncSfnTask } from 'amazon-textract-idp-cdk-constructs' new ComprehendGenericSyncSfnTask(scope: Construct, id: string, props: ComprehendGenericSyncSfnTaskProps) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | scope | constructs.Construct | *No description.* | | id | string | *No description.* | | props | ComprehendGenericSyncSfnTaskProps | *No description.* | --- ##### `scope`Required - *Type:* constructs.Construct --- ##### `id`Required - *Type:* string --- ##### `props`Required - *Type:* ComprehendGenericSyncSfnTaskProps --- #### Methods | **Name** | **Description** | | --- | --- | | toString | Returns a string representation of this construct. | | addPrefix | Add a prefix to the stateId of this state. | | bindToGraph | Register this state as part of the given graph. | | toStateJson | Return the Amazon States Language object for this state. | | addCatch | Add a recovery handler for this state. | | addRetry | Add retry configuration for this state. | | metric | Return the given named metric for this Task. | | metricFailed | Metric for the number of times this activity fails. | | metricHeartbeatTimedOut | Metric for the number of times the heartbeat times out for this activity. | | metricRunTime | The interval, in milliseconds, between the time the Task starts and the time it closes. | | metricScheduled | Metric for the number of times this activity is scheduled. | | metricScheduleTime | The interval, in milliseconds, for which the activity stays in the schedule state. | | metricStarted | Metric for the number of times this activity is started. | | metricSucceeded | Metric for the number of times this activity succeeds. | | metricTime | The interval, in milliseconds, between the time the activity is scheduled and the time it closes. | | metricTimedOut | Metric for the number of times this activity times out. | | next | Continue normal execution with the given state. | --- ##### `toString` ```typescript public toString(): string ``` Returns a string representation of this construct. ##### `addPrefix` ```typescript public addPrefix(x: string): void ``` Add a prefix to the stateId of this state. ###### `x`Required - *Type:* string --- ##### `bindToGraph` ```typescript public bindToGraph(graph: StateGraph): void ``` Register this state as part of the given graph. Don't call this. It will be called automatically when you work with states normally. ###### `graph`Required - *Type:* aws-cdk-lib.aws_stepfunctions.StateGraph --- ##### `toStateJson` ```typescript public toStateJson(): object ``` Return the Amazon States Language object for this state. ##### `addCatch` ```typescript public addCatch(handler: IChainable, props?: CatchProps): TaskStateBase ``` Add a recovery handler for this state. When a particular error occurs, execution will continue at the error handler instead of failing the state machine execution. ###### `handler`Required - *Type:* aws-cdk-lib.aws_stepfunctions.IChainable --- ###### `props`Optional - *Type:* aws-cdk-lib.aws_stepfunctions.CatchProps --- ##### `addRetry` ```typescript public addRetry(props?: RetryProps): TaskStateBase ``` Add retry configuration for this state. This controls if and how the execution will be retried if a particular error occurs. ###### `props`Optional - *Type:* aws-cdk-lib.aws_stepfunctions.RetryProps --- ##### `metric` ```typescript public metric(metricName: string, props?: MetricOptions): Metric ``` Return the given named metric for this Task. ###### `metricName`Required - *Type:* string --- ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricFailed` ```typescript public metricFailed(props?: MetricOptions): Metric ``` Metric for the number of times this activity fails. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricHeartbeatTimedOut` ```typescript public metricHeartbeatTimedOut(props?: MetricOptions): Metric ``` Metric for the number of times the heartbeat times out for this activity. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricRunTime` ```typescript public metricRunTime(props?: MetricOptions): Metric ``` The interval, in milliseconds, between the time the Task starts and the time it closes. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricScheduled` ```typescript public metricScheduled(props?: MetricOptions): Metric ``` Metric for the number of times this activity is scheduled. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricScheduleTime` ```typescript public metricScheduleTime(props?: MetricOptions): Metric ``` The interval, in milliseconds, for which the activity stays in the schedule state. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricStarted` ```typescript public metricStarted(props?: MetricOptions): Metric ``` Metric for the number of times this activity is started. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricSucceeded` ```typescript public metricSucceeded(props?: MetricOptions): Metric ``` Metric for the number of times this activity succeeds. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricTime` ```typescript public metricTime(props?: MetricOptions): Metric ``` The interval, in milliseconds, between the time the activity is scheduled and the time it closes. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricTimedOut` ```typescript public metricTimedOut(props?: MetricOptions): Metric ``` Metric for the number of times this activity times out. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `next` ```typescript public next(next: IChainable): Chain ``` Continue normal execution with the given state. ###### `next`Required - *Type:* aws-cdk-lib.aws_stepfunctions.IChainable --- #### Static Functions | **Name** | **Description** | | --- | --- | | isConstruct | Checks if `x` is a construct. | | filterNextables | Return only the states that allow chaining from an array of states. | | findReachableEndStates | Find the set of end states states reachable through transitions from the given start state. | | findReachableStates | Find the set of states reachable through transitions from the given start state. | | prefixStates | Add a prefix to the stateId of all States found in a construct tree. | --- ##### ~~`isConstruct`~~ ```typescript import { ComprehendGenericSyncSfnTask } from 'amazon-textract-idp-cdk-constructs' ComprehendGenericSyncSfnTask.isConstruct(x: any) ``` Checks if `x` is a construct. ###### `x`Required - *Type:* any Any object. --- ##### `filterNextables` ```typescript import { ComprehendGenericSyncSfnTask } from 'amazon-textract-idp-cdk-constructs' ComprehendGenericSyncSfnTask.filterNextables(states: State[]) ``` Return only the states that allow chaining from an array of states. ###### `states`Required - *Type:* aws-cdk-lib.aws_stepfunctions.State[] --- ##### `findReachableEndStates` ```typescript import { ComprehendGenericSyncSfnTask } from 'amazon-textract-idp-cdk-constructs' ComprehendGenericSyncSfnTask.findReachableEndStates(start: State, options?: FindStateOptions) ``` Find the set of end states states reachable through transitions from the given start state. ###### `start`Required - *Type:* aws-cdk-lib.aws_stepfunctions.State --- ###### `options`Optional - *Type:* aws-cdk-lib.aws_stepfunctions.FindStateOptions --- ##### `findReachableStates` ```typescript import { ComprehendGenericSyncSfnTask } from 'amazon-textract-idp-cdk-constructs' ComprehendGenericSyncSfnTask.findReachableStates(start: State, options?: FindStateOptions) ``` Find the set of states reachable through transitions from the given start state. This does not retrieve states from within sub-graphs, such as states within a Parallel state's branch. ###### `start`Required - *Type:* aws-cdk-lib.aws_stepfunctions.State --- ###### `options`Optional - *Type:* aws-cdk-lib.aws_stepfunctions.FindStateOptions --- ##### `prefixStates` ```typescript import { ComprehendGenericSyncSfnTask } from 'amazon-textract-idp-cdk-constructs' ComprehendGenericSyncSfnTask.prefixStates(root: IConstruct, prefix: string) ``` Add a prefix to the stateId of all States found in a construct tree. ###### `root`Required - *Type:* constructs.IConstruct --- ###### `prefix`Required - *Type:* string --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | | endStates | aws-cdk-lib.aws_stepfunctions.INextable[] | Continuable states of this Chainable. | | id | string | Descriptive identifier for this chainable. | | startState | aws-cdk-lib.aws_stepfunctions.State | First state of this Chainable. | | stateId | string | Tokenized string that evaluates to the state's ID. | | comprehendSyncCallFunction | aws-cdk-lib.aws_lambda.IFunction | *No description.* | | stateMachine | aws-cdk-lib.aws_stepfunctions.IStateMachine | *No description.* | | version | string | *No description.* | --- ##### `node`Required ```typescript public readonly node: Node; ``` - *Type:* constructs.Node The tree node. --- ##### `endStates`Required ```typescript public readonly endStates: INextable[]; ``` - *Type:* aws-cdk-lib.aws_stepfunctions.INextable[] Continuable states of this Chainable. --- ##### `id`Required ```typescript public readonly id: string; ``` - *Type:* string Descriptive identifier for this chainable. --- ##### `startState`Required ```typescript public readonly startState: State; ``` - *Type:* aws-cdk-lib.aws_stepfunctions.State First state of this Chainable. --- ##### `stateId`Required ```typescript public readonly stateId: string; ``` - *Type:* string Tokenized string that evaluates to the state's ID. --- ##### `comprehendSyncCallFunction`Required ```typescript public readonly comprehendSyncCallFunction: IFunction; ``` - *Type:* aws-cdk-lib.aws_lambda.IFunction --- ##### `stateMachine`Required ```typescript public readonly stateMachine: IStateMachine; ``` - *Type:* aws-cdk-lib.aws_stepfunctions.IStateMachine --- ##### `version`Required ```typescript public readonly version: string; ``` - *Type:* string --- ### CSVToAuroraTask CSVToAuroraTask is a demo construct to show import into a serverless Aurora DB. At the moment it also creates the Aurora Serverless RDS DB, initializes a table structure the matches the output of the GenerateCSV construct. The Step Functions flow expect a pointer to a CSV at "csv_output_location"."TextractOutputCSVPath" and uses that to execute a batch insert statement command. Example: ```python csv_to_aurora_task = tcdk.CSVToAuroraTask( self, "CsvToAurora", vpc=vpc, integration_pattern=sfn.IntegrationPattern.WAIT_FOR_TASK_TOKEN, lambda_log_level="DEBUG", timeout=Duration.hours(24), input=sfn.TaskInput.from_object({ "Token": sfn.JsonPath.task_token, "ExecutionId": sfn.JsonPath.string_at('$$.Execution.Id'), "Payload": sfn.JsonPath.entire_payload }), result_path="$.textract_result") ``` Input: "csv_output_location"."TextractOutputCSVPath" Output: CSV in Aurora Serverless DB, table name 'textractcsvimport" #### Initializers ```typescript import { CSVToAuroraTask } from 'amazon-textract-idp-cdk-constructs' new CSVToAuroraTask(scope: Construct, id: string, props: CSVToAuroraTaskProps) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | scope | constructs.Construct | *No description.* | | id | string | *No description.* | | props | CSVToAuroraTaskProps | *No description.* | --- ##### `scope`Required - *Type:* constructs.Construct --- ##### `id`Required - *Type:* string --- ##### `props`Required - *Type:* CSVToAuroraTaskProps --- #### Methods | **Name** | **Description** | | --- | --- | | toString | Returns a string representation of this construct. | | addPrefix | Add a prefix to the stateId of this state. | | bindToGraph | Register this state as part of the given graph. | | toStateJson | Return the Amazon States Language object for this state. | | addCatch | Add a recovery handler for this state. | | addRetry | Add retry configuration for this state. | | metric | Return the given named metric for this Task. | | metricFailed | Metric for the number of times this activity fails. | | metricHeartbeatTimedOut | Metric for the number of times the heartbeat times out for this activity. | | metricRunTime | The interval, in milliseconds, between the time the Task starts and the time it closes. | | metricScheduled | Metric for the number of times this activity is scheduled. | | metricScheduleTime | The interval, in milliseconds, for which the activity stays in the schedule state. | | metricStarted | Metric for the number of times this activity is started. | | metricSucceeded | Metric for the number of times this activity succeeds. | | metricTime | The interval, in milliseconds, between the time the activity is scheduled and the time it closes. | | metricTimedOut | Metric for the number of times this activity times out. | | next | Continue normal execution with the given state. | --- ##### `toString` ```typescript public toString(): string ``` Returns a string representation of this construct. ##### `addPrefix` ```typescript public addPrefix(x: string): void ``` Add a prefix to the stateId of this state. ###### `x`Required - *Type:* string --- ##### `bindToGraph` ```typescript public bindToGraph(graph: StateGraph): void ``` Register this state as part of the given graph. Don't call this. It will be called automatically when you work with states normally. ###### `graph`Required - *Type:* aws-cdk-lib.aws_stepfunctions.StateGraph --- ##### `toStateJson` ```typescript public toStateJson(): object ``` Return the Amazon States Language object for this state. ##### `addCatch` ```typescript public addCatch(handler: IChainable, props?: CatchProps): TaskStateBase ``` Add a recovery handler for this state. When a particular error occurs, execution will continue at the error handler instead of failing the state machine execution. ###### `handler`Required - *Type:* aws-cdk-lib.aws_stepfunctions.IChainable --- ###### `props`Optional - *Type:* aws-cdk-lib.aws_stepfunctions.CatchProps --- ##### `addRetry` ```typescript public addRetry(props?: RetryProps): TaskStateBase ``` Add retry configuration for this state. This controls if and how the execution will be retried if a particular error occurs. ###### `props`Optional - *Type:* aws-cdk-lib.aws_stepfunctions.RetryProps --- ##### `metric` ```typescript public metric(metricName: string, props?: MetricOptions): Metric ``` Return the given named metric for this Task. ###### `metricName`Required - *Type:* string --- ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricFailed` ```typescript public metricFailed(props?: MetricOptions): Metric ``` Metric for the number of times this activity fails. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricHeartbeatTimedOut` ```typescript public metricHeartbeatTimedOut(props?: MetricOptions): Metric ``` Metric for the number of times the heartbeat times out for this activity. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricRunTime` ```typescript public metricRunTime(props?: MetricOptions): Metric ``` The interval, in milliseconds, between the time the Task starts and the time it closes. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricScheduled` ```typescript public metricScheduled(props?: MetricOptions): Metric ``` Metric for the number of times this activity is scheduled. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricScheduleTime` ```typescript public metricScheduleTime(props?: MetricOptions): Metric ``` The interval, in milliseconds, for which the activity stays in the schedule state. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricStarted` ```typescript public metricStarted(props?: MetricOptions): Metric ``` Metric for the number of times this activity is started. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricSucceeded` ```typescript public metricSucceeded(props?: MetricOptions): Metric ``` Metric for the number of times this activity succeeds. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricTime` ```typescript public metricTime(props?: MetricOptions): Metric ``` The interval, in milliseconds, between the time the activity is scheduled and the time it closes. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricTimedOut` ```typescript public metricTimedOut(props?: MetricOptions): Metric ``` Metric for the number of times this activity times out. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `next` ```typescript public next(next: IChainable): Chain ``` Continue normal execution with the given state. ###### `next`Required - *Type:* aws-cdk-lib.aws_stepfunctions.IChainable --- #### Static Functions | **Name** | **Description** | | --- | --- | | isConstruct | Checks if `x` is a construct. | | filterNextables | Return only the states that allow chaining from an array of states. | | findReachableEndStates | Find the set of end states states reachable through transitions from the given start state. | | findReachableStates | Find the set of states reachable through transitions from the given start state. | | prefixStates | Add a prefix to the stateId of all States found in a construct tree. | --- ##### ~~`isConstruct`~~ ```typescript import { CSVToAuroraTask } from 'amazon-textract-idp-cdk-constructs' CSVToAuroraTask.isConstruct(x: any) ``` Checks if `x` is a construct. ###### `x`Required - *Type:* any Any object. --- ##### `filterNextables` ```typescript import { CSVToAuroraTask } from 'amazon-textract-idp-cdk-constructs' CSVToAuroraTask.filterNextables(states: State[]) ``` Return only the states that allow chaining from an array of states. ###### `states`Required - *Type:* aws-cdk-lib.aws_stepfunctions.State[] --- ##### `findReachableEndStates` ```typescript import { CSVToAuroraTask } from 'amazon-textract-idp-cdk-constructs' CSVToAuroraTask.findReachableEndStates(start: State, options?: FindStateOptions) ``` Find the set of end states states reachable through transitions from the given start state. ###### `start`Required - *Type:* aws-cdk-lib.aws_stepfunctions.State --- ###### `options`Optional - *Type:* aws-cdk-lib.aws_stepfunctions.FindStateOptions --- ##### `findReachableStates` ```typescript import { CSVToAuroraTask } from 'amazon-textract-idp-cdk-constructs' CSVToAuroraTask.findReachableStates(start: State, options?: FindStateOptions) ``` Find the set of states reachable through transitions from the given start state. This does not retrieve states from within sub-graphs, such as states within a Parallel state's branch. ###### `start`Required - *Type:* aws-cdk-lib.aws_stepfunctions.State --- ###### `options`Optional - *Type:* aws-cdk-lib.aws_stepfunctions.FindStateOptions --- ##### `prefixStates` ```typescript import { CSVToAuroraTask } from 'amazon-textract-idp-cdk-constructs' CSVToAuroraTask.prefixStates(root: IConstruct, prefix: string) ``` Add a prefix to the stateId of all States found in a construct tree. ###### `root`Required - *Type:* constructs.IConstruct --- ###### `prefix`Required - *Type:* string --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | | endStates | aws-cdk-lib.aws_stepfunctions.INextable[] | Continuable states of this Chainable. | | id | string | Descriptive identifier for this chainable. | | startState | aws-cdk-lib.aws_stepfunctions.State | First state of this Chainable. | | stateId | string | Tokenized string that evaluates to the state's ID. | | auroraSecurityGroup | aws-cdk-lib.aws_ec2.ISecurityGroup | *No description.* | | csvToAuroraFunction | aws-cdk-lib.aws_lambda.IFunction | *No description.* | | dbCluster | aws-cdk-lib.aws_rds.IServerlessCluster | *No description.* | | lambdaSecurityGroup | aws-cdk-lib.aws_ec2.ISecurityGroup | *No description.* | | stateMachine | aws-cdk-lib.aws_stepfunctions.IStateMachine | *No description.* | | version | string | *No description.* | | csvToAuroraNumberRowsInsertedMetric | aws-cdk-lib.aws_cloudwatch.IMetric | *No description.* | --- ##### `node`Required ```typescript public readonly node: Node; ``` - *Type:* constructs.Node The tree node. --- ##### `endStates`Required ```typescript public readonly endStates: INextable[]; ``` - *Type:* aws-cdk-lib.aws_stepfunctions.INextable[] Continuable states of this Chainable. --- ##### `id`Required ```typescript public readonly id: string; ``` - *Type:* string Descriptive identifier for this chainable. --- ##### `startState`Required ```typescript public readonly startState: State; ``` - *Type:* aws-cdk-lib.aws_stepfunctions.State First state of this Chainable. --- ##### `stateId`Required ```typescript public readonly stateId: string; ``` - *Type:* string Tokenized string that evaluates to the state's ID. --- ##### `auroraSecurityGroup`Required ```typescript public readonly auroraSecurityGroup: ISecurityGroup; ``` - *Type:* aws-cdk-lib.aws_ec2.ISecurityGroup --- ##### `csvToAuroraFunction`Required ```typescript public readonly csvToAuroraFunction: IFunction; ``` - *Type:* aws-cdk-lib.aws_lambda.IFunction --- ##### `dbCluster`Required ```typescript public readonly dbCluster: IServerlessCluster; ``` - *Type:* aws-cdk-lib.aws_rds.IServerlessCluster --- ##### `lambdaSecurityGroup`Required ```typescript public readonly lambdaSecurityGroup: ISecurityGroup; ``` - *Type:* aws-cdk-lib.aws_ec2.ISecurityGroup --- ##### `stateMachine`Required ```typescript public readonly stateMachine: IStateMachine; ``` - *Type:* aws-cdk-lib.aws_stepfunctions.IStateMachine --- ##### `version`Required ```typescript public readonly version: string; ``` - *Type:* string --- ##### `csvToAuroraNumberRowsInsertedMetric`Optional ```typescript public readonly csvToAuroraNumberRowsInsertedMetric: IMetric; ``` - *Type:* aws-cdk-lib.aws_cloudwatch.IMetric --- ### DocumentSplitter This construct takes in a manifest definition with just the s3Path:. example s3Path: {"s3Path": "s3://bucketname/prefix/image.png"} then it generated single page versions of the multi-page file. For PDF the output are single PDF files, for TIFF the output are single TIFF files. Example (Python) ```python ``` #### Initializers ```typescript import { DocumentSplitter } from 'amazon-textract-idp-cdk-constructs' new DocumentSplitter(parent: Construct, id: string, props: DocumentSplitterProps) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | parent | constructs.Construct | *No description.* | | id | string | *No description.* | | props | DocumentSplitterProps | *No description.* | --- ##### `parent`Required - *Type:* constructs.Construct --- ##### `id`Required - *Type:* string --- ##### `props`Required - *Type:* DocumentSplitterProps --- #### Methods | **Name** | **Description** | | --- | --- | | toString | Returns a string representation of this construct. | | next | Continue normal execution with the given state. | | prefixStates | Prefix the IDs of all states in this state machine fragment. | | toSingleState | Wrap all states in this state machine fragment up into a single state. | --- ##### `toString` ```typescript public toString(): string ``` Returns a string representation of this construct. ##### `next` ```typescript public next(next: IChainable): Chain ``` Continue normal execution with the given state. ###### `next`Required - *Type:* aws-cdk-lib.aws_stepfunctions.IChainable --- ##### `prefixStates` ```typescript public prefixStates(prefix?: string): StateMachineFragment ``` Prefix the IDs of all states in this state machine fragment. Use this to avoid multiple copies of the state machine all having the same state IDs. ###### `prefix`Optional - *Type:* string The prefix to add. Will use construct ID by default. --- ##### `toSingleState` ```typescript public toSingleState(options?: SingleStateOptions): Parallel ``` Wrap all states in this state machine fragment up into a single state. This can be used to add retry or error handling onto this state machine fragment. Be aware that this changes the result of the inner state machine to be an array with the result of the state machine in it. Adjust your paths accordingly. For example, change 'outputPath' to '$[0]'. ###### `options`Optional - *Type:* aws-cdk-lib.aws_stepfunctions.SingleStateOptions --- #### Static Functions | **Name** | **Description** | | --- | --- | | isConstruct | Checks if `x` is a construct. | --- ##### ~~`isConstruct`~~ ```typescript import { DocumentSplitter } from 'amazon-textract-idp-cdk-constructs' DocumentSplitter.isConstruct(x: any) ``` Checks if `x` is a construct. ###### `x`Required - *Type:* any Any object. --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | | endStates | aws-cdk-lib.aws_stepfunctions.INextable[] | The states to chain onto if this fragment is used. | | id | string | Descriptive identifier for this chainable. | | startState | aws-cdk-lib.aws_stepfunctions.State | The start state of this state machine fragment. | | splitterFunction | aws-cdk-lib.aws_lambda.IFunction | *No description.* | --- ##### `node`Required ```typescript public readonly node: Node; ``` - *Type:* constructs.Node The tree node. --- ##### `endStates`Required ```typescript public readonly endStates: INextable[]; ``` - *Type:* aws-cdk-lib.aws_stepfunctions.INextable[] The states to chain onto if this fragment is used. --- ##### `id`Required ```typescript public readonly id: string; ``` - *Type:* string Descriptive identifier for this chainable. --- ##### `startState`Required ```typescript public readonly startState: State; ``` - *Type:* aws-cdk-lib.aws_stepfunctions.State The start state of this state machine fragment. --- ##### `splitterFunction`Required ```typescript public readonly splitterFunction: IFunction; ``` - *Type:* aws-cdk-lib.aws_lambda.IFunction --- ### RDSAuroraServerless #### Initializers ```typescript import { RDSAuroraServerless } from 'amazon-textract-idp-cdk-constructs' new RDSAuroraServerless(scope: Construct, id: string, props: RDSAuroraServerlessProps) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | scope | constructs.Construct | *No description.* | | id | string | *No description.* | | props | RDSAuroraServerlessProps | *No description.* | --- ##### `scope`Required - *Type:* constructs.Construct --- ##### `id`Required - *Type:* string --- ##### `props`Required - *Type:* RDSAuroraServerlessProps --- #### Methods | **Name** | **Description** | | --- | --- | | toString | Returns a string representation of this construct. | --- ##### `toString` ```typescript public toString(): string ``` Returns a string representation of this construct. #### Static Functions | **Name** | **Description** | | --- | --- | | isConstruct | Checks if `x` is a construct. | --- ##### ~~`isConstruct`~~ ```typescript import { RDSAuroraServerless } from 'amazon-textract-idp-cdk-constructs' RDSAuroraServerless.isConstruct(x: any) ``` Checks if `x` is a construct. ###### `x`Required - *Type:* any Any object. --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | | props | RDSAuroraServerlessProps | *No description.* | | auroraSecurityGroup | aws-cdk-lib.aws_ec2.ISecurityGroup | *No description.* | | dbCluster | aws-cdk-lib.aws_rds.IServerlessCluster | *No description.* | | lambdaSecurityGroup | aws-cdk-lib.aws_ec2.ISecurityGroup | *No description.* | --- ##### `node`Required ```typescript public readonly node: Node; ``` - *Type:* constructs.Node The tree node. --- ##### `props`Required ```typescript public readonly props: RDSAuroraServerlessProps; ``` - *Type:* RDSAuroraServerlessProps --- ##### `auroraSecurityGroup`Required ```typescript public readonly auroraSecurityGroup: ISecurityGroup; ``` - *Type:* aws-cdk-lib.aws_ec2.ISecurityGroup --- ##### `dbCluster`Required ```typescript public readonly dbCluster: IServerlessCluster; ``` - *Type:* aws-cdk-lib.aws_rds.IServerlessCluster --- ##### `lambdaSecurityGroup`Required ```typescript public readonly lambdaSecurityGroup: ISecurityGroup; ``` - *Type:* aws-cdk-lib.aws_ec2.ISecurityGroup --- ### SearchablePDF This construct takes in a JSON with two s3 Paths, s3TextractOutput, s3PDFBucket. example s3Path: {"s3TextractOutput": "s3://bucketname/prefix/1"} {"s3PDFBucket": "s3://bucketname/prefix/document.pdf"} ``` #### Initializers ```typescript import { SearchablePDF } from 'amazon-textract-idp-cdk-constructs' new SearchablePDF(parent: Construct, id: string, props: SearchablePDFProps) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | parent | constructs.Construct | *No description.* | | id | string | *No description.* | | props | SearchablePDFProps | *No description.* | --- ##### `parent`Required - *Type:* constructs.Construct --- ##### `id`Required - *Type:* string --- ##### `props`Required - *Type:* SearchablePDFProps --- #### Methods | **Name** | **Description** | | --- | --- | | toString | Returns a string representation of this construct. | | next | Continue normal execution with the given state. | | prefixStates | Prefix the IDs of all states in this state machine fragment. | | toSingleState | Wrap all states in this state machine fragment up into a single state. | --- ##### `toString` ```typescript public toString(): string ``` Returns a string representation of this construct. ##### `next` ```typescript public next(next: IChainable): Chain ``` Continue normal execution with the given state. ###### `next`Required - *Type:* aws-cdk-lib.aws_stepfunctions.IChainable --- ##### `prefixStates` ```typescript public prefixStates(prefix?: string): StateMachineFragment ``` Prefix the IDs of all states in this state machine fragment. Use this to avoid multiple copies of the state machine all having the same state IDs. ###### `prefix`Optional - *Type:* string The prefix to add. Will use construct ID by default. --- ##### `toSingleState` ```typescript public toSingleState(options?: SingleStateOptions): Parallel ``` Wrap all states in this state machine fragment up into a single state. This can be used to add retry or error handling onto this state machine fragment. Be aware that this changes the result of the inner state machine to be an array with the result of the state machine in it. Adjust your paths accordingly. For example, change 'outputPath' to '$[0]'. ###### `options`Optional - *Type:* aws-cdk-lib.aws_stepfunctions.SingleStateOptions --- #### Static Functions | **Name** | **Description** | | --- | --- | | isConstruct | Checks if `x` is a construct. | --- ##### ~~`isConstruct`~~ ```typescript import { SearchablePDF } from 'amazon-textract-idp-cdk-constructs' SearchablePDF.isConstruct(x: any) ``` Checks if `x` is a construct. ###### `x`Required - *Type:* any Any object. --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | | endStates | aws-cdk-lib.aws_stepfunctions.INextable[] | The states to chain onto if this fragment is used. | | id | string | Descriptive identifier for this chainable. | | startState | aws-cdk-lib.aws_stepfunctions.State | The start state of this state machine fragment. | | searchablePDFFunction | aws-cdk-lib.aws_lambda.IFunction | *No description.* | --- ##### `node`Required ```typescript public readonly node: Node; ``` - *Type:* constructs.Node The tree node. --- ##### `endStates`Required ```typescript public readonly endStates: INextable[]; ``` - *Type:* aws-cdk-lib.aws_stepfunctions.INextable[] The states to chain onto if this fragment is used. --- ##### `id`Required ```typescript public readonly id: string; ``` - *Type:* string Descriptive identifier for this chainable. --- ##### `startState`Required ```typescript public readonly startState: State; ``` - *Type:* aws-cdk-lib.aws_stepfunctions.State The start state of this state machine fragment. --- ##### `searchablePDFFunction`Required ```typescript public readonly searchablePDFFunction: IFunction; ``` - *Type:* aws-cdk-lib.aws_lambda.IFunction --- ### SFExecutionsStartThrottle This construct starts State Machine executions based on events, but limits the number of concurrent running executions to a threshold number - S3 - API Gateway - SQS This version does not yet support passing in a manifest for configuration of Textract features. That will be a future enhancement. The following resources are created: - Lambda function - DynamoDB table. For every document pass in an entry in a DynamoDB table is created with a status (RECEIVED, QUEUED, IN_PROGRESS) #### Initializers ```typescript import { SFExecutionsStartThrottle } from 'amazon-textract-idp-cdk-constructs' new SFExecutionsStartThrottle(parent: Construct, id: string, props: SFExecutionsStartThrottleProps) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | parent | constructs.Construct | *No description.* | | id | string | *No description.* | | props | SFExecutionsStartThrottleProps | *No description.* | --- ##### `parent`Required - *Type:* constructs.Construct --- ##### `id`Required - *Type:* string --- ##### `props`Required - *Type:* SFExecutionsStartThrottleProps --- #### Methods | **Name** | **Description** | | --- | --- | | toString | Returns a string representation of this construct. | --- ##### `toString` ```typescript public toString(): string ``` Returns a string representation of this construct. #### Static Functions | **Name** | **Description** | | --- | --- | | isConstruct | Checks if `x` is a construct. | --- ##### ~~`isConstruct`~~ ```typescript import { SFExecutionsStartThrottle } from 'amazon-textract-idp-cdk-constructs' SFExecutionsStartThrottle.isConstruct(x: any) ``` Checks if `x` is a construct. ###### `x`Required - *Type:* any Any object. --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | | executionsQueueWorkerFunction | aws-cdk-lib.aws_lambda.IFunction | *No description.* | | executionsStartThrottleFunction | aws-cdk-lib.aws_lambda.IFunction | *No description.* | | executionsThrottleCounterResetFunction | aws-cdk-lib.aws_lambda.IFunction | *No description.* | | documentQueue | aws-cdk-lib.aws_sqs.IQueue | *No description.* | | documentStatusTable | aws-cdk-lib.aws_dynamodb.ITable | *No description.* | | executionsCounterTable | aws-cdk-lib.aws_dynamodb.ITable | *No description.* | --- ##### `node`Required ```typescript public readonly node: Node; ``` - *Type:* constructs.Node The tree node. --- ##### `executionsQueueWorkerFunction`Required ```typescript public readonly executionsQueueWorkerFunction: IFunction; ``` - *Type:* aws-cdk-lib.aws_lambda.IFunction --- ##### `executionsStartThrottleFunction`Required ```typescript public readonly executionsStartThrottleFunction: IFunction; ``` - *Type:* aws-cdk-lib.aws_lambda.IFunction --- ##### `executionsThrottleCounterResetFunction`Required ```typescript public readonly executionsThrottleCounterResetFunction: IFunction; ``` - *Type:* aws-cdk-lib.aws_lambda.IFunction --- ##### `documentQueue`Optional ```typescript public readonly documentQueue: IQueue; ``` - *Type:* aws-cdk-lib.aws_sqs.IQueue --- ##### `documentStatusTable`Optional ```typescript public readonly documentStatusTable: ITable; ``` - *Type:* aws-cdk-lib.aws_dynamodb.ITable --- ##### `executionsCounterTable`Optional ```typescript public readonly executionsCounterTable: ITable; ``` - *Type:* aws-cdk-lib.aws_dynamodb.ITable --- ### SpacySfnTask Deploys a Lambda Container with a Spacy NLP model to call textcat. Input: "textract_result"."txt_output_location" Output: { "documentType": "AWS_PAYSTUBS" } (example will be at "classification"."documentType") Example (Python) ```python spacy_classification_task = tcdk.SpacySfnTask( self, "Classification", integration_pattern=sfn.IntegrationPattern.WAIT_FOR_TASK_TOKEN, lambda_log_level="DEBUG", timeout=Duration.hours(24), input=sfn.TaskInput.from_object({ "Token": sfn.JsonPath.task_token, "ExecutionId": sfn.JsonPath.string_at('$$.Execution.Id'), "Payload": sfn.JsonPath.entire_payload, }), result_path="$.classification") ``` #### Initializers ```typescript import { SpacySfnTask } from 'amazon-textract-idp-cdk-constructs' new SpacySfnTask(scope: Construct, id: string, props: SpacySfnTaskProps) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | scope | constructs.Construct | *No description.* | | id | string | *No description.* | | props | SpacySfnTaskProps | *No description.* | --- ##### `scope`Required - *Type:* constructs.Construct --- ##### `id`Required - *Type:* string --- ##### `props`Required - *Type:* SpacySfnTaskProps --- #### Methods | **Name** | **Description** | | --- | --- | | toString | Returns a string representation of this construct. | | addPrefix | Add a prefix to the stateId of this state. | | bindToGraph | Register this state as part of the given graph. | | toStateJson | Return the Amazon States Language object for this state. | | addCatch | Add a recovery handler for this state. | | addRetry | Add retry configuration for this state. | | metric | Return the given named metric for this Task. | | metricFailed | Metric for the number of times this activity fails. | | metricHeartbeatTimedOut | Metric for the number of times the heartbeat times out for this activity. | | metricRunTime | The interval, in milliseconds, between the time the Task starts and the time it closes. | | metricScheduled | Metric for the number of times this activity is scheduled. | | metricScheduleTime | The interval, in milliseconds, for which the activity stays in the schedule state. | | metricStarted | Metric for the number of times this activity is started. | | metricSucceeded | Metric for the number of times this activity succeeds. | | metricTime | The interval, in milliseconds, between the time the activity is scheduled and the time it closes. | | metricTimedOut | Metric for the number of times this activity times out. | | next | Continue normal execution with the given state. | --- ##### `toString` ```typescript public toString(): string ``` Returns a string representation of this construct. ##### `addPrefix` ```typescript public addPrefix(x: string): void ``` Add a prefix to the stateId of this state. ###### `x`Required - *Type:* string --- ##### `bindToGraph` ```typescript public bindToGraph(graph: StateGraph): void ``` Register this state as part of the given graph. Don't call this. It will be called automatically when you work with states normally. ###### `graph`Required - *Type:* aws-cdk-lib.aws_stepfunctions.StateGraph --- ##### `toStateJson` ```typescript public toStateJson(): object ``` Return the Amazon States Language object for this state. ##### `addCatch` ```typescript public addCatch(handler: IChainable, props?: CatchProps): TaskStateBase ``` Add a recovery handler for this state. When a particular error occurs, execution will continue at the error handler instead of failing the state machine execution. ###### `handler`Required - *Type:* aws-cdk-lib.aws_stepfunctions.IChainable --- ###### `props`Optional - *Type:* aws-cdk-lib.aws_stepfunctions.CatchProps --- ##### `addRetry` ```typescript public addRetry(props?: RetryProps): TaskStateBase ``` Add retry configuration for this state. This controls if and how the execution will be retried if a particular error occurs. ###### `props`Optional - *Type:* aws-cdk-lib.aws_stepfunctions.RetryProps --- ##### `metric` ```typescript public metric(metricName: string, props?: MetricOptions): Metric ``` Return the given named metric for this Task. ###### `metricName`Required - *Type:* string --- ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricFailed` ```typescript public metricFailed(props?: MetricOptions): Metric ``` Metric for the number of times this activity fails. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricHeartbeatTimedOut` ```typescript public metricHeartbeatTimedOut(props?: MetricOptions): Metric ``` Metric for the number of times the heartbeat times out for this activity. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricRunTime` ```typescript public metricRunTime(props?: MetricOptions): Metric ``` The interval, in milliseconds, between the time the Task starts and the time it closes. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricScheduled` ```typescript public metricScheduled(props?: MetricOptions): Metric ``` Metric for the number of times this activity is scheduled. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricScheduleTime` ```typescript public metricScheduleTime(props?: MetricOptions): Metric ``` The interval, in milliseconds, for which the activity stays in the schedule state. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricStarted` ```typescript public metricStarted(props?: MetricOptions): Metric ``` Metric for the number of times this activity is started. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricSucceeded` ```typescript public metricSucceeded(props?: MetricOptions): Metric ``` Metric for the number of times this activity succeeds. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricTime` ```typescript public metricTime(props?: MetricOptions): Metric ``` The interval, in milliseconds, between the time the activity is scheduled and the time it closes. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricTimedOut` ```typescript public metricTimedOut(props?: MetricOptions): Metric ``` Metric for the number of times this activity times out. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `next` ```typescript public next(next: IChainable): Chain ``` Continue normal execution with the given state. ###### `next`Required - *Type:* aws-cdk-lib.aws_stepfunctions.IChainable --- #### Static Functions | **Name** | **Description** | | --- | --- | | isConstruct | Checks if `x` is a construct. | | filterNextables | Return only the states that allow chaining from an array of states. | | findReachableEndStates | Find the set of end states states reachable through transitions from the given start state. | | findReachableStates | Find the set of states reachable through transitions from the given start state. | | prefixStates | Add a prefix to the stateId of all States found in a construct tree. | --- ##### ~~`isConstruct`~~ ```typescript import { SpacySfnTask } from 'amazon-textract-idp-cdk-constructs' SpacySfnTask.isConstruct(x: any) ``` Checks if `x` is a construct. ###### `x`Required - *Type:* any Any object. --- ##### `filterNextables` ```typescript import { SpacySfnTask } from 'amazon-textract-idp-cdk-constructs' SpacySfnTask.filterNextables(states: State[]) ``` Return only the states that allow chaining from an array of states. ###### `states`Required - *Type:* aws-cdk-lib.aws_stepfunctions.State[] --- ##### `findReachableEndStates` ```typescript import { SpacySfnTask } from 'amazon-textract-idp-cdk-constructs' SpacySfnTask.findReachableEndStates(start: State, options?: FindStateOptions) ``` Find the set of end states states reachable through transitions from the given start state. ###### `start`Required - *Type:* aws-cdk-lib.aws_stepfunctions.State --- ###### `options`Optional - *Type:* aws-cdk-lib.aws_stepfunctions.FindStateOptions --- ##### `findReachableStates` ```typescript import { SpacySfnTask } from 'amazon-textract-idp-cdk-constructs' SpacySfnTask.findReachableStates(start: State, options?: FindStateOptions) ``` Find the set of states reachable through transitions from the given start state. This does not retrieve states from within sub-graphs, such as states within a Parallel state's branch. ###### `start`Required - *Type:* aws-cdk-lib.aws_stepfunctions.State --- ###### `options`Optional - *Type:* aws-cdk-lib.aws_stepfunctions.FindStateOptions --- ##### `prefixStates` ```typescript import { SpacySfnTask } from 'amazon-textract-idp-cdk-constructs' SpacySfnTask.prefixStates(root: IConstruct, prefix: string) ``` Add a prefix to the stateId of all States found in a construct tree. ###### `root`Required - *Type:* constructs.IConstruct --- ###### `prefix`Required - *Type:* string --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | | endStates | aws-cdk-lib.aws_stepfunctions.INextable[] | Continuable states of this Chainable. | | id | string | Descriptive identifier for this chainable. | | startState | aws-cdk-lib.aws_stepfunctions.State | First state of this Chainable. | | stateId | string | Tokenized string that evaluates to the state's ID. | | spacyCallFunction | aws-cdk-lib.aws_lambda.IFunction | *No description.* | | spacySyncLambdaLogGroup | aws-cdk-lib.aws_logs.ILogGroup | *No description.* | | stateMachine | aws-cdk-lib.aws_stepfunctions.IStateMachine | *No description.* | | version | string | *No description.* | --- ##### `node`Required ```typescript public readonly node: Node; ``` - *Type:* constructs.Node The tree node. --- ##### `endStates`Required ```typescript public readonly endStates: INextable[]; ``` - *Type:* aws-cdk-lib.aws_stepfunctions.INextable[] Continuable states of this Chainable. --- ##### `id`Required ```typescript public readonly id: string; ``` - *Type:* string Descriptive identifier for this chainable. --- ##### `startState`Required ```typescript public readonly startState: State; ``` - *Type:* aws-cdk-lib.aws_stepfunctions.State First state of this Chainable. --- ##### `stateId`Required ```typescript public readonly stateId: string; ``` - *Type:* string Tokenized string that evaluates to the state's ID. --- ##### `spacyCallFunction`Required ```typescript public readonly spacyCallFunction: IFunction; ``` - *Type:* aws-cdk-lib.aws_lambda.IFunction --- ##### `spacySyncLambdaLogGroup`Required ```typescript public readonly spacySyncLambdaLogGroup: ILogGroup; ``` - *Type:* aws-cdk-lib.aws_logs.ILogGroup --- ##### `stateMachine`Required ```typescript public readonly stateMachine: IStateMachine; ``` - *Type:* aws-cdk-lib.aws_stepfunctions.IStateMachine --- ##### `version`Required ```typescript public readonly version: string; ``` - *Type:* string --- ### TextractA2ISfnTask Calls and A2I endpoint arn with a task_token and waits for the A2I job to finish in order to continue the workflow. Basic implementation Input: "Payload"."a2iInputPath" Output: ```json { 'humanLoopStatus': human_loop_status, 'humanLoopResultPath': human_loop_result, 'humanLoopCreationTime': human_loop_creation_time, } ``` ```python textract_a2i_task = tcdk.TextractA2ISfnTask( self, "TextractA2I", a2i_flow_definition_arn= "arn:aws:sagemaker:us-east-1:913165245630:flow-definition/textract-classifiction", integration_pattern=sfn.IntegrationPattern.WAIT_FOR_TASK_TOKEN, lambda_log_level="DEBUG", timeout=Duration.hours(24), input=sfn.TaskInput.from_object({ "Token": sfn.JsonPath.task_token, "ExecutionId": sfn.JsonPath.string_at('$$.Execution.Id'), "Payload": sfn.JsonPath.entire_payload, }), result_path="$.a2i_result") ``` #### Initializers ```typescript import { TextractA2ISfnTask } from 'amazon-textract-idp-cdk-constructs' new TextractA2ISfnTask(scope: Construct, id: string, props: TextractA2ISfnTaskProps) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | scope | constructs.Construct | *No description.* | | id | string | *No description.* | | props | TextractA2ISfnTaskProps | *No description.* | --- ##### `scope`Required - *Type:* constructs.Construct --- ##### `id`Required - *Type:* string --- ##### `props`Required - *Type:* TextractA2ISfnTaskProps --- #### Methods | **Name** | **Description** | | --- | --- | | toString | Returns a string representation of this construct. | | addPrefix | Add a prefix to the stateId of this state. | | bindToGraph | Register this state as part of the given graph. | | toStateJson | Return the Amazon States Language object for this state. | | addCatch | Add a recovery handler for this state. | | addRetry | Add retry configuration for this state. | | metric | Return the given named metric for this Task. | | metricFailed | Metric for the number of times this activity fails. | | metricHeartbeatTimedOut | Metric for the number of times the heartbeat times out for this activity. | | metricRunTime | The interval, in milliseconds, between the time the Task starts and the time it closes. | | metricScheduled | Metric for the number of times this activity is scheduled. | | metricScheduleTime | The interval, in milliseconds, for which the activity stays in the schedule state. | | metricStarted | Metric for the number of times this activity is started. | | metricSucceeded | Metric for the number of times this activity succeeds. | | metricTime | The interval, in milliseconds, between the time the activity is scheduled and the time it closes. | | metricTimedOut | Metric for the number of times this activity times out. | | next | Continue normal execution with the given state. | --- ##### `toString` ```typescript public toString(): string ``` Returns a string representation of this construct. ##### `addPrefix` ```typescript public addPrefix(x: string): void ``` Add a prefix to the stateId of this state. ###### `x`Required - *Type:* string --- ##### `bindToGraph` ```typescript public bindToGraph(graph: StateGraph): void ``` Register this state as part of the given graph. Don't call this. It will be called automatically when you work with states normally. ###### `graph`Required - *Type:* aws-cdk-lib.aws_stepfunctions.StateGraph --- ##### `toStateJson` ```typescript public toStateJson(): object ``` Return the Amazon States Language object for this state. ##### `addCatch` ```typescript public addCatch(handler: IChainable, props?: CatchProps): TaskStateBase ``` Add a recovery handler for this state. When a particular error occurs, execution will continue at the error handler instead of failing the state machine execution. ###### `handler`Required - *Type:* aws-cdk-lib.aws_stepfunctions.IChainable --- ###### `props`Optional - *Type:* aws-cdk-lib.aws_stepfunctions.CatchProps --- ##### `addRetry` ```typescript public addRetry(props?: RetryProps): TaskStateBase ``` Add retry configuration for this state. This controls if and how the execution will be retried if a particular error occurs. ###### `props`Optional - *Type:* aws-cdk-lib.aws_stepfunctions.RetryProps --- ##### `metric` ```typescript public metric(metricName: string, props?: MetricOptions): Metric ``` Return the given named metric for this Task. ###### `metricName`Required - *Type:* string --- ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricFailed` ```typescript public metricFailed(props?: MetricOptions): Metric ``` Metric for the number of times this activity fails. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricHeartbeatTimedOut` ```typescript public metricHeartbeatTimedOut(props?: MetricOptions): Metric ``` Metric for the number of times the heartbeat times out for this activity. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricRunTime` ```typescript public metricRunTime(props?: MetricOptions): Metric ``` The interval, in milliseconds, between the time the Task starts and the time it closes. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricScheduled` ```typescript public metricScheduled(props?: MetricOptions): Metric ``` Metric for the number of times this activity is scheduled. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricScheduleTime` ```typescript public metricScheduleTime(props?: MetricOptions): Metric ``` The interval, in milliseconds, for which the activity stays in the schedule state. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricStarted` ```typescript public metricStarted(props?: MetricOptions): Metric ``` Metric for the number of times this activity is started. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricSucceeded` ```typescript public metricSucceeded(props?: MetricOptions): Metric ``` Metric for the number of times this activity succeeds. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricTime` ```typescript public metricTime(props?: MetricOptions): Metric ``` The interval, in milliseconds, between the time the activity is scheduled and the time it closes. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricTimedOut` ```typescript public metricTimedOut(props?: MetricOptions): Metric ``` Metric for the number of times this activity times out. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `next` ```typescript public next(next: IChainable): Chain ``` Continue normal execution with the given state. ###### `next`Required - *Type:* aws-cdk-lib.aws_stepfunctions.IChainable --- #### Static Functions | **Name** | **Description** | | --- | --- | | isConstruct | Checks if `x` is a construct. | | filterNextables | Return only the states that allow chaining from an array of states. | | findReachableEndStates | Find the set of end states states reachable through transitions from the given start state. | | findReachableStates | Find the set of states reachable through transitions from the given start state. | | prefixStates | Add a prefix to the stateId of all States found in a construct tree. | --- ##### ~~`isConstruct`~~ ```typescript import { TextractA2ISfnTask } from 'amazon-textract-idp-cdk-constructs' TextractA2ISfnTask.isConstruct(x: any) ``` Checks if `x` is a construct. ###### `x`Required - *Type:* any Any object. --- ##### `filterNextables` ```typescript import { TextractA2ISfnTask } from 'amazon-textract-idp-cdk-constructs' TextractA2ISfnTask.filterNextables(states: State[]) ``` Return only the states that allow chaining from an array of states. ###### `states`Required - *Type:* aws-cdk-lib.aws_stepfunctions.State[] --- ##### `findReachableEndStates` ```typescript import { TextractA2ISfnTask } from 'amazon-textract-idp-cdk-constructs' TextractA2ISfnTask.findReachableEndStates(start: State, options?: FindStateOptions) ``` Find the set of end states states reachable through transitions from the given start state. ###### `start`Required - *Type:* aws-cdk-lib.aws_stepfunctions.State --- ###### `options`Optional - *Type:* aws-cdk-lib.aws_stepfunctions.FindStateOptions --- ##### `findReachableStates` ```typescript import { TextractA2ISfnTask } from 'amazon-textract-idp-cdk-constructs' TextractA2ISfnTask.findReachableStates(start: State, options?: FindStateOptions) ``` Find the set of states reachable through transitions from the given start state. This does not retrieve states from within sub-graphs, such as states within a Parallel state's branch. ###### `start`Required - *Type:* aws-cdk-lib.aws_stepfunctions.State --- ###### `options`Optional - *Type:* aws-cdk-lib.aws_stepfunctions.FindStateOptions --- ##### `prefixStates` ```typescript import { TextractA2ISfnTask } from 'amazon-textract-idp-cdk-constructs' TextractA2ISfnTask.prefixStates(root: IConstruct, prefix: string) ``` Add a prefix to the stateId of all States found in a construct tree. ###### `root`Required - *Type:* constructs.IConstruct --- ###### `prefix`Required - *Type:* string --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | | endStates | aws-cdk-lib.aws_stepfunctions.INextable[] | Continuable states of this Chainable. | | id | string | Descriptive identifier for this chainable. | | startState | aws-cdk-lib.aws_stepfunctions.State | First state of this Chainable. | | stateId | string | Tokenized string that evaluates to the state's ID. | | stateMachine | aws-cdk-lib.aws_stepfunctions.IStateMachine | *No description.* | | taskTokenTableName | string | *No description.* | | version | string | *No description.* | --- ##### `node`Required ```typescript public readonly node: Node; ``` - *Type:* constructs.Node The tree node. --- ##### `endStates`Required ```typescript public readonly endStates: INextable[]; ``` - *Type:* aws-cdk-lib.aws_stepfunctions.INextable[] Continuable states of this Chainable. --- ##### `id`Required ```typescript public readonly id: string; ``` - *Type:* string Descriptive identifier for this chainable. --- ##### `startState`Required ```typescript public readonly startState: State; ``` - *Type:* aws-cdk-lib.aws_stepfunctions.State First state of this Chainable. --- ##### `stateId`Required ```typescript public readonly stateId: string; ``` - *Type:* string Tokenized string that evaluates to the state's ID. --- ##### `stateMachine`Required ```typescript public readonly stateMachine: IStateMachine; ``` - *Type:* aws-cdk-lib.aws_stepfunctions.IStateMachine --- ##### `taskTokenTableName`Required ```typescript public readonly taskTokenTableName: string; ``` - *Type:* string --- ##### `version`Required ```typescript public readonly version: string; ``` - *Type:* string --- ### TextractAsyncToJSON combines the potentially paginated response from async Textract calls and stores as one combines JSON. This construct is not memory optimzed (yet) and will combine all JSON by loading them to memory. Large responses could exceed the memory potentially, the memory size is set to Lambda max. Reduce the memory size to your needs if your processing does not yield large responses to save Lamda cost. Input: "textract_result"."TextractTempOutputJsonPath" Output: "TextractOutputJsonPath" Example (Python) ```python textract_async_to_json = tcdk.TextractAsyncToJSON( self, "TextractAsyncToJSON2", s3_output_prefix=s3_output_prefix, s3_output_bucket=s3_output_bucket) ``` #### Initializers ```typescript import { TextractAsyncToJSON } from 'amazon-textract-idp-cdk-constructs' new TextractAsyncToJSON(parent: Construct, id: string, props: TextractAsyncToJSONProps) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | parent | constructs.Construct | *No description.* | | id | string | *No description.* | | props | TextractAsyncToJSONProps | *No description.* | --- ##### `parent`Required - *Type:* constructs.Construct --- ##### `id`Required - *Type:* string --- ##### `props`Required - *Type:* TextractAsyncToJSONProps --- #### Methods | **Name** | **Description** | | --- | --- | | toString | Returns a string representation of this construct. | | next | Continue normal execution with the given state. | | prefixStates | Prefix the IDs of all states in this state machine fragment. | | toSingleState | Wrap all states in this state machine fragment up into a single state. | --- ##### `toString` ```typescript public toString(): string ``` Returns a string representation of this construct. ##### `next` ```typescript public next(next: IChainable): Chain ``` Continue normal execution with the given state. ###### `next`Required - *Type:* aws-cdk-lib.aws_stepfunctions.IChainable --- ##### `prefixStates` ```typescript public prefixStates(prefix?: string): StateMachineFragment ``` Prefix the IDs of all states in this state machine fragment. Use this to avoid multiple copies of the state machine all having the same state IDs. ###### `prefix`Optional - *Type:* string The prefix to add. Will use construct ID by default. --- ##### `toSingleState` ```typescript public toSingleState(options?: SingleStateOptions): Parallel ``` Wrap all states in this state machine fragment up into a single state. This can be used to add retry or error handling onto this state machine fragment. Be aware that this changes the result of the inner state machine to be an array with the result of the state machine in it. Adjust your paths accordingly. For example, change 'outputPath' to '$[0]'. ###### `options`Optional - *Type:* aws-cdk-lib.aws_stepfunctions.SingleStateOptions --- #### Static Functions | **Name** | **Description** | | --- | --- | | isConstruct | Checks if `x` is a construct. | --- ##### ~~`isConstruct`~~ ```typescript import { TextractAsyncToJSON } from 'amazon-textract-idp-cdk-constructs' TextractAsyncToJSON.isConstruct(x: any) ``` Checks if `x` is a construct. ###### `x`Required - *Type:* any Any object. --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | | endStates | aws-cdk-lib.aws_stepfunctions.INextable[] | The states to chain onto if this fragment is used. | | id | string | Descriptive identifier for this chainable. | | startState | aws-cdk-lib.aws_stepfunctions.State | The start state of this state machine fragment. | | asyncToJSONFunction | aws-cdk-lib.aws_lambda.IFunction | *No description.* | --- ##### `node`Required ```typescript public readonly node: Node; ``` - *Type:* constructs.Node The tree node. --- ##### `endStates`Required ```typescript public readonly endStates: INextable[]; ``` - *Type:* aws-cdk-lib.aws_stepfunctions.INextable[] The states to chain onto if this fragment is used. --- ##### `id`Required ```typescript public readonly id: string; ``` - *Type:* string Descriptive identifier for this chainable. --- ##### `startState`Required ```typescript public readonly startState: State; ``` - *Type:* aws-cdk-lib.aws_stepfunctions.State The start state of this state machine fragment. --- ##### `asyncToJSONFunction`Required ```typescript public readonly asyncToJSONFunction: IFunction; ``` - *Type:* aws-cdk-lib.aws_lambda.IFunction --- ### TextractClassificationConfigurator Looks for a matching DOCYMENT_TYPE in the configurationTableName and sets the CONFIG value (when found) to the context, so subsequent calls to Textract use those values. This is an entry from the default config AWS_PAYSTUBS,"{""queriesConfig"": [{""alias"": ""PAYSTUB_PERIOD_START_DATE"", ""text"": ""What is the Pay Period Start Date?""}, {""alias"": ""PAYSTUB_PERIOD_END_DATE"", ""text"": ""What is the Pay Period End Date?""}, {""alias"": ""PAYSTUB_PERIOD_PAY_DATE"", ""text"": ""What is the Pay Date?""}, {""alias"": ""PAYSTUB_PERIOD_EMPLOYEE_NAME"", ""text"": ""What is the Employee Name?""}, {""alias"": ""PAYSTUB_PERIOD_COMPANY_NAME"", ""text"": ""What is the company Name?""}, {""alias"": ""PAYSTUB_PERIOD_CURRENT_GROSS_PAY"", ""text"": ""What is the Current Gross Pay?""}, {""alias"": ""PAYSTUB_PERIOD_YTD_GROSS_PAY"", ""text"": ""What is the YTD Gross Pay?""}, {""alias"": ""PAYSTUB_PERIOD_REGULAR_HOURLY_RATE"", ""text"": ""What is the regular hourly rate?""}, {""alias"": ""PAYSTUB_PERIOD_HOLIDAY_RATE"", ""text"": ""What is the holiday rate?""}], ""textractFeatures"": [""QUERIES""]}" So, if the "classification"."documentType" in the Step Function Input is AWS_PAYSTUBS then it will set the queriesConfig in the manifest for the subsequent Textract Calls in the Step Function flow Input: "classification"."documentType" Output: config set to manifest Example (Python) ``` configurator_task = tcdk.TextractClassificationConfigurator( self, f"{workflow_name}-Configurator", ) ``` #### Initializers ```typescript import { TextractClassificationConfigurator } from 'amazon-textract-idp-cdk-constructs' new TextractClassificationConfigurator(parent: Construct, id: string, props: TextractClassificationConfiguratorProps) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | parent | constructs.Construct | *No description.* | | id | string | *No description.* | | props | TextractClassificationConfiguratorProps | *No description.* | --- ##### `parent`Required - *Type:* constructs.Construct --- ##### `id`Required - *Type:* string --- ##### `props`Required - *Type:* TextractClassificationConfiguratorProps --- #### Methods | **Name** | **Description** | | --- | --- | | toString | Returns a string representation of this construct. | | next | Continue normal execution with the given state. | | prefixStates | Prefix the IDs of all states in this state machine fragment. | | toSingleState | Wrap all states in this state machine fragment up into a single state. | --- ##### `toString` ```typescript public toString(): string ``` Returns a string representation of this construct. ##### `next` ```typescript public next(next: IChainable): Chain ``` Continue normal execution with the given state. ###### `next`Required - *Type:* aws-cdk-lib.aws_stepfunctions.IChainable --- ##### `prefixStates` ```typescript public prefixStates(prefix?: string): StateMachineFragment ``` Prefix the IDs of all states in this state machine fragment. Use this to avoid multiple copies of the state machine all having the same state IDs. ###### `prefix`Optional - *Type:* string The prefix to add. Will use construct ID by default. --- ##### `toSingleState` ```typescript public toSingleState(options?: SingleStateOptions): Parallel ``` Wrap all states in this state machine fragment up into a single state. This can be used to add retry or error handling onto this state machine fragment. Be aware that this changes the result of the inner state machine to be an array with the result of the state machine in it. Adjust your paths accordingly. For example, change 'outputPath' to '$[0]'. ###### `options`Optional - *Type:* aws-cdk-lib.aws_stepfunctions.SingleStateOptions --- #### Static Functions | **Name** | **Description** | | --- | --- | | isConstruct | Checks if `x` is a construct. | --- ##### ~~`isConstruct`~~ ```typescript import { TextractClassificationConfigurator } from 'amazon-textract-idp-cdk-constructs' TextractClassificationConfigurator.isConstruct(x: any) ``` Checks if `x` is a construct. ###### `x`Required - *Type:* any Any object. --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | | endStates | aws-cdk-lib.aws_stepfunctions.INextable[] | The states to chain onto if this fragment is used. | | id | string | Descriptive identifier for this chainable. | | startState | aws-cdk-lib.aws_stepfunctions.State | The start state of this state machine fragment. | | configurationTable | aws-cdk-lib.aws_dynamodb.ITable | *No description.* | | configurationTableName | string | *No description.* | | configuratorFunction | aws-cdk-lib.aws_lambda.IFunction | *No description.* | --- ##### `node`Required ```typescript public readonly node: Node; ``` - *Type:* constructs.Node The tree node. --- ##### `endStates`Required ```typescript public readonly endStates: INextable[]; ``` - *Type:* aws-cdk-lib.aws_stepfunctions.INextable[] The states to chain onto if this fragment is used. --- ##### `id`Required ```typescript public readonly id: string; ``` - *Type:* string Descriptive identifier for this chainable. --- ##### `startState`Required ```typescript public readonly startState: State; ``` - *Type:* aws-cdk-lib.aws_stepfunctions.State The start state of this state machine fragment. --- ##### `configurationTable`Required ```typescript public readonly configurationTable: ITable; ``` - *Type:* aws-cdk-lib.aws_dynamodb.ITable --- ##### `configurationTableName`Required ```typescript public readonly configurationTableName: string; ``` - *Type:* string --- ##### `configuratorFunction`Required ```typescript public readonly configuratorFunction: IFunction; ``` - *Type:* aws-cdk-lib.aws_lambda.IFunction --- ### TextractGenerateCSV Generates a output based on Textract Forms and Queries. Supported output_types: "LINES" | "CSV". Input: "Payload"."textract_result"."TextractOutputJsonPath" Output: "TextractOutputCSVPath" TODO: rename Output as LINES Example (Python) ```python generate_text = tcdk.TextractGenerateCSV( self, "GenerateText", csv_s3_output_bucket=document_bucket.bucket_name, csv_s3_output_prefix=s3_txt_output_prefix, output_type='LINES', lambda_log_level="DEBUG", integration_pattern=sfn.IntegrationPattern.WAIT_FOR_TASK_TOKEN, input=sfn.TaskInput.from_object({ "Token": sfn.JsonPath.task_token, "ExecutionId": sfn.JsonPath.string_at('$$.Execution.Id'), "Payload": sfn.JsonPath.entire_payload, }), result_path="$.txt_output_location") ``` #### Initializers ```typescript import { TextractGenerateCSV } from 'amazon-textract-idp-cdk-constructs' new TextractGenerateCSV(scope: Construct, id: string, props: TextractGenerateCSVProps) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | scope | constructs.Construct | *No description.* | | id | string | *No description.* | | props | TextractGenerateCSVProps | *No description.* | --- ##### `scope`Required - *Type:* constructs.Construct --- ##### `id`Required - *Type:* string --- ##### `props`Required - *Type:* TextractGenerateCSVProps --- #### Methods | **Name** | **Description** | | --- | --- | | toString | Returns a string representation of this construct. | | addPrefix | Add a prefix to the stateId of this state. | | bindToGraph | Register this state as part of the given graph. | | toStateJson | Return the Amazon States Language object for this state. | | addCatch | Add a recovery handler for this state. | | addRetry | Add retry configuration for this state. | | metric | Return the given named metric for this Task. | | metricFailed | Metric for the number of times this activity fails. | | metricHeartbeatTimedOut | Metric for the number of times the heartbeat times out for this activity. | | metricRunTime | The interval, in milliseconds, between the time the Task starts and the time it closes. | | metricScheduled | Metric for the number of times this activity is scheduled. | | metricScheduleTime | The interval, in milliseconds, for which the activity stays in the schedule state. | | metricStarted | Metric for the number of times this activity is started. | | metricSucceeded | Metric for the number of times this activity succeeds. | | metricTime | The interval, in milliseconds, between the time the activity is scheduled and the time it closes. | | metricTimedOut | Metric for the number of times this activity times out. | | next | Continue normal execution with the given state. | --- ##### `toString` ```typescript public toString(): string ``` Returns a string representation of this construct. ##### `addPrefix` ```typescript public addPrefix(x: string): void ``` Add a prefix to the stateId of this state. ###### `x`Required - *Type:* string --- ##### `bindToGraph` ```typescript public bindToGraph(graph: StateGraph): void ``` Register this state as part of the given graph. Don't call this. It will be called automatically when you work with states normally. ###### `graph`Required - *Type:* aws-cdk-lib.aws_stepfunctions.StateGraph --- ##### `toStateJson` ```typescript public toStateJson(): object ``` Return the Amazon States Language object for this state. ##### `addCatch` ```typescript public addCatch(handler: IChainable, props?: CatchProps): TaskStateBase ``` Add a recovery handler for this state. When a particular error occurs, execution will continue at the error handler instead of failing the state machine execution. ###### `handler`Required - *Type:* aws-cdk-lib.aws_stepfunctions.IChainable --- ###### `props`Optional - *Type:* aws-cdk-lib.aws_stepfunctions.CatchProps --- ##### `addRetry` ```typescript public addRetry(props?: RetryProps): TaskStateBase ``` Add retry configuration for this state. This controls if and how the execution will be retried if a particular error occurs. ###### `props`Optional - *Type:* aws-cdk-lib.aws_stepfunctions.RetryProps --- ##### `metric` ```typescript public metric(metricName: string, props?: MetricOptions): Metric ``` Return the given named metric for this Task. ###### `metricName`Required - *Type:* string --- ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricFailed` ```typescript public metricFailed(props?: MetricOptions): Metric ``` Metric for the number of times this activity fails. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricHeartbeatTimedOut` ```typescript public metricHeartbeatTimedOut(props?: MetricOptions): Metric ``` Metric for the number of times the heartbeat times out for this activity. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricRunTime` ```typescript public metricRunTime(props?: MetricOptions): Metric ``` The interval, in milliseconds, between the time the Task starts and the time it closes. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricScheduled` ```typescript public metricScheduled(props?: MetricOptions): Metric ``` Metric for the number of times this activity is scheduled. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricScheduleTime` ```typescript public metricScheduleTime(props?: MetricOptions): Metric ``` The interval, in milliseconds, for which the activity stays in the schedule state. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricStarted` ```typescript public metricStarted(props?: MetricOptions): Metric ``` Metric for the number of times this activity is started. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricSucceeded` ```typescript public metricSucceeded(props?: MetricOptions): Metric ``` Metric for the number of times this activity succeeds. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricTime` ```typescript public metricTime(props?: MetricOptions): Metric ``` The interval, in milliseconds, between the time the activity is scheduled and the time it closes. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricTimedOut` ```typescript public metricTimedOut(props?: MetricOptions): Metric ``` Metric for the number of times this activity times out. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `next` ```typescript public next(next: IChainable): Chain ``` Continue normal execution with the given state. ###### `next`Required - *Type:* aws-cdk-lib.aws_stepfunctions.IChainable --- #### Static Functions | **Name** | **Description** | | --- | --- | | isConstruct | Checks if `x` is a construct. | | filterNextables | Return only the states that allow chaining from an array of states. | | findReachableEndStates | Find the set of end states states reachable through transitions from the given start state. | | findReachableStates | Find the set of states reachable through transitions from the given start state. | | prefixStates | Add a prefix to the stateId of all States found in a construct tree. | --- ##### ~~`isConstruct`~~ ```typescript import { TextractGenerateCSV } from 'amazon-textract-idp-cdk-constructs' TextractGenerateCSV.isConstruct(x: any) ``` Checks if `x` is a construct. ###### `x`Required - *Type:* any Any object. --- ##### `filterNextables` ```typescript import { TextractGenerateCSV } from 'amazon-textract-idp-cdk-constructs' TextractGenerateCSV.filterNextables(states: State[]) ``` Return only the states that allow chaining from an array of states. ###### `states`Required - *Type:* aws-cdk-lib.aws_stepfunctions.State[] --- ##### `findReachableEndStates` ```typescript import { TextractGenerateCSV } from 'amazon-textract-idp-cdk-constructs' TextractGenerateCSV.findReachableEndStates(start: State, options?: FindStateOptions) ``` Find the set of end states states reachable through transitions from the given start state. ###### `start`Required - *Type:* aws-cdk-lib.aws_stepfunctions.State --- ###### `options`Optional - *Type:* aws-cdk-lib.aws_stepfunctions.FindStateOptions --- ##### `findReachableStates` ```typescript import { TextractGenerateCSV } from 'amazon-textract-idp-cdk-constructs' TextractGenerateCSV.findReachableStates(start: State, options?: FindStateOptions) ``` Find the set of states reachable through transitions from the given start state. This does not retrieve states from within sub-graphs, such as states within a Parallel state's branch. ###### `start`Required - *Type:* aws-cdk-lib.aws_stepfunctions.State --- ###### `options`Optional - *Type:* aws-cdk-lib.aws_stepfunctions.FindStateOptions --- ##### `prefixStates` ```typescript import { TextractGenerateCSV } from 'amazon-textract-idp-cdk-constructs' TextractGenerateCSV.prefixStates(root: IConstruct, prefix: string) ``` Add a prefix to the stateId of all States found in a construct tree. ###### `root`Required - *Type:* constructs.IConstruct --- ###### `prefix`Required - *Type:* string --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | | endStates | aws-cdk-lib.aws_stepfunctions.INextable[] | Continuable states of this Chainable. | | id | string | Descriptive identifier for this chainable. | | startState | aws-cdk-lib.aws_stepfunctions.State | First state of this Chainable. | | stateId | string | Tokenized string that evaluates to the state's ID. | | generateCSVLambda | aws-cdk-lib.aws_lambda.IFunction | *No description.* | | stateMachine | aws-cdk-lib.aws_stepfunctions.StateMachine | *No description.* | --- ##### `node`Required ```typescript public readonly node: Node; ``` - *Type:* constructs.Node The tree node. --- ##### `endStates`Required ```typescript public readonly endStates: INextable[]; ``` - *Type:* aws-cdk-lib.aws_stepfunctions.INextable[] Continuable states of this Chainable. --- ##### `id`Required ```typescript public readonly id: string; ``` - *Type:* string Descriptive identifier for this chainable. --- ##### `startState`Required ```typescript public readonly startState: State; ``` - *Type:* aws-cdk-lib.aws_stepfunctions.State First state of this Chainable. --- ##### `stateId`Required ```typescript public readonly stateId: string; ``` - *Type:* string Tokenized string that evaluates to the state's ID. --- ##### `generateCSVLambda`Required ```typescript public readonly generateCSVLambda: IFunction; ``` - *Type:* aws-cdk-lib.aws_lambda.IFunction --- ##### `stateMachine`Required ```typescript public readonly stateMachine: StateMachine; ``` - *Type:* aws-cdk-lib.aws_stepfunctions.StateMachine --- ### TextractGenericAsyncSfnTask This Task calls the Textract through the asynchronous API. Which API to call is defined in When GENERIC is called with features in the manifest definition, will call the AnalzyeDocument API. Takes the configuration from "Payload"."manifest" Will retry on recoverable errors based on textractAsyncCallMaxRetries errors for retry: ['ThrottlingException', 'LimitExceededException', 'InternalServerError', 'ProvisionedThroughputExceededException'], Internally calls Start* calls with OutputConfig and SNSNotification. Another Lambda functions waits for SNS Notification event and notifies the Step Function flow with the task token. Step Function JSON input requirements **Input**: "Payload"."manifest" **Output**: "TextractTempOutputJsonPath" points to potentially paginated Textract JSON Schema output at "TextractTempOutputJsonPath" (using the example code it will be at: "textract_result"."TextractTempOutputJsonPath") Works together with TextractAsyncToJSON, which takes the s3_output_bucket/s3_temp_output_prefix location as input Example (Python) ```python textract_async_task = tcdk.TextractGenericAsyncSfnTask( self, "TextractAsync", s3_output_bucket=s3_output_bucket, s3_temp_output_prefix=s3_temp_output_prefix, integration_pattern=sfn.IntegrationPattern.WAIT_FOR_TASK_TOKEN, lambda_log_level="DEBUG", timeout=Duration.hours(24), input=sfn.TaskInput.from_object({ "Token": sfn.JsonPath.task_token, "ExecutionId": sfn.JsonPath.string_at('$$.Execution.Id'), "Payload": sfn.JsonPath.entire_payload, }), result_path="$.textract_result") ``` #### Initializers ```typescript import { TextractGenericAsyncSfnTask } from 'amazon-textract-idp-cdk-constructs' new TextractGenericAsyncSfnTask(scope: Construct, id: string, props: TextractGenericAsyncSfnTaskProps) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | scope | constructs.Construct | *No description.* | | id | string | *No description.* | | props | TextractGenericAsyncSfnTaskProps | *No description.* | --- ##### `scope`Required - *Type:* constructs.Construct --- ##### `id`Required - *Type:* string --- ##### `props`Required - *Type:* TextractGenericAsyncSfnTaskProps --- #### Methods | **Name** | **Description** | | --- | --- | | toString | Returns a string representation of this construct. | | addPrefix | Add a prefix to the stateId of this state. | | bindToGraph | Register this state as part of the given graph. | | toStateJson | Return the Amazon States Language object for this state. | | addCatch | Add a recovery handler for this state. | | addRetry | Add retry configuration for this state. | | metric | Return the given named metric for this Task. | | metricFailed | Metric for the number of times this activity fails. | | metricHeartbeatTimedOut | Metric for the number of times the heartbeat times out for this activity. | | metricRunTime | The interval, in milliseconds, between the time the Task starts and the time it closes. | | metricScheduled | Metric for the number of times this activity is scheduled. | | metricScheduleTime | The interval, in milliseconds, for which the activity stays in the schedule state. | | metricStarted | Metric for the number of times this activity is started. | | metricSucceeded | Metric for the number of times this activity succeeds. | | metricTime | The interval, in milliseconds, between the time the activity is scheduled and the time it closes. | | metricTimedOut | Metric for the number of times this activity times out. | | next | Continue normal execution with the given state. | --- ##### `toString` ```typescript public toString(): string ``` Returns a string representation of this construct. ##### `addPrefix` ```typescript public addPrefix(x: string): void ``` Add a prefix to the stateId of this state. ###### `x`Required - *Type:* string --- ##### `bindToGraph` ```typescript public bindToGraph(graph: StateGraph): void ``` Register this state as part of the given graph. Don't call this. It will be called automatically when you work with states normally. ###### `graph`Required - *Type:* aws-cdk-lib.aws_stepfunctions.StateGraph --- ##### `toStateJson` ```typescript public toStateJson(): object ``` Return the Amazon States Language object for this state. ##### `addCatch` ```typescript public addCatch(handler: IChainable, props?: CatchProps): TaskStateBase ``` Add a recovery handler for this state. When a particular error occurs, execution will continue at the error handler instead of failing the state machine execution. ###### `handler`Required - *Type:* aws-cdk-lib.aws_stepfunctions.IChainable --- ###### `props`Optional - *Type:* aws-cdk-lib.aws_stepfunctions.CatchProps --- ##### `addRetry` ```typescript public addRetry(props?: RetryProps): TaskStateBase ``` Add retry configuration for this state. This controls if and how the execution will be retried if a particular error occurs. ###### `props`Optional - *Type:* aws-cdk-lib.aws_stepfunctions.RetryProps --- ##### `metric` ```typescript public metric(metricName: string, props?: MetricOptions): Metric ``` Return the given named metric for this Task. ###### `metricName`Required - *Type:* string --- ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricFailed` ```typescript public metricFailed(props?: MetricOptions): Metric ``` Metric for the number of times this activity fails. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricHeartbeatTimedOut` ```typescript public metricHeartbeatTimedOut(props?: MetricOptions): Metric ``` Metric for the number of times the heartbeat times out for this activity. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricRunTime` ```typescript public metricRunTime(props?: MetricOptions): Metric ``` The interval, in milliseconds, between the time the Task starts and the time it closes. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricScheduled` ```typescript public metricScheduled(props?: MetricOptions): Metric ``` Metric for the number of times this activity is scheduled. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricScheduleTime` ```typescript public metricScheduleTime(props?: MetricOptions): Metric ``` The interval, in milliseconds, for which the activity stays in the schedule state. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricStarted` ```typescript public metricStarted(props?: MetricOptions): Metric ``` Metric for the number of times this activity is started. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricSucceeded` ```typescript public metricSucceeded(props?: MetricOptions): Metric ``` Metric for the number of times this activity succeeds. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricTime` ```typescript public metricTime(props?: MetricOptions): Metric ``` The interval, in milliseconds, between the time the activity is scheduled and the time it closes. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricTimedOut` ```typescript public metricTimedOut(props?: MetricOptions): Metric ``` Metric for the number of times this activity times out. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `next` ```typescript public next(next: IChainable): Chain ``` Continue normal execution with the given state. ###### `next`Required - *Type:* aws-cdk-lib.aws_stepfunctions.IChainable --- #### Static Functions | **Name** | **Description** | | --- | --- | | isConstruct | Checks if `x` is a construct. | | filterNextables | Return only the states that allow chaining from an array of states. | | findReachableEndStates | Find the set of end states states reachable through transitions from the given start state. | | findReachableStates | Find the set of states reachable through transitions from the given start state. | | prefixStates | Add a prefix to the stateId of all States found in a construct tree. | --- ##### ~~`isConstruct`~~ ```typescript import { TextractGenericAsyncSfnTask } from 'amazon-textract-idp-cdk-constructs' TextractGenericAsyncSfnTask.isConstruct(x: any) ``` Checks if `x` is a construct. ###### `x`Required - *Type:* any Any object. --- ##### `filterNextables` ```typescript import { TextractGenericAsyncSfnTask } from 'amazon-textract-idp-cdk-constructs' TextractGenericAsyncSfnTask.filterNextables(states: State[]) ``` Return only the states that allow chaining from an array of states. ###### `states`Required - *Type:* aws-cdk-lib.aws_stepfunctions.State[] --- ##### `findReachableEndStates` ```typescript import { TextractGenericAsyncSfnTask } from 'amazon-textract-idp-cdk-constructs' TextractGenericAsyncSfnTask.findReachableEndStates(start: State, options?: FindStateOptions) ``` Find the set of end states states reachable through transitions from the given start state. ###### `start`Required - *Type:* aws-cdk-lib.aws_stepfunctions.State --- ###### `options`Optional - *Type:* aws-cdk-lib.aws_stepfunctions.FindStateOptions --- ##### `findReachableStates` ```typescript import { TextractGenericAsyncSfnTask } from 'amazon-textract-idp-cdk-constructs' TextractGenericAsyncSfnTask.findReachableStates(start: State, options?: FindStateOptions) ``` Find the set of states reachable through transitions from the given start state. This does not retrieve states from within sub-graphs, such as states within a Parallel state's branch. ###### `start`Required - *Type:* aws-cdk-lib.aws_stepfunctions.State --- ###### `options`Optional - *Type:* aws-cdk-lib.aws_stepfunctions.FindStateOptions --- ##### `prefixStates` ```typescript import { TextractGenericAsyncSfnTask } from 'amazon-textract-idp-cdk-constructs' TextractGenericAsyncSfnTask.prefixStates(root: IConstruct, prefix: string) ``` Add a prefix to the stateId of all States found in a construct tree. ###### `root`Required - *Type:* constructs.IConstruct --- ###### `prefix`Required - *Type:* string --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | | endStates | aws-cdk-lib.aws_stepfunctions.INextable[] | Continuable states of this Chainable. | | id | string | Descriptive identifier for this chainable. | | startState | aws-cdk-lib.aws_stepfunctions.State | First state of this Chainable. | | stateId | string | Tokenized string that evaluates to the state's ID. | | stateMachine | aws-cdk-lib.aws_stepfunctions.IStateMachine | *No description.* | | taskTokenTable | aws-cdk-lib.aws_dynamodb.ITable | *No description.* | | taskTokenTableName | string | *No description.* | | textractAsyncCallFunction | aws-cdk-lib.aws_lambda.IFunction | *No description.* | | textractAsyncReceiveSNSFunction | aws-cdk-lib.aws_lambda.IFunction | *No description.* | | textractAsyncSNS | aws-cdk-lib.aws_sns.ITopic | *No description.* | | textractAsyncSNSRole | aws-cdk-lib.aws_iam.IRole | *No description.* | | asyncDurationMetric | aws-cdk-lib.aws_cloudwatch.IMetric | *No description.* | | asyncJobFailureMetric | aws-cdk-lib.aws_cloudwatch.IMetric | *No description.* | | asyncJobFinshedMetric | aws-cdk-lib.aws_cloudwatch.IMetric | *No description.* | | asyncJobStartedMetric | aws-cdk-lib.aws_cloudwatch.IMetric | *No description.* | | asyncNumberPagesMetric | aws-cdk-lib.aws_cloudwatch.IMetric | *No description.* | | asyncNumberPagesSendMetric | aws-cdk-lib.aws_cloudwatch.IMetric | *No description.* | --- ##### `node`Required ```typescript public readonly node: Node; ``` - *Type:* constructs.Node The tree node. --- ##### `endStates`Required ```typescript public readonly endStates: INextable[]; ``` - *Type:* aws-cdk-lib.aws_stepfunctions.INextable[] Continuable states of this Chainable. --- ##### `id`Required ```typescript public readonly id: string; ``` - *Type:* string Descriptive identifier for this chainable. --- ##### `startState`Required ```typescript public readonly startState: State; ``` - *Type:* aws-cdk-lib.aws_stepfunctions.State First state of this Chainable. --- ##### `stateId`Required ```typescript public readonly stateId: string; ``` - *Type:* string Tokenized string that evaluates to the state's ID. --- ##### `stateMachine`Required ```typescript public readonly stateMachine: IStateMachine; ``` - *Type:* aws-cdk-lib.aws_stepfunctions.IStateMachine --- ##### `taskTokenTable`Required ```typescript public readonly taskTokenTable: ITable; ``` - *Type:* aws-cdk-lib.aws_dynamodb.ITable --- ##### `taskTokenTableName`Required ```typescript public readonly taskTokenTableName: string; ``` - *Type:* string --- ##### `textractAsyncCallFunction`Required ```typescript public readonly textractAsyncCallFunction: IFunction; ``` - *Type:* aws-cdk-lib.aws_lambda.IFunction --- ##### `textractAsyncReceiveSNSFunction`Required ```typescript public readonly textractAsyncReceiveSNSFunction: IFunction; ``` - *Type:* aws-cdk-lib.aws_lambda.IFunction --- ##### `textractAsyncSNS`Required ```typescript public readonly textractAsyncSNS: ITopic; ``` - *Type:* aws-cdk-lib.aws_sns.ITopic --- ##### `textractAsyncSNSRole`Required ```typescript public readonly textractAsyncSNSRole: IRole; ``` - *Type:* aws-cdk-lib.aws_iam.IRole --- ##### `asyncDurationMetric`Optional ```typescript public readonly asyncDurationMetric: IMetric; ``` - *Type:* aws-cdk-lib.aws_cloudwatch.IMetric --- ##### `asyncJobFailureMetric`Optional ```typescript public readonly asyncJobFailureMetric: IMetric; ``` - *Type:* aws-cdk-lib.aws_cloudwatch.IMetric --- ##### `asyncJobFinshedMetric`Optional ```typescript public readonly asyncJobFinshedMetric: IMetric; ``` - *Type:* aws-cdk-lib.aws_cloudwatch.IMetric --- ##### `asyncJobStartedMetric`Optional ```typescript public readonly asyncJobStartedMetric: IMetric; ``` - *Type:* aws-cdk-lib.aws_cloudwatch.IMetric --- ##### `asyncNumberPagesMetric`Optional ```typescript public readonly asyncNumberPagesMetric: IMetric; ``` - *Type:* aws-cdk-lib.aws_cloudwatch.IMetric --- ##### `asyncNumberPagesSendMetric`Optional ```typescript public readonly asyncNumberPagesSendMetric: IMetric; ``` - *Type:* aws-cdk-lib.aws_cloudwatch.IMetric --- ### TextractGenericSyncSfnTask Calls Textract synchronous API. Supports the Textract APIs: 'GENERIC' | 'ANALYZEID' | 'EXPENSE' When GENERIC is called with features in the manifest definition, will call the AnalzyeDocument API. Takes the configuration from "Payload"."manifest" Will retry on recoverable errors based on textractAsyncCallMaxRetries errors for retry: ['ThrottlingException', 'LimitExceededException', 'InternalServerError', 'ProvisionedThroughputExceededException'], Input: "Payload"."manifest" Output: Textract JSON Schema at s3_output_bucket/s3_output_prefix Example (Python) ```python textract_sync_task = tcdk.TextractGenericSyncSfnTask( self, "TextractSync", s3_output_bucket=document_bucket.bucket_name, s3_output_prefix=s3_output_prefix, integration_pattern=sfn.IntegrationPattern.WAIT_FOR_TASK_TOKEN, lambda_log_level="DEBUG", timeout=Duration.hours(24), input=sfn.TaskInput.from_object({ "Token": sfn.JsonPath.task_token, "ExecutionId": sfn.JsonPath.string_at('$$.Execution.Id'), "Payload": sfn.JsonPath.entire_payload, }), result_path="$.textract_result") ``` #### Initializers ```typescript import { TextractGenericSyncSfnTask } from 'amazon-textract-idp-cdk-constructs' new TextractGenericSyncSfnTask(scope: Construct, id: string, props: TextractGenericSyncSfnTaskProps) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | scope | constructs.Construct | *No description.* | | id | string | *No description.* | | props | TextractGenericSyncSfnTaskProps | *No description.* | --- ##### `scope`Required - *Type:* constructs.Construct --- ##### `id`Required - *Type:* string --- ##### `props`Required - *Type:* TextractGenericSyncSfnTaskProps --- #### Methods | **Name** | **Description** | | --- | --- | | toString | Returns a string representation of this construct. | | addPrefix | Add a prefix to the stateId of this state. | | bindToGraph | Register this state as part of the given graph. | | toStateJson | Return the Amazon States Language object for this state. | | addCatch | Add a recovery handler for this state. | | addRetry | Add retry configuration for this state. | | metric | Return the given named metric for this Task. | | metricFailed | Metric for the number of times this activity fails. | | metricHeartbeatTimedOut | Metric for the number of times the heartbeat times out for this activity. | | metricRunTime | The interval, in milliseconds, between the time the Task starts and the time it closes. | | metricScheduled | Metric for the number of times this activity is scheduled. | | metricScheduleTime | The interval, in milliseconds, for which the activity stays in the schedule state. | | metricStarted | Metric for the number of times this activity is started. | | metricSucceeded | Metric for the number of times this activity succeeds. | | metricTime | The interval, in milliseconds, between the time the activity is scheduled and the time it closes. | | metricTimedOut | Metric for the number of times this activity times out. | | next | Continue normal execution with the given state. | --- ##### `toString` ```typescript public toString(): string ``` Returns a string representation of this construct. ##### `addPrefix` ```typescript public addPrefix(x: string): void ``` Add a prefix to the stateId of this state. ###### `x`Required - *Type:* string --- ##### `bindToGraph` ```typescript public bindToGraph(graph: StateGraph): void ``` Register this state as part of the given graph. Don't call this. It will be called automatically when you work with states normally. ###### `graph`Required - *Type:* aws-cdk-lib.aws_stepfunctions.StateGraph --- ##### `toStateJson` ```typescript public toStateJson(): object ``` Return the Amazon States Language object for this state. ##### `addCatch` ```typescript public addCatch(handler: IChainable, props?: CatchProps): TaskStateBase ``` Add a recovery handler for this state. When a particular error occurs, execution will continue at the error handler instead of failing the state machine execution. ###### `handler`Required - *Type:* aws-cdk-lib.aws_stepfunctions.IChainable --- ###### `props`Optional - *Type:* aws-cdk-lib.aws_stepfunctions.CatchProps --- ##### `addRetry` ```typescript public addRetry(props?: RetryProps): TaskStateBase ``` Add retry configuration for this state. This controls if and how the execution will be retried if a particular error occurs. ###### `props`Optional - *Type:* aws-cdk-lib.aws_stepfunctions.RetryProps --- ##### `metric` ```typescript public metric(metricName: string, props?: MetricOptions): Metric ``` Return the given named metric for this Task. ###### `metricName`Required - *Type:* string --- ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricFailed` ```typescript public metricFailed(props?: MetricOptions): Metric ``` Metric for the number of times this activity fails. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricHeartbeatTimedOut` ```typescript public metricHeartbeatTimedOut(props?: MetricOptions): Metric ``` Metric for the number of times the heartbeat times out for this activity. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricRunTime` ```typescript public metricRunTime(props?: MetricOptions): Metric ``` The interval, in milliseconds, between the time the Task starts and the time it closes. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricScheduled` ```typescript public metricScheduled(props?: MetricOptions): Metric ``` Metric for the number of times this activity is scheduled. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricScheduleTime` ```typescript public metricScheduleTime(props?: MetricOptions): Metric ``` The interval, in milliseconds, for which the activity stays in the schedule state. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricStarted` ```typescript public metricStarted(props?: MetricOptions): Metric ``` Metric for the number of times this activity is started. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricSucceeded` ```typescript public metricSucceeded(props?: MetricOptions): Metric ``` Metric for the number of times this activity succeeds. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricTime` ```typescript public metricTime(props?: MetricOptions): Metric ``` The interval, in milliseconds, between the time the activity is scheduled and the time it closes. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `metricTimedOut` ```typescript public metricTimedOut(props?: MetricOptions): Metric ``` Metric for the number of times this activity times out. ###### `props`Optional - *Type:* aws-cdk-lib.aws_cloudwatch.MetricOptions --- ##### `next` ```typescript public next(next: IChainable): Chain ``` Continue normal execution with the given state. ###### `next`Required - *Type:* aws-cdk-lib.aws_stepfunctions.IChainable --- #### Static Functions | **Name** | **Description** | | --- | --- | | isConstruct | Checks if `x` is a construct. | | filterNextables | Return only the states that allow chaining from an array of states. | | findReachableEndStates | Find the set of end states states reachable through transitions from the given start state. | | findReachableStates | Find the set of states reachable through transitions from the given start state. | | prefixStates | Add a prefix to the stateId of all States found in a construct tree. | --- ##### ~~`isConstruct`~~ ```typescript import { TextractGenericSyncSfnTask } from 'amazon-textract-idp-cdk-constructs' TextractGenericSyncSfnTask.isConstruct(x: any) ``` Checks if `x` is a construct. ###### `x`Required - *Type:* any Any object. --- ##### `filterNextables` ```typescript import { TextractGenericSyncSfnTask } from 'amazon-textract-idp-cdk-constructs' TextractGenericSyncSfnTask.filterNextables(states: State[]) ``` Return only the states that allow chaining from an array of states. ###### `states`Required - *Type:* aws-cdk-lib.aws_stepfunctions.State[] --- ##### `findReachableEndStates` ```typescript import { TextractGenericSyncSfnTask } from 'amazon-textract-idp-cdk-constructs' TextractGenericSyncSfnTask.findReachableEndStates(start: State, options?: FindStateOptions) ``` Find the set of end states states reachable through transitions from the given start state. ###### `start`Required - *Type:* aws-cdk-lib.aws_stepfunctions.State --- ###### `options`Optional - *Type:* aws-cdk-lib.aws_stepfunctions.FindStateOptions --- ##### `findReachableStates` ```typescript import { TextractGenericSyncSfnTask } from 'amazon-textract-idp-cdk-constructs' TextractGenericSyncSfnTask.findReachableStates(start: State, options?: FindStateOptions) ``` Find the set of states reachable through transitions from the given start state. This does not retrieve states from within sub-graphs, such as states within a Parallel state's branch. ###### `start`Required - *Type:* aws-cdk-lib.aws_stepfunctions.State --- ###### `options`Optional - *Type:* aws-cdk-lib.aws_stepfunctions.FindStateOptions --- ##### `prefixStates` ```typescript import { TextractGenericSyncSfnTask } from 'amazon-textract-idp-cdk-constructs' TextractGenericSyncSfnTask.prefixStates(root: IConstruct, prefix: string) ``` Add a prefix to the stateId of all States found in a construct tree. ###### `root`Required - *Type:* constructs.IConstruct --- ###### `prefix`Required - *Type:* string --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | | endStates | aws-cdk-lib.aws_stepfunctions.INextable[] | Continuable states of this Chainable. | | id | string | Descriptive identifier for this chainable. | | startState | aws-cdk-lib.aws_stepfunctions.State | First state of this Chainable. | | stateId | string | Tokenized string that evaluates to the state's ID. | | stateMachine | aws-cdk-lib.aws_stepfunctions.IStateMachine | *No description.* | | textractSyncCallFunction | aws-cdk-lib.aws_lambda.IFunction | *No description.* | | version | string | *No description.* | | syncDurationMetric | aws-cdk-lib.aws_cloudwatch.IMetric | *No description.* | | syncNumberPagesMetric | aws-cdk-lib.aws_cloudwatch.IMetric | *No description.* | | syncNumberPagesSendMetric | aws-cdk-lib.aws_cloudwatch.IMetric | *No description.* | | syncTimedOutMetric | aws-cdk-lib.aws_cloudwatch.IMetric | *No description.* | --- ##### `node`Required ```typescript public readonly node: Node; ``` - *Type:* constructs.Node The tree node. --- ##### `endStates`Required ```typescript public readonly endStates: INextable[]; ``` - *Type:* aws-cdk-lib.aws_stepfunctions.INextable[] Continuable states of this Chainable. --- ##### `id`Required ```typescript public readonly id: string; ``` - *Type:* string Descriptive identifier for this chainable. --- ##### `startState`Required ```typescript public readonly startState: State; ``` - *Type:* aws-cdk-lib.aws_stepfunctions.State First state of this Chainable. --- ##### `stateId`Required ```typescript public readonly stateId: string; ``` - *Type:* string Tokenized string that evaluates to the state's ID. --- ##### `stateMachine`Required ```typescript public readonly stateMachine: IStateMachine; ``` - *Type:* aws-cdk-lib.aws_stepfunctions.IStateMachine --- ##### `textractSyncCallFunction`Required ```typescript public readonly textractSyncCallFunction: IFunction; ``` - *Type:* aws-cdk-lib.aws_lambda.IFunction --- ##### `version`Required ```typescript public readonly version: string; ``` - *Type:* string --- ##### `syncDurationMetric`Optional ```typescript public readonly syncDurationMetric: IMetric; ``` - *Type:* aws-cdk-lib.aws_cloudwatch.IMetric --- ##### `syncNumberPagesMetric`Optional ```typescript public readonly syncNumberPagesMetric: IMetric; ``` - *Type:* aws-cdk-lib.aws_cloudwatch.IMetric --- ##### `syncNumberPagesSendMetric`Optional ```typescript public readonly syncNumberPagesSendMetric: IMetric; ``` - *Type:* aws-cdk-lib.aws_cloudwatch.IMetric --- ##### `syncTimedOutMetric`Optional ```typescript public readonly syncTimedOutMetric: IMetric; ``` - *Type:* aws-cdk-lib.aws_cloudwatch.IMetric --- ### TextractPdfMapperForFhir This construct takes in a manifest definition or a plain JSON with a s3Path:. example s3Path: {"s3Path": "s3://bucketname/prefix/image.png"} Then it generated the numberOfPages attribute and the mime on the context. The mime types checked against the supported mime types for Textract and if fails, will raise an Exception failing the workflow. Example (Python) ```python decider_task_id = tcdk.TextractPOCDecider( self, f"InsuranceDecider", ) ``` #### Initializers ```typescript import { TextractPdfMapperForFhir } from 'amazon-textract-idp-cdk-constructs' new TextractPdfMapperForFhir(parent: Construct, id: string, props: TextractPdfMapperForFhirProps) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | parent | constructs.Construct | *No description.* | | id | string | *No description.* | | props | TextractPdfMapperForFhirProps | *No description.* | --- ##### `parent`Required - *Type:* constructs.Construct --- ##### `id`Required - *Type:* string --- ##### `props`Required - *Type:* TextractPdfMapperForFhirProps --- #### Methods | **Name** | **Description** | | --- | --- | | toString | Returns a string representation of this construct. | | next | Continue normal execution with the given state. | | prefixStates | Prefix the IDs of all states in this state machine fragment. | | toSingleState | Wrap all states in this state machine fragment up into a single state. | --- ##### `toString` ```typescript public toString(): string ``` Returns a string representation of this construct. ##### `next` ```typescript public next(next: IChainable): Chain ``` Continue normal execution with the given state. ###### `next`Required - *Type:* aws-cdk-lib.aws_stepfunctions.IChainable --- ##### `prefixStates` ```typescript public prefixStates(prefix?: string): StateMachineFragment ``` Prefix the IDs of all states in this state machine fragment. Use this to avoid multiple copies of the state machine all having the same state IDs. ###### `prefix`Optional - *Type:* string The prefix to add. Will use construct ID by default. --- ##### `toSingleState` ```typescript public toSingleState(options?: SingleStateOptions): Parallel ``` Wrap all states in this state machine fragment up into a single state. This can be used to add retry or error handling onto this state machine fragment. Be aware that this changes the result of the inner state machine to be an array with the result of the state machine in it. Adjust your paths accordingly. For example, change 'outputPath' to '$[0]'. ###### `options`Optional - *Type:* aws-cdk-lib.aws_stepfunctions.SingleStateOptions --- #### Static Functions | **Name** | **Description** | | --- | --- | | isConstruct | Checks if `x` is a construct. | --- ##### ~~`isConstruct`~~ ```typescript import { TextractPdfMapperForFhir } from 'amazon-textract-idp-cdk-constructs' TextractPdfMapperForFhir.isConstruct(x: any) ``` Checks if `x` is a construct. ###### `x`Required - *Type:* any Any object. --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | | endStates | aws-cdk-lib.aws_stepfunctions.INextable[] | The states to chain onto if this fragment is used. | | id | string | Descriptive identifier for this chainable. | | startState | aws-cdk-lib.aws_stepfunctions.State | The start state of this state machine fragment. | | pdfMapperForFhirFunction | aws-cdk-lib.aws_lambda.IFunction | *No description.* | --- ##### `node`Required ```typescript public readonly node: Node; ``` - *Type:* constructs.Node The tree node. --- ##### `endStates`Required ```typescript public readonly endStates: INextable[]; ``` - *Type:* aws-cdk-lib.aws_stepfunctions.INextable[] The states to chain onto if this fragment is used. --- ##### `id`Required ```typescript public readonly id: string; ``` - *Type:* string Descriptive identifier for this chainable. --- ##### `startState`Required ```typescript public readonly startState: State; ``` - *Type:* aws-cdk-lib.aws_stepfunctions.State The start state of this state machine fragment. --- ##### `pdfMapperForFhirFunction`Required ```typescript public readonly pdfMapperForFhirFunction: IFunction; ``` - *Type:* aws-cdk-lib.aws_lambda.IFunction --- ### TextractPOCDecider This construct takes in a manifest definition or a plain JSON with a s3Path:. example s3Path: {"s3Path": "s3://bucketname/prefix/image.png"} Then it generated the numberOfPages attribute and the mime on the context. The mime types checked against the supported mime types for Textract and if fails, will raise an Exception failing the workflow. Example (Python) ```python decider_task_id = tcdk.TextractPOCDecider( self, f"InsuranceDecider", ) ``` #### Initializers ```typescript import { TextractPOCDecider } from 'amazon-textract-idp-cdk-constructs' new TextractPOCDecider(parent: Construct, id: string, props: TextractDPPOCDeciderProps) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | parent | constructs.Construct | *No description.* | | id | string | *No description.* | | props | TextractDPPOCDeciderProps | *No description.* | --- ##### `parent`Required - *Type:* constructs.Construct --- ##### `id`Required - *Type:* string --- ##### `props`Required - *Type:* TextractDPPOCDeciderProps --- #### Methods | **Name** | **Description** | | --- | --- | | toString | Returns a string representation of this construct. | | next | Continue normal execution with the given state. | | prefixStates | Prefix the IDs of all states in this state machine fragment. | | toSingleState | Wrap all states in this state machine fragment up into a single state. | --- ##### `toString` ```typescript public toString(): string ``` Returns a string representation of this construct. ##### `next` ```typescript public next(next: IChainable): Chain ``` Continue normal execution with the given state. ###### `next`Required - *Type:* aws-cdk-lib.aws_stepfunctions.IChainable --- ##### `prefixStates` ```typescript public prefixStates(prefix?: string): StateMachineFragment ``` Prefix the IDs of all states in this state machine fragment. Use this to avoid multiple copies of the state machine all having the same state IDs. ###### `prefix`Optional - *Type:* string The prefix to add. Will use construct ID by default. --- ##### `toSingleState` ```typescript public toSingleState(options?: SingleStateOptions): Parallel ``` Wrap all states in this state machine fragment up into a single state. This can be used to add retry or error handling onto this state machine fragment. Be aware that this changes the result of the inner state machine to be an array with the result of the state machine in it. Adjust your paths accordingly. For example, change 'outputPath' to '$[0]'. ###### `options`Optional - *Type:* aws-cdk-lib.aws_stepfunctions.SingleStateOptions --- #### Static Functions | **Name** | **Description** | | --- | --- | | isConstruct | Checks if `x` is a construct. | --- ##### ~~`isConstruct`~~ ```typescript import { TextractPOCDecider } from 'amazon-textract-idp-cdk-constructs' TextractPOCDecider.isConstruct(x: any) ``` Checks if `x` is a construct. ###### `x`Required - *Type:* any Any object. --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | | endStates | aws-cdk-lib.aws_stepfunctions.INextable[] | The states to chain onto if this fragment is used. | | id | string | Descriptive identifier for this chainable. | | startState | aws-cdk-lib.aws_stepfunctions.State | The start state of this state machine fragment. | | deciderFunction | aws-cdk-lib.aws_lambda.IFunction | *No description.* | --- ##### `node`Required ```typescript public readonly node: Node; ``` - *Type:* constructs.Node The tree node. --- ##### `endStates`Required ```typescript public readonly endStates: INextable[]; ``` - *Type:* aws-cdk-lib.aws_stepfunctions.INextable[] The states to chain onto if this fragment is used. --- ##### `id`Required ```typescript public readonly id: string; ``` - *Type:* string Descriptive identifier for this chainable. --- ##### `startState`Required ```typescript public readonly startState: State; ``` - *Type:* aws-cdk-lib.aws_stepfunctions.State The start state of this state machine fragment. --- ##### `deciderFunction`Required ```typescript public readonly deciderFunction: IFunction; ``` - *Type:* aws-cdk-lib.aws_lambda.IFunction --- ### WorkmailS3IngestionPoint #### Initializers ```typescript import { WorkmailS3IngestionPoint } from 'amazon-textract-idp-cdk-constructs' new WorkmailS3IngestionPoint(scope: Construct, id: string, props: WorkmailS3IngestionPointProps) ``` | **Name** | **Type** | **Description** | | --- | --- | --- | | scope | constructs.Construct | *No description.* | | id | string | *No description.* | | props | WorkmailS3IngestionPointProps | *No description.* | --- ##### `scope`Required - *Type:* constructs.Construct --- ##### `id`Required - *Type:* string --- ##### `props`Required - *Type:* WorkmailS3IngestionPointProps --- #### Methods | **Name** | **Description** | | --- | --- | | toString | Returns a string representation of this construct. | --- ##### `toString` ```typescript public toString(): string ``` Returns a string representation of this construct. #### Static Functions | **Name** | **Description** | | --- | --- | | isConstruct | Checks if `x` is a construct. | --- ##### ~~`isConstruct`~~ ```typescript import { WorkmailS3IngestionPoint } from 'amazon-textract-idp-cdk-constructs' WorkmailS3IngestionPoint.isConstruct(x: any) ``` Checks if `x` is a construct. ###### `x`Required - *Type:* any Any object. --- #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | node | constructs.Node | The tree node. | | props | WorkmailS3IngestionPointProps | *No description.* | --- ##### `node`Required ```typescript public readonly node: Node; ``` - *Type:* constructs.Node The tree node. --- ##### `props`Required ```typescript public readonly props: WorkmailS3IngestionPointProps; ``` - *Type:* WorkmailS3IngestionPointProps --- ## Structs ### ComprehendGenericSyncSfnTaskProps #### Initializer ```typescript import { ComprehendGenericSyncSfnTaskProps } from 'amazon-textract-idp-cdk-constructs' const comprehendGenericSyncSfnTaskProps: ComprehendGenericSyncSfnTaskProps = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | comment | string | An optional description for this state. | | heartbeat | aws-cdk-lib.Duration | Timeout for the heartbeat. | | inputPath | string | JSONPath expression to select part of the state to be the input to this state. | | integrationPattern | aws-cdk-lib.aws_stepfunctions.IntegrationPattern | AWS Step Functions integrates with services directly in the Amazon States Language. | | outputPath | string | JSONPath expression to select select a portion of the state output to pass to the next state. | | resultPath | string | JSONPath expression to indicate where to inject the state's output. | | resultSelector | {[ key: string ]: any} | The JSON that will replace the state's raw result and become the effective result before ResultPath is applied. | | timeout | aws-cdk-lib.Duration | Timeout for the state machine. | | comprehendClassifierArn | string | *No description.* | | associateWithParent | boolean | Pass the execution ID from the context object to the execution input. | | comprehendAsyncCallBackoffRate | number | default is 1.1. | | comprehendAsyncCallInterval | number | default is 1. | | comprehendAsyncCallMaxRetries | number | *No description.* | | input | aws-cdk-lib.aws_stepfunctions.TaskInput | The JSON input for the execution, same as that of StartExecution. | | inputPolicyStatements | aws-cdk-lib.aws_iam.PolicyStatement[] | List of PolicyStatements to attach to the Lambda function. | | lambdaLogLevel | string | *No description.* | | lambdaMemory | number | Memory allocated to Lambda function, default 512. | | lambdaTimeout | number | Lambda Function Timeout in seconds, default 300. | | name | string | The name of the execution, same as that of StartExecution. | | outputPolicyStatements | aws-cdk-lib.aws_iam.PolicyStatement[] | List of PolicyStatements to attach to the Lambda function. | | s3InputBucket | string | location of input S3 objects - if left empty will generate rule for s3 access to all [*]. | | s3InputPrefix | string | prefix for input S3 objects - if left empty will generate rule for s3 access to all in bucket. | | s3OutputBucket | string | Bucketname to output data to. | | s3OutputPrefix | string | The prefix to use for the temporary output files (e. | | textractStateMachineTimeoutMinutes | number | how long can we wait for the process (default is 60 minutes). | | workflowTracingEnabled | boolean | *No description.* | --- ##### `comment`Optional ```typescript public readonly comment: string; ``` - *Type:* string - *Default:* No comment An optional description for this state. --- ##### `heartbeat`Optional ```typescript public readonly heartbeat: Duration; ``` - *Type:* aws-cdk-lib.Duration - *Default:* None Timeout for the heartbeat. --- ##### `inputPath`Optional ```typescript public readonly inputPath: string; ``` - *Type:* string - *Default:* The entire task input (JSON path '$') JSONPath expression to select part of the state to be the input to this state. May also be the special value JsonPath.DISCARD, which will cause the effective input to be the empty object {}. --- ##### `integrationPattern`Optional ```typescript public readonly integrationPattern: IntegrationPattern; ``` - *Type:* aws-cdk-lib.aws_stepfunctions.IntegrationPattern - *Default:* IntegrationPattern.REQUEST_RESPONSE AWS Step Functions integrates with services directly in the Amazon States Language. You can control these AWS services using service integration patterns > [https://docs.aws.amazon.com/step-functions/latest/dg/connect-to-resource.html#connect-wait-token](https://docs.aws.amazon.com/step-functions/latest/dg/connect-to-resource.html#connect-wait-token) --- ##### `outputPath`Optional ```typescript public readonly outputPath: string; ``` - *Type:* string - *Default:* The entire JSON node determined by the state input, the task result, and resultPath is passed to the next state (JSON path '$') JSONPath expression to select select a portion of the state output to pass to the next state. May also be the special value JsonPath.DISCARD, which will cause the effective output to be the empty object {}. --- ##### `resultPath`Optional ```typescript public readonly resultPath: string; ``` - *Type:* string - *Default:* Replaces the entire input with the result (JSON path '$') JSONPath expression to indicate where to inject the state's output. May also be the special value JsonPath.DISCARD, which will cause the state's input to become its output. --- ##### `resultSelector`Optional ```typescript public readonly resultSelector: {[ key: string ]: any}; ``` - *Type:* {[ key: string ]: any} - *Default:* None The JSON that will replace the state's raw result and become the effective result before ResultPath is applied. You can use ResultSelector to create a payload with values that are static or selected from the state's raw result. > [https://docs.aws.amazon.com/step-functions/latest/dg/input-output-inputpath-params.html#input-output-resultselector](https://docs.aws.amazon.com/step-functions/latest/dg/input-output-inputpath-params.html#input-output-resultselector) --- ##### `timeout`Optional ```typescript public readonly timeout: Duration; ``` - *Type:* aws-cdk-lib.Duration - *Default:* None Timeout for the state machine. --- ##### `comprehendClassifierArn`Required ```typescript public readonly comprehendClassifierArn: string; ``` - *Type:* string --- ##### `associateWithParent`Optional ```typescript public readonly associateWithParent: boolean; ``` - *Type:* boolean - *Default:* false Pass the execution ID from the context object to the execution input. This allows the Step Functions UI to link child executions from parent executions, making it easier to trace execution flow across state machines. If you set this property to `true`, the `input` property must be an object (provided by `sfn.TaskInput.fromObject`) or omitted entirely. > [https://docs.aws.amazon.com/step-functions/latest/dg/concepts-nested-workflows.html#nested-execution-startid](https://docs.aws.amazon.com/step-functions/latest/dg/concepts-nested-workflows.html#nested-execution-startid) --- ##### `comprehendAsyncCallBackoffRate`Optional ```typescript public readonly comprehendAsyncCallBackoffRate: number; ``` - *Type:* number default is 1.1. --- ##### `comprehendAsyncCallInterval`Optional ```typescript public readonly comprehendAsyncCallInterval: number; ``` - *Type:* number default is 1. --- ##### `comprehendAsyncCallMaxRetries`Optional ```typescript public readonly comprehendAsyncCallMaxRetries: number; ``` - *Type:* number --- ##### `input`Optional ```typescript public readonly input: TaskInput; ``` - *Type:* aws-cdk-lib.aws_stepfunctions.TaskInput - *Default:* The state input (JSON path '$') The JSON input for the execution, same as that of StartExecution. > [https://docs.aws.amazon.com/step-functions/latest/apireference/API_StartExecution.html](https://docs.aws.amazon.com/step-functions/latest/apireference/API_StartExecution.html) --- ##### `inputPolicyStatements`Optional ```typescript public readonly inputPolicyStatements: PolicyStatement[]; ``` - *Type:* aws-cdk-lib.aws_iam.PolicyStatement[] List of PolicyStatements to attach to the Lambda function. --- ##### `lambdaLogLevel`Optional ```typescript public readonly lambdaLogLevel: string; ``` - *Type:* string --- ##### `lambdaMemory`Optional ```typescript public readonly lambdaMemory: number; ``` - *Type:* number Memory allocated to Lambda function, default 512. --- ##### `lambdaTimeout`Optional ```typescript public readonly lambdaTimeout: number; ``` - *Type:* number Lambda Function Timeout in seconds, default 300. --- ##### `name`Optional ```typescript public readonly name: string; ``` - *Type:* string - *Default:* None The name of the execution, same as that of StartExecution. > [https://docs.aws.amazon.com/step-functions/latest/apireference/API_StartExecution.html](https://docs.aws.amazon.com/step-functions/latest/apireference/API_StartExecution.html) --- ##### `outputPolicyStatements`Optional ```typescript public readonly outputPolicyStatements: PolicyStatement[]; ``` - *Type:* aws-cdk-lib.aws_iam.PolicyStatement[] List of PolicyStatements to attach to the Lambda function. --- ##### `s3InputBucket`Optional ```typescript public readonly s3InputBucket: string; ``` - *Type:* string location of input S3 objects - if left empty will generate rule for s3 access to all [*]. --- ##### `s3InputPrefix`Optional ```typescript public readonly s3InputPrefix: string; ``` - *Type:* string prefix for input S3 objects - if left empty will generate rule for s3 access to all in bucket. --- ##### `s3OutputBucket`Optional ```typescript public readonly s3OutputBucket: string; ``` - *Type:* string Bucketname to output data to. --- ##### `s3OutputPrefix`Optional ```typescript public readonly s3OutputPrefix: string; ``` - *Type:* string The prefix to use for the temporary output files (e. g. output from async process before stiching together) --- ##### `textractStateMachineTimeoutMinutes`Optional ```typescript public readonly textractStateMachineTimeoutMinutes: number; ``` - *Type:* number how long can we wait for the process (default is 60 minutes). --- ##### `workflowTracingEnabled`Optional ```typescript public readonly workflowTracingEnabled: boolean; ``` - *Type:* boolean --- ### CSVToAuroraTaskProps #### Initializer ```typescript import { CSVToAuroraTaskProps } from 'amazon-textract-idp-cdk-constructs' const cSVToAuroraTaskProps: CSVToAuroraTaskProps = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | comment | string | An optional description for this state. | | heartbeat | aws-cdk-lib.Duration | Timeout for the heartbeat. | | inputPath | string | JSONPath expression to select part of the state to be the input to this state. | | integrationPattern | aws-cdk-lib.aws_stepfunctions.IntegrationPattern | AWS Step Functions integrates with services directly in the Amazon States Language. | | outputPath | string | JSONPath expression to select select a portion of the state output to pass to the next state. | | resultPath | string | JSONPath expression to indicate where to inject the state's output. | | resultSelector | {[ key: string ]: any} | The JSON that will replace the state's raw result and become the effective result before ResultPath is applied. | | timeout | aws-cdk-lib.Duration | Timeout for the state machine. | | associateWithParent | boolean | Pass the execution ID from the context object to the execution input. | | auroraSecurityGroup | aws-cdk-lib.aws_ec2.ISecurityGroup | auroraSecurity Group for Cluster. | | csvToAuroraBackoffRate | number | default is 1.1. | | csvToAuroraInterval | number | default is 1. | | csvToAuroraMaxRetries | number | *No description.* | | dbCluster | aws-cdk-lib.aws_rds.IServerlessCluster | DBCluster to import into. | | enableCloudWatchMetricsAndDashboard | boolean | enable CloudWatch Metrics and Dashboard. | | input | aws-cdk-lib.aws_stepfunctions.TaskInput | The JSON input for the execution, same as that of StartExecution. | | lambdaLogLevel | string | *No description.* | | lambdaMemory | number | Memory allocated to Lambda function, default 512. | | lambdaSecurityGroup | aws-cdk-lib.aws_ec2.ISecurityGroup | lambdaSecurity Group for Cluster. | | lambdaTimeout | number | Lambda Function Timeout in seconds, default 300. | | name | string | The name of the execution, same as that of StartExecution. | | textractStateMachineTimeoutMinutes | number | *No description.* | | vpc | aws-cdk-lib.aws_ec2.IVpc | VPC to install the database into, optional if dbCluster is passed in. | --- ##### `comment`Optional ```typescript public readonly comment: string; ``` - *Type:* string - *Default:* No comment An optional description for this state. --- ##### `heartbeat`Optional ```typescript public readonly heartbeat: Duration; ``` - *Type:* aws-cdk-lib.Duration - *Default:* None Timeout for the heartbeat. --- ##### `inputPath`Optional ```typescript public readonly inputPath: string; ``` - *Type:* string - *Default:* The entire task input (JSON path '$') JSONPath expression to select part of the state to be the input to this state. May also be the special value JsonPath.DISCARD, which will cause the effective input to be the empty object {}. --- ##### `integrationPattern`Optional ```typescript public readonly integrationPattern: IntegrationPattern; ``` - *Type:* aws-cdk-lib.aws_stepfunctions.IntegrationPattern - *Default:* IntegrationPattern.REQUEST_RESPONSE AWS Step Functions integrates with services directly in the Amazon States Language. You can control these AWS services using service integration patterns > [https://docs.aws.amazon.com/step-functions/latest/dg/connect-to-resource.html#connect-wait-token](https://docs.aws.amazon.com/step-functions/latest/dg/connect-to-resource.html#connect-wait-token) --- ##### `outputPath`Optional ```typescript public readonly outputPath: string; ``` - *Type:* string - *Default:* The entire JSON node determined by the state input, the task result, and resultPath is passed to the next state (JSON path '$') JSONPath expression to select select a portion of the state output to pass to the next state. May also be the special value JsonPath.DISCARD, which will cause the effective output to be the empty object {}. --- ##### `resultPath`Optional ```typescript public readonly resultPath: string; ``` - *Type:* string - *Default:* Replaces the entire input with the result (JSON path '$') JSONPath expression to indicate where to inject the state's output. May also be the special value JsonPath.DISCARD, which will cause the state's input to become its output. --- ##### `resultSelector`Optional ```typescript public readonly resultSelector: {[ key: string ]: any}; ``` - *Type:* {[ key: string ]: any} - *Default:* None The JSON that will replace the state's raw result and become the effective result before ResultPath is applied. You can use ResultSelector to create a payload with values that are static or selected from the state's raw result. > [https://docs.aws.amazon.com/step-functions/latest/dg/input-output-inputpath-params.html#input-output-resultselector](https://docs.aws.amazon.com/step-functions/latest/dg/input-output-inputpath-params.html#input-output-resultselector) --- ##### `timeout`Optional ```typescript public readonly timeout: Duration; ``` - *Type:* aws-cdk-lib.Duration - *Default:* None Timeout for the state machine. --- ##### `associateWithParent`Optional ```typescript public readonly associateWithParent: boolean; ``` - *Type:* boolean - *Default:* false Pass the execution ID from the context object to the execution input. This allows the Step Functions UI to link child executions from parent executions, making it easier to trace execution flow across state machines. If you set this property to `true`, the `input` property must be an object (provided by `sfn.TaskInput.fromObject`) or omitted entirely. > [https://docs.aws.amazon.com/step-functions/latest/dg/concepts-nested-workflows.html#nested-execution-startid](https://docs.aws.amazon.com/step-functions/latest/dg/concepts-nested-workflows.html#nested-execution-startid) --- ##### `auroraSecurityGroup`Optional ```typescript public readonly auroraSecurityGroup: ISecurityGroup; ``` - *Type:* aws-cdk-lib.aws_ec2.ISecurityGroup auroraSecurity Group for Cluster. --- ##### `csvToAuroraBackoffRate`Optional ```typescript public readonly csvToAuroraBackoffRate: number; ``` - *Type:* number default is 1.1. --- ##### `csvToAuroraInterval`Optional ```typescript public readonly csvToAuroraInterval: number; ``` - *Type:* number default is 1. --- ##### `csvToAuroraMaxRetries`Optional ```typescript public readonly csvToAuroraMaxRetries: number; ``` - *Type:* number --- ##### `dbCluster`Optional ```typescript public readonly dbCluster: IServerlessCluster; ``` - *Type:* aws-cdk-lib.aws_rds.IServerlessCluster DBCluster to import into. --- ##### `enableCloudWatchMetricsAndDashboard`Optional ```typescript public readonly enableCloudWatchMetricsAndDashboard: boolean; ``` - *Type:* boolean - *Default:* false enable CloudWatch Metrics and Dashboard. --- ##### `input`Optional ```typescript public readonly input: TaskInput; ``` - *Type:* aws-cdk-lib.aws_stepfunctions.TaskInput - *Default:* The state input (JSON path '$') The JSON input for the execution, same as that of StartExecution. > [https://docs.aws.amazon.com/step-functions/latest/apireference/API_StartExecution.html](https://docs.aws.amazon.com/step-functions/latest/apireference/API_StartExecution.html) --- ##### `lambdaLogLevel`Optional ```typescript public readonly lambdaLogLevel: string; ``` - *Type:* string --- ##### `lambdaMemory`Optional ```typescript public readonly lambdaMemory: number; ``` - *Type:* number Memory allocated to Lambda function, default 512. --- ##### `lambdaSecurityGroup`Optional ```typescript public readonly lambdaSecurityGroup: ISecurityGroup; ``` - *Type:* aws-cdk-lib.aws_ec2.ISecurityGroup lambdaSecurity Group for Cluster. --- ##### `lambdaTimeout`Optional ```typescript public readonly lambdaTimeout: number; ``` - *Type:* number Lambda Function Timeout in seconds, default 300. --- ##### `name`Optional ```typescript public readonly name: string; ``` - *Type:* string - *Default:* None The name of the execution, same as that of StartExecution. > [https://docs.aws.amazon.com/step-functions/latest/apireference/API_StartExecution.html](https://docs.aws.amazon.com/step-functions/latest/apireference/API_StartExecution.html) --- ##### `textractStateMachineTimeoutMinutes`Optional ```typescript public readonly textractStateMachineTimeoutMinutes: number; ``` - *Type:* number --- ##### `vpc`Optional ```typescript public readonly vpc: IVpc; ``` - *Type:* aws-cdk-lib.aws_ec2.IVpc VPC to install the database into, optional if dbCluster is passed in. --- ### DocumentSplitterProps #### Initializer ```typescript import { DocumentSplitterProps } from 'amazon-textract-idp-cdk-constructs' const documentSplitterProps: DocumentSplitterProps = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | s3OutputBucket | string | Bucketname to output data to. | | s3OutputPrefix | string | The prefix to use to output files to. | | inputPolicyStatements | aws-cdk-lib.aws_iam.PolicyStatement[] | List of PolicyStatements to attach to the Lambda function. | | lambdaLogLevel | string | Lambda log level. | | lambdaMemoryMB | number | Lambda function memory configuration (may need to increase for larger documents). | | lambdaTimeout | number | Lambda function timeout (may need to increase for larger documents). | | maxNumberOfPagesPerDoc | number | *No description.* | | outputPolicyStatements | aws-cdk-lib.aws_iam.PolicyStatement[] | List of PolicyStatements to attach to the Lambda function. | | s3InputBucket | string | location of input S3 objects - if left empty will generate rule for s3 access to all [*]. | | s3InputPrefix | string | prefix for input S3 objects - if left empty will generate rule for s3 access to all in bucket. | | textractDocumentSplitterBackoffRate | number | retyr backoff rate. | | textractDocumentSplitterInterval | number | *No description.* | | textractDocumentSplitterMaxRetries | number | number of retries in Step Function flow. | --- ##### `s3OutputBucket`Required ```typescript public readonly s3OutputBucket: string; ``` - *Type:* string Bucketname to output data to. --- ##### `s3OutputPrefix`Required ```typescript public readonly s3OutputPrefix: string; ``` - *Type:* string The prefix to use to output files to. --- ##### `inputPolicyStatements`Optional ```typescript public readonly inputPolicyStatements: PolicyStatement[]; ``` - *Type:* aws-cdk-lib.aws_iam.PolicyStatement[] List of PolicyStatements to attach to the Lambda function. --- ##### `lambdaLogLevel`Optional ```typescript public readonly lambdaLogLevel: string; ``` - *Type:* string Lambda log level. --- ##### `lambdaMemoryMB`Optional ```typescript public readonly lambdaMemoryMB: number; ``` - *Type:* number Lambda function memory configuration (may need to increase for larger documents). --- ##### `lambdaTimeout`Optional ```typescript public readonly lambdaTimeout: number; ``` - *Type:* number Lambda function timeout (may need to increase for larger documents). --- ##### `maxNumberOfPagesPerDoc`Optional ```typescript public readonly maxNumberOfPagesPerDoc: number; ``` - *Type:* number --- ##### `outputPolicyStatements`Optional ```typescript public readonly outputPolicyStatements: PolicyStatement[]; ``` - *Type:* aws-cdk-lib.aws_iam.PolicyStatement[] List of PolicyStatements to attach to the Lambda function. --- ##### `s3InputBucket`Optional ```typescript public readonly s3InputBucket: string; ``` - *Type:* string location of input S3 objects - if left empty will generate rule for s3 access to all [*]. --- ##### `s3InputPrefix`Optional ```typescript public readonly s3InputPrefix: string; ``` - *Type:* string prefix for input S3 objects - if left empty will generate rule for s3 access to all in bucket. --- ##### `textractDocumentSplitterBackoffRate`Optional ```typescript public readonly textractDocumentSplitterBackoffRate: number; ``` - *Type:* number - *Default:* is 1.1 retyr backoff rate. --- ##### `textractDocumentSplitterInterval`Optional ```typescript public readonly textractDocumentSplitterInterval: number; ``` - *Type:* number --- ##### `textractDocumentSplitterMaxRetries`Optional ```typescript public readonly textractDocumentSplitterMaxRetries: number; ``` - *Type:* number - *Default:* is 100 number of retries in Step Function flow. --- ### RDSAuroraServerlessProps #### Initializer ```typescript import { RDSAuroraServerlessProps } from 'amazon-textract-idp-cdk-constructs' const rDSAuroraServerlessProps: RDSAuroraServerlessProps = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | vpc | aws-cdk-lib.aws_ec2.IVpc | VPC to install the database into. | --- ##### `vpc`Required ```typescript public readonly vpc: IVpc; ``` - *Type:* aws-cdk-lib.aws_ec2.IVpc VPC to install the database into. --- ### SearchablePDFProps #### Initializer ```typescript import { SearchablePDFProps } from 'amazon-textract-idp-cdk-constructs' const searchablePDFProps: SearchablePDFProps = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | inputPolicyStatements | aws-cdk-lib.aws_iam.PolicyStatement[] | List of PolicyStatements to attach to the Lambda function for S3 GET and LIST. | | lambdaMemoryMB | number | memory of Lambda function (may need to increase for larger documents). | | lambdaTimeout | number | *No description.* | | s3InputPrefix | string | prefix for the incoming document. | | s3PDFBucket | string | *No description.* | | s3TextractOutputBucket | string | *No description.* | | searchablePDFFunction | aws-cdk-lib.aws_lambda.IFunction | *No description.* | --- ##### `inputPolicyStatements`Optional ```typescript public readonly inputPolicyStatements: PolicyStatement[]; ``` - *Type:* aws-cdk-lib.aws_iam.PolicyStatement[] List of PolicyStatements to attach to the Lambda function for S3 GET and LIST. --- ##### `lambdaMemoryMB`Optional ```typescript public readonly lambdaMemoryMB: number; ``` - *Type:* number memory of Lambda function (may need to increase for larger documents). --- ##### `lambdaTimeout`Optional ```typescript public readonly lambdaTimeout: number; ``` - *Type:* number --- ##### `s3InputPrefix`Optional ```typescript public readonly s3InputPrefix: string; ``` - *Type:* string prefix for the incoming document. Will be used to create role --- ##### `s3PDFBucket`Optional ```typescript public readonly s3PDFBucket: string; ``` - *Type:* string --- ##### `s3TextractOutputBucket`Optional ```typescript public readonly s3TextractOutputBucket: string; ``` - *Type:* string --- ##### `searchablePDFFunction`Optional ```typescript public readonly searchablePDFFunction: IFunction; ``` - *Type:* aws-cdk-lib.aws_lambda.IFunction --- ### SFExecutionsStartThrottleProps #### Initializer ```typescript import { SFExecutionsStartThrottleProps } from 'amazon-textract-idp-cdk-constructs' const sFExecutionsStartThrottleProps: SFExecutionsStartThrottleProps = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | stateMachineArn | string | State Machine ARN. | | documentStatusTable | aws-cdk-lib.aws_dynamodb.ITable | Status table - DynamoDB table with status information for the document execution. | | eventSource | aws-cdk-lib.aws_lambda.IEventSource[] | List of PolicyStatements to attach to the Lambda function. | | executionsConcurrencyThreshold | number | Executions concurrency, default is 100 should be set to whatever the bottleneck of the workflow is For Textract Asynchronous APIs, that would be the number of concurrent jobs that can be processed For Textract Synchronous APIs, that would be the TPS for the API. | | executionsCounterTable | aws-cdk-lib.aws_dynamodb.ITable | Step Functions Executions Counter - DynamoDB table with current count of executions. | | inputPolicyStatements | aws-cdk-lib.aws_iam.PolicyStatement[] | List of PolicyStatements to attach to the Lambda function. | | lambdaLogLevel | string | log level for Lambda function, supports DEBUG\|INFO\|WARNING\|ERROR\|FATAL. | | lambdaMemory | number | Memory allocated to Lambda function, default 512. | | lambdaQueueWorkerLogLevel | string | log level for Lambda function, supports DEBUG\|INFO\|WARNING\|ERROR\|FATAL. | | lambdaQueueWorkerMemory | number | Memory allocated to Lambda function, default 512. | | lambdaQueueWorkerTimeout | number | Lambda Function Timeout in seconds, default 300. | | lambdaTimeout | number | Lambda Function Timeout in seconds, default 300. | | s3InputBucket | string | Bucketname and prefix to read document from /** location of input S3 objects - if left empty will generate rule for s3 access to all [*]. | | s3InputPrefix | string | prefix for input S3 objects - if left empty will generate rule for s3 access to all in bucket. | | sqsBatch | number | SQS Batch size when catchup up on queued documents (max 10, which is also the default). | --- ##### `stateMachineArn`Required ```typescript public readonly stateMachineArn: string; ``` - *Type:* string State Machine ARN. --- ##### `documentStatusTable`Optional ```typescript public readonly documentStatusTable: ITable; ``` - *Type:* aws-cdk-lib.aws_dynamodb.ITable Status table - DynamoDB table with status information for the document execution. --- ##### `eventSource`Optional ```typescript public readonly eventSource: IEventSource[]; ``` - *Type:* aws-cdk-lib.aws_lambda.IEventSource[] List of PolicyStatements to attach to the Lambda function. --- ##### `executionsConcurrencyThreshold`Optional ```typescript public readonly executionsConcurrencyThreshold: number; ``` - *Type:* number Executions concurrency, default is 100 should be set to whatever the bottleneck of the workflow is For Textract Asynchronous APIs, that would be the number of concurrent jobs that can be processed For Textract Synchronous APIs, that would be the TPS for the API. --- ##### `executionsCounterTable`Optional ```typescript public readonly executionsCounterTable: ITable; ``` - *Type:* aws-cdk-lib.aws_dynamodb.ITable Step Functions Executions Counter - DynamoDB table with current count of executions. --- ##### `inputPolicyStatements`Optional ```typescript public readonly inputPolicyStatements: PolicyStatement[]; ``` - *Type:* aws-cdk-lib.aws_iam.PolicyStatement[] List of PolicyStatements to attach to the Lambda function. --- ##### `lambdaLogLevel`Optional ```typescript public readonly lambdaLogLevel: string; ``` - *Type:* string - *Default:* = DEBUG log level for Lambda function, supports DEBUG|INFO|WARNING|ERROR|FATAL. --- ##### `lambdaMemory`Optional ```typescript public readonly lambdaMemory: number; ``` - *Type:* number Memory allocated to Lambda function, default 512. --- ##### `lambdaQueueWorkerLogLevel`Optional ```typescript public readonly lambdaQueueWorkerLogLevel: string; ``` - *Type:* string - *Default:* = DEBUG log level for Lambda function, supports DEBUG|INFO|WARNING|ERROR|FATAL. --- ##### `lambdaQueueWorkerMemory`Optional ```typescript public readonly lambdaQueueWorkerMemory: number; ``` - *Type:* number Memory allocated to Lambda function, default 512. --- ##### `lambdaQueueWorkerTimeout`Optional ```typescript public readonly lambdaQueueWorkerTimeout: number; ``` - *Type:* number Lambda Function Timeout in seconds, default 300. --- ##### `lambdaTimeout`Optional ```typescript public readonly lambdaTimeout: number; ``` - *Type:* number Lambda Function Timeout in seconds, default 300. --- ##### `s3InputBucket`Optional ```typescript public readonly s3InputBucket: string; ``` - *Type:* string Bucketname and prefix to read document from /** location of input S3 objects - if left empty will generate rule for s3 access to all [*]. --- ##### `s3InputPrefix`Optional ```typescript public readonly s3InputPrefix: string; ``` - *Type:* string prefix for input S3 objects - if left empty will generate rule for s3 access to all in bucket. --- ##### `sqsBatch`Optional ```typescript public readonly sqsBatch: number; ``` - *Type:* number SQS Batch size when catchup up on queued documents (max 10, which is also the default). --- ### SpacySfnTaskProps #### Initializer ```typescript import { SpacySfnTaskProps } from 'amazon-textract-idp-cdk-constructs' const spacySfnTaskProps: SpacySfnTaskProps = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | comment | string | An optional description for this state. | | heartbeat | aws-cdk-lib.Duration | Timeout for the heartbeat. | | inputPath | string | JSONPath expression to select part of the state to be the input to this state. | | integrationPattern | aws-cdk-lib.aws_stepfunctions.IntegrationPattern | AWS Step Functions integrates with services directly in the Amazon States Language. | | outputPath | string | JSONPath expression to select select a portion of the state output to pass to the next state. | | resultPath | string | JSONPath expression to indicate where to inject the state's output. | | resultSelector | {[ key: string ]: any} | The JSON that will replace the state's raw result and become the effective result before ResultPath is applied. | | timeout | aws-cdk-lib.Duration | Timeout for the state machine. | | associateWithParent | boolean | Pass the execution ID from the context object to the execution input. | | dockerImageFunction | aws-cdk-lib.aws_lambda.IFunction | Docker Container (to use in DockerImageCode.from_ecr() call). | | input | aws-cdk-lib.aws_stepfunctions.TaskInput | The JSON input for the execution, same as that of StartExecution. | | lambdaLogLevel | string | log level for Lambda function, supports DEBUG\|INFO\|WARNING\|ERROR\|FATAL. | | name | string | The name of the execution, same as that of StartExecution. | | spacyImageEcrRepository | string | ECR Container URI for Spacy classification. | | spacyLambdaMemorySize | number | memorySize for Lambda function calling Spacy NLP, default is 4096 MB. | | spacyLambdaTimeout | number | timeout for Lambda function calling Spacy NLP, default is 900 seconds. | | textractStateMachineTimeoutMinutes | number | how long can we wait for the process (default is 48 hours (60*48=2880)). | --- ##### `comment`Optional ```typescript public readonly comment: string; ``` - *Type:* string - *Default:* No comment An optional description for this state. --- ##### `heartbeat`Optional ```typescript public readonly heartbeat: Duration; ``` - *Type:* aws-cdk-lib.Duration - *Default:* None Timeout for the heartbeat. --- ##### `inputPath`Optional ```typescript public readonly inputPath: string; ``` - *Type:* string - *Default:* The entire task input (JSON path '$') JSONPath expression to select part of the state to be the input to this state. May also be the special value JsonPath.DISCARD, which will cause the effective input to be the empty object {}. --- ##### `integrationPattern`Optional ```typescript public readonly integrationPattern: IntegrationPattern; ``` - *Type:* aws-cdk-lib.aws_stepfunctions.IntegrationPattern - *Default:* IntegrationPattern.REQUEST_RESPONSE AWS Step Functions integrates with services directly in the Amazon States Language. You can control these AWS services using service integration patterns > [https://docs.aws.amazon.com/step-functions/latest/dg/connect-to-resource.html#connect-wait-token](https://docs.aws.amazon.com/step-functions/latest/dg/connect-to-resource.html#connect-wait-token) --- ##### `outputPath`Optional ```typescript public readonly outputPath: string; ``` - *Type:* string - *Default:* The entire JSON node determined by the state input, the task result, and resultPath is passed to the next state (JSON path '$') JSONPath expression to select select a portion of the state output to pass to the next state. May also be the special value JsonPath.DISCARD, which will cause the effective output to be the empty object {}. --- ##### `resultPath`Optional ```typescript public readonly resultPath: string; ``` - *Type:* string - *Default:* Replaces the entire input with the result (JSON path '$') JSONPath expression to indicate where to inject the state's output. May also be the special value JsonPath.DISCARD, which will cause the state's input to become its output. --- ##### `resultSelector`Optional ```typescript public readonly resultSelector: {[ key: string ]: any}; ``` - *Type:* {[ key: string ]: any} - *Default:* None The JSON that will replace the state's raw result and become the effective result before ResultPath is applied. You can use ResultSelector to create a payload with values that are static or selected from the state's raw result. > [https://docs.aws.amazon.com/step-functions/latest/dg/input-output-inputpath-params.html#input-output-resultselector](https://docs.aws.amazon.com/step-functions/latest/dg/input-output-inputpath-params.html#input-output-resultselector) --- ##### `timeout`Optional ```typescript public readonly timeout: Duration; ``` - *Type:* aws-cdk-lib.Duration - *Default:* None Timeout for the state machine. --- ##### `associateWithParent`Optional ```typescript public readonly associateWithParent: boolean; ``` - *Type:* boolean - *Default:* false Pass the execution ID from the context object to the execution input. This allows the Step Functions UI to link child executions from parent executions, making it easier to trace execution flow across state machines. If you set this property to `true`, the `input` property must be an object (provided by `sfn.TaskInput.fromObject`) or omitted entirely. > [https://docs.aws.amazon.com/step-functions/latest/dg/concepts-nested-workflows.html#nested-execution-startid](https://docs.aws.amazon.com/step-functions/latest/dg/concepts-nested-workflows.html#nested-execution-startid) --- ##### `dockerImageFunction`Optional ```typescript public readonly dockerImageFunction: IFunction; ``` - *Type:* aws-cdk-lib.aws_lambda.IFunction Docker Container (to use in DockerImageCode.from_ecr() call). --- ##### `input`Optional ```typescript public readonly input: TaskInput; ``` - *Type:* aws-cdk-lib.aws_stepfunctions.TaskInput - *Default:* The state input (JSON path '$') The JSON input for the execution, same as that of StartExecution. > [https://docs.aws.amazon.com/step-functions/latest/apireference/API_StartExecution.html](https://docs.aws.amazon.com/step-functions/latest/apireference/API_StartExecution.html) --- ##### `lambdaLogLevel`Optional ```typescript public readonly lambdaLogLevel: string; ``` - *Type:* string log level for Lambda function, supports DEBUG|INFO|WARNING|ERROR|FATAL. --- ##### `name`Optional ```typescript public readonly name: string; ``` - *Type:* string - *Default:* None The name of the execution, same as that of StartExecution. > [https://docs.aws.amazon.com/step-functions/latest/apireference/API_StartExecution.html](https://docs.aws.amazon.com/step-functions/latest/apireference/API_StartExecution.html) --- ##### `spacyImageEcrRepository`Optional ```typescript public readonly spacyImageEcrRepository: string; ``` - *Type:* string ECR Container URI for Spacy classification. --- ##### `spacyLambdaMemorySize`Optional ```typescript public readonly spacyLambdaMemorySize: number; ``` - *Type:* number memorySize for Lambda function calling Spacy NLP, default is 4096 MB. --- ##### `spacyLambdaTimeout`Optional ```typescript public readonly spacyLambdaTimeout: number; ``` - *Type:* number timeout for Lambda function calling Spacy NLP, default is 900 seconds. --- ##### `textractStateMachineTimeoutMinutes`Optional ```typescript public readonly textractStateMachineTimeoutMinutes: number; ``` - *Type:* number how long can we wait for the process (default is 48 hours (60*48=2880)). --- ### TextractA2ISfnTaskProps #### Initializer ```typescript import { TextractA2ISfnTaskProps } from 'amazon-textract-idp-cdk-constructs' const textractA2ISfnTaskProps: TextractA2ISfnTaskProps = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | comment | string | An optional description for this state. | | heartbeat | aws-cdk-lib.Duration | Timeout for the heartbeat. | | inputPath | string | JSONPath expression to select part of the state to be the input to this state. | | integrationPattern | aws-cdk-lib.aws_stepfunctions.IntegrationPattern | AWS Step Functions integrates with services directly in the Amazon States Language. | | outputPath | string | JSONPath expression to select select a portion of the state output to pass to the next state. | | resultPath | string | JSONPath expression to indicate where to inject the state's output. | | resultSelector | {[ key: string ]: any} | The JSON that will replace the state's raw result and become the effective result before ResultPath is applied. | | timeout | aws-cdk-lib.Duration | Timeout for the state machine. | | a2iFlowDefinitionARN | string | *No description.* | | associateWithParent | boolean | Pass the execution ID from the context object to the execution input. | | input | aws-cdk-lib.aws_stepfunctions.TaskInput | The JSON input for the execution, same as that of StartExecution. | | lambdaLogLevel | string | *No description.* | | name | string | The name of the execution, same as that of StartExecution. | | taskTokenTableName | string | *No description.* | --- ##### `comment`Optional ```typescript public readonly comment: string; ``` - *Type:* string - *Default:* No comment An optional description for this state. --- ##### `heartbeat`Optional ```typescript public readonly heartbeat: Duration; ``` - *Type:* aws-cdk-lib.Duration - *Default:* None Timeout for the heartbeat. --- ##### `inputPath`Optional ```typescript public readonly inputPath: string; ``` - *Type:* string - *Default:* The entire task input (JSON path '$') JSONPath expression to select part of the state to be the input to this state. May also be the special value JsonPath.DISCARD, which will cause the effective input to be the empty object {}. --- ##### `integrationPattern`Optional ```typescript public readonly integrationPattern: IntegrationPattern; ``` - *Type:* aws-cdk-lib.aws_stepfunctions.IntegrationPattern - *Default:* IntegrationPattern.REQUEST_RESPONSE AWS Step Functions integrates with services directly in the Amazon States Language. You can control these AWS services using service integration patterns > [https://docs.aws.amazon.com/step-functions/latest/dg/connect-to-resource.html#connect-wait-token](https://docs.aws.amazon.com/step-functions/latest/dg/connect-to-resource.html#connect-wait-token) --- ##### `outputPath`Optional ```typescript public readonly outputPath: string; ``` - *Type:* string - *Default:* The entire JSON node determined by the state input, the task result, and resultPath is passed to the next state (JSON path '$') JSONPath expression to select select a portion of the state output to pass to the next state. May also be the special value JsonPath.DISCARD, which will cause the effective output to be the empty object {}. --- ##### `resultPath`Optional ```typescript public readonly resultPath: string; ``` - *Type:* string - *Default:* Replaces the entire input with the result (JSON path '$') JSONPath expression to indicate where to inject the state's output. May also be the special value JsonPath.DISCARD, which will cause the state's input to become its output. --- ##### `resultSelector`Optional ```typescript public readonly resultSelector: {[ key: string ]: any}; ``` - *Type:* {[ key: string ]: any} - *Default:* None The JSON that will replace the state's raw result and become the effective result before ResultPath is applied. You can use ResultSelector to create a payload with values that are static or selected from the state's raw result. > [https://docs.aws.amazon.com/step-functions/latest/dg/input-output-inputpath-params.html#input-output-resultselector](https://docs.aws.amazon.com/step-functions/latest/dg/input-output-inputpath-params.html#input-output-resultselector) --- ##### `timeout`Optional ```typescript public readonly timeout: Duration; ``` - *Type:* aws-cdk-lib.Duration - *Default:* None Timeout for the state machine. --- ##### `a2iFlowDefinitionARN`Required ```typescript public readonly a2iFlowDefinitionARN: string; ``` - *Type:* string --- ##### `associateWithParent`Optional ```typescript public readonly associateWithParent: boolean; ``` - *Type:* boolean - *Default:* false Pass the execution ID from the context object to the execution input. This allows the Step Functions UI to link child executions from parent executions, making it easier to trace execution flow across state machines. If you set this property to `true`, the `input` property must be an object (provided by `sfn.TaskInput.fromObject`) or omitted entirely. > [https://docs.aws.amazon.com/step-functions/latest/dg/concepts-nested-workflows.html#nested-execution-startid](https://docs.aws.amazon.com/step-functions/latest/dg/concepts-nested-workflows.html#nested-execution-startid) --- ##### `input`Optional ```typescript public readonly input: TaskInput; ``` - *Type:* aws-cdk-lib.aws_stepfunctions.TaskInput - *Default:* The state input (JSON path '$') The JSON input for the execution, same as that of StartExecution. > [https://docs.aws.amazon.com/step-functions/latest/apireference/API_StartExecution.html](https://docs.aws.amazon.com/step-functions/latest/apireference/API_StartExecution.html) --- ##### `lambdaLogLevel`Optional ```typescript public readonly lambdaLogLevel: string; ``` - *Type:* string --- ##### `name`Optional ```typescript public readonly name: string; ``` - *Type:* string - *Default:* None The name of the execution, same as that of StartExecution. > [https://docs.aws.amazon.com/step-functions/latest/apireference/API_StartExecution.html](https://docs.aws.amazon.com/step-functions/latest/apireference/API_StartExecution.html) --- ##### `taskTokenTableName`Optional ```typescript public readonly taskTokenTableName: string; ``` - *Type:* string --- ### TextractAsyncToJSONProps #### Initializer ```typescript import { TextractAsyncToJSONProps } from 'amazon-textract-idp-cdk-constructs' const textractAsyncToJSONProps: TextractAsyncToJSONProps = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | s3OutputBucket | string | Bucketname to output data to. | | s3OutputPrefix | string | The prefix to use for the output files. | | inputPolicyStatements | aws-cdk-lib.aws_iam.PolicyStatement[] | List of PolicyStatements to attach to the Lambda function. | | lambdaLogLevel | string | log level for Lambda function, supports DEBUG\|INFO\|WARNING\|ERROR\|FATAL. | | lambdaMemoryMB | number | memory of Lambda function (may need to increase for larger documents), set to 10240 (max) atm, decrease for smaller workloads. | | lambdaTimeout | number | memory of Lambda function (may need to increase for larger documents). | | outputPolicyStatements | aws-cdk-lib.aws_iam.PolicyStatement[] | List of PolicyStatements to attach to the Lambda function. | | s3InputBucket | string | *No description.* | | s3InputPrefix | string | prefix for input S3 objects - if left empty will generate rule for s3 access to all in bucket. | | textractAPI | string | Which Textract API was used to create the OutputConfig? | | textractAsyncToJSONBackoffRate | number | retyr backoff rate. | | textractAsyncToJSONInterval | number | *No description.* | | textractAsyncToJSONMaxRetries | number | number of retries in Step Function flow. | --- ##### `s3OutputBucket`Required ```typescript public readonly s3OutputBucket: string; ``` - *Type:* string Bucketname to output data to. --- ##### `s3OutputPrefix`Required ```typescript public readonly s3OutputPrefix: string; ``` - *Type:* string The prefix to use for the output files. --- ##### `inputPolicyStatements`Optional ```typescript public readonly inputPolicyStatements: PolicyStatement[]; ``` - *Type:* aws-cdk-lib.aws_iam.PolicyStatement[] List of PolicyStatements to attach to the Lambda function. --- ##### `lambdaLogLevel`Optional ```typescript public readonly lambdaLogLevel: string; ``` - *Type:* string log level for Lambda function, supports DEBUG|INFO|WARNING|ERROR|FATAL. --- ##### `lambdaMemoryMB`Optional ```typescript public readonly lambdaMemoryMB: number; ``` - *Type:* number memory of Lambda function (may need to increase for larger documents), set to 10240 (max) atm, decrease for smaller workloads. --- ##### `lambdaTimeout`Optional ```typescript public readonly lambdaTimeout: number; ``` - *Type:* number memory of Lambda function (may need to increase for larger documents). --- ##### `outputPolicyStatements`Optional ```typescript public readonly outputPolicyStatements: PolicyStatement[]; ``` - *Type:* aws-cdk-lib.aws_iam.PolicyStatement[] List of PolicyStatements to attach to the Lambda function. --- ##### `s3InputBucket`Optional ```typescript public readonly s3InputBucket: string; ``` - *Type:* string --- ##### `s3InputPrefix`Optional ```typescript public readonly s3InputPrefix: string; ``` - *Type:* string prefix for input S3 objects - if left empty will generate rule for s3 access to all in bucket. --- ##### `textractAPI`Optional ```typescript public readonly textractAPI: string; ``` - *Type:* string - *Default:* GENERIC Which Textract API was used to create the OutputConfig? GENERIC and LENDING are supported. --- ##### `textractAsyncToJSONBackoffRate`Optional ```typescript public readonly textractAsyncToJSONBackoffRate: number; ``` - *Type:* number - *Default:* is 1.1 retyr backoff rate. --- ##### `textractAsyncToJSONInterval`Optional ```typescript public readonly textractAsyncToJSONInterval: number; ``` - *Type:* number --- ##### `textractAsyncToJSONMaxRetries`Optional ```typescript public readonly textractAsyncToJSONMaxRetries: number; ``` - *Type:* number - *Default:* is 100 number of retries in Step Function flow. --- ### TextractClassificationConfiguratorProps #### Initializer ```typescript import { TextractClassificationConfiguratorProps } from 'amazon-textract-idp-cdk-constructs' const textractClassificationConfiguratorProps: TextractClassificationConfiguratorProps = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | configurationTable | aws-cdk-lib.aws_dynamodb.ITable | *No description.* | | lambdaLogLevel | string | *No description.* | | lambdaMemoryMB | number | memory of Lambda function (may need to increase for larger documents). | | lambdaTimeout | number | *No description.* | --- ##### `configurationTable`Optional ```typescript public readonly configurationTable: ITable; ``` - *Type:* aws-cdk-lib.aws_dynamodb.ITable --- ##### `lambdaLogLevel`Optional ```typescript public readonly lambdaLogLevel: string; ``` - *Type:* string --- ##### `lambdaMemoryMB`Optional ```typescript public readonly lambdaMemoryMB: number; ``` - *Type:* number memory of Lambda function (may need to increase for larger documents). --- ##### `lambdaTimeout`Optional ```typescript public readonly lambdaTimeout: number; ``` - *Type:* number --- ### TextractDPPOCDeciderProps #### Initializer ```typescript import { TextractDPPOCDeciderProps } from 'amazon-textract-idp-cdk-constructs' const textractDPPOCDeciderProps: TextractDPPOCDeciderProps = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | deciderFunction | aws-cdk-lib.aws_lambda.IFunction | *No description.* | | inputPolicyStatements | aws-cdk-lib.aws_iam.PolicyStatement[] | List of PolicyStatements to attach to the Lambda function for S3 GET and LIST. | | lambdaMemoryMB | number | memory of Lambda function (may need to increase for larger documents). | | lambdaTimeout | number | *No description.* | | s3InputBucket | string | *No description.* | | s3InputPrefix | string | prefix for the incoming document. | | textractDeciderBackoffRate | number | retyr backoff rate. | | textractDeciderInterval | number | *No description.* | | textractDeciderMaxRetries | number | number of retries in Step Function flow. | --- ##### `deciderFunction`Optional ```typescript public readonly deciderFunction: IFunction; ``` - *Type:* aws-cdk-lib.aws_lambda.IFunction --- ##### `inputPolicyStatements`Optional ```typescript public readonly inputPolicyStatements: PolicyStatement[]; ``` - *Type:* aws-cdk-lib.aws_iam.PolicyStatement[] List of PolicyStatements to attach to the Lambda function for S3 GET and LIST. --- ##### `lambdaMemoryMB`Optional ```typescript public readonly lambdaMemoryMB: number; ``` - *Type:* number memory of Lambda function (may need to increase for larger documents). --- ##### `lambdaTimeout`Optional ```typescript public readonly lambdaTimeout: number; ``` - *Type:* number --- ##### `s3InputBucket`Optional ```typescript public readonly s3InputBucket: string; ``` - *Type:* string --- ##### `s3InputPrefix`Optional ```typescript public readonly s3InputPrefix: string; ``` - *Type:* string prefix for the incoming document. Will be used to create role --- ##### `textractDeciderBackoffRate`Optional ```typescript public readonly textractDeciderBackoffRate: number; ``` - *Type:* number - *Default:* is 1.1 retyr backoff rate. --- ##### `textractDeciderInterval`Optional ```typescript public readonly textractDeciderInterval: number; ``` - *Type:* number --- ##### `textractDeciderMaxRetries`Optional ```typescript public readonly textractDeciderMaxRetries: number; ``` - *Type:* number - *Default:* is 100 number of retries in Step Function flow. --- ### TextractGenerateCSVProps #### Initializer ```typescript import { TextractGenerateCSVProps } from 'amazon-textract-idp-cdk-constructs' const textractGenerateCSVProps: TextractGenerateCSVProps = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | comment | string | An optional description for this state. | | heartbeat | aws-cdk-lib.Duration | Timeout for the heartbeat. | | inputPath | string | JSONPath expression to select part of the state to be the input to this state. | | integrationPattern | aws-cdk-lib.aws_stepfunctions.IntegrationPattern | AWS Step Functions integrates with services directly in the Amazon States Language. | | outputPath | string | JSONPath expression to select select a portion of the state output to pass to the next state. | | resultPath | string | JSONPath expression to indicate where to inject the state's output. | | resultSelector | {[ key: string ]: any} | The JSON that will replace the state's raw result and become the effective result before ResultPath is applied. | | timeout | aws-cdk-lib.Duration | Timeout for the state machine. | | csvS3OutputBucket | string | *No description.* | | csvS3OutputPrefix | string | *No description.* | | associateWithParent | boolean | Pass the execution ID from the context object to the execution input. | | input | aws-cdk-lib.aws_stepfunctions.TaskInput | The JSON input for the execution, same as that of StartExecution. | | inputPolicyStatements | aws-cdk-lib.aws_iam.PolicyStatement[] | List of PolicyStatements to attach to the Lambda function. | | lambdaLogLevel | string | *No description.* | | lambdaMemoryMB | number | memory of Lambda function (may need to increase for larger documents). | | lambdaTimeout | number | *No description.* | | metaDataToAppend | string[] | The generated CSV can have any meta-data from the manifest file included. | | name | string | The name of the execution, same as that of StartExecution. | | opensearchIndexName | string | *No description.* | | outputFeatures | string | supports FORMS, TABLES, QUERIES, SIGNATURES as a comma seperated string and generates CSV files for the output from those default is "FORMS,TABLES,QUERIES,SIGNATURES". | | outputPolicyStatements | aws-cdk-lib.aws_iam.PolicyStatement[] | List of PolicyStatements to attach to the Lambda function. | | outputType | string | *No description.* | | s3InputBucket | string | Bucketname and prefix to read document from /** location of input S3 objects - if left empty will generate rule for s3 access to all [*]. | | s3InputPrefix | string | prefix for input S3 objects - if left empty will generate rule for s3 access to all in bucket. | | textractAPI | string | *No description.* | | textractGenerateCSVBackoffRate | number | retyr backoff rate. | | textractGenerateCSVInterval | number | *No description.* | | textractGenerateCSVMaxRetries | number | number of retries in Step Function flow. | --- ##### `comment`Optional ```typescript public readonly comment: string; ``` - *Type:* string - *Default:* No comment An optional description for this state. --- ##### `heartbeat`Optional ```typescript public readonly heartbeat: Duration; ``` - *Type:* aws-cdk-lib.Duration - *Default:* None Timeout for the heartbeat. --- ##### `inputPath`Optional ```typescript public readonly inputPath: string; ``` - *Type:* string - *Default:* The entire task input (JSON path '$') JSONPath expression to select part of the state to be the input to this state. May also be the special value JsonPath.DISCARD, which will cause the effective input to be the empty object {}. --- ##### `integrationPattern`Optional ```typescript public readonly integrationPattern: IntegrationPattern; ``` - *Type:* aws-cdk-lib.aws_stepfunctions.IntegrationPattern - *Default:* IntegrationPattern.REQUEST_RESPONSE AWS Step Functions integrates with services directly in the Amazon States Language. You can control these AWS services using service integration patterns > [https://docs.aws.amazon.com/step-functions/latest/dg/connect-to-resource.html#connect-wait-token](https://docs.aws.amazon.com/step-functions/latest/dg/connect-to-resource.html#connect-wait-token) --- ##### `outputPath`Optional ```typescript public readonly outputPath: string; ``` - *Type:* string - *Default:* The entire JSON node determined by the state input, the task result, and resultPath is passed to the next state (JSON path '$') JSONPath expression to select select a portion of the state output to pass to the next state. May also be the special value JsonPath.DISCARD, which will cause the effective output to be the empty object {}. --- ##### `resultPath`Optional ```typescript public readonly resultPath: string; ``` - *Type:* string - *Default:* Replaces the entire input with the result (JSON path '$') JSONPath expression to indicate where to inject the state's output. May also be the special value JsonPath.DISCARD, which will cause the state's input to become its output. --- ##### `resultSelector`Optional ```typescript public readonly resultSelector: {[ key: string ]: any}; ``` - *Type:* {[ key: string ]: any} - *Default:* None The JSON that will replace the state's raw result and become the effective result before ResultPath is applied. You can use ResultSelector to create a payload with values that are static or selected from the state's raw result. > [https://docs.aws.amazon.com/step-functions/latest/dg/input-output-inputpath-params.html#input-output-resultselector](https://docs.aws.amazon.com/step-functions/latest/dg/input-output-inputpath-params.html#input-output-resultselector) --- ##### `timeout`Optional ```typescript public readonly timeout: Duration; ``` - *Type:* aws-cdk-lib.Duration - *Default:* None Timeout for the state machine. --- ##### `csvS3OutputBucket`Required ```typescript public readonly csvS3OutputBucket: string; ``` - *Type:* string --- ##### `csvS3OutputPrefix`Required ```typescript public readonly csvS3OutputPrefix: string; ``` - *Type:* string --- ##### `associateWithParent`Optional ```typescript public readonly associateWithParent: boolean; ``` - *Type:* boolean - *Default:* false Pass the execution ID from the context object to the execution input. This allows the Step Functions UI to link child executions from parent executions, making it easier to trace execution flow across state machines. If you set this property to `true`, the `input` property must be an object (provided by `sfn.TaskInput.fromObject`) or omitted entirely. > [https://docs.aws.amazon.com/step-functions/latest/dg/concepts-nested-workflows.html#nested-execution-startid](https://docs.aws.amazon.com/step-functions/latest/dg/concepts-nested-workflows.html#nested-execution-startid) --- ##### `input`Optional ```typescript public readonly input: TaskInput; ``` - *Type:* aws-cdk-lib.aws_stepfunctions.TaskInput - *Default:* The state input (JSON path '$') The JSON input for the execution, same as that of StartExecution. > [https://docs.aws.amazon.com/step-functions/latest/apireference/API_StartExecution.html](https://docs.aws.amazon.com/step-functions/latest/apireference/API_StartExecution.html) --- ##### `inputPolicyStatements`Optional ```typescript public readonly inputPolicyStatements: PolicyStatement[]; ``` - *Type:* aws-cdk-lib.aws_iam.PolicyStatement[] List of PolicyStatements to attach to the Lambda function. --- ##### `lambdaLogLevel`Optional ```typescript public readonly lambdaLogLevel: string; ``` - *Type:* string --- ##### `lambdaMemoryMB`Optional ```typescript public readonly lambdaMemoryMB: number; ``` - *Type:* number memory of Lambda function (may need to increase for larger documents). --- ##### `lambdaTimeout`Optional ```typescript public readonly lambdaTimeout: number; ``` - *Type:* number --- ##### `metaDataToAppend`Optional ```typescript public readonly metaDataToAppend: string[]; ``` - *Type:* string[] The generated CSV can have any meta-data from the manifest file included. This is a list of all meta-data names to include If they are missed they will be "" MetaData keys have to be without ',' --- ##### `name`Optional ```typescript public readonly name: string; ``` - *Type:* string - *Default:* None The name of the execution, same as that of StartExecution. > [https://docs.aws.amazon.com/step-functions/latest/apireference/API_StartExecution.html](https://docs.aws.amazon.com/step-functions/latest/apireference/API_StartExecution.html) --- ##### `opensearchIndexName`Optional ```typescript public readonly opensearchIndexName: string; ``` - *Type:* string --- ##### `outputFeatures`Optional ```typescript public readonly outputFeatures: string; ``` - *Type:* string supports FORMS, TABLES, QUERIES, SIGNATURES as a comma seperated string and generates CSV files for the output from those default is "FORMS,TABLES,QUERIES,SIGNATURES". --- ##### `outputPolicyStatements`Optional ```typescript public readonly outputPolicyStatements: PolicyStatement[]; ``` - *Type:* aws-cdk-lib.aws_iam.PolicyStatement[] List of PolicyStatements to attach to the Lambda function. --- ##### `outputType`Optional ```typescript public readonly outputType: string; ``` - *Type:* string --- ##### `s3InputBucket`Optional ```typescript public readonly s3InputBucket: string; ``` - *Type:* string Bucketname and prefix to read document from /** location of input S3 objects - if left empty will generate rule for s3 access to all [*]. --- ##### `s3InputPrefix`Optional ```typescript public readonly s3InputPrefix: string; ``` - *Type:* string prefix for input S3 objects - if left empty will generate rule for s3 access to all in bucket. --- ##### `textractAPI`Optional ```typescript public readonly textractAPI: string; ``` - *Type:* string --- ##### `textractGenerateCSVBackoffRate`Optional ```typescript public readonly textractGenerateCSVBackoffRate: number; ``` - *Type:* number - *Default:* is 1.1 retyr backoff rate. --- ##### `textractGenerateCSVInterval`Optional ```typescript public readonly textractGenerateCSVInterval: number; ``` - *Type:* number --- ##### `textractGenerateCSVMaxRetries`Optional ```typescript public readonly textractGenerateCSVMaxRetries: number; ``` - *Type:* number - *Default:* is 100 number of retries in Step Function flow. --- ### TextractGenericAsyncSfnTaskProps #### Initializer ```typescript import { TextractGenericAsyncSfnTaskProps } from 'amazon-textract-idp-cdk-constructs' const textractGenericAsyncSfnTaskProps: TextractGenericAsyncSfnTaskProps = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | comment | string | An optional description for this state. | | heartbeat | aws-cdk-lib.Duration | Timeout for the heartbeat. | | inputPath | string | JSONPath expression to select part of the state to be the input to this state. | | integrationPattern | aws-cdk-lib.aws_stepfunctions.IntegrationPattern | AWS Step Functions integrates with services directly in the Amazon States Language. | | outputPath | string | JSONPath expression to select select a portion of the state output to pass to the next state. | | resultPath | string | JSONPath expression to indicate where to inject the state's output. | | resultSelector | {[ key: string ]: any} | The JSON that will replace the state's raw result and become the effective result before ResultPath is applied. | | timeout | aws-cdk-lib.Duration | Timeout for the state machine. | | s3OutputBucket | string | Bucketname to output data to. | | s3TempOutputPrefix | string | The prefix to use for the temporary output files (e. | | associateWithParent | boolean | Pass the execution ID from the context object to the execution input. | | enableCloudWatchMetricsAndDashboard | boolean | *No description.* | | input | aws-cdk-lib.aws_stepfunctions.TaskInput | The JSON input for the execution, same as that of StartExecution. | | inputPolicyStatements | aws-cdk-lib.aws_iam.PolicyStatement[] | List of PolicyStatements to attach to the Lambda function. | | lambdaLogLevel | string | log level for Lambda function, supports DEBUG\|INFO\|WARNING\|ERROR\|FATAL. | | lambdaMemory | number | Memory allocated to Lambda function, default 512. | | lambdaTimeout | number | Lambda Function Timeout in seconds, default 300. | | name | string | The name of the execution, same as that of StartExecution. | | outputPolicyStatements | aws-cdk-lib.aws_iam.PolicyStatement[] | List of PolicyStatements to attach to the Lambda function. | | s3InputBucket | string | Bucketname and prefix to read document from /** location of input S3 objects - if left empty will generate rule for s3 access to all [*]. | | s3InputPrefix | string | prefix for input S3 objects - if left empty will generate rule for s3 access to all in bucket. | | snsRoleTextract | aws-cdk-lib.aws_iam.IRole | IAM Role to assign to Textract, by default new iam.Role(this, 'TextractAsyncSNSRole', { assumedBy: new iam.ServicePrincipal('textract.amazonaws.com'), managedPolicies: [ManagedPolicy.fromAwsManagedPolicyName('AmazonSQSFullAccess'), ManagedPolicy.fromAwsManagedPolicyName('AmazonSNSFullAccess'), ManagedPolicy.fromAwsManagedPolicyName('AmazonS3ReadOnlyAccess'), ManagedPolicy.fromAwsManagedPolicyName('AmazonTextractFullAccess')], }); | | taskTokenTable | aws-cdk-lib.aws_dynamodb.ITable | task token table to use for mapping of Textract [JobTag](https://docs.aws.amazon.com/textract/latest/dg/API_StartDocumentTextDetection.html#Textract-StartDocumentTextDetection-request-JobTag) to the [TaskToken](https://docs.aws.amazon.com/step-functions/latest/dg/connect-to-resource.html). | | textractAPI | string | Which Textract API to call ALL asynchronous Textract API calls are supported. Valid values are GENERIC \| EXPENSE \| LENDING. | | textractAsyncCallBackoffRate | number | retyr backoff rate. | | textractAsyncCallInterval | number | time in seconds to wait before next retry. | | textractAsyncCallMaxRetries | number | number of retries in Step Function flow. | | textractStateMachineTimeoutMinutes | number | how long can we wait for the process. | --- ##### `comment`Optional ```typescript public readonly comment: string; ``` - *Type:* string - *Default:* No comment An optional description for this state. --- ##### `heartbeat`Optional ```typescript public readonly heartbeat: Duration; ``` - *Type:* aws-cdk-lib.Duration - *Default:* None Timeout for the heartbeat. --- ##### `inputPath`Optional ```typescript public readonly inputPath: string; ``` - *Type:* string - *Default:* The entire task input (JSON path '$') JSONPath expression to select part of the state to be the input to this state. May also be the special value JsonPath.DISCARD, which will cause the effective input to be the empty object {}. --- ##### `integrationPattern`Optional ```typescript public readonly integrationPattern: IntegrationPattern; ``` - *Type:* aws-cdk-lib.aws_stepfunctions.IntegrationPattern - *Default:* IntegrationPattern.REQUEST_RESPONSE AWS Step Functions integrates with services directly in the Amazon States Language. You can control these AWS services using service integration patterns > [https://docs.aws.amazon.com/step-functions/latest/dg/connect-to-resource.html#connect-wait-token](https://docs.aws.amazon.com/step-functions/latest/dg/connect-to-resource.html#connect-wait-token) --- ##### `outputPath`Optional ```typescript public readonly outputPath: string; ``` - *Type:* string - *Default:* The entire JSON node determined by the state input, the task result, and resultPath is passed to the next state (JSON path '$') JSONPath expression to select select a portion of the state output to pass to the next state. May also be the special value JsonPath.DISCARD, which will cause the effective output to be the empty object {}. --- ##### `resultPath`Optional ```typescript public readonly resultPath: string; ``` - *Type:* string - *Default:* Replaces the entire input with the result (JSON path '$') JSONPath expression to indicate where to inject the state's output. May also be the special value JsonPath.DISCARD, which will cause the state's input to become its output. --- ##### `resultSelector`Optional ```typescript public readonly resultSelector: {[ key: string ]: any}; ``` - *Type:* {[ key: string ]: any} - *Default:* None The JSON that will replace the state's raw result and become the effective result before ResultPath is applied. You can use ResultSelector to create a payload with values that are static or selected from the state's raw result. > [https://docs.aws.amazon.com/step-functions/latest/dg/input-output-inputpath-params.html#input-output-resultselector](https://docs.aws.amazon.com/step-functions/latest/dg/input-output-inputpath-params.html#input-output-resultselector) --- ##### `timeout`Optional ```typescript public readonly timeout: Duration; ``` - *Type:* aws-cdk-lib.Duration - *Default:* None Timeout for the state machine. --- ##### `s3OutputBucket`Required ```typescript public readonly s3OutputBucket: string; ``` - *Type:* string Bucketname to output data to. --- ##### `s3TempOutputPrefix`Required ```typescript public readonly s3TempOutputPrefix: string; ``` - *Type:* string The prefix to use for the temporary output files (e. g. output from async process before stiching together) --- ##### `associateWithParent`Optional ```typescript public readonly associateWithParent: boolean; ``` - *Type:* boolean - *Default:* false Pass the execution ID from the context object to the execution input. This allows the Step Functions UI to link child executions from parent executions, making it easier to trace execution flow across state machines. If you set this property to `true`, the `input` property must be an object (provided by `sfn.TaskInput.fromObject`) or omitted entirely. > [https://docs.aws.amazon.com/step-functions/latest/dg/concepts-nested-workflows.html#nested-execution-startid](https://docs.aws.amazon.com/step-functions/latest/dg/concepts-nested-workflows.html#nested-execution-startid) --- ##### `enableCloudWatchMetricsAndDashboard`Optional ```typescript public readonly enableCloudWatchMetricsAndDashboard: boolean; ``` - *Type:* boolean --- ##### `input`Optional ```typescript public readonly input: TaskInput; ``` - *Type:* aws-cdk-lib.aws_stepfunctions.TaskInput - *Default:* The state input (JSON path '$') The JSON input for the execution, same as that of StartExecution. > [https://docs.aws.amazon.com/step-functions/latest/apireference/API_StartExecution.html](https://docs.aws.amazon.com/step-functions/latest/apireference/API_StartExecution.html) --- ##### `inputPolicyStatements`Optional ```typescript public readonly inputPolicyStatements: PolicyStatement[]; ``` - *Type:* aws-cdk-lib.aws_iam.PolicyStatement[] List of PolicyStatements to attach to the Lambda function. --- ##### `lambdaLogLevel`Optional ```typescript public readonly lambdaLogLevel: string; ``` - *Type:* string - *Default:* = DEBUG log level for Lambda function, supports DEBUG|INFO|WARNING|ERROR|FATAL. --- ##### `lambdaMemory`Optional ```typescript public readonly lambdaMemory: number; ``` - *Type:* number Memory allocated to Lambda function, default 512. --- ##### `lambdaTimeout`Optional ```typescript public readonly lambdaTimeout: number; ``` - *Type:* number Lambda Function Timeout in seconds, default 300. --- ##### `name`Optional ```typescript public readonly name: string; ``` - *Type:* string - *Default:* None The name of the execution, same as that of StartExecution. > [https://docs.aws.amazon.com/step-functions/latest/apireference/API_StartExecution.html](https://docs.aws.amazon.com/step-functions/latest/apireference/API_StartExecution.html) --- ##### `outputPolicyStatements`Optional ```typescript public readonly outputPolicyStatements: PolicyStatement[]; ``` - *Type:* aws-cdk-lib.aws_iam.PolicyStatement[] List of PolicyStatements to attach to the Lambda function. --- ##### `s3InputBucket`Optional ```typescript public readonly s3InputBucket: string; ``` - *Type:* string Bucketname and prefix to read document from /** location of input S3 objects - if left empty will generate rule for s3 access to all [*]. --- ##### `s3InputPrefix`Optional ```typescript public readonly s3InputPrefix: string; ``` - *Type:* string prefix for input S3 objects - if left empty will generate rule for s3 access to all in bucket. --- ##### `snsRoleTextract`Optional ```typescript public readonly snsRoleTextract: IRole; ``` - *Type:* aws-cdk-lib.aws_iam.IRole IAM Role to assign to Textract, by default new iam.Role(this, 'TextractAsyncSNSRole', { assumedBy: new iam.ServicePrincipal('textract.amazonaws.com'), managedPolicies: [ManagedPolicy.fromAwsManagedPolicyName('AmazonSQSFullAccess'), ManagedPolicy.fromAwsManagedPolicyName('AmazonSNSFullAccess'), ManagedPolicy.fromAwsManagedPolicyName('AmazonS3ReadOnlyAccess'), ManagedPolicy.fromAwsManagedPolicyName('AmazonTextractFullAccess')], }); --- ##### `taskTokenTable`Optional ```typescript public readonly taskTokenTable: ITable; ``` - *Type:* aws-cdk-lib.aws_dynamodb.ITable task token table to use for mapping of Textract [JobTag](https://docs.aws.amazon.com/textract/latest/dg/API_StartDocumentTextDetection.html#Textract-StartDocumentTextDetection-request-JobTag) to the [TaskToken](https://docs.aws.amazon.com/step-functions/latest/dg/connect-to-resource.html). --- ##### `textractAPI`Optional ```typescript public readonly textractAPI: string; ``` - *Type:* string - *Default:* GENERIC Which Textract API to call ALL asynchronous Textract API calls are supported. Valid values are GENERIC | EXPENSE | LENDING. For GENERIC, when called without features (e. g. FORMS, TABLES, QUERIES, SIGNATURE), StartDetectText is called and only OCR is returned. For GENERIC, when called with a feature (e. g. FORMS, TABLES, QUERIES, SIGNATURE), StartAnalyzeDocument is called. --- ##### `textractAsyncCallBackoffRate`Optional ```typescript public readonly textractAsyncCallBackoffRate: number; ``` - *Type:* number - *Default:* is 1.1 retyr backoff rate. --- ##### `textractAsyncCallInterval`Optional ```typescript public readonly textractAsyncCallInterval: number; ``` - *Type:* number - *Default:* is 1 time in seconds to wait before next retry. --- ##### `textractAsyncCallMaxRetries`Optional ```typescript public readonly textractAsyncCallMaxRetries: number; ``` - *Type:* number - *Default:* is 100 number of retries in Step Function flow. --- ##### `textractStateMachineTimeoutMinutes`Optional ```typescript public readonly textractStateMachineTimeoutMinutes: number; ``` - *Type:* number - *Default:* 2880 (48 hours (60 min * 48 hours = 2880)) how long can we wait for the process. --- ### TextractGenericSyncSfnTaskProps #### Initializer ```typescript import { TextractGenericSyncSfnTaskProps } from 'amazon-textract-idp-cdk-constructs' const textractGenericSyncSfnTaskProps: TextractGenericSyncSfnTaskProps = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | comment | string | An optional description for this state. | | heartbeat | aws-cdk-lib.Duration | Timeout for the heartbeat. | | inputPath | string | JSONPath expression to select part of the state to be the input to this state. | | integrationPattern | aws-cdk-lib.aws_stepfunctions.IntegrationPattern | AWS Step Functions integrates with services directly in the Amazon States Language. | | outputPath | string | JSONPath expression to select select a portion of the state output to pass to the next state. | | resultPath | string | JSONPath expression to indicate where to inject the state's output. | | resultSelector | {[ key: string ]: any} | The JSON that will replace the state's raw result and become the effective result before ResultPath is applied. | | timeout | aws-cdk-lib.Duration | Timeout for the state machine. | | s3OutputBucket | string | *No description.* | | s3OutputPrefix | string | The prefix to use for the output files. | | associateWithParent | boolean | Pass the execution ID from the context object to the execution input. | | customFunction | aws-cdk-lib.aws_stepfunctions_tasks.LambdaInvoke | not implemented yet. | | enableCloudWatchMetricsAndDashboard | boolean | enable CloudWatch Metrics and Dashboard. | | enableDashboard | boolean | not implemented yet. | | enableMonitoring | boolean | not implemented yet. | | input | aws-cdk-lib.aws_stepfunctions.TaskInput | The JSON input for the execution, same as that of StartExecution. | | inputPolicyStatements | aws-cdk-lib.aws_iam.PolicyStatement[] | List of PolicyStatements to attach to the Lambda function. | | lambdaLogLevel | string | Log level, can be DEBUG, INFO, WARNING, ERROR, FATAL. | | lambdaMemory | number | Memory allocated to Lambda function, default 512. | | lambdaTimeout | number | Lambda Function Timeout in seconds, default 300. | | name | string | The name of the execution, same as that of StartExecution. | | outputPolicyStatements | aws-cdk-lib.aws_iam.PolicyStatement[] | List of PolicyStatements to attach to the Lambda function. | | s3InputBucket | string | location of input S3 objects - if left empty will generate rule for s3 access to all [*]. | | s3InputPrefix | string | prefix for input S3 objects - if left empty will generate rule for s3 access to all [*]. | | textractAPI | string | *No description.* | | textractAsyncCallBackoffRate | number | default is 1.1. | | textractAsyncCallInterval | number | default is 1. | | textractAsyncCallMaxRetries | number | *No description.* | | textractStateMachineTimeoutMinutes | number | how long can we wait for the process (default is 48 hours (60*48=2880)). | | workflowTracingEnabled | boolean | *No description.* | --- ##### `comment`Optional ```typescript public readonly comment: string; ``` - *Type:* string - *Default:* No comment An optional description for this state. --- ##### `heartbeat`Optional ```typescript public readonly heartbeat: Duration; ``` - *Type:* aws-cdk-lib.Duration - *Default:* None Timeout for the heartbeat. --- ##### `inputPath`Optional ```typescript public readonly inputPath: string; ``` - *Type:* string - *Default:* The entire task input (JSON path '$') JSONPath expression to select part of the state to be the input to this state. May also be the special value JsonPath.DISCARD, which will cause the effective input to be the empty object {}. --- ##### `integrationPattern`Optional ```typescript public readonly integrationPattern: IntegrationPattern; ``` - *Type:* aws-cdk-lib.aws_stepfunctions.IntegrationPattern - *Default:* IntegrationPattern.REQUEST_RESPONSE AWS Step Functions integrates with services directly in the Amazon States Language. You can control these AWS services using service integration patterns > [https://docs.aws.amazon.com/step-functions/latest/dg/connect-to-resource.html#connect-wait-token](https://docs.aws.amazon.com/step-functions/latest/dg/connect-to-resource.html#connect-wait-token) --- ##### `outputPath`Optional ```typescript public readonly outputPath: string; ``` - *Type:* string - *Default:* The entire JSON node determined by the state input, the task result, and resultPath is passed to the next state (JSON path '$') JSONPath expression to select select a portion of the state output to pass to the next state. May also be the special value JsonPath.DISCARD, which will cause the effective output to be the empty object {}. --- ##### `resultPath`Optional ```typescript public readonly resultPath: string; ``` - *Type:* string - *Default:* Replaces the entire input with the result (JSON path '$') JSONPath expression to indicate where to inject the state's output. May also be the special value JsonPath.DISCARD, which will cause the state's input to become its output. --- ##### `resultSelector`Optional ```typescript public readonly resultSelector: {[ key: string ]: any}; ``` - *Type:* {[ key: string ]: any} - *Default:* None The JSON that will replace the state's raw result and become the effective result before ResultPath is applied. You can use ResultSelector to create a payload with values that are static or selected from the state's raw result. > [https://docs.aws.amazon.com/step-functions/latest/dg/input-output-inputpath-params.html#input-output-resultselector](https://docs.aws.amazon.com/step-functions/latest/dg/input-output-inputpath-params.html#input-output-resultselector) --- ##### `timeout`Optional ```typescript public readonly timeout: Duration; ``` - *Type:* aws-cdk-lib.Duration - *Default:* None Timeout for the state machine. --- ##### `s3OutputBucket`Required ```typescript public readonly s3OutputBucket: string; ``` - *Type:* string --- ##### `s3OutputPrefix`Required ```typescript public readonly s3OutputPrefix: string; ``` - *Type:* string The prefix to use for the output files. --- ##### `associateWithParent`Optional ```typescript public readonly associateWithParent: boolean; ``` - *Type:* boolean - *Default:* false Pass the execution ID from the context object to the execution input. This allows the Step Functions UI to link child executions from parent executions, making it easier to trace execution flow across state machines. If you set this property to `true`, the `input` property must be an object (provided by `sfn.TaskInput.fromObject`) or omitted entirely. > [https://docs.aws.amazon.com/step-functions/latest/dg/concepts-nested-workflows.html#nested-execution-startid](https://docs.aws.amazon.com/step-functions/latest/dg/concepts-nested-workflows.html#nested-execution-startid) --- ##### `customFunction`Optional ```typescript public readonly customFunction: LambdaInvoke; ``` - *Type:* aws-cdk-lib.aws_stepfunctions_tasks.LambdaInvoke not implemented yet. --- ##### `enableCloudWatchMetricsAndDashboard`Optional ```typescript public readonly enableCloudWatchMetricsAndDashboard: boolean; ``` - *Type:* boolean - *Default:* false enable CloudWatch Metrics and Dashboard. --- ##### `enableDashboard`Optional ```typescript public readonly enableDashboard: boolean; ``` - *Type:* boolean not implemented yet. --- ##### `enableMonitoring`Optional ```typescript public readonly enableMonitoring: boolean; ``` - *Type:* boolean not implemented yet. --- ##### `input`Optional ```typescript public readonly input: TaskInput; ``` - *Type:* aws-cdk-lib.aws_stepfunctions.TaskInput - *Default:* The state input (JSON path '$') The JSON input for the execution, same as that of StartExecution. > [https://docs.aws.amazon.com/step-functions/latest/apireference/API_StartExecution.html](https://docs.aws.amazon.com/step-functions/latest/apireference/API_StartExecution.html) --- ##### `inputPolicyStatements`Optional ```typescript public readonly inputPolicyStatements: PolicyStatement[]; ``` - *Type:* aws-cdk-lib.aws_iam.PolicyStatement[] List of PolicyStatements to attach to the Lambda function. --- ##### `lambdaLogLevel`Optional ```typescript public readonly lambdaLogLevel: string; ``` - *Type:* string Log level, can be DEBUG, INFO, WARNING, ERROR, FATAL. --- ##### `lambdaMemory`Optional ```typescript public readonly lambdaMemory: number; ``` - *Type:* number Memory allocated to Lambda function, default 512. --- ##### `lambdaTimeout`Optional ```typescript public readonly lambdaTimeout: number; ``` - *Type:* number Lambda Function Timeout in seconds, default 300. --- ##### `name`Optional ```typescript public readonly name: string; ``` - *Type:* string - *Default:* None The name of the execution, same as that of StartExecution. > [https://docs.aws.amazon.com/step-functions/latest/apireference/API_StartExecution.html](https://docs.aws.amazon.com/step-functions/latest/apireference/API_StartExecution.html) --- ##### `outputPolicyStatements`Optional ```typescript public readonly outputPolicyStatements: PolicyStatement[]; ``` - *Type:* aws-cdk-lib.aws_iam.PolicyStatement[] List of PolicyStatements to attach to the Lambda function. --- ##### `s3InputBucket`Optional ```typescript public readonly s3InputBucket: string; ``` - *Type:* string location of input S3 objects - if left empty will generate rule for s3 access to all [*]. --- ##### `s3InputPrefix`Optional ```typescript public readonly s3InputPrefix: string; ``` - *Type:* string prefix for input S3 objects - if left empty will generate rule for s3 access to all [*]. --- ##### `textractAPI`Optional ```typescript public readonly textractAPI: string; ``` - *Type:* string --- ##### `textractAsyncCallBackoffRate`Optional ```typescript public readonly textractAsyncCallBackoffRate: number; ``` - *Type:* number default is 1.1. --- ##### `textractAsyncCallInterval`Optional ```typescript public readonly textractAsyncCallInterval: number; ``` - *Type:* number default is 1. --- ##### `textractAsyncCallMaxRetries`Optional ```typescript public readonly textractAsyncCallMaxRetries: number; ``` - *Type:* number --- ##### `textractStateMachineTimeoutMinutes`Optional ```typescript public readonly textractStateMachineTimeoutMinutes: number; ``` - *Type:* number how long can we wait for the process (default is 48 hours (60*48=2880)). --- ##### `workflowTracingEnabled`Optional ```typescript public readonly workflowTracingEnabled: boolean; ``` - *Type:* boolean --- ### TextractPdfMapperForFhirProps #### Initializer ```typescript import { TextractPdfMapperForFhirProps } from 'amazon-textract-idp-cdk-constructs' const textractPdfMapperForFhirProps: TextractPdfMapperForFhirProps = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | healthlakeEndpoint | string | *No description.* | | inputPolicyStatements | aws-cdk-lib.aws_iam.PolicyStatement[] | List of PolicyStatements to attach to the Lambda function for S3 GET and LIST. | | lambdaLogLevel | string | *No description.* | | lambdaMemoryMB | number | memory of Lambda function (may need to increase for larger documents). | | lambdaTimeout | number | *No description.* | | pdfMapperForFhirFunction | aws-cdk-lib.aws_lambda.IFunction | *No description.* | | s3InputBucket | string | *No description.* | | s3InputPrefix | string | prefix for the incoming document. | --- ##### `healthlakeEndpoint`Optional ```typescript public readonly healthlakeEndpoint: string; ``` - *Type:* string --- ##### `inputPolicyStatements`Optional ```typescript public readonly inputPolicyStatements: PolicyStatement[]; ``` - *Type:* aws-cdk-lib.aws_iam.PolicyStatement[] List of PolicyStatements to attach to the Lambda function for S3 GET and LIST. --- ##### `lambdaLogLevel`Optional ```typescript public readonly lambdaLogLevel: string; ``` - *Type:* string --- ##### `lambdaMemoryMB`Optional ```typescript public readonly lambdaMemoryMB: number; ``` - *Type:* number memory of Lambda function (may need to increase for larger documents). --- ##### `lambdaTimeout`Optional ```typescript public readonly lambdaTimeout: number; ``` - *Type:* number --- ##### `pdfMapperForFhirFunction`Optional ```typescript public readonly pdfMapperForFhirFunction: IFunction; ``` - *Type:* aws-cdk-lib.aws_lambda.IFunction --- ##### `s3InputBucket`Optional ```typescript public readonly s3InputBucket: string; ``` - *Type:* string --- ##### `s3InputPrefix`Optional ```typescript public readonly s3InputPrefix: string; ``` - *Type:* string prefix for the incoming document. Will be used to create role --- ### WorkmailS3IngestionPointProps #### Initializer ```typescript import { WorkmailS3IngestionPointProps } from 'amazon-textract-idp-cdk-constructs' const workmailS3IngestionPointProps: WorkmailS3IngestionPointProps = { ... } ``` #### Properties | **Name** | **Type** | **Description** | | --- | --- | --- | | s3OutputBucket | string | Bucket name to output data to. | | s3OutputPrefix | string | The prefix to use to output files to. | | workmailAccountNumber | string | Account number for WorkMail instance. | | workmailRegion | string | Region where WorkMailail instance exists. | | lambdaMemoryMB | number | Lambda function memory configuration (may need to increase for larger documents). | | lambdaTimeout | number | Lambda function timeout (may need to increase for larger documents). | --- ##### `s3OutputBucket`Required ```typescript public readonly s3OutputBucket: string; ``` - *Type:* string Bucket name to output data to. --- ##### `s3OutputPrefix`Required ```typescript public readonly s3OutputPrefix: string; ``` - *Type:* string The prefix to use to output files to. --- ##### `workmailAccountNumber`Required ```typescript public readonly workmailAccountNumber: string; ``` - *Type:* string Account number for WorkMail instance. --- ##### `workmailRegion`Required ```typescript public readonly workmailRegion: string; ``` - *Type:* string Region where WorkMailail instance exists. --- ##### `lambdaMemoryMB`Optional ```typescript public readonly lambdaMemoryMB: number; ``` - *Type:* number Lambda function memory configuration (may need to increase for larger documents). --- ##### `lambdaTimeout`Optional ```typescript public readonly lambdaTimeout: number; ``` - *Type:* number Lambda function timeout (may need to increase for larger documents). ---