AWS::CustomerProfiles::ObjectType
Specifies an Amazon Connect Customer Profiles Object Type Mapping.
Syntax
To declare this entity in your AWS CloudFormation template, use the following syntax:
JSON
{ "Type" : "AWS::CustomerProfiles::ObjectType", "Properties" : { "AllowProfileCreation" :
Boolean
, "Description" :String
, "DomainName" :String
, "EncryptionKey" :String
, "ExpirationDays" :Integer
, "Fields" :[ FieldMap, ... ]
, "Keys" :[ KeyMap, ... ]
, "ObjectTypeName" :String
, "SourceLastUpdatedTimestampFormat" :String
, "Tags" :[ Tag, ... ]
, "TemplateId" :String
} }
YAML
Type: AWS::CustomerProfiles::ObjectType Properties: AllowProfileCreation:
Boolean
Description:String
DomainName:String
EncryptionKey:String
ExpirationDays:Integer
Fields:- FieldMap
Keys:- KeyMap
ObjectTypeName:String
SourceLastUpdatedTimestampFormat:String
Tags:- Tag
TemplateId:String
Properties
AllowProfileCreation
-
Indicates whether a profile should be created when data is received if one doesn’t exist for an object of this type. The default is
FALSE
. If the AllowProfileCreation flag is set toFALSE
, then the service tries to fetch a standard profile and associate this object with the profile. If it is set toTRUE
, and if no match is found, then the service creates a new standard profile.Required: No
Type: Boolean
Update requires: No interruption
Description
-
The description of the profile object type mapping.
Required: Yes
Type: String
Minimum:
1
Maximum:
1000
Update requires: No interruption
DomainName
-
The unique name of the domain.
Required: Yes
Type: String
Pattern:
^[a-zA-Z0-9_-]+$
Minimum:
1
Maximum:
64
Update requires: Replacement
EncryptionKey
-
The customer-provided key to encrypt the profile object that will be created in this profile object type mapping. If not specified the system will use the encryption key of the domain.
Required: No
Type: String
Minimum:
0
Maximum:
255
Update requires: No interruption
ExpirationDays
-
The number of days until the data of this type expires.
Required: No
Type: Integer
Minimum:
1
Maximum:
1098
Update requires: No interruption
Fields
-
A list of field definitions for the object type mapping.
Required: No
Type: Array of FieldMap
Update requires: No interruption
Keys
-
A list of keys that can be used to map data to the profile or search for the profile.
Required: No
Type: Array of KeyMap
Update requires: No interruption
ObjectTypeName
-
The name of the profile object type.
Required: Yes
Type: String
Pattern:
^[a-zA-Z_][a-zA-Z_0-9-]*$
Minimum:
1
Maximum:
255
Update requires: Replacement
SourceLastUpdatedTimestampFormat
-
The format of your sourceLastUpdatedTimestamp that was previously set up.
Required: No
Type: String
Minimum:
1
Maximum:
255
Update requires: No interruption
-
The tags used to organize, track, or control access for this resource.
Required: No
Type: Array of Tag
Minimum:
0
Maximum:
50
Update requires: No interruption
TemplateId
-
A unique identifier for the template mapping. This can be used instead of specifying the Keys and Fields properties directly.
Required: No
Type: String
Pattern:
^[a-zA-Z0-9_-]+$
Minimum:
1
Maximum:
64
Update requires: No interruption
Return values
Ref
When you pass the logical ID of this resource to the intrinsic Ref
function, Ref
returns the DomainName and the ObjectTypeName of the object
type.
For more information about using the Ref
function, see Ref
.
Fn::GetAtt
The Fn::GetAtt
intrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.
For more information about using the Fn::GetAtt
intrinsic function, see Fn::GetAtt
.
CreatedAt
-
The timestamp of when the object type was created.
LastUpdatedAt
-
The timestamp of when the object type was most recently edited.
Examples
The following example creates a object type if Domain existed.
YAML
Type: "AWS::CustomerProfiles::ObjectType" Properties: DomainName: "ExampleDomain" ObjectTypeName: "ExampleObjectType" AllowProfileCreation: false Description: "Description Example" ExpirationDays: 1 Fields: - Name: "email" ObjectTypeField: Source: "_source.email" Target: "_profile.BusinessEmail" ContentType: "EMAIL_ADDRESS" Keys: - Name: "_email" ObjectTypeKeyList: - FieldNames: - "email" StandardIdentifiers: - "PROFILE" - "UNIQUE"
JSON
"Type": "AWS::CustomerProfiles::ObjectType", "Properties": { "DomainName": "ExampleDomain", "ObjectTypeName": "ExampleObjectType", "AllowProfileCreation": false, "Description": "Description Example", "ExpirationDays": 1, "Fields": [{ "Name": "email", "ObjectTypeField": { "Source": "_source.email", "Target": "_profile.BusinessEmail", "ContentType": "EMAIL_ADDRESS" } }], "Keys": [{ "Name": "_email", "ObjectTypeKeyList": [{ "FieldNames": [ "email" ], "StandardIdentifiers": [ "PROFILE", "UNIQUE" ] }] }] }