1. Packages
  2. AWS
  3. API Docs
  4. customerprofiles
  5. Domain
AWS v6.62.2 published on Tuesday, Dec 3, 2024 by Pulumi

aws.customerprofiles.Domain

Explore with Pulumi AI

aws logo
AWS v6.62.2 published on Tuesday, Dec 3, 2024 by Pulumi

    Resource for managing an Amazon Customer Profiles Domain. See the Create Domain for more information.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as aws from "@pulumi/aws";
    
    const example = new aws.customerprofiles.Domain("example", {domainName: "example"});
    
    import pulumi
    import pulumi_aws as aws
    
    example = aws.customerprofiles.Domain("example", domain_name="example")
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/customerprofiles"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := customerprofiles.NewDomain(ctx, "example", &customerprofiles.DomainArgs{
    			DomainName: pulumi.String("example"),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Aws = Pulumi.Aws;
    
    return await Deployment.RunAsync(() => 
    {
        var example = new Aws.CustomerProfiles.Domain("example", new()
        {
            DomainName = "example",
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.aws.customerprofiles.Domain;
    import com.pulumi.aws.customerprofiles.DomainArgs;
    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 example = new Domain("example", DomainArgs.builder()
                .domainName("example")
                .build());
    
        }
    }
    
    resources:
      example:
        type: aws:customerprofiles:Domain
        properties:
          domainName: example
    

    With SQS DLQ and KMS set

    import * as pulumi from "@pulumi/pulumi";
    import * as aws from "@pulumi/aws";
    
    const example = new aws.sqs.Queue("example", {
        name: "example",
        policy: JSON.stringify({
            Version: "2012-10-17",
            Statement: [{
                Sid: "Customer Profiles SQS policy",
                Effect: "Allow",
                Action: ["sqs:SendMessage"],
                Resource: "*",
                Principal: {
                    Service: "profile.amazonaws.com",
                },
            }],
        }),
    });
    const exampleKey = new aws.kms.Key("example", {
        description: "example",
        deletionWindowInDays: 10,
    });
    const exampleBucketV2 = new aws.s3.BucketV2("example", {
        bucket: "example",
        forceDestroy: true,
    });
    const exampleBucketPolicy = new aws.s3.BucketPolicy("example", {
        bucket: exampleBucketV2.id,
        policy: pulumi.jsonStringify({
            Version: "2012-10-17",
            Statement: [{
                Sid: "Customer Profiles S3 policy",
                Effect: "Allow",
                Action: [
                    "s3:GetObject",
                    "s3:PutObject",
                    "s3:ListBucket",
                ],
                Resource: [
                    exampleBucketV2.arn,
                    pulumi.interpolate`${exampleBucketV2.arn}/*`,
                ],
                Principal: {
                    Service: "profile.amazonaws.com",
                },
            }],
        }),
    });
    const test = new aws.customerprofiles.Domain("test", {
        domainName: example,
        deadLetterQueueUrl: example.id,
        defaultEncryptionKey: exampleKey.arn,
        defaultExpirationDays: 365,
    });
    
    import pulumi
    import json
    import pulumi_aws as aws
    
    example = aws.sqs.Queue("example",
        name="example",
        policy=json.dumps({
            "Version": "2012-10-17",
            "Statement": [{
                "Sid": "Customer Profiles SQS policy",
                "Effect": "Allow",
                "Action": ["sqs:SendMessage"],
                "Resource": "*",
                "Principal": {
                    "Service": "profile.amazonaws.com",
                },
            }],
        }))
    example_key = aws.kms.Key("example",
        description="example",
        deletion_window_in_days=10)
    example_bucket_v2 = aws.s3.BucketV2("example",
        bucket="example",
        force_destroy=True)
    example_bucket_policy = aws.s3.BucketPolicy("example",
        bucket=example_bucket_v2.id,
        policy=pulumi.Output.json_dumps({
            "Version": "2012-10-17",
            "Statement": [{
                "Sid": "Customer Profiles S3 policy",
                "Effect": "Allow",
                "Action": [
                    "s3:GetObject",
                    "s3:PutObject",
                    "s3:ListBucket",
                ],
                "Resource": [
                    example_bucket_v2.arn,
                    example_bucket_v2.arn.apply(lambda arn: f"{arn}/*"),
                ],
                "Principal": {
                    "Service": "profile.amazonaws.com",
                },
            }],
        }))
    test = aws.customerprofiles.Domain("test",
        domain_name=example,
        dead_letter_queue_url=example.id,
        default_encryption_key=example_key.arn,
        default_expiration_days=365)
    
    package main
    
    import (
    	"encoding/json"
    	"fmt"
    
    	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/customerprofiles"
    	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/iam"
    	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/kms"
    	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/s3"
    	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/sqs"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		tmpJSON0, err := json.Marshal(map[string]interface{}{
    			"Version": "2012-10-17",
    			"Statement": []map[string]interface{}{
    				map[string]interface{}{
    					"Sid":    "Customer Profiles SQS policy",
    					"Effect": "Allow",
    					"Action": []string{
    						"sqs:SendMessage",
    					},
    					"Resource": "*",
    					"Principal": map[string]interface{}{
    						"Service": "profile.amazonaws.com",
    					},
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		json0 := string(tmpJSON0)
    		example, err := sqs.NewQueue(ctx, "example", &sqs.QueueArgs{
    			Name:   pulumi.String("example"),
    			Policy: pulumi.String(json0),
    		})
    		if err != nil {
    			return err
    		}
    		exampleKey, err := kms.NewKey(ctx, "example", &kms.KeyArgs{
    			Description:          pulumi.String("example"),
    			DeletionWindowInDays: pulumi.Int(10),
    		})
    		if err != nil {
    			return err
    		}
    		exampleBucketV2, err := s3.NewBucketV2(ctx, "example", &s3.BucketV2Args{
    			Bucket:       pulumi.String("example"),
    			ForceDestroy: pulumi.Bool(true),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = s3.NewBucketPolicy(ctx, "example", &s3.BucketPolicyArgs{
    			Bucket: exampleBucketV2.ID(),
    			Policy: pulumi.All(exampleBucketV2.Arn, exampleBucketV2.Arn).ApplyT(func(_args []interface{}) (string, error) {
    				exampleBucketV2Arn := _args[0].(string)
    				exampleBucketV2Arn1 := _args[1].(string)
    				var _zero string
    				tmpJSON1, err := json.Marshal(map[string]interface{}{
    					"Version": "2012-10-17",
    					"Statement": []map[string]interface{}{
    						map[string]interface{}{
    							"Sid":    "Customer Profiles S3 policy",
    							"Effect": "Allow",
    							"Action": []string{
    								"s3:GetObject",
    								"s3:PutObject",
    								"s3:ListBucket",
    							},
    							"Resource": []string{
    								exampleBucketV2Arn,
    								fmt.Sprintf("%v/*", exampleBucketV2Arn1),
    							},
    							"Principal": map[string]interface{}{
    								"Service": "profile.amazonaws.com",
    							},
    						},
    					},
    				})
    				if err != nil {
    					return _zero, err
    				}
    				json1 := string(tmpJSON1)
    				return json1, nil
    			}).(pulumi.StringOutput),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = customerprofiles.NewDomain(ctx, "test", &customerprofiles.DomainArgs{
    			DomainName:            example,
    			DeadLetterQueueUrl:    example.ID(),
    			DefaultEncryptionKey:  exampleKey.Arn,
    			DefaultExpirationDays: pulumi.Int(365),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using System.Text.Json;
    using Pulumi;
    using Aws = Pulumi.Aws;
    
    return await Deployment.RunAsync(() => 
    {
        var example = new Aws.Sqs.Queue("example", new()
        {
            Name = "example",
            Policy = JsonSerializer.Serialize(new Dictionary<string, object?>
            {
                ["Version"] = "2012-10-17",
                ["Statement"] = new[]
                {
                    new Dictionary<string, object?>
                    {
                        ["Sid"] = "Customer Profiles SQS policy",
                        ["Effect"] = "Allow",
                        ["Action"] = new[]
                        {
                            "sqs:SendMessage",
                        },
                        ["Resource"] = "*",
                        ["Principal"] = new Dictionary<string, object?>
                        {
                            ["Service"] = "profile.amazonaws.com",
                        },
                    },
                },
            }),
        });
    
        var exampleKey = new Aws.Kms.Key("example", new()
        {
            Description = "example",
            DeletionWindowInDays = 10,
        });
    
        var exampleBucketV2 = new Aws.S3.BucketV2("example", new()
        {
            Bucket = "example",
            ForceDestroy = true,
        });
    
        var exampleBucketPolicy = new Aws.S3.BucketPolicy("example", new()
        {
            Bucket = exampleBucketV2.Id,
            Policy = Output.JsonSerialize(Output.Create(new Dictionary<string, object?>
            {
                ["Version"] = "2012-10-17",
                ["Statement"] = new[]
                {
                    new Dictionary<string, object?>
                    {
                        ["Sid"] = "Customer Profiles S3 policy",
                        ["Effect"] = "Allow",
                        ["Action"] = new[]
                        {
                            "s3:GetObject",
                            "s3:PutObject",
                            "s3:ListBucket",
                        },
                        ["Resource"] = new[]
                        {
                            exampleBucketV2.Arn,
                            exampleBucketV2.Arn.Apply(arn => $"{arn}/*"),
                        },
                        ["Principal"] = new Dictionary<string, object?>
                        {
                            ["Service"] = "profile.amazonaws.com",
                        },
                    },
                },
            })),
        });
    
        var test = new Aws.CustomerProfiles.Domain("test", new()
        {
            DomainName = example,
            DeadLetterQueueUrl = example.Id,
            DefaultEncryptionKey = exampleKey.Arn,
            DefaultExpirationDays = 365,
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.aws.sqs.Queue;
    import com.pulumi.aws.sqs.QueueArgs;
    import com.pulumi.aws.kms.Key;
    import com.pulumi.aws.kms.KeyArgs;
    import com.pulumi.aws.s3.BucketV2;
    import com.pulumi.aws.s3.BucketV2Args;
    import com.pulumi.aws.s3.BucketPolicy;
    import com.pulumi.aws.s3.BucketPolicyArgs;
    import com.pulumi.aws.customerprofiles.Domain;
    import com.pulumi.aws.customerprofiles.DomainArgs;
    import static com.pulumi.codegen.internal.Serialization.*;
    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 example = new Queue("example", QueueArgs.builder()
                .name("example")
                .policy(serializeJson(
                    jsonObject(
                        jsonProperty("Version", "2012-10-17"),
                        jsonProperty("Statement", jsonArray(jsonObject(
                            jsonProperty("Sid", "Customer Profiles SQS policy"),
                            jsonProperty("Effect", "Allow"),
                            jsonProperty("Action", jsonArray("sqs:SendMessage")),
                            jsonProperty("Resource", "*"),
                            jsonProperty("Principal", jsonObject(
                                jsonProperty("Service", "profile.amazonaws.com")
                            ))
                        )))
                    )))
                .build());
    
            var exampleKey = new Key("exampleKey", KeyArgs.builder()
                .description("example")
                .deletionWindowInDays(10)
                .build());
    
            var exampleBucketV2 = new BucketV2("exampleBucketV2", BucketV2Args.builder()
                .bucket("example")
                .forceDestroy(true)
                .build());
    
            var exampleBucketPolicy = new BucketPolicy("exampleBucketPolicy", BucketPolicyArgs.builder()
                .bucket(exampleBucketV2.id())
                .policy(Output.tuple(exampleBucketV2.arn(), exampleBucketV2.arn()).applyValue(values -> {
                    var exampleBucketV2Arn = values.t1;
                    var exampleBucketV2Arn1 = values.t2;
                    return serializeJson(
                        jsonObject(
                            jsonProperty("Version", "2012-10-17"),
                            jsonProperty("Statement", jsonArray(jsonObject(
                                jsonProperty("Sid", "Customer Profiles S3 policy"),
                                jsonProperty("Effect", "Allow"),
                                jsonProperty("Action", jsonArray(
                                    "s3:GetObject", 
                                    "s3:PutObject", 
                                    "s3:ListBucket"
                                )),
                                jsonProperty("Resource", jsonArray(
                                    exampleBucketV2Arn, 
                                    String.format("%s/*", exampleBucketV2Arn1)
                                )),
                                jsonProperty("Principal", jsonObject(
                                    jsonProperty("Service", "profile.amazonaws.com")
                                ))
                            )))
                        ));
                }))
                .build());
    
            var test = new Domain("test", DomainArgs.builder()
                .domainName(example)
                .deadLetterQueueUrl(example.id())
                .defaultEncryptionKey(exampleKey.arn())
                .defaultExpirationDays(365)
                .build());
    
        }
    }
    
    resources:
      example:
        type: aws:sqs:Queue
        properties:
          name: example
          policy:
            fn::toJSON:
              Version: 2012-10-17
              Statement:
                - Sid: Customer Profiles SQS policy
                  Effect: Allow
                  Action:
                    - sqs:SendMessage
                  Resource: '*'
                  Principal:
                    Service: profile.amazonaws.com
      exampleKey:
        type: aws:kms:Key
        name: example
        properties:
          description: example
          deletionWindowInDays: 10
      exampleBucketV2:
        type: aws:s3:BucketV2
        name: example
        properties:
          bucket: example
          forceDestroy: true
      exampleBucketPolicy:
        type: aws:s3:BucketPolicy
        name: example
        properties:
          bucket: ${exampleBucketV2.id}
          policy:
            fn::toJSON:
              Version: 2012-10-17
              Statement:
                - Sid: Customer Profiles S3 policy
                  Effect: Allow
                  Action:
                    - s3:GetObject
                    - s3:PutObject
                    - s3:ListBucket
                  Resource:
                    - ${exampleBucketV2.arn}
                    - ${exampleBucketV2.arn}/*
                  Principal:
                    Service: profile.amazonaws.com
      test:
        type: aws:customerprofiles:Domain
        properties:
          domainName: ${example}
          deadLetterQueueUrl: ${example.id}
          defaultEncryptionKey: ${exampleKey.arn}
          defaultExpirationDays: 365
    

    Create Domain Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new Domain(name: string, args: DomainArgs, opts?: CustomResourceOptions);
    @overload
    def Domain(resource_name: str,
               args: DomainArgs,
               opts: Optional[ResourceOptions] = None)
    
    @overload
    def Domain(resource_name: str,
               opts: Optional[ResourceOptions] = None,
               default_expiration_days: Optional[int] = None,
               domain_name: Optional[str] = None,
               dead_letter_queue_url: Optional[str] = None,
               default_encryption_key: Optional[str] = None,
               matching: Optional[DomainMatchingArgs] = None,
               rule_based_matching: Optional[DomainRuleBasedMatchingArgs] = None,
               tags: Optional[Mapping[str, str]] = None)
    func NewDomain(ctx *Context, name string, args DomainArgs, opts ...ResourceOption) (*Domain, error)
    public Domain(string name, DomainArgs args, CustomResourceOptions? opts = null)
    public Domain(String name, DomainArgs args)
    public Domain(String name, DomainArgs args, CustomResourceOptions options)
    
    type: aws:customerprofiles:Domain
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args DomainArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args DomainArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args DomainArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args DomainArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args DomainArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var exampledomainResourceResourceFromCustomerprofilesdomain = new Aws.CustomerProfiles.Domain("exampledomainResourceResourceFromCustomerprofilesdomain", new()
    {
        DefaultExpirationDays = 0,
        DomainName = "string",
        DeadLetterQueueUrl = "string",
        DefaultEncryptionKey = "string",
        Matching = new Aws.CustomerProfiles.Inputs.DomainMatchingArgs
        {
            Enabled = false,
            AutoMerging = new Aws.CustomerProfiles.Inputs.DomainMatchingAutoMergingArgs
            {
                Enabled = false,
                ConflictResolution = new Aws.CustomerProfiles.Inputs.DomainMatchingAutoMergingConflictResolutionArgs
                {
                    ConflictResolvingModel = "string",
                    SourceName = "string",
                },
                Consolidation = new Aws.CustomerProfiles.Inputs.DomainMatchingAutoMergingConsolidationArgs
                {
                    MatchingAttributesLists = new[]
                    {
                        new[]
                        {
                            "string",
                        },
                    },
                },
                MinAllowedConfidenceScoreForMerging = 0,
            },
            ExportingConfig = new Aws.CustomerProfiles.Inputs.DomainMatchingExportingConfigArgs
            {
                S3Exporting = new Aws.CustomerProfiles.Inputs.DomainMatchingExportingConfigS3ExportingArgs
                {
                    S3BucketName = "string",
                    S3KeyName = "string",
                },
            },
            JobSchedule = new Aws.CustomerProfiles.Inputs.DomainMatchingJobScheduleArgs
            {
                DayOfTheWeek = "string",
                Time = "string",
            },
        },
        RuleBasedMatching = new Aws.CustomerProfiles.Inputs.DomainRuleBasedMatchingArgs
        {
            Enabled = false,
            AttributeTypesSelector = new Aws.CustomerProfiles.Inputs.DomainRuleBasedMatchingAttributeTypesSelectorArgs
            {
                AttributeMatchingModel = "string",
                Addresses = new[]
                {
                    "string",
                },
                EmailAddresses = new[]
                {
                    "string",
                },
                PhoneNumbers = new[]
                {
                    "string",
                },
            },
            ConflictResolution = new Aws.CustomerProfiles.Inputs.DomainRuleBasedMatchingConflictResolutionArgs
            {
                ConflictResolvingModel = "string",
                SourceName = "string",
            },
            ExportingConfig = new Aws.CustomerProfiles.Inputs.DomainRuleBasedMatchingExportingConfigArgs
            {
                S3Exporting = new Aws.CustomerProfiles.Inputs.DomainRuleBasedMatchingExportingConfigS3ExportingArgs
                {
                    S3BucketName = "string",
                    S3KeyName = "string",
                },
            },
            MatchingRules = new[]
            {
                new Aws.CustomerProfiles.Inputs.DomainRuleBasedMatchingMatchingRuleArgs
                {
                    Rules = new[]
                    {
                        "string",
                    },
                },
            },
            MaxAllowedRuleLevelForMatching = 0,
            MaxAllowedRuleLevelForMerging = 0,
            Status = "string",
        },
        Tags = 
        {
            { "string", "string" },
        },
    });
    
    example, err := customerprofiles.NewDomain(ctx, "exampledomainResourceResourceFromCustomerprofilesdomain", &customerprofiles.DomainArgs{
    	DefaultExpirationDays: pulumi.Int(0),
    	DomainName:            pulumi.String("string"),
    	DeadLetterQueueUrl:    pulumi.String("string"),
    	DefaultEncryptionKey:  pulumi.String("string"),
    	Matching: &customerprofiles.DomainMatchingArgs{
    		Enabled: pulumi.Bool(false),
    		AutoMerging: &customerprofiles.DomainMatchingAutoMergingArgs{
    			Enabled: pulumi.Bool(false),
    			ConflictResolution: &customerprofiles.DomainMatchingAutoMergingConflictResolutionArgs{
    				ConflictResolvingModel: pulumi.String("string"),
    				SourceName:             pulumi.String("string"),
    			},
    			Consolidation: &customerprofiles.DomainMatchingAutoMergingConsolidationArgs{
    				MatchingAttributesLists: pulumi.StringArrayArray{
    					pulumi.StringArray{
    						pulumi.String("string"),
    					},
    				},
    			},
    			MinAllowedConfidenceScoreForMerging: pulumi.Float64(0),
    		},
    		ExportingConfig: &customerprofiles.DomainMatchingExportingConfigArgs{
    			S3Exporting: &customerprofiles.DomainMatchingExportingConfigS3ExportingArgs{
    				S3BucketName: pulumi.String("string"),
    				S3KeyName:    pulumi.String("string"),
    			},
    		},
    		JobSchedule: &customerprofiles.DomainMatchingJobScheduleArgs{
    			DayOfTheWeek: pulumi.String("string"),
    			Time:         pulumi.String("string"),
    		},
    	},
    	RuleBasedMatching: &customerprofiles.DomainRuleBasedMatchingArgs{
    		Enabled: pulumi.Bool(false),
    		AttributeTypesSelector: &customerprofiles.DomainRuleBasedMatchingAttributeTypesSelectorArgs{
    			AttributeMatchingModel: pulumi.String("string"),
    			Addresses: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    			EmailAddresses: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    			PhoneNumbers: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    		},
    		ConflictResolution: &customerprofiles.DomainRuleBasedMatchingConflictResolutionArgs{
    			ConflictResolvingModel: pulumi.String("string"),
    			SourceName:             pulumi.String("string"),
    		},
    		ExportingConfig: &customerprofiles.DomainRuleBasedMatchingExportingConfigArgs{
    			S3Exporting: &customerprofiles.DomainRuleBasedMatchingExportingConfigS3ExportingArgs{
    				S3BucketName: pulumi.String("string"),
    				S3KeyName:    pulumi.String("string"),
    			},
    		},
    		MatchingRules: customerprofiles.DomainRuleBasedMatchingMatchingRuleArray{
    			&customerprofiles.DomainRuleBasedMatchingMatchingRuleArgs{
    				Rules: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    			},
    		},
    		MaxAllowedRuleLevelForMatching: pulumi.Int(0),
    		MaxAllowedRuleLevelForMerging:  pulumi.Int(0),
    		Status:                         pulumi.String("string"),
    	},
    	Tags: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    })
    
    var exampledomainResourceResourceFromCustomerprofilesdomain = new Domain("exampledomainResourceResourceFromCustomerprofilesdomain", DomainArgs.builder()
        .defaultExpirationDays(0)
        .domainName("string")
        .deadLetterQueueUrl("string")
        .defaultEncryptionKey("string")
        .matching(DomainMatchingArgs.builder()
            .enabled(false)
            .autoMerging(DomainMatchingAutoMergingArgs.builder()
                .enabled(false)
                .conflictResolution(DomainMatchingAutoMergingConflictResolutionArgs.builder()
                    .conflictResolvingModel("string")
                    .sourceName("string")
                    .build())
                .consolidation(DomainMatchingAutoMergingConsolidationArgs.builder()
                    .matchingAttributesLists("string")
                    .build())
                .minAllowedConfidenceScoreForMerging(0)
                .build())
            .exportingConfig(DomainMatchingExportingConfigArgs.builder()
                .s3Exporting(DomainMatchingExportingConfigS3ExportingArgs.builder()
                    .s3BucketName("string")
                    .s3KeyName("string")
                    .build())
                .build())
            .jobSchedule(DomainMatchingJobScheduleArgs.builder()
                .dayOfTheWeek("string")
                .time("string")
                .build())
            .build())
        .ruleBasedMatching(DomainRuleBasedMatchingArgs.builder()
            .enabled(false)
            .attributeTypesSelector(DomainRuleBasedMatchingAttributeTypesSelectorArgs.builder()
                .attributeMatchingModel("string")
                .addresses("string")
                .emailAddresses("string")
                .phoneNumbers("string")
                .build())
            .conflictResolution(DomainRuleBasedMatchingConflictResolutionArgs.builder()
                .conflictResolvingModel("string")
                .sourceName("string")
                .build())
            .exportingConfig(DomainRuleBasedMatchingExportingConfigArgs.builder()
                .s3Exporting(DomainRuleBasedMatchingExportingConfigS3ExportingArgs.builder()
                    .s3BucketName("string")
                    .s3KeyName("string")
                    .build())
                .build())
            .matchingRules(DomainRuleBasedMatchingMatchingRuleArgs.builder()
                .rules("string")
                .build())
            .maxAllowedRuleLevelForMatching(0)
            .maxAllowedRuleLevelForMerging(0)
            .status("string")
            .build())
        .tags(Map.of("string", "string"))
        .build());
    
    exampledomain_resource_resource_from_customerprofilesdomain = aws.customerprofiles.Domain("exampledomainResourceResourceFromCustomerprofilesdomain",
        default_expiration_days=0,
        domain_name="string",
        dead_letter_queue_url="string",
        default_encryption_key="string",
        matching={
            "enabled": False,
            "auto_merging": {
                "enabled": False,
                "conflict_resolution": {
                    "conflict_resolving_model": "string",
                    "source_name": "string",
                },
                "consolidation": {
                    "matching_attributes_lists": [["string"]],
                },
                "min_allowed_confidence_score_for_merging": 0,
            },
            "exporting_config": {
                "s3_exporting": {
                    "s3_bucket_name": "string",
                    "s3_key_name": "string",
                },
            },
            "job_schedule": {
                "day_of_the_week": "string",
                "time": "string",
            },
        },
        rule_based_matching={
            "enabled": False,
            "attribute_types_selector": {
                "attribute_matching_model": "string",
                "addresses": ["string"],
                "email_addresses": ["string"],
                "phone_numbers": ["string"],
            },
            "conflict_resolution": {
                "conflict_resolving_model": "string",
                "source_name": "string",
            },
            "exporting_config": {
                "s3_exporting": {
                    "s3_bucket_name": "string",
                    "s3_key_name": "string",
                },
            },
            "matching_rules": [{
                "rules": ["string"],
            }],
            "max_allowed_rule_level_for_matching": 0,
            "max_allowed_rule_level_for_merging": 0,
            "status": "string",
        },
        tags={
            "string": "string",
        })
    
    const exampledomainResourceResourceFromCustomerprofilesdomain = new aws.customerprofiles.Domain("exampledomainResourceResourceFromCustomerprofilesdomain", {
        defaultExpirationDays: 0,
        domainName: "string",
        deadLetterQueueUrl: "string",
        defaultEncryptionKey: "string",
        matching: {
            enabled: false,
            autoMerging: {
                enabled: false,
                conflictResolution: {
                    conflictResolvingModel: "string",
                    sourceName: "string",
                },
                consolidation: {
                    matchingAttributesLists: [["string"]],
                },
                minAllowedConfidenceScoreForMerging: 0,
            },
            exportingConfig: {
                s3Exporting: {
                    s3BucketName: "string",
                    s3KeyName: "string",
                },
            },
            jobSchedule: {
                dayOfTheWeek: "string",
                time: "string",
            },
        },
        ruleBasedMatching: {
            enabled: false,
            attributeTypesSelector: {
                attributeMatchingModel: "string",
                addresses: ["string"],
                emailAddresses: ["string"],
                phoneNumbers: ["string"],
            },
            conflictResolution: {
                conflictResolvingModel: "string",
                sourceName: "string",
            },
            exportingConfig: {
                s3Exporting: {
                    s3BucketName: "string",
                    s3KeyName: "string",
                },
            },
            matchingRules: [{
                rules: ["string"],
            }],
            maxAllowedRuleLevelForMatching: 0,
            maxAllowedRuleLevelForMerging: 0,
            status: "string",
        },
        tags: {
            string: "string",
        },
    });
    
    type: aws:customerprofiles:Domain
    properties:
        deadLetterQueueUrl: string
        defaultEncryptionKey: string
        defaultExpirationDays: 0
        domainName: string
        matching:
            autoMerging:
                conflictResolution:
                    conflictResolvingModel: string
                    sourceName: string
                consolidation:
                    matchingAttributesLists:
                        - - string
                enabled: false
                minAllowedConfidenceScoreForMerging: 0
            enabled: false
            exportingConfig:
                s3Exporting:
                    s3BucketName: string
                    s3KeyName: string
            jobSchedule:
                dayOfTheWeek: string
                time: string
        ruleBasedMatching:
            attributeTypesSelector:
                addresses:
                    - string
                attributeMatchingModel: string
                emailAddresses:
                    - string
                phoneNumbers:
                    - string
            conflictResolution:
                conflictResolvingModel: string
                sourceName: string
            enabled: false
            exportingConfig:
                s3Exporting:
                    s3BucketName: string
                    s3KeyName: string
            matchingRules:
                - rules:
                    - string
            maxAllowedRuleLevelForMatching: 0
            maxAllowedRuleLevelForMerging: 0
            status: string
        tags:
            string: string
    

    Domain Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

    The Domain resource accepts the following input properties:

    DefaultExpirationDays int

    The default number of days until the data within the domain expires.

    The following arguments are optional:

    DomainName string
    The name for your Customer Profile domain. It must be unique for your AWS account.
    DeadLetterQueueUrl string
    The URL of the SQS dead letter queue, which is used for reporting errors associated with ingesting data from third party applications.
    DefaultEncryptionKey string
    The default encryption key, which is an AWS managed key, is used when no specific type of encryption key is specified. It is used to encrypt all data before it is placed in permanent or semi-permanent storage.
    Matching DomainMatching
    A block that specifies the process of matching duplicate profiles. Documented below.
    RuleBasedMatching DomainRuleBasedMatching
    A block that specifies the process of matching duplicate profiles using the Rule-Based matching. Documented below.
    Tags Dictionary<string, string>
    Tags to apply to the domain. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    DefaultExpirationDays int

    The default number of days until the data within the domain expires.

    The following arguments are optional:

    DomainName string
    The name for your Customer Profile domain. It must be unique for your AWS account.
    DeadLetterQueueUrl string
    The URL of the SQS dead letter queue, which is used for reporting errors associated with ingesting data from third party applications.
    DefaultEncryptionKey string
    The default encryption key, which is an AWS managed key, is used when no specific type of encryption key is specified. It is used to encrypt all data before it is placed in permanent or semi-permanent storage.
    Matching DomainMatchingArgs
    A block that specifies the process of matching duplicate profiles. Documented below.
    RuleBasedMatching DomainRuleBasedMatchingArgs
    A block that specifies the process of matching duplicate profiles using the Rule-Based matching. Documented below.
    Tags map[string]string
    Tags to apply to the domain. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    defaultExpirationDays Integer

    The default number of days until the data within the domain expires.

    The following arguments are optional:

    domainName String
    The name for your Customer Profile domain. It must be unique for your AWS account.
    deadLetterQueueUrl String
    The URL of the SQS dead letter queue, which is used for reporting errors associated with ingesting data from third party applications.
    defaultEncryptionKey String
    The default encryption key, which is an AWS managed key, is used when no specific type of encryption key is specified. It is used to encrypt all data before it is placed in permanent or semi-permanent storage.
    matching DomainMatching
    A block that specifies the process of matching duplicate profiles. Documented below.
    ruleBasedMatching DomainRuleBasedMatching
    A block that specifies the process of matching duplicate profiles using the Rule-Based matching. Documented below.
    tags Map<String,String>
    Tags to apply to the domain. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    defaultExpirationDays number

    The default number of days until the data within the domain expires.

    The following arguments are optional:

    domainName string
    The name for your Customer Profile domain. It must be unique for your AWS account.
    deadLetterQueueUrl string
    The URL of the SQS dead letter queue, which is used for reporting errors associated with ingesting data from third party applications.
    defaultEncryptionKey string
    The default encryption key, which is an AWS managed key, is used when no specific type of encryption key is specified. It is used to encrypt all data before it is placed in permanent or semi-permanent storage.
    matching DomainMatching
    A block that specifies the process of matching duplicate profiles. Documented below.
    ruleBasedMatching DomainRuleBasedMatching
    A block that specifies the process of matching duplicate profiles using the Rule-Based matching. Documented below.
    tags {[key: string]: string}
    Tags to apply to the domain. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    default_expiration_days int

    The default number of days until the data within the domain expires.

    The following arguments are optional:

    domain_name str
    The name for your Customer Profile domain. It must be unique for your AWS account.
    dead_letter_queue_url str
    The URL of the SQS dead letter queue, which is used for reporting errors associated with ingesting data from third party applications.
    default_encryption_key str
    The default encryption key, which is an AWS managed key, is used when no specific type of encryption key is specified. It is used to encrypt all data before it is placed in permanent or semi-permanent storage.
    matching DomainMatchingArgs
    A block that specifies the process of matching duplicate profiles. Documented below.
    rule_based_matching DomainRuleBasedMatchingArgs
    A block that specifies the process of matching duplicate profiles using the Rule-Based matching. Documented below.
    tags Mapping[str, str]
    Tags to apply to the domain. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    defaultExpirationDays Number

    The default number of days until the data within the domain expires.

    The following arguments are optional:

    domainName String
    The name for your Customer Profile domain. It must be unique for your AWS account.
    deadLetterQueueUrl String
    The URL of the SQS dead letter queue, which is used for reporting errors associated with ingesting data from third party applications.
    defaultEncryptionKey String
    The default encryption key, which is an AWS managed key, is used when no specific type of encryption key is specified. It is used to encrypt all data before it is placed in permanent or semi-permanent storage.
    matching Property Map
    A block that specifies the process of matching duplicate profiles. Documented below.
    ruleBasedMatching Property Map
    A block that specifies the process of matching duplicate profiles using the Rule-Based matching. Documented below.
    tags Map<String>
    Tags to apply to the domain. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the Domain resource produces the following output properties:

    Arn string
    The Amazon Resource Name (ARN) of the Customer Profiles Domain.
    Id string
    The provider-assigned unique ID for this managed resource.
    TagsAll Dictionary<string, string>
    A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    Arn string
    The Amazon Resource Name (ARN) of the Customer Profiles Domain.
    Id string
    The provider-assigned unique ID for this managed resource.
    TagsAll map[string]string
    A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    arn String
    The Amazon Resource Name (ARN) of the Customer Profiles Domain.
    id String
    The provider-assigned unique ID for this managed resource.
    tagsAll Map<String,String>
    A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    arn string
    The Amazon Resource Name (ARN) of the Customer Profiles Domain.
    id string
    The provider-assigned unique ID for this managed resource.
    tagsAll {[key: string]: string}
    A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    arn str
    The Amazon Resource Name (ARN) of the Customer Profiles Domain.
    id str
    The provider-assigned unique ID for this managed resource.
    tags_all Mapping[str, str]
    A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    arn String
    The Amazon Resource Name (ARN) of the Customer Profiles Domain.
    id String
    The provider-assigned unique ID for this managed resource.
    tagsAll Map<String>
    A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    Look up Existing Domain Resource

    Get an existing Domain resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: DomainState, opts?: CustomResourceOptions): Domain
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            arn: Optional[str] = None,
            dead_letter_queue_url: Optional[str] = None,
            default_encryption_key: Optional[str] = None,
            default_expiration_days: Optional[int] = None,
            domain_name: Optional[str] = None,
            matching: Optional[DomainMatchingArgs] = None,
            rule_based_matching: Optional[DomainRuleBasedMatchingArgs] = None,
            tags: Optional[Mapping[str, str]] = None,
            tags_all: Optional[Mapping[str, str]] = None) -> Domain
    func GetDomain(ctx *Context, name string, id IDInput, state *DomainState, opts ...ResourceOption) (*Domain, error)
    public static Domain Get(string name, Input<string> id, DomainState? state, CustomResourceOptions? opts = null)
    public static Domain get(String name, Output<String> id, DomainState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    Arn string
    The Amazon Resource Name (ARN) of the Customer Profiles Domain.
    DeadLetterQueueUrl string
    The URL of the SQS dead letter queue, which is used for reporting errors associated with ingesting data from third party applications.
    DefaultEncryptionKey string
    The default encryption key, which is an AWS managed key, is used when no specific type of encryption key is specified. It is used to encrypt all data before it is placed in permanent or semi-permanent storage.
    DefaultExpirationDays int

    The default number of days until the data within the domain expires.

    The following arguments are optional:

    DomainName string
    The name for your Customer Profile domain. It must be unique for your AWS account.
    Matching DomainMatching
    A block that specifies the process of matching duplicate profiles. Documented below.
    RuleBasedMatching DomainRuleBasedMatching
    A block that specifies the process of matching duplicate profiles using the Rule-Based matching. Documented below.
    Tags Dictionary<string, string>
    Tags to apply to the domain. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    TagsAll Dictionary<string, string>
    A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    Arn string
    The Amazon Resource Name (ARN) of the Customer Profiles Domain.
    DeadLetterQueueUrl string
    The URL of the SQS dead letter queue, which is used for reporting errors associated with ingesting data from third party applications.
    DefaultEncryptionKey string
    The default encryption key, which is an AWS managed key, is used when no specific type of encryption key is specified. It is used to encrypt all data before it is placed in permanent or semi-permanent storage.
    DefaultExpirationDays int

    The default number of days until the data within the domain expires.

    The following arguments are optional:

    DomainName string
    The name for your Customer Profile domain. It must be unique for your AWS account.
    Matching DomainMatchingArgs
    A block that specifies the process of matching duplicate profiles. Documented below.
    RuleBasedMatching DomainRuleBasedMatchingArgs
    A block that specifies the process of matching duplicate profiles using the Rule-Based matching. Documented below.
    Tags map[string]string
    Tags to apply to the domain. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    TagsAll map[string]string
    A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    arn String
    The Amazon Resource Name (ARN) of the Customer Profiles Domain.
    deadLetterQueueUrl String
    The URL of the SQS dead letter queue, which is used for reporting errors associated with ingesting data from third party applications.
    defaultEncryptionKey String
    The default encryption key, which is an AWS managed key, is used when no specific type of encryption key is specified. It is used to encrypt all data before it is placed in permanent or semi-permanent storage.
    defaultExpirationDays Integer

    The default number of days until the data within the domain expires.

    The following arguments are optional:

    domainName String
    The name for your Customer Profile domain. It must be unique for your AWS account.
    matching DomainMatching
    A block that specifies the process of matching duplicate profiles. Documented below.
    ruleBasedMatching DomainRuleBasedMatching
    A block that specifies the process of matching duplicate profiles using the Rule-Based matching. Documented below.
    tags Map<String,String>
    Tags to apply to the domain. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    tagsAll Map<String,String>
    A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    arn string
    The Amazon Resource Name (ARN) of the Customer Profiles Domain.
    deadLetterQueueUrl string
    The URL of the SQS dead letter queue, which is used for reporting errors associated with ingesting data from third party applications.
    defaultEncryptionKey string
    The default encryption key, which is an AWS managed key, is used when no specific type of encryption key is specified. It is used to encrypt all data before it is placed in permanent or semi-permanent storage.
    defaultExpirationDays number

    The default number of days until the data within the domain expires.

    The following arguments are optional:

    domainName string
    The name for your Customer Profile domain. It must be unique for your AWS account.
    matching DomainMatching
    A block that specifies the process of matching duplicate profiles. Documented below.
    ruleBasedMatching DomainRuleBasedMatching
    A block that specifies the process of matching duplicate profiles using the Rule-Based matching. Documented below.
    tags {[key: string]: string}
    Tags to apply to the domain. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    tagsAll {[key: string]: string}
    A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    arn str
    The Amazon Resource Name (ARN) of the Customer Profiles Domain.
    dead_letter_queue_url str
    The URL of the SQS dead letter queue, which is used for reporting errors associated with ingesting data from third party applications.
    default_encryption_key str
    The default encryption key, which is an AWS managed key, is used when no specific type of encryption key is specified. It is used to encrypt all data before it is placed in permanent or semi-permanent storage.
    default_expiration_days int

    The default number of days until the data within the domain expires.

    The following arguments are optional:

    domain_name str
    The name for your Customer Profile domain. It must be unique for your AWS account.
    matching DomainMatchingArgs
    A block that specifies the process of matching duplicate profiles. Documented below.
    rule_based_matching DomainRuleBasedMatchingArgs
    A block that specifies the process of matching duplicate profiles using the Rule-Based matching. Documented below.
    tags Mapping[str, str]
    Tags to apply to the domain. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    tags_all Mapping[str, str]
    A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    arn String
    The Amazon Resource Name (ARN) of the Customer Profiles Domain.
    deadLetterQueueUrl String
    The URL of the SQS dead letter queue, which is used for reporting errors associated with ingesting data from third party applications.
    defaultEncryptionKey String
    The default encryption key, which is an AWS managed key, is used when no specific type of encryption key is specified. It is used to encrypt all data before it is placed in permanent or semi-permanent storage.
    defaultExpirationDays Number

    The default number of days until the data within the domain expires.

    The following arguments are optional:

    domainName String
    The name for your Customer Profile domain. It must be unique for your AWS account.
    matching Property Map
    A block that specifies the process of matching duplicate profiles. Documented below.
    ruleBasedMatching Property Map
    A block that specifies the process of matching duplicate profiles using the Rule-Based matching. Documented below.
    tags Map<String>
    Tags to apply to the domain. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    tagsAll Map<String>
    A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

    Deprecated: Please use tags instead.

    Supporting Types

    DomainMatching, DomainMatchingArgs

    Enabled bool
    The flag that enables the matching process of duplicate profiles.
    AutoMerging DomainMatchingAutoMerging
    A block that specifies the configuration about the auto-merging process. Documented below.
    ExportingConfig DomainMatchingExportingConfig
    A block that specifies the configuration for exporting Identity Resolution results. Documented below.
    JobSchedule DomainMatchingJobSchedule
    A block that specifies the day and time when you want to start the Identity Resolution Job every week. Documented below.
    Enabled bool
    The flag that enables the matching process of duplicate profiles.
    AutoMerging DomainMatchingAutoMerging
    A block that specifies the configuration about the auto-merging process. Documented below.
    ExportingConfig DomainMatchingExportingConfig
    A block that specifies the configuration for exporting Identity Resolution results. Documented below.
    JobSchedule DomainMatchingJobSchedule
    A block that specifies the day and time when you want to start the Identity Resolution Job every week. Documented below.
    enabled Boolean
    The flag that enables the matching process of duplicate profiles.
    autoMerging DomainMatchingAutoMerging
    A block that specifies the configuration about the auto-merging process. Documented below.
    exportingConfig DomainMatchingExportingConfig
    A block that specifies the configuration for exporting Identity Resolution results. Documented below.
    jobSchedule DomainMatchingJobSchedule
    A block that specifies the day and time when you want to start the Identity Resolution Job every week. Documented below.
    enabled boolean
    The flag that enables the matching process of duplicate profiles.
    autoMerging DomainMatchingAutoMerging
    A block that specifies the configuration about the auto-merging process. Documented below.
    exportingConfig DomainMatchingExportingConfig
    A block that specifies the configuration for exporting Identity Resolution results. Documented below.
    jobSchedule DomainMatchingJobSchedule
    A block that specifies the day and time when you want to start the Identity Resolution Job every week. Documented below.
    enabled bool
    The flag that enables the matching process of duplicate profiles.
    auto_merging DomainMatchingAutoMerging
    A block that specifies the configuration about the auto-merging process. Documented below.
    exporting_config DomainMatchingExportingConfig
    A block that specifies the configuration for exporting Identity Resolution results. Documented below.
    job_schedule DomainMatchingJobSchedule
    A block that specifies the day and time when you want to start the Identity Resolution Job every week. Documented below.
    enabled Boolean
    The flag that enables the matching process of duplicate profiles.
    autoMerging Property Map
    A block that specifies the configuration about the auto-merging process. Documented below.
    exportingConfig Property Map
    A block that specifies the configuration for exporting Identity Resolution results. Documented below.
    jobSchedule Property Map
    A block that specifies the day and time when you want to start the Identity Resolution Job every week. Documented below.

    DomainMatchingAutoMerging, DomainMatchingAutoMergingArgs

    Enabled bool
    The flag that enables the auto-merging of duplicate profiles.
    ConflictResolution DomainMatchingAutoMergingConflictResolution
    A block that specifies how the auto-merging process should resolve conflicts between different profiles. Documented below.
    Consolidation DomainMatchingAutoMergingConsolidation
    A block that specifies a list of matching attributes that represent matching criteria. If two profiles meet at least one of the requirements in the matching attributes list, they will be merged. Documented below.

    • min_allowed_confidence_score_for_merging - (Optional) A number between 0 and 1 that represents the minimum confidence score required for profiles within a matching group to be merged during the auto-merge process. A higher score means higher similarity required to merge profiles.
    MinAllowedConfidenceScoreForMerging double
    Enabled bool
    The flag that enables the auto-merging of duplicate profiles.
    ConflictResolution DomainMatchingAutoMergingConflictResolution
    A block that specifies how the auto-merging process should resolve conflicts between different profiles. Documented below.
    Consolidation DomainMatchingAutoMergingConsolidation
    A block that specifies a list of matching attributes that represent matching criteria. If two profiles meet at least one of the requirements in the matching attributes list, they will be merged. Documented below.

    • min_allowed_confidence_score_for_merging - (Optional) A number between 0 and 1 that represents the minimum confidence score required for profiles within a matching group to be merged during the auto-merge process. A higher score means higher similarity required to merge profiles.
    MinAllowedConfidenceScoreForMerging float64
    enabled Boolean
    The flag that enables the auto-merging of duplicate profiles.
    conflictResolution DomainMatchingAutoMergingConflictResolution
    A block that specifies how the auto-merging process should resolve conflicts between different profiles. Documented below.
    consolidation DomainMatchingAutoMergingConsolidation
    A block that specifies a list of matching attributes that represent matching criteria. If two profiles meet at least one of the requirements in the matching attributes list, they will be merged. Documented below.

    • min_allowed_confidence_score_for_merging - (Optional) A number between 0 and 1 that represents the minimum confidence score required for profiles within a matching group to be merged during the auto-merge process. A higher score means higher similarity required to merge profiles.
    minAllowedConfidenceScoreForMerging Double
    enabled boolean
    The flag that enables the auto-merging of duplicate profiles.
    conflictResolution DomainMatchingAutoMergingConflictResolution
    A block that specifies how the auto-merging process should resolve conflicts between different profiles. Documented below.
    consolidation DomainMatchingAutoMergingConsolidation
    A block that specifies a list of matching attributes that represent matching criteria. If two profiles meet at least one of the requirements in the matching attributes list, they will be merged. Documented below.

    • min_allowed_confidence_score_for_merging - (Optional) A number between 0 and 1 that represents the minimum confidence score required for profiles within a matching group to be merged during the auto-merge process. A higher score means higher similarity required to merge profiles.
    minAllowedConfidenceScoreForMerging number
    enabled bool
    The flag that enables the auto-merging of duplicate profiles.
    conflict_resolution DomainMatchingAutoMergingConflictResolution
    A block that specifies how the auto-merging process should resolve conflicts between different profiles. Documented below.
    consolidation DomainMatchingAutoMergingConsolidation
    A block that specifies a list of matching attributes that represent matching criteria. If two profiles meet at least one of the requirements in the matching attributes list, they will be merged. Documented below.

    • min_allowed_confidence_score_for_merging - (Optional) A number between 0 and 1 that represents the minimum confidence score required for profiles within a matching group to be merged during the auto-merge process. A higher score means higher similarity required to merge profiles.
    min_allowed_confidence_score_for_merging float
    enabled Boolean
    The flag that enables the auto-merging of duplicate profiles.
    conflictResolution Property Map
    A block that specifies how the auto-merging process should resolve conflicts between different profiles. Documented below.
    consolidation Property Map
    A block that specifies a list of matching attributes that represent matching criteria. If two profiles meet at least one of the requirements in the matching attributes list, they will be merged. Documented below.

    • min_allowed_confidence_score_for_merging - (Optional) A number between 0 and 1 that represents the minimum confidence score required for profiles within a matching group to be merged during the auto-merge process. A higher score means higher similarity required to merge profiles.
    minAllowedConfidenceScoreForMerging Number

    DomainMatchingAutoMergingConflictResolution, DomainMatchingAutoMergingConflictResolutionArgs

    ConflictResolvingModel string
    How the auto-merging process should resolve conflicts between different profiles. Valid values are RECENCY and SOURCE
    SourceName string
    The ObjectType name that is used to resolve profile merging conflicts when choosing SOURCE as the ConflictResolvingModel.
    ConflictResolvingModel string
    How the auto-merging process should resolve conflicts between different profiles. Valid values are RECENCY and SOURCE
    SourceName string
    The ObjectType name that is used to resolve profile merging conflicts when choosing SOURCE as the ConflictResolvingModel.
    conflictResolvingModel String
    How the auto-merging process should resolve conflicts between different profiles. Valid values are RECENCY and SOURCE
    sourceName String
    The ObjectType name that is used to resolve profile merging conflicts when choosing SOURCE as the ConflictResolvingModel.
    conflictResolvingModel string
    How the auto-merging process should resolve conflicts between different profiles. Valid values are RECENCY and SOURCE
    sourceName string
    The ObjectType name that is used to resolve profile merging conflicts when choosing SOURCE as the ConflictResolvingModel.
    conflict_resolving_model str
    How the auto-merging process should resolve conflicts between different profiles. Valid values are RECENCY and SOURCE
    source_name str
    The ObjectType name that is used to resolve profile merging conflicts when choosing SOURCE as the ConflictResolvingModel.
    conflictResolvingModel String
    How the auto-merging process should resolve conflicts between different profiles. Valid values are RECENCY and SOURCE
    sourceName String
    The ObjectType name that is used to resolve profile merging conflicts when choosing SOURCE as the ConflictResolvingModel.

    DomainMatchingAutoMergingConsolidation, DomainMatchingAutoMergingConsolidationArgs

    MatchingAttributesLists List<ImmutableArray<string>>
    A list of matching criteria.
    MatchingAttributesLists [][]string
    A list of matching criteria.
    matchingAttributesLists List<List<String>>
    A list of matching criteria.
    matchingAttributesLists string[][]
    A list of matching criteria.
    matching_attributes_lists Sequence[Sequence[str]]
    A list of matching criteria.
    matchingAttributesLists List<List<String>>
    A list of matching criteria.

    DomainMatchingExportingConfig, DomainMatchingExportingConfigArgs

    DomainMatchingExportingConfigS3Exporting, DomainMatchingExportingConfigS3ExportingArgs

    S3BucketName string
    The name of the S3 bucket where Identity Resolution Jobs write result files.
    S3KeyName string
    The S3 key name of the location where Identity Resolution Jobs write result files.
    S3BucketName string
    The name of the S3 bucket where Identity Resolution Jobs write result files.
    S3KeyName string
    The S3 key name of the location where Identity Resolution Jobs write result files.
    s3BucketName String
    The name of the S3 bucket where Identity Resolution Jobs write result files.
    s3KeyName String
    The S3 key name of the location where Identity Resolution Jobs write result files.
    s3BucketName string
    The name of the S3 bucket where Identity Resolution Jobs write result files.
    s3KeyName string
    The S3 key name of the location where Identity Resolution Jobs write result files.
    s3_bucket_name str
    The name of the S3 bucket where Identity Resolution Jobs write result files.
    s3_key_name str
    The S3 key name of the location where Identity Resolution Jobs write result files.
    s3BucketName String
    The name of the S3 bucket where Identity Resolution Jobs write result files.
    s3KeyName String
    The S3 key name of the location where Identity Resolution Jobs write result files.

    DomainMatchingJobSchedule, DomainMatchingJobScheduleArgs

    DayOfTheWeek string
    The day when the Identity Resolution Job should run every week.
    Time string
    The time when the Identity Resolution Job should run every week.
    DayOfTheWeek string
    The day when the Identity Resolution Job should run every week.
    Time string
    The time when the Identity Resolution Job should run every week.
    dayOfTheWeek String
    The day when the Identity Resolution Job should run every week.
    time String
    The time when the Identity Resolution Job should run every week.
    dayOfTheWeek string
    The day when the Identity Resolution Job should run every week.
    time string
    The time when the Identity Resolution Job should run every week.
    day_of_the_week str
    The day when the Identity Resolution Job should run every week.
    time str
    The time when the Identity Resolution Job should run every week.
    dayOfTheWeek String
    The day when the Identity Resolution Job should run every week.
    time String
    The time when the Identity Resolution Job should run every week.

    DomainRuleBasedMatching, DomainRuleBasedMatchingArgs

    Enabled bool
    The flag that enables the rule-based matching process of duplicate profiles.
    AttributeTypesSelector DomainRuleBasedMatchingAttributeTypesSelector
    A block that configures information about the AttributeTypesSelector where the rule-based identity resolution uses to match profiles. Documented below.
    ConflictResolution DomainRuleBasedMatchingConflictResolution
    A block that specifies how the auto-merging process should resolve conflicts between different profiles. Documented below.
    ExportingConfig DomainRuleBasedMatchingExportingConfig
    A block that specifies the configuration for exporting Identity Resolution results. Documented below.
    MatchingRules List<DomainRuleBasedMatchingMatchingRule>
    A block that configures how the rule-based matching process should match profiles. You can have up to 15 rule in the natching_rules. Documented below.
    MaxAllowedRuleLevelForMatching int
    Indicates the maximum allowed rule level for matching.
    MaxAllowedRuleLevelForMerging int
    Indicates the maximum allowed rule level for merging.
    Status string
    Enabled bool
    The flag that enables the rule-based matching process of duplicate profiles.
    AttributeTypesSelector DomainRuleBasedMatchingAttributeTypesSelector
    A block that configures information about the AttributeTypesSelector where the rule-based identity resolution uses to match profiles. Documented below.
    ConflictResolution DomainRuleBasedMatchingConflictResolution
    A block that specifies how the auto-merging process should resolve conflicts between different profiles. Documented below.
    ExportingConfig DomainRuleBasedMatchingExportingConfig
    A block that specifies the configuration for exporting Identity Resolution results. Documented below.
    MatchingRules []DomainRuleBasedMatchingMatchingRule
    A block that configures how the rule-based matching process should match profiles. You can have up to 15 rule in the natching_rules. Documented below.
    MaxAllowedRuleLevelForMatching int
    Indicates the maximum allowed rule level for matching.
    MaxAllowedRuleLevelForMerging int
    Indicates the maximum allowed rule level for merging.
    Status string
    enabled Boolean
    The flag that enables the rule-based matching process of duplicate profiles.
    attributeTypesSelector DomainRuleBasedMatchingAttributeTypesSelector
    A block that configures information about the AttributeTypesSelector where the rule-based identity resolution uses to match profiles. Documented below.
    conflictResolution DomainRuleBasedMatchingConflictResolution
    A block that specifies how the auto-merging process should resolve conflicts between different profiles. Documented below.
    exportingConfig DomainRuleBasedMatchingExportingConfig
    A block that specifies the configuration for exporting Identity Resolution results. Documented below.
    matchingRules List<DomainRuleBasedMatchingMatchingRule>
    A block that configures how the rule-based matching process should match profiles. You can have up to 15 rule in the natching_rules. Documented below.
    maxAllowedRuleLevelForMatching Integer
    Indicates the maximum allowed rule level for matching.
    maxAllowedRuleLevelForMerging Integer
    Indicates the maximum allowed rule level for merging.
    status String
    enabled boolean
    The flag that enables the rule-based matching process of duplicate profiles.
    attributeTypesSelector DomainRuleBasedMatchingAttributeTypesSelector
    A block that configures information about the AttributeTypesSelector where the rule-based identity resolution uses to match profiles. Documented below.
    conflictResolution DomainRuleBasedMatchingConflictResolution
    A block that specifies how the auto-merging process should resolve conflicts between different profiles. Documented below.
    exportingConfig DomainRuleBasedMatchingExportingConfig
    A block that specifies the configuration for exporting Identity Resolution results. Documented below.
    matchingRules DomainRuleBasedMatchingMatchingRule[]
    A block that configures how the rule-based matching process should match profiles. You can have up to 15 rule in the natching_rules. Documented below.
    maxAllowedRuleLevelForMatching number
    Indicates the maximum allowed rule level for matching.
    maxAllowedRuleLevelForMerging number
    Indicates the maximum allowed rule level for merging.
    status string
    enabled bool
    The flag that enables the rule-based matching process of duplicate profiles.
    attribute_types_selector DomainRuleBasedMatchingAttributeTypesSelector
    A block that configures information about the AttributeTypesSelector where the rule-based identity resolution uses to match profiles. Documented below.
    conflict_resolution DomainRuleBasedMatchingConflictResolution
    A block that specifies how the auto-merging process should resolve conflicts between different profiles. Documented below.
    exporting_config DomainRuleBasedMatchingExportingConfig
    A block that specifies the configuration for exporting Identity Resolution results. Documented below.
    matching_rules Sequence[DomainRuleBasedMatchingMatchingRule]
    A block that configures how the rule-based matching process should match profiles. You can have up to 15 rule in the natching_rules. Documented below.
    max_allowed_rule_level_for_matching int
    Indicates the maximum allowed rule level for matching.
    max_allowed_rule_level_for_merging int
    Indicates the maximum allowed rule level for merging.
    status str
    enabled Boolean
    The flag that enables the rule-based matching process of duplicate profiles.
    attributeTypesSelector Property Map
    A block that configures information about the AttributeTypesSelector where the rule-based identity resolution uses to match profiles. Documented below.
    conflictResolution Property Map
    A block that specifies how the auto-merging process should resolve conflicts between different profiles. Documented below.
    exportingConfig Property Map
    A block that specifies the configuration for exporting Identity Resolution results. Documented below.
    matchingRules List<Property Map>
    A block that configures how the rule-based matching process should match profiles. You can have up to 15 rule in the natching_rules. Documented below.
    maxAllowedRuleLevelForMatching Number
    Indicates the maximum allowed rule level for matching.
    maxAllowedRuleLevelForMerging Number
    Indicates the maximum allowed rule level for merging.
    status String

    DomainRuleBasedMatchingAttributeTypesSelector, DomainRuleBasedMatchingAttributeTypesSelectorArgs

    AttributeMatchingModel string
    Configures the AttributeMatchingModel, you can either choose ONE_TO_ONE or MANY_TO_MANY.
    Addresses List<string>
    The Address type. You can choose from Address, BusinessAddress, MaillingAddress, and ShippingAddress.
    EmailAddresses List<string>
    The Email type. You can choose from EmailAddress, BusinessEmailAddress and PersonalEmailAddress.
    PhoneNumbers List<string>
    The PhoneNumber type. You can choose from PhoneNumber, HomePhoneNumber, and MobilePhoneNumber.
    AttributeMatchingModel string
    Configures the AttributeMatchingModel, you can either choose ONE_TO_ONE or MANY_TO_MANY.
    Addresses []string
    The Address type. You can choose from Address, BusinessAddress, MaillingAddress, and ShippingAddress.
    EmailAddresses []string
    The Email type. You can choose from EmailAddress, BusinessEmailAddress and PersonalEmailAddress.
    PhoneNumbers []string
    The PhoneNumber type. You can choose from PhoneNumber, HomePhoneNumber, and MobilePhoneNumber.
    attributeMatchingModel String
    Configures the AttributeMatchingModel, you can either choose ONE_TO_ONE or MANY_TO_MANY.
    addresses List<String>
    The Address type. You can choose from Address, BusinessAddress, MaillingAddress, and ShippingAddress.
    emailAddresses List<String>
    The Email type. You can choose from EmailAddress, BusinessEmailAddress and PersonalEmailAddress.
    phoneNumbers List<String>
    The PhoneNumber type. You can choose from PhoneNumber, HomePhoneNumber, and MobilePhoneNumber.
    attributeMatchingModel string
    Configures the AttributeMatchingModel, you can either choose ONE_TO_ONE or MANY_TO_MANY.
    addresses string[]
    The Address type. You can choose from Address, BusinessAddress, MaillingAddress, and ShippingAddress.
    emailAddresses string[]
    The Email type. You can choose from EmailAddress, BusinessEmailAddress and PersonalEmailAddress.
    phoneNumbers string[]
    The PhoneNumber type. You can choose from PhoneNumber, HomePhoneNumber, and MobilePhoneNumber.
    attribute_matching_model str
    Configures the AttributeMatchingModel, you can either choose ONE_TO_ONE or MANY_TO_MANY.
    addresses Sequence[str]
    The Address type. You can choose from Address, BusinessAddress, MaillingAddress, and ShippingAddress.
    email_addresses Sequence[str]
    The Email type. You can choose from EmailAddress, BusinessEmailAddress and PersonalEmailAddress.
    phone_numbers Sequence[str]
    The PhoneNumber type. You can choose from PhoneNumber, HomePhoneNumber, and MobilePhoneNumber.
    attributeMatchingModel String
    Configures the AttributeMatchingModel, you can either choose ONE_TO_ONE or MANY_TO_MANY.
    addresses List<String>
    The Address type. You can choose from Address, BusinessAddress, MaillingAddress, and ShippingAddress.
    emailAddresses List<String>
    The Email type. You can choose from EmailAddress, BusinessEmailAddress and PersonalEmailAddress.
    phoneNumbers List<String>
    The PhoneNumber type. You can choose from PhoneNumber, HomePhoneNumber, and MobilePhoneNumber.

    DomainRuleBasedMatchingConflictResolution, DomainRuleBasedMatchingConflictResolutionArgs

    ConflictResolvingModel string
    How the auto-merging process should resolve conflicts between different profiles. Valid values are RECENCY and SOURCE
    SourceName string
    The ObjectType name that is used to resolve profile merging conflicts when choosing SOURCE as the ConflictResolvingModel.
    ConflictResolvingModel string
    How the auto-merging process should resolve conflicts between different profiles. Valid values are RECENCY and SOURCE
    SourceName string
    The ObjectType name that is used to resolve profile merging conflicts when choosing SOURCE as the ConflictResolvingModel.
    conflictResolvingModel String
    How the auto-merging process should resolve conflicts between different profiles. Valid values are RECENCY and SOURCE
    sourceName String
    The ObjectType name that is used to resolve profile merging conflicts when choosing SOURCE as the ConflictResolvingModel.
    conflictResolvingModel string
    How the auto-merging process should resolve conflicts between different profiles. Valid values are RECENCY and SOURCE
    sourceName string
    The ObjectType name that is used to resolve profile merging conflicts when choosing SOURCE as the ConflictResolvingModel.
    conflict_resolving_model str
    How the auto-merging process should resolve conflicts between different profiles. Valid values are RECENCY and SOURCE
    source_name str
    The ObjectType name that is used to resolve profile merging conflicts when choosing SOURCE as the ConflictResolvingModel.
    conflictResolvingModel String
    How the auto-merging process should resolve conflicts between different profiles. Valid values are RECENCY and SOURCE
    sourceName String
    The ObjectType name that is used to resolve profile merging conflicts when choosing SOURCE as the ConflictResolvingModel.

    DomainRuleBasedMatchingExportingConfig, DomainRuleBasedMatchingExportingConfigArgs

    DomainRuleBasedMatchingExportingConfigS3Exporting, DomainRuleBasedMatchingExportingConfigS3ExportingArgs

    S3BucketName string
    The name of the S3 bucket where Identity Resolution Jobs write result files.
    S3KeyName string
    The S3 key name of the location where Identity Resolution Jobs write result files.
    S3BucketName string
    The name of the S3 bucket where Identity Resolution Jobs write result files.
    S3KeyName string
    The S3 key name of the location where Identity Resolution Jobs write result files.
    s3BucketName String
    The name of the S3 bucket where Identity Resolution Jobs write result files.
    s3KeyName String
    The S3 key name of the location where Identity Resolution Jobs write result files.
    s3BucketName string
    The name of the S3 bucket where Identity Resolution Jobs write result files.
    s3KeyName string
    The S3 key name of the location where Identity Resolution Jobs write result files.
    s3_bucket_name str
    The name of the S3 bucket where Identity Resolution Jobs write result files.
    s3_key_name str
    The S3 key name of the location where Identity Resolution Jobs write result files.
    s3BucketName String
    The name of the S3 bucket where Identity Resolution Jobs write result files.
    s3KeyName String
    The S3 key name of the location where Identity Resolution Jobs write result files.

    DomainRuleBasedMatchingMatchingRule, DomainRuleBasedMatchingMatchingRuleArgs

    Rules List<string>
    A single rule level of the match_rules. Configures how the rule-based matching process should match profiles.
    Rules []string
    A single rule level of the match_rules. Configures how the rule-based matching process should match profiles.
    rules List<String>
    A single rule level of the match_rules. Configures how the rule-based matching process should match profiles.
    rules string[]
    A single rule level of the match_rules. Configures how the rule-based matching process should match profiles.
    rules Sequence[str]
    A single rule level of the match_rules. Configures how the rule-based matching process should match profiles.
    rules List<String>
    A single rule level of the match_rules. Configures how the rule-based matching process should match profiles.

    Import

    Using pulumi import, import Amazon Customer Profiles Domain using the resource id. For example:

    $ pulumi import aws:customerprofiles/domain:Domain example e6f777be-22d0-4b40-b307-5d2720ef16b2
    

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    AWS Classic pulumi/pulumi-aws
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the aws Terraform Provider.
    aws logo
    AWS v6.62.2 published on Tuesday, Dec 3, 2024 by Pulumi