AWS Native

v0.43.0 published on Thursday, Dec 1, 2022 by Pulumi

ObjectType

An ObjectType resource of Amazon Connect Customer Profiles

Example Usage

Example

using System.Collections.Generic;
using Pulumi;
using AwsNative = Pulumi.AwsNative;

return await Deployment.RunAsync(() => 
{
    var objectType = new AwsNative.CustomerProfiles.ObjectType("objectType", new()
    {
        DomainName = "ExampleDomain",
        ObjectTypeName = "ExampleObjectType",
        AllowProfileCreation = false,
        Description = "Description Example",
        ExpirationDays = 1,
        Fields = new[]
        {
            new AwsNative.CustomerProfiles.Inputs.ObjectTypeFieldMapArgs
            {
                Name = "email",
                ObjectTypeField = new AwsNative.CustomerProfiles.Inputs.ObjectTypeFieldArgs
                {
                    Source = "_source.email",
                    Target = "_profile.BusinessEmail",
                    ContentType = AwsNative.CustomerProfiles.ObjectTypeFieldContentType.EmailAddress,
                },
            },
        },
        Keys = new[]
        {
            new AwsNative.CustomerProfiles.Inputs.ObjectTypeKeyMapArgs
            {
                Name = "_email",
                ObjectTypeKeyList = new[]
                {
                    new AwsNative.CustomerProfiles.Inputs.ObjectTypeKeyArgs
                    {
                        FieldNames = new[]
                        {
                            "email",
                        },
                        StandardIdentifiers = new[]
                        {
                            AwsNative.CustomerProfiles.ObjectTypeKeyStandardIdentifiersItem.Profile,
                            AwsNative.CustomerProfiles.ObjectTypeKeyStandardIdentifiersItem.Unique,
                        },
                    },
                },
            },
        },
    });

});

Coming soon!

Coming soon!

import pulumi
import pulumi_aws_native as aws_native

object_type = aws_native.customerprofiles.ObjectType("objectType",
    domain_name="ExampleDomain",
    object_type_name="ExampleObjectType",
    allow_profile_creation=False,
    description="Description Example",
    expiration_days=1,
    fields=[aws_native.customerprofiles.ObjectTypeFieldMapArgs(
        name="email",
        object_type_field=aws_native.customerprofiles.ObjectTypeFieldArgs(
            source="_source.email",
            target="_profile.BusinessEmail",
            content_type=aws_native.customerprofiles.ObjectTypeFieldContentType.EMAIL_ADDRESS,
        ),
    )],
    keys=[aws_native.customerprofiles.ObjectTypeKeyMapArgs(
        name="_email",
        object_type_key_list=[aws_native.customerprofiles.ObjectTypeKeyArgs(
            field_names=["email"],
            standard_identifiers=[
                aws_native.customerprofiles.ObjectTypeKeyStandardIdentifiersItem.PROFILE,
                aws_native.customerprofiles.ObjectTypeKeyStandardIdentifiersItem.UNIQUE,
            ],
        )],
    )])
import * as pulumi from "@pulumi/pulumi";
import * as aws_native from "@pulumi/aws-native";

const objectType = new aws_native.customerprofiles.ObjectType("objectType", {
    domainName: "ExampleDomain",
    objectTypeName: "ExampleObjectType",
    allowProfileCreation: false,
    description: "Description Example",
    expirationDays: 1,
    fields: [{
        name: "email",
        objectTypeField: {
            source: "_source.email",
            target: "_profile.BusinessEmail",
            contentType: aws_native.customerprofiles.ObjectTypeFieldContentType.EmailAddress,
        },
    }],
    keys: [{
        name: "_email",
        objectTypeKeyList: [{
            fieldNames: ["email"],
            standardIdentifiers: [
                aws_native.customerprofiles.ObjectTypeKeyStandardIdentifiersItem.Profile,
                aws_native.customerprofiles.ObjectTypeKeyStandardIdentifiersItem.Unique,
            ],
        }],
    }],
});

Coming soon!

Example

using System.Collections.Generic;
using Pulumi;
using AwsNative = Pulumi.AwsNative;

return await Deployment.RunAsync(() => 
{
    var objectType = new AwsNative.CustomerProfiles.ObjectType("objectType", new()
    {
        DomainName = "ExampleDomain",
        ObjectTypeName = "ExampleObjectType",
        AllowProfileCreation = false,
        Description = "Description Example",
        ExpirationDays = 1,
        Fields = new[]
        {
            new AwsNative.CustomerProfiles.Inputs.ObjectTypeFieldMapArgs
            {
                Name = "email",
                ObjectTypeField = new AwsNative.CustomerProfiles.Inputs.ObjectTypeFieldArgs
                {
                    Source = "_source.email",
                    Target = "_profile.BusinessEmail",
                    ContentType = AwsNative.CustomerProfiles.ObjectTypeFieldContentType.EmailAddress,
                },
            },
        },
        Keys = new[]
        {
            new AwsNative.CustomerProfiles.Inputs.ObjectTypeKeyMapArgs
            {
                Name = "_email",
                ObjectTypeKeyList = new[]
                {
                    new AwsNative.CustomerProfiles.Inputs.ObjectTypeKeyArgs
                    {
                        FieldNames = new[]
                        {
                            "email",
                        },
                        StandardIdentifiers = new[]
                        {
                            AwsNative.CustomerProfiles.ObjectTypeKeyStandardIdentifiersItem.Profile,
                            AwsNative.CustomerProfiles.ObjectTypeKeyStandardIdentifiersItem.Unique,
                        },
                    },
                },
            },
        },
    });

});

Coming soon!

Coming soon!

import pulumi
import pulumi_aws_native as aws_native

object_type = aws_native.customerprofiles.ObjectType("objectType",
    domain_name="ExampleDomain",
    object_type_name="ExampleObjectType",
    allow_profile_creation=False,
    description="Description Example",
    expiration_days=1,
    fields=[aws_native.customerprofiles.ObjectTypeFieldMapArgs(
        name="email",
        object_type_field=aws_native.customerprofiles.ObjectTypeFieldArgs(
            source="_source.email",
            target="_profile.BusinessEmail",
            content_type=aws_native.customerprofiles.ObjectTypeFieldContentType.EMAIL_ADDRESS,
        ),
    )],
    keys=[aws_native.customerprofiles.ObjectTypeKeyMapArgs(
        name="_email",
        object_type_key_list=[aws_native.customerprofiles.ObjectTypeKeyArgs(
            field_names=["email"],
            standard_identifiers=[
                aws_native.customerprofiles.ObjectTypeKeyStandardIdentifiersItem.PROFILE,
                aws_native.customerprofiles.ObjectTypeKeyStandardIdentifiersItem.UNIQUE,
            ],
        )],
    )])
import * as pulumi from "@pulumi/pulumi";
import * as aws_native from "@pulumi/aws-native";

const objectType = new aws_native.customerprofiles.ObjectType("objectType", {
    domainName: "ExampleDomain",
    objectTypeName: "ExampleObjectType",
    allowProfileCreation: false,
    description: "Description Example",
    expirationDays: 1,
    fields: [{
        name: "email",
        objectTypeField: {
            source: "_source.email",
            target: "_profile.BusinessEmail",
            contentType: aws_native.customerprofiles.ObjectTypeFieldContentType.EmailAddress,
        },
    }],
    keys: [{
        name: "_email",
        objectTypeKeyList: [{
            fieldNames: ["email"],
            standardIdentifiers: [
                aws_native.customerprofiles.ObjectTypeKeyStandardIdentifiersItem.Profile,
                aws_native.customerprofiles.ObjectTypeKeyStandardIdentifiersItem.Unique,
            ],
        }],
    }],
});

Coming soon!

Create ObjectType Resource

new ObjectType(name: string, args: ObjectTypeArgs, opts?: CustomResourceOptions);
@overload
def ObjectType(resource_name: str,
               opts: Optional[ResourceOptions] = None,
               allow_profile_creation: Optional[bool] = None,
               description: Optional[str] = None,
               domain_name: Optional[str] = None,
               encryption_key: Optional[str] = None,
               expiration_days: Optional[int] = None,
               fields: Optional[Sequence[ObjectTypeFieldMapArgs]] = None,
               keys: Optional[Sequence[ObjectTypeKeyMapArgs]] = None,
               object_type_name: Optional[str] = None,
               tags: Optional[Sequence[ObjectTypeTagArgs]] = None,
               template_id: Optional[str] = None)
@overload
def ObjectType(resource_name: str,
               args: ObjectTypeArgs,
               opts: Optional[ResourceOptions] = None)
func NewObjectType(ctx *Context, name string, args ObjectTypeArgs, opts ...ResourceOption) (*ObjectType, error)
public ObjectType(string name, ObjectTypeArgs args, CustomResourceOptions? opts = null)
public ObjectType(String name, ObjectTypeArgs args)
public ObjectType(String name, ObjectTypeArgs args, CustomResourceOptions options)
type: aws-native:customerprofiles:ObjectType
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.

name string
The unique name of the resource.
args ObjectTypeArgs
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 ObjectTypeArgs
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 ObjectTypeArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name string
The unique name of the resource.
args ObjectTypeArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
name String
The unique name of the resource.
args ObjectTypeArgs
The arguments to resource properties.
options CustomResourceOptions
Bag of options to control resource's behavior.

ObjectType Resource Properties

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

Inputs

The ObjectType resource accepts the following input properties:

DomainName string

The unique name of the domain.

AllowProfileCreation bool

Indicates whether a profile should be created when data is received.

Description string

Description of the profile object type.

EncryptionKey string

The default encryption key

ExpirationDays int

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

Fields List<Pulumi.AwsNative.CustomerProfiles.Inputs.ObjectTypeFieldMapArgs>

A list of the name and ObjectType field.

Keys List<Pulumi.AwsNative.CustomerProfiles.Inputs.ObjectTypeKeyMapArgs>

A list of unique keys that can be used to map data to the profile.

ObjectTypeName string

The name of the profile object type.

Tags List<Pulumi.AwsNative.CustomerProfiles.Inputs.ObjectTypeTagArgs>

The tags (keys and values) associated with the integration.

TemplateId string

A unique identifier for the object template.

DomainName string

The unique name of the domain.

AllowProfileCreation bool

Indicates whether a profile should be created when data is received.

Description string

Description of the profile object type.

EncryptionKey string

The default encryption key

ExpirationDays int

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

Fields []ObjectTypeFieldMapArgs

A list of the name and ObjectType field.

Keys []ObjectTypeKeyMapArgs

A list of unique keys that can be used to map data to the profile.

ObjectTypeName string

The name of the profile object type.

Tags []ObjectTypeTagArgs

The tags (keys and values) associated with the integration.

TemplateId string

A unique identifier for the object template.

domainName String

The unique name of the domain.

allowProfileCreation Boolean

Indicates whether a profile should be created when data is received.

description String

Description of the profile object type.

encryptionKey String

The default encryption key

expirationDays Integer

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

fields List<ObjectTypeFieldMapArgs>

A list of the name and ObjectType field.

keys List<ObjectTypeKeyMapArgs>

A list of unique keys that can be used to map data to the profile.

objectTypeName String

The name of the profile object type.

tags List<ObjectTypeTagArgs>

The tags (keys and values) associated with the integration.

templateId String

A unique identifier for the object template.

domainName string

The unique name of the domain.

allowProfileCreation boolean

Indicates whether a profile should be created when data is received.

description string

Description of the profile object type.

encryptionKey string

The default encryption key

expirationDays number

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

fields ObjectTypeFieldMapArgs[]

A list of the name and ObjectType field.

keys ObjectTypeKeyMapArgs[]

A list of unique keys that can be used to map data to the profile.

objectTypeName string

The name of the profile object type.

tags ObjectTypeTagArgs[]

The tags (keys and values) associated with the integration.

templateId string

A unique identifier for the object template.

domain_name str

The unique name of the domain.

allow_profile_creation bool

Indicates whether a profile should be created when data is received.

description str

Description of the profile object type.

encryption_key str

The default encryption key

expiration_days int

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

fields Sequence[ObjectTypeFieldMapArgs]

A list of the name and ObjectType field.

keys Sequence[ObjectTypeKeyMapArgs]

A list of unique keys that can be used to map data to the profile.

object_type_name str

The name of the profile object type.

tags Sequence[ObjectTypeTagArgs]

The tags (keys and values) associated with the integration.

template_id str

A unique identifier for the object template.

domainName String

The unique name of the domain.

allowProfileCreation Boolean

Indicates whether a profile should be created when data is received.

description String

Description of the profile object type.

encryptionKey String

The default encryption key

expirationDays Number

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

fields List<Property Map>

A list of the name and ObjectType field.

keys List<Property Map>

A list of unique keys that can be used to map data to the profile.

objectTypeName String

The name of the profile object type.

tags List<Property Map>

The tags (keys and values) associated with the integration.

templateId String

A unique identifier for the object template.

Outputs

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

CreatedAt string

The time of this integration got created.

Id string

The provider-assigned unique ID for this managed resource.

LastUpdatedAt string

The time of this integration got last updated at.

CreatedAt string

The time of this integration got created.

Id string

The provider-assigned unique ID for this managed resource.

LastUpdatedAt string

The time of this integration got last updated at.

createdAt String

The time of this integration got created.

id String

The provider-assigned unique ID for this managed resource.

lastUpdatedAt String

The time of this integration got last updated at.

createdAt string

The time of this integration got created.

id string

The provider-assigned unique ID for this managed resource.

lastUpdatedAt string

The time of this integration got last updated at.

created_at str

The time of this integration got created.

id str

The provider-assigned unique ID for this managed resource.

last_updated_at str

The time of this integration got last updated at.

createdAt String

The time of this integration got created.

id String

The provider-assigned unique ID for this managed resource.

lastUpdatedAt String

The time of this integration got last updated at.

Supporting Types

ObjectTypeField

ContentType Pulumi.AwsNative.CustomerProfiles.ObjectTypeFieldContentType

The content type of the field. Used for determining equality when searching.

Source string

A field of a ProfileObject. For example: _source.FirstName, where "_source" is a ProfileObjectType of a Zendesk user and "FirstName" is a field in that ObjectType.

Target string

The location of the data in the standard ProfileObject model. For example: _profile.Address.PostalCode.

ContentType ObjectTypeFieldContentType

The content type of the field. Used for determining equality when searching.

Source string

A field of a ProfileObject. For example: _source.FirstName, where "_source" is a ProfileObjectType of a Zendesk user and "FirstName" is a field in that ObjectType.

Target string

The location of the data in the standard ProfileObject model. For example: _profile.Address.PostalCode.

contentType ObjectTypeFieldContentType

The content type of the field. Used for determining equality when searching.

source String

A field of a ProfileObject. For example: _source.FirstName, where "_source" is a ProfileObjectType of a Zendesk user and "FirstName" is a field in that ObjectType.

target String

The location of the data in the standard ProfileObject model. For example: _profile.Address.PostalCode.

contentType ObjectTypeFieldContentType

The content type of the field. Used for determining equality when searching.

source string

A field of a ProfileObject. For example: _source.FirstName, where "_source" is a ProfileObjectType of a Zendesk user and "FirstName" is a field in that ObjectType.

target string

The location of the data in the standard ProfileObject model. For example: _profile.Address.PostalCode.

content_type ObjectTypeFieldContentType

The content type of the field. Used for determining equality when searching.

source str

A field of a ProfileObject. For example: _source.FirstName, where "_source" is a ProfileObjectType of a Zendesk user and "FirstName" is a field in that ObjectType.

target str

The location of the data in the standard ProfileObject model. For example: _profile.Address.PostalCode.

contentType "STRING" | "NUMBER" | "PHONE_NUMBER" | "EMAIL_ADDRESS" | "NAME"

The content type of the field. Used for determining equality when searching.

source String

A field of a ProfileObject. For example: _source.FirstName, where "_source" is a ProfileObjectType of a Zendesk user and "FirstName" is a field in that ObjectType.

target String

The location of the data in the standard ProfileObject model. For example: _profile.Address.PostalCode.

ObjectTypeFieldContentType

String
STRING
Number
NUMBER
PhoneNumber
PHONE_NUMBER
EmailAddress
EMAIL_ADDRESS
Name
NAME
ObjectTypeFieldContentTypeString
STRING
ObjectTypeFieldContentTypeNumber
NUMBER
ObjectTypeFieldContentTypePhoneNumber
PHONE_NUMBER
ObjectTypeFieldContentTypeEmailAddress
EMAIL_ADDRESS
ObjectTypeFieldContentTypeName
NAME
String
STRING
Number
NUMBER
PhoneNumber
PHONE_NUMBER
EmailAddress
EMAIL_ADDRESS
Name
NAME
String
STRING
Number
NUMBER
PhoneNumber
PHONE_NUMBER
EmailAddress
EMAIL_ADDRESS
Name
NAME
STRING
STRING
NUMBER
NUMBER
PHONE_NUMBER
PHONE_NUMBER
EMAIL_ADDRESS
EMAIL_ADDRESS
NAME
NAME
"STRING"
STRING
"NUMBER"
NUMBER
"PHONE_NUMBER"
PHONE_NUMBER
"EMAIL_ADDRESS"
EMAIL_ADDRESS
"NAME"
NAME

ObjectTypeFieldMap

ObjectTypeKey

FieldNames List<string>

The reference for the key name of the fields map.

StandardIdentifiers List<Pulumi.AwsNative.CustomerProfiles.ObjectTypeKeyStandardIdentifiersItem>

The types of keys that a ProfileObject can have. Each ProfileObject can have only 1 UNIQUE key but multiple PROFILE keys. PROFILE means that this key can be used to tie an object to a PROFILE. UNIQUE means that it can be used to uniquely identify an object. If a key a is marked as SECONDARY, it will be used to search for profiles after all other PROFILE keys have been searched. A LOOKUP_ONLY key is only used to match a profile but is not persisted to be used for searching of the profile. A NEW_ONLY key is only used if the profile does not already exist before the object is ingested, otherwise it is only used for matching objects to profiles.

FieldNames []string

The reference for the key name of the fields map.

StandardIdentifiers []ObjectTypeKeyStandardIdentifiersItem

The types of keys that a ProfileObject can have. Each ProfileObject can have only 1 UNIQUE key but multiple PROFILE keys. PROFILE means that this key can be used to tie an object to a PROFILE. UNIQUE means that it can be used to uniquely identify an object. If a key a is marked as SECONDARY, it will be used to search for profiles after all other PROFILE keys have been searched. A LOOKUP_ONLY key is only used to match a profile but is not persisted to be used for searching of the profile. A NEW_ONLY key is only used if the profile does not already exist before the object is ingested, otherwise it is only used for matching objects to profiles.

fieldNames List<String>

The reference for the key name of the fields map.

standardIdentifiers List<ObjectTypeKeyStandardIdentifiersItem>

The types of keys that a ProfileObject can have. Each ProfileObject can have only 1 UNIQUE key but multiple PROFILE keys. PROFILE means that this key can be used to tie an object to a PROFILE. UNIQUE means that it can be used to uniquely identify an object. If a key a is marked as SECONDARY, it will be used to search for profiles after all other PROFILE keys have been searched. A LOOKUP_ONLY key is only used to match a profile but is not persisted to be used for searching of the profile. A NEW_ONLY key is only used if the profile does not already exist before the object is ingested, otherwise it is only used for matching objects to profiles.

fieldNames string[]

The reference for the key name of the fields map.

standardIdentifiers ObjectTypeKeyStandardIdentifiersItem[]

The types of keys that a ProfileObject can have. Each ProfileObject can have only 1 UNIQUE key but multiple PROFILE keys. PROFILE means that this key can be used to tie an object to a PROFILE. UNIQUE means that it can be used to uniquely identify an object. If a key a is marked as SECONDARY, it will be used to search for profiles after all other PROFILE keys have been searched. A LOOKUP_ONLY key is only used to match a profile but is not persisted to be used for searching of the profile. A NEW_ONLY key is only used if the profile does not already exist before the object is ingested, otherwise it is only used for matching objects to profiles.

field_names Sequence[str]

The reference for the key name of the fields map.

standard_identifiers Sequence[ObjectTypeKeyStandardIdentifiersItem]

The types of keys that a ProfileObject can have. Each ProfileObject can have only 1 UNIQUE key but multiple PROFILE keys. PROFILE means that this key can be used to tie an object to a PROFILE. UNIQUE means that it can be used to uniquely identify an object. If a key a is marked as SECONDARY, it will be used to search for profiles after all other PROFILE keys have been searched. A LOOKUP_ONLY key is only used to match a profile but is not persisted to be used for searching of the profile. A NEW_ONLY key is only used if the profile does not already exist before the object is ingested, otherwise it is only used for matching objects to profiles.

fieldNames List<String>

The reference for the key name of the fields map.

standardIdentifiers List<"PROFILE" | "UNIQUE" | "SECONDARY" | "LOOKUP_ONLY" | "NEW_ONLY">

The types of keys that a ProfileObject can have. Each ProfileObject can have only 1 UNIQUE key but multiple PROFILE keys. PROFILE means that this key can be used to tie an object to a PROFILE. UNIQUE means that it can be used to uniquely identify an object. If a key a is marked as SECONDARY, it will be used to search for profiles after all other PROFILE keys have been searched. A LOOKUP_ONLY key is only used to match a profile but is not persisted to be used for searching of the profile. A NEW_ONLY key is only used if the profile does not already exist before the object is ingested, otherwise it is only used for matching objects to profiles.

ObjectTypeKeyMap

ObjectTypeKeyStandardIdentifiersItem

Profile
PROFILE
Unique
UNIQUE
Secondary
SECONDARY
LookupOnly
LOOKUP_ONLY
NewOnly
NEW_ONLY
ObjectTypeKeyStandardIdentifiersItemProfile
PROFILE
ObjectTypeKeyStandardIdentifiersItemUnique
UNIQUE
ObjectTypeKeyStandardIdentifiersItemSecondary
SECONDARY
ObjectTypeKeyStandardIdentifiersItemLookupOnly
LOOKUP_ONLY
ObjectTypeKeyStandardIdentifiersItemNewOnly
NEW_ONLY
Profile
PROFILE
Unique
UNIQUE
Secondary
SECONDARY
LookupOnly
LOOKUP_ONLY
NewOnly
NEW_ONLY
Profile
PROFILE
Unique
UNIQUE
Secondary
SECONDARY
LookupOnly
LOOKUP_ONLY
NewOnly
NEW_ONLY
PROFILE
PROFILE
UNIQUE
UNIQUE
SECONDARY
SECONDARY
LOOKUP_ONLY
LOOKUP_ONLY
NEW_ONLY
NEW_ONLY
"PROFILE"
PROFILE
"UNIQUE"
UNIQUE
"SECONDARY"
SECONDARY
"LOOKUP_ONLY"
LOOKUP_ONLY
"NEW_ONLY"
NEW_ONLY

ObjectTypeTag

Key string
Value string
Key string
Value string
key String
value String
key string
value string
key str
value str
key String
value String

Package Details

Repository
https://github.com/pulumi/pulumi-aws-native
License
Apache-2.0