Entity Recognizer
    Resource for managing an AWS Comprehend Entity Recognizer.
Example Usage
Basic Usage
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const documents = new aws.s3.BucketObjectv2("documents", {});
const entities = new aws.s3.BucketObjectv2("entities", {});
const example = new aws.comprehend.EntityRecognizer("example", {
    name: "example",
    dataAccessRoleArn: exampleAwsIamRole.arn,
    languageCode: "en",
    inputDataConfig: {
        entityTypes: [
            {
                type: "ENTITY_1",
            },
            {
                type: "ENTITY_2",
            },
        ],
        documents: {
            s3Uri: pulumi.interpolate`s3://${documentsAwsS3Bucket.bucket}/${documents.id}`,
        },
        entityList: {
            s3Uri: pulumi.interpolate`s3://${entitiesAwsS3Bucket.bucket}/${entities.id}`,
        },
    },
}, {
    dependsOn: [exampleAwsIamRolePolicy],
});Content copied to clipboard
import pulumi
import pulumi_aws as aws
documents = aws.s3.BucketObjectv2("documents")
entities = aws.s3.BucketObjectv2("entities")
example = aws.comprehend.EntityRecognizer("example",
    name="example",
    data_access_role_arn=example_aws_iam_role["arn"],
    language_code="en",
    input_data_config=aws.comprehend.EntityRecognizerInputDataConfigArgs(
        entity_types=[
            aws.comprehend.EntityRecognizerInputDataConfigEntityTypeArgs(
                type="ENTITY_1",
            ),
            aws.comprehend.EntityRecognizerInputDataConfigEntityTypeArgs(
                type="ENTITY_2",
            ),
        ],
        documents=aws.comprehend.EntityRecognizerInputDataConfigDocumentsArgs(
            s3_uri=documents.id.apply(lambda id: f"s3://{documents_aws_s3_bucket['bucket']}/{id}"),
        ),
        entity_list=aws.comprehend.EntityRecognizerInputDataConfigEntityListArgs(
            s3_uri=entities.id.apply(lambda id: f"s3://{entities_aws_s3_bucket['bucket']}/{id}"),
        ),
    ),
    opts=pulumi.ResourceOptions(depends_on=[example_aws_iam_role_policy]))Content copied to clipboard
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
    var documents = new Aws.S3.BucketObjectv2("documents");
    var entities = new Aws.S3.BucketObjectv2("entities");
    var example = new Aws.Comprehend.EntityRecognizer("example", new()
    {
        Name = "example",
        DataAccessRoleArn = exampleAwsIamRole.Arn,
        LanguageCode = "en",
        InputDataConfig = new Aws.Comprehend.Inputs.EntityRecognizerInputDataConfigArgs
        {
            EntityTypes = new[]
            {
                new Aws.Comprehend.Inputs.EntityRecognizerInputDataConfigEntityTypeArgs
                {
                    Type = "ENTITY_1",
                },
                new Aws.Comprehend.Inputs.EntityRecognizerInputDataConfigEntityTypeArgs
                {
                    Type = "ENTITY_2",
                },
            },
            Documents = new Aws.Comprehend.Inputs.EntityRecognizerInputDataConfigDocumentsArgs
            {
                S3Uri = documents.Id.Apply(id => $"s3://{documentsAwsS3Bucket.Bucket}/{id}"),
            },
            EntityList = new Aws.Comprehend.Inputs.EntityRecognizerInputDataConfigEntityListArgs
            {
                S3Uri = entities.Id.Apply(id => $"s3://{entitiesAwsS3Bucket.Bucket}/{id}"),
            },
        },
    }, new CustomResourceOptions
    {
        DependsOn =
        {
            exampleAwsIamRolePolicy,
        },
    });
});Content copied to clipboard
package main
import (
	"fmt"
	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/comprehend"
	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/s3"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		documents, err := s3.NewBucketObjectv2(ctx, "documents", nil)
		if err != nil {
			return err
		}
		entities, err := s3.NewBucketObjectv2(ctx, "entities", nil)
		if err != nil {
			return err
		}
		_, err = comprehend.NewEntityRecognizer(ctx, "example", &comprehend.EntityRecognizerArgs{
			Name:              pulumi.String("example"),
			DataAccessRoleArn: pulumi.Any(exampleAwsIamRole.Arn),
			LanguageCode:      pulumi.String("en"),
			InputDataConfig: &comprehend.EntityRecognizerInputDataConfigArgs{
				EntityTypes: comprehend.EntityRecognizerInputDataConfigEntityTypeArray{
					&comprehend.EntityRecognizerInputDataConfigEntityTypeArgs{
						Type: pulumi.String("ENTITY_1"),
					},
					&comprehend.EntityRecognizerInputDataConfigEntityTypeArgs{
						Type: pulumi.String("ENTITY_2"),
					},
				},
				Documents: &comprehend.EntityRecognizerInputDataConfigDocumentsArgs{
					S3Uri: documents.ID().ApplyT(func(id string) (string, error) {
						return fmt.Sprintf("s3://%v/%v", documentsAwsS3Bucket.Bucket, id), nil
					}).(pulumi.StringOutput),
				},
				EntityList: &comprehend.EntityRecognizerInputDataConfigEntityListArgs{
					S3Uri: entities.ID().ApplyT(func(id string) (string, error) {
						return fmt.Sprintf("s3://%v/%v", entitiesAwsS3Bucket.Bucket, id), nil
					}).(pulumi.StringOutput),
				},
			},
		}, pulumi.DependsOn([]pulumi.Resource{
			exampleAwsIamRolePolicy,
		}))
		if err != nil {
			return err
		}
		return nil
	})
}Content copied to clipboard
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.s3.BucketObjectv2;
import com.pulumi.aws.comprehend.EntityRecognizer;
import com.pulumi.aws.comprehend.EntityRecognizerArgs;
import com.pulumi.aws.comprehend.inputs.EntityRecognizerInputDataConfigArgs;
import com.pulumi.aws.comprehend.inputs.EntityRecognizerInputDataConfigDocumentsArgs;
import com.pulumi.aws.comprehend.inputs.EntityRecognizerInputDataConfigEntityListArgs;
import com.pulumi.resources.CustomResourceOptions;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }
    public static void stack(Context ctx) {
        var documents = new BucketObjectv2("documents");
        var entities = new BucketObjectv2("entities");
        var example = new EntityRecognizer("example", EntityRecognizerArgs.builder()
            .name("example")
            .dataAccessRoleArn(exampleAwsIamRole.arn())
            .languageCode("en")
            .inputDataConfig(EntityRecognizerInputDataConfigArgs.builder()
                .entityTypes(
                    EntityRecognizerInputDataConfigEntityTypeArgs.builder()
                        .type("ENTITY_1")
                        .build(),
                    EntityRecognizerInputDataConfigEntityTypeArgs.builder()
                        .type("ENTITY_2")
                        .build())
                .documents(EntityRecognizerInputDataConfigDocumentsArgs.builder()
                    .s3Uri(documents.id().applyValue(id -> String.format("s3://%s/%s", documentsAwsS3Bucket.bucket(),id)))
                    .build())
                .entityList(EntityRecognizerInputDataConfigEntityListArgs.builder()
                    .s3Uri(entities.id().applyValue(id -> String.format("s3://%s/%s", entitiesAwsS3Bucket.bucket(),id)))
                    .build())
                .build())
            .build(), CustomResourceOptions.builder()
                .dependsOn(exampleAwsIamRolePolicy)
                .build());
    }
}Content copied to clipboard
resources:
  example:
    type: aws:comprehend:EntityRecognizer
    properties:
      name: example
      dataAccessRoleArn: ${exampleAwsIamRole.arn}
      languageCode: en
      inputDataConfig:
        entityTypes:
          - type: ENTITY_1
          - type: ENTITY_2
        documents:
          s3Uri: s3://${documentsAwsS3Bucket.bucket}/${documents.id}
        entityList:
          s3Uri: s3://${entitiesAwsS3Bucket.bucket}/${entities.id}
    options:
      dependson:
        - ${exampleAwsIamRolePolicy}
  documents:
    type: aws:s3:BucketObjectv2
  entities:
    type: aws:s3:BucketObjectv2Content copied to clipboard
Import
Using pulumi import, import Comprehend Entity Recognizer using the ARN. For example:
$ pulumi import aws:comprehend/entityRecognizer:EntityRecognizer example arn:aws:comprehend:us-west-2:123456789012:entity-recognizer/exampleContent copied to clipboard
Properties
Link copied to clipboard
                Name for the version of the Entity Recognizer. Each version must have a unique name within the Entity Recognizer. If omitted, the provider will assign a random, unique version name. If explicitly set to "", no version name will be set. Has a maximum length of 63 characters. Can contain upper- and lower-case letters, numbers, and hypen (-). Conflicts with version_name_prefix.