Amazon Connect Customer Profiles 2020-08-15
- Client: Aws\CustomerProfiles\CustomerProfilesClient
- Service ID: customer-profiles
- Version: 2020-08-15
This page describes the parameters and results for the operations of the Amazon Connect Customer Profiles (2020-08-15), and shows how to use the Aws\CustomerProfiles\CustomerProfilesClient object to call the described operations. This documentation is specific to the 2020-08-15 API version of the service.
Operation Summary
Each of the following operations can be created from a client using
$client->getCommand('CommandName')
, where "CommandName" is the
name of one of the following operations. Note: a command is a value that
encapsulates an operation and the parameters used to create an HTTP request.
You can also create and send a command immediately using the magic methods
available on a client object: $client->commandName(/* parameters */)
.
You can send the command asynchronously (returning a promise) by appending the
word "Async" to the operation name: $client->commandNameAsync(/* parameters */)
.
- AddProfileKey ( array $params = [] )
- Associates a new key value with a specific profile, such as a Contact Record ContactId.
- CreateCalculatedAttributeDefinition ( array $params = [] )
- Creates a new calculated attribute definition.
- CreateDomain ( array $params = [] )
- Creates a domain, which is a container for all customer data, such as customer profile attributes, object types, profile keys, and encryption keys.
- CreateEventStream ( array $params = [] )
- Creates an event stream, which is a subscription to real-time events, such as when profiles are created and updated through Amazon Connect Customer Profiles.
- CreateIntegrationWorkflow ( array $params = [] )
- Creates an integration workflow.
- CreateProfile ( array $params = [] )
- Creates a standard profile.
- DeleteCalculatedAttributeDefinition ( array $params = [] )
- Deletes an existing calculated attribute definition.
- DeleteDomain ( array $params = [] )
- Deletes a specific domain and all of its customer data, such as customer profile attributes and their related objects.
- DeleteEventStream ( array $params = [] )
- Disables and deletes the specified event stream.
- DeleteIntegration ( array $params = [] )
- Removes an integration from a specific domain.
- DeleteProfile ( array $params = [] )
- Deletes the standard customer profile and all data pertaining to the profile.
- DeleteProfileKey ( array $params = [] )
- Removes a searchable key from a customer profile.
- DeleteProfileObject ( array $params = [] )
- Removes an object associated with a profile of a given ProfileObjectType.
- DeleteProfileObjectType ( array $params = [] )
- Removes a ProfileObjectType from a specific domain as well as removes all the ProfileObjects of that type.
- DeleteWorkflow ( array $params = [] )
- Deletes the specified workflow and all its corresponding resources.
- DetectProfileObjectType ( array $params = [] )
- The process of detecting profile object type mapping by using given objects.
- GetAutoMergingPreview ( array $params = [] )
- Tests the auto-merging settings of your Identity Resolution Job without merging your data.
- GetCalculatedAttributeDefinition ( array $params = [] )
- Provides more information on a calculated attribute definition for Customer Profiles.
- GetCalculatedAttributeForProfile ( array $params = [] )
- Retrieve a calculated attribute for a customer profile.
- GetDomain ( array $params = [] )
- Returns information about a specific domain.
- GetEventStream ( array $params = [] )
- Returns information about the specified event stream in a specific domain.
- GetIdentityResolutionJob ( array $params = [] )
- Returns information about an Identity Resolution Job in a specific domain.
- GetIntegration ( array $params = [] )
- Returns an integration for a domain.
- GetMatches ( array $params = [] )
- Before calling this API, use CreateDomain or UpdateDomain to enable identity resolution: set Matching to true.
- GetProfileObjectType ( array $params = [] )
- Returns the object types for a specific domain.
- GetProfileObjectTypeTemplate ( array $params = [] )
- Returns the template information for a specific object type.
- GetSimilarProfiles ( array $params = [] )
- Returns a set of profiles that belong to the same matching group using the matchId or profileId.
- GetWorkflow ( array $params = [] )
- Get details of specified workflow.
- GetWorkflowSteps ( array $params = [] )
- Get granular list of steps in workflow.
- ListAccountIntegrations ( array $params = [] )
- Lists all of the integrations associated to a specific URI in the AWS account.
- ListCalculatedAttributeDefinitions ( array $params = [] )
- Lists calculated attribute definitions for Customer Profiles
- ListCalculatedAttributesForProfile ( array $params = [] )
- Retrieve a list of calculated attributes for a customer profile.
- ListDomains ( array $params = [] )
- Returns a list of all the domains for an AWS account that have been created.
- ListEventStreams ( array $params = [] )
- Returns a list of all the event streams in a specific domain.
- ListIdentityResolutionJobs ( array $params = [] )
- Lists all of the Identity Resolution Jobs in your domain.
- ListIntegrations ( array $params = [] )
- Lists all of the integrations in your domain.
- ListProfileObjectTypeTemplates ( array $params = [] )
- Lists all of the template information for object types.
- ListProfileObjectTypes ( array $params = [] )
- Lists all of the templates available within the service.
- ListProfileObjects ( array $params = [] )
- Returns a list of objects associated with a profile of a given ProfileObjectType.
- ListRuleBasedMatches ( array $params = [] )
- Returns a set of MatchIds that belong to the given domain.
- ListTagsForResource ( array $params = [] )
- Displays the tags associated with an Amazon Connect Customer Profiles resource.
- ListWorkflows ( array $params = [] )
- Query to list all workflows.
- MergeProfiles ( array $params = [] )
- Runs an AWS Lambda job that does the following: All the profileKeys in the ProfileToBeMerged will be moved to the main profile.
- PutIntegration ( array $params = [] )
- Adds an integration between the service and a third-party service, which includes Amazon AppFlow and Amazon Connect.
- PutProfileObject ( array $params = [] )
- Adds additional objects to customer profiles of a given ObjectType.
- PutProfileObjectType ( array $params = [] )
- Defines a ProfileObjectType.
- SearchProfiles ( array $params = [] )
- Searches for profiles within a specific domain using one or more predefined search keys (e.
- TagResource ( array $params = [] )
- Assigns one or more tags (key-value pairs) to the specified Amazon Connect Customer Profiles resource.
- UntagResource ( array $params = [] )
- Removes one or more tags from the specified Amazon Connect Customer Profiles resource.
- UpdateCalculatedAttributeDefinition ( array $params = [] )
- Updates an existing calculated attribute definition.
- UpdateDomain ( array $params = [] )
- Updates the properties of a domain, including creating or selecting a dead letter queue or an encryption key.
- UpdateProfile ( array $params = [] )
- Updates the properties of a profile.
Paginators
Paginators handle automatically iterating over paginated API results. Paginators are associated with specific API operations, and they accept the parameters that the corresponding API operation accepts. You can get a paginator from a client class using getPaginator($paginatorName, $operationParameters). This client supports the following paginators:
Operations
AddProfileKey
$result = $client->addProfileKey
([/* ... */]); $promise = $client->addProfileKeyAsync
([/* ... */]);
Associates a new key value with a specific profile, such as a Contact Record ContactId.
A profile object can have a single unique key and any number of additional keys that can be used to identify the profile that it belongs to.
Parameter Syntax
$result = $client->addProfileKey([ 'DomainName' => '<string>', // REQUIRED 'KeyName' => '<string>', // REQUIRED 'ProfileId' => '<string>', // REQUIRED 'Values' => ['<string>', ...], // REQUIRED ]);
Parameter Details
Members
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- KeyName
-
- Required: Yes
- Type: string
A searchable identifier of a customer profile. The predefined keys you can use include: _account, _profileId, _assetId, _caseId, _orderId, _fullName, _phone, _email, _ctrContactId, _marketoLeadId, _salesforceAccountId, _salesforceContactId, _salesforceAssetId, _zendeskUserId, _zendeskExternalId, _zendeskTicketId, _serviceNowSystemId, _serviceNowIncidentId, _segmentUserId, _shopifyCustomerId, _shopifyOrderId.
- ProfileId
-
- Required: Yes
- Type: string
The unique identifier of a customer profile.
- Values
-
- Required: Yes
- Type: Array of strings
A list of key values.
Result Syntax
[ 'KeyName' => '<string>', 'Values' => ['<string>', ...], ]
Result Details
Members
- KeyName
-
- Type: string
A searchable identifier of a customer profile.
- Values
-
- Type: Array of strings
A list of key values.
Errors
- BadRequestException:
The input you provided is invalid.
- AccessDeniedException:
You do not have sufficient access to perform this action.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
- ThrottlingException:
You exceeded the maximum number of requests.
- InternalServerException:
An internal service error occurred.
CreateCalculatedAttributeDefinition
$result = $client->createCalculatedAttributeDefinition
([/* ... */]); $promise = $client->createCalculatedAttributeDefinitionAsync
([/* ... */]);
Creates a new calculated attribute definition. After creation, new object data ingested into Customer Profiles will be included in the calculated attribute, which can be retrieved for a profile using the GetCalculatedAttributeForProfile API. Defining a calculated attribute makes it available for all profiles within a domain. Each calculated attribute can only reference one ObjectType
and at most, two fields from that ObjectType
.
Parameter Syntax
$result = $client->createCalculatedAttributeDefinition([ 'AttributeDetails' => [ // REQUIRED 'Attributes' => [ // REQUIRED [ 'Name' => '<string>', // REQUIRED ], // ... ], 'Expression' => '<string>', // REQUIRED ], 'CalculatedAttributeName' => '<string>', // REQUIRED 'Conditions' => [ 'ObjectCount' => <integer>, 'Range' => [ 'Unit' => 'DAYS', // REQUIRED 'Value' => <integer>, // REQUIRED ], 'Threshold' => [ 'Operator' => 'EQUAL_TO|GREATER_THAN|LESS_THAN|NOT_EQUAL_TO', // REQUIRED 'Value' => '<string>', // REQUIRED ], ], 'Description' => '<string>', 'DisplayName' => '<string>', 'DomainName' => '<string>', // REQUIRED 'Statistic' => 'FIRST_OCCURRENCE|LAST_OCCURRENCE|COUNT|SUM|MINIMUM|MAXIMUM|AVERAGE|MAX_OCCURRENCE', // REQUIRED 'Tags' => ['<string>', ...], ]);
Parameter Details
Members
- AttributeDetails
-
- Required: Yes
- Type: AttributeDetails structure
Mathematical expression and a list of attribute items specified in that expression.
- CalculatedAttributeName
-
- Required: Yes
- Type: string
The unique name of the calculated attribute.
- Conditions
-
- Type: Conditions structure
The conditions including range, object count, and threshold for the calculated attribute.
- Description
-
- Type: string
The description of the calculated attribute.
- DisplayName
-
- Type: string
The display name of the calculated attribute.
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- Statistic
-
- Required: Yes
- Type: string
The aggregation operation to perform for the calculated attribute.
- Tags
-
- Type: Associative array of custom strings keys (TagKey) to strings
The tags used to organize, track, or control access for this resource.
Result Syntax
[ 'AttributeDetails' => [ 'Attributes' => [ [ 'Name' => '<string>', ], // ... ], 'Expression' => '<string>', ], 'CalculatedAttributeName' => '<string>', 'Conditions' => [ 'ObjectCount' => <integer>, 'Range' => [ 'Unit' => 'DAYS', 'Value' => <integer>, ], 'Threshold' => [ 'Operator' => 'EQUAL_TO|GREATER_THAN|LESS_THAN|NOT_EQUAL_TO', 'Value' => '<string>', ], ], 'CreatedAt' => <DateTime>, 'Description' => '<string>', 'DisplayName' => '<string>', 'LastUpdatedAt' => <DateTime>, 'Statistic' => 'FIRST_OCCURRENCE|LAST_OCCURRENCE|COUNT|SUM|MINIMUM|MAXIMUM|AVERAGE|MAX_OCCURRENCE', 'Tags' => ['<string>', ...], ]
Result Details
Members
- AttributeDetails
-
- Type: AttributeDetails structure
Mathematical expression and a list of attribute items specified in that expression.
- CalculatedAttributeName
-
- Type: string
The unique name of the calculated attribute.
- Conditions
-
- Type: Conditions structure
The conditions including range, object count, and threshold for the calculated attribute.
- CreatedAt
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp of when the calculated attribute definition was created.
- Description
-
- Type: string
The description of the calculated attribute.
- DisplayName
-
- Type: string
The display name of the calculated attribute.
- LastUpdatedAt
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp of when the calculated attribute definition was most recently edited.
- Statistic
-
- Type: string
The aggregation operation to perform for the calculated attribute.
- Tags
-
- Type: Associative array of custom strings keys (TagKey) to strings
The tags used to organize, track, or control access for this resource.
Errors
- BadRequestException:
The input you provided is invalid.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
- AccessDeniedException:
You do not have sufficient access to perform this action.
- ThrottlingException:
You exceeded the maximum number of requests.
- InternalServerException:
An internal service error occurred.
CreateDomain
$result = $client->createDomain
([/* ... */]); $promise = $client->createDomainAsync
([/* ... */]);
Creates a domain, which is a container for all customer data, such as customer profile attributes, object types, profile keys, and encryption keys. You can create multiple domains, and each domain can have multiple third-party integrations.
Each Amazon Connect instance can be associated with only one domain. Multiple Amazon Connect instances can be associated with one domain.
Use this API or UpdateDomain to enable identity resolution: set Matching
to true.
To prevent cross-service impersonation when you call this API, see Cross-service confused deputy prevention for sample policies that you should apply.
It is not possible to associate a Customer Profiles domain with an Amazon Connect Instance directly from the API. If you would like to create a domain and associate a Customer Profiles domain, use the Amazon Connect admin website. For more information, see Enable Customer Profiles.
Each Amazon Connect instance can be associated with only one domain. Multiple Amazon Connect instances can be associated with one domain.
Parameter Syntax
$result = $client->createDomain([ 'DeadLetterQueueUrl' => '<string>', 'DefaultEncryptionKey' => '<string>', 'DefaultExpirationDays' => <integer>, // REQUIRED 'DomainName' => '<string>', // REQUIRED 'Matching' => [ 'AutoMerging' => [ 'ConflictResolution' => [ 'ConflictResolvingModel' => 'RECENCY|SOURCE', // REQUIRED 'SourceName' => '<string>', ], 'Consolidation' => [ 'MatchingAttributesList' => [ // REQUIRED ['<string>', ...], // ... ], ], 'Enabled' => true || false, // REQUIRED 'MinAllowedConfidenceScoreForMerging' => <float>, ], 'Enabled' => true || false, // REQUIRED 'ExportingConfig' => [ 'S3Exporting' => [ 'S3BucketName' => '<string>', // REQUIRED 'S3KeyName' => '<string>', ], ], 'JobSchedule' => [ 'DayOfTheWeek' => 'SUNDAY|MONDAY|TUESDAY|WEDNESDAY|THURSDAY|FRIDAY|SATURDAY', // REQUIRED 'Time' => '<string>', // REQUIRED ], ], 'RuleBasedMatching' => [ 'AttributeTypesSelector' => [ 'Address' => ['<string>', ...], 'AttributeMatchingModel' => 'ONE_TO_ONE|MANY_TO_MANY', // REQUIRED 'EmailAddress' => ['<string>', ...], 'PhoneNumber' => ['<string>', ...], ], 'ConflictResolution' => [ 'ConflictResolvingModel' => 'RECENCY|SOURCE', // REQUIRED 'SourceName' => '<string>', ], 'Enabled' => true || false, // REQUIRED 'ExportingConfig' => [ 'S3Exporting' => [ 'S3BucketName' => '<string>', // REQUIRED 'S3KeyName' => '<string>', ], ], 'MatchingRules' => [ [ 'Rule' => ['<string>', ...], // REQUIRED ], // ... ], 'MaxAllowedRuleLevelForMatching' => <integer>, 'MaxAllowedRuleLevelForMerging' => <integer>, ], 'Tags' => ['<string>', ...], ]);
Parameter Details
Members
- DeadLetterQueueUrl
-
- Type: string
The URL of the SQS dead letter queue, which is used for reporting errors associated with ingesting data from third party applications. You must set up a policy on the DeadLetterQueue for the SendMessage operation to enable Amazon Connect Customer Profiles to send messages to the DeadLetterQueue.
- DefaultEncryptionKey
-
- Type: 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
-
- Required: Yes
- Type: int
The default number of days until the data within the domain expires.
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- Matching
-
- Type: MatchingRequest structure
The process of matching duplicate profiles. If
Matching
=true
, Amazon Connect Customer Profiles starts a weekly batch process called Identity Resolution Job. If you do not specify a date and time for Identity Resolution Job to run, by default it runs every Saturday at 12AM UTC to detect duplicate profiles in your domains.After the Identity Resolution Job completes, use the GetMatches API to return and review the results. Or, if you have configured
ExportingConfig
in theMatchingRequest
, you can download the results from S3. - RuleBasedMatching
-
- Type: RuleBasedMatchingRequest structure
The process of matching duplicate profiles using the Rule-Based matching. If
RuleBasedMatching
= true, Amazon Connect Customer Profiles will start to match and merge your profiles according to your configuration in theRuleBasedMatchingRequest
. You can use theListRuleBasedMatches
andGetSimilarProfiles
API to return and review the results. Also, if you have configuredExportingConfig
in theRuleBasedMatchingRequest
, you can download the results from S3. - Tags
-
- Type: Associative array of custom strings keys (TagKey) to strings
The tags used to organize, track, or control access for this resource.
Result Syntax
[ 'CreatedAt' => <DateTime>, 'DeadLetterQueueUrl' => '<string>', 'DefaultEncryptionKey' => '<string>', 'DefaultExpirationDays' => <integer>, 'DomainName' => '<string>', 'LastUpdatedAt' => <DateTime>, 'Matching' => [ 'AutoMerging' => [ 'ConflictResolution' => [ 'ConflictResolvingModel' => 'RECENCY|SOURCE', 'SourceName' => '<string>', ], 'Consolidation' => [ 'MatchingAttributesList' => [ ['<string>', ...], // ... ], ], 'Enabled' => true || false, 'MinAllowedConfidenceScoreForMerging' => <float>, ], 'Enabled' => true || false, 'ExportingConfig' => [ 'S3Exporting' => [ 'S3BucketName' => '<string>', 'S3KeyName' => '<string>', ], ], 'JobSchedule' => [ 'DayOfTheWeek' => 'SUNDAY|MONDAY|TUESDAY|WEDNESDAY|THURSDAY|FRIDAY|SATURDAY', 'Time' => '<string>', ], ], 'RuleBasedMatching' => [ 'AttributeTypesSelector' => [ 'Address' => ['<string>', ...], 'AttributeMatchingModel' => 'ONE_TO_ONE|MANY_TO_MANY', 'EmailAddress' => ['<string>', ...], 'PhoneNumber' => ['<string>', ...], ], 'ConflictResolution' => [ 'ConflictResolvingModel' => 'RECENCY|SOURCE', 'SourceName' => '<string>', ], 'Enabled' => true || false, 'ExportingConfig' => [ 'S3Exporting' => [ 'S3BucketName' => '<string>', 'S3KeyName' => '<string>', ], ], 'MatchingRules' => [ [ 'Rule' => ['<string>', ...], ], // ... ], 'MaxAllowedRuleLevelForMatching' => <integer>, 'MaxAllowedRuleLevelForMerging' => <integer>, 'Status' => 'PENDING|IN_PROGRESS|ACTIVE', ], 'Tags' => ['<string>', ...], ]
Result Details
Members
- CreatedAt
-
- Required: Yes
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp of when the domain was created.
- DeadLetterQueueUrl
-
- Type: string
The URL of the SQS dead letter queue, which is used for reporting errors associated with ingesting data from third party applications.
- DefaultEncryptionKey
-
- Type: 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
-
- Required: Yes
- Type: int
The default number of days until the data within the domain expires.
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- LastUpdatedAt
-
- Required: Yes
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp of when the domain was most recently edited.
- Matching
-
- Type: MatchingResponse structure
The process of matching duplicate profiles. If
Matching
=true
, Amazon Connect Customer Profiles starts a weekly batch process called Identity Resolution Job. If you do not specify a date and time for Identity Resolution Job to run, by default it runs every Saturday at 12AM UTC to detect duplicate profiles in your domains.After the Identity Resolution Job completes, use the GetMatches API to return and review the results. Or, if you have configured
ExportingConfig
in theMatchingRequest
, you can download the results from S3. - RuleBasedMatching
-
- Type: RuleBasedMatchingResponse structure
The process of matching duplicate profiles using the Rule-Based matching. If
RuleBasedMatching
= true, Amazon Connect Customer Profiles will start to match and merge your profiles according to your configuration in theRuleBasedMatchingRequest
. You can use theListRuleBasedMatches
andGetSimilarProfiles
API to return and review the results. Also, if you have configuredExportingConfig
in theRuleBasedMatchingRequest
, you can download the results from S3. - Tags
-
- Type: Associative array of custom strings keys (TagKey) to strings
The tags used to organize, track, or control access for this resource.
Errors
- BadRequestException:
The input you provided is invalid.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
- AccessDeniedException:
You do not have sufficient access to perform this action.
- ThrottlingException:
You exceeded the maximum number of requests.
- InternalServerException:
An internal service error occurred.
CreateEventStream
$result = $client->createEventStream
([/* ... */]); $promise = $client->createEventStreamAsync
([/* ... */]);
Creates an event stream, which is a subscription to real-time events, such as when profiles are created and updated through Amazon Connect Customer Profiles.
Each event stream can be associated with only one Kinesis Data Stream destination in the same region and Amazon Web Services account as the customer profiles domain
Parameter Syntax
$result = $client->createEventStream([ 'DomainName' => '<string>', // REQUIRED 'EventStreamName' => '<string>', // REQUIRED 'Tags' => ['<string>', ...], 'Uri' => '<string>', // REQUIRED ]);
Parameter Details
Members
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- EventStreamName
-
- Required: Yes
- Type: string
The name of the event stream.
- Tags
-
- Type: Associative array of custom strings keys (TagKey) to strings
The tags used to organize, track, or control access for this resource.
- Uri
-
- Required: Yes
- Type: string
The StreamARN of the destination to deliver profile events to. For example, arn:aws:kinesis:region:account-id:stream/stream-name
Result Syntax
[ 'EventStreamArn' => '<string>', 'Tags' => ['<string>', ...], ]
Result Details
Members
- EventStreamArn
-
- Required: Yes
- Type: string
A unique identifier for the event stream.
- Tags
-
- Type: Associative array of custom strings keys (TagKey) to strings
The tags used to organize, track, or control access for this resource.
Errors
- BadRequestException:
The input you provided is invalid.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
- AccessDeniedException:
You do not have sufficient access to perform this action.
- ThrottlingException:
You exceeded the maximum number of requests.
- InternalServerException:
An internal service error occurred.
CreateIntegrationWorkflow
$result = $client->createIntegrationWorkflow
([/* ... */]); $promise = $client->createIntegrationWorkflowAsync
([/* ... */]);
Creates an integration workflow. An integration workflow is an async process which ingests historic data and sets up an integration for ongoing updates. The supported Amazon AppFlow sources are Salesforce, ServiceNow, and Marketo.
Parameter Syntax
$result = $client->createIntegrationWorkflow([ 'DomainName' => '<string>', // REQUIRED 'IntegrationConfig' => [ // REQUIRED 'AppflowIntegration' => [ 'Batches' => [ [ 'EndTime' => <integer || string || DateTime>, // REQUIRED 'StartTime' => <integer || string || DateTime>, // REQUIRED ], // ... ], 'FlowDefinition' => [ // REQUIRED 'Description' => '<string>', 'FlowName' => '<string>', // REQUIRED 'KmsArn' => '<string>', // REQUIRED 'SourceFlowConfig' => [ // REQUIRED 'ConnectorProfileName' => '<string>', 'ConnectorType' => 'Salesforce|Marketo|Zendesk|Servicenow|S3', // REQUIRED 'IncrementalPullConfig' => [ 'DatetimeTypeFieldName' => '<string>', ], 'SourceConnectorProperties' => [ // REQUIRED 'Marketo' => [ 'Object' => '<string>', // REQUIRED ], 'S3' => [ 'BucketName' => '<string>', // REQUIRED 'BucketPrefix' => '<string>', ], 'Salesforce' => [ 'EnableDynamicFieldUpdate' => true || false, 'IncludeDeletedRecords' => true || false, 'Object' => '<string>', // REQUIRED ], 'ServiceNow' => [ 'Object' => '<string>', // REQUIRED ], 'Zendesk' => [ 'Object' => '<string>', // REQUIRED ], ], ], 'Tasks' => [ // REQUIRED [ 'ConnectorOperator' => [ 'Marketo' => 'PROJECTION|LESS_THAN|GREATER_THAN|BETWEEN|ADDITION|MULTIPLICATION|DIVISION|SUBTRACTION|MASK_ALL|MASK_FIRST_N|MASK_LAST_N|VALIDATE_NON_NULL|VALIDATE_NON_ZERO|VALIDATE_NON_NEGATIVE|VALIDATE_NUMERIC|NO_OP', 'S3' => 'PROJECTION|LESS_THAN|GREATER_THAN|BETWEEN|LESS_THAN_OR_EQUAL_TO|GREATER_THAN_OR_EQUAL_TO|EQUAL_TO|NOT_EQUAL_TO|ADDITION|MULTIPLICATION|DIVISION|SUBTRACTION|MASK_ALL|MASK_FIRST_N|MASK_LAST_N|VALIDATE_NON_NULL|VALIDATE_NON_ZERO|VALIDATE_NON_NEGATIVE|VALIDATE_NUMERIC|NO_OP', 'Salesforce' => 'PROJECTION|LESS_THAN|CONTAINS|GREATER_THAN|BETWEEN|LESS_THAN_OR_EQUAL_TO|GREATER_THAN_OR_EQUAL_TO|EQUAL_TO|NOT_EQUAL_TO|ADDITION|MULTIPLICATION|DIVISION|SUBTRACTION|MASK_ALL|MASK_FIRST_N|MASK_LAST_N|VALIDATE_NON_NULL|VALIDATE_NON_ZERO|VALIDATE_NON_NEGATIVE|VALIDATE_NUMERIC|NO_OP', 'ServiceNow' => 'PROJECTION|CONTAINS|LESS_THAN|GREATER_THAN|BETWEEN|LESS_THAN_OR_EQUAL_TO|GREATER_THAN_OR_EQUAL_TO|EQUAL_TO|NOT_EQUAL_TO|ADDITION|MULTIPLICATION|DIVISION|SUBTRACTION|MASK_ALL|MASK_FIRST_N|MASK_LAST_N|VALIDATE_NON_NULL|VALIDATE_NON_ZERO|VALIDATE_NON_NEGATIVE|VALIDATE_NUMERIC|NO_OP', 'Zendesk' => 'PROJECTION|GREATER_THAN|ADDITION|MULTIPLICATION|DIVISION|SUBTRACTION|MASK_ALL|MASK_FIRST_N|MASK_LAST_N|VALIDATE_NON_NULL|VALIDATE_NON_ZERO|VALIDATE_NON_NEGATIVE|VALIDATE_NUMERIC|NO_OP', ], 'DestinationField' => '<string>', 'SourceFields' => ['<string>', ...], // REQUIRED 'TaskProperties' => ['<string>', ...], 'TaskType' => 'Arithmetic|Filter|Map|Mask|Merge|Truncate|Validate', // REQUIRED ], // ... ], 'TriggerConfig' => [ // REQUIRED 'TriggerProperties' => [ 'Scheduled' => [ 'DataPullMode' => 'Incremental|Complete', 'FirstExecutionFrom' => <integer || string || DateTime>, 'ScheduleEndTime' => <integer || string || DateTime>, 'ScheduleExpression' => '<string>', // REQUIRED 'ScheduleOffset' => <integer>, 'ScheduleStartTime' => <integer || string || DateTime>, 'Timezone' => '<string>', ], ], 'TriggerType' => 'Scheduled|Event|OnDemand', // REQUIRED ], ], ], ], 'ObjectTypeName' => '<string>', // REQUIRED 'RoleArn' => '<string>', // REQUIRED 'Tags' => ['<string>', ...], 'WorkflowType' => 'APPFLOW_INTEGRATION', // REQUIRED ]);
Parameter Details
Members
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- IntegrationConfig
-
- Required: Yes
- Type: IntegrationConfig structure
Configuration data for integration workflow.
- ObjectTypeName
-
- Required: Yes
- Type: string
The name of the profile object type.
- RoleArn
-
- Required: Yes
- Type: string
The Amazon Resource Name (ARN) of the IAM role. Customer Profiles assumes this role to create resources on your behalf as part of workflow execution.
- Tags
-
- Type: Associative array of custom strings keys (TagKey) to strings
The tags used to organize, track, or control access for this resource.
- WorkflowType
-
- Required: Yes
- Type: string
The type of workflow. The only supported value is APPFLOW_INTEGRATION.
Result Syntax
[ 'Message' => '<string>', 'WorkflowId' => '<string>', ]
Result Details
Members
- Message
-
- Required: Yes
- Type: string
A message indicating create request was received.
- WorkflowId
-
- Required: Yes
- Type: string
Unique identifier for the workflow.
Errors
- BadRequestException:
The input you provided is invalid.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
- AccessDeniedException:
You do not have sufficient access to perform this action.
- ThrottlingException:
You exceeded the maximum number of requests.
- InternalServerException:
An internal service error occurred.
CreateProfile
$result = $client->createProfile
([/* ... */]); $promise = $client->createProfileAsync
([/* ... */]);
Creates a standard profile.
A standard profile represents the following attributes for a customer profile in a domain.
Parameter Syntax
$result = $client->createProfile([ 'AccountNumber' => '<string>', 'AdditionalInformation' => '<string>', 'Address' => [ 'Address1' => '<string>', 'Address2' => '<string>', 'Address3' => '<string>', 'Address4' => '<string>', 'City' => '<string>', 'Country' => '<string>', 'County' => '<string>', 'PostalCode' => '<string>', 'Province' => '<string>', 'State' => '<string>', ], 'Attributes' => ['<string>', ...], 'BillingAddress' => [ 'Address1' => '<string>', 'Address2' => '<string>', 'Address3' => '<string>', 'Address4' => '<string>', 'City' => '<string>', 'Country' => '<string>', 'County' => '<string>', 'PostalCode' => '<string>', 'Province' => '<string>', 'State' => '<string>', ], 'BirthDate' => '<string>', 'BusinessEmailAddress' => '<string>', 'BusinessName' => '<string>', 'BusinessPhoneNumber' => '<string>', 'DomainName' => '<string>', // REQUIRED 'EmailAddress' => '<string>', 'FirstName' => '<string>', 'Gender' => 'MALE|FEMALE|UNSPECIFIED', 'GenderString' => '<string>', 'HomePhoneNumber' => '<string>', 'LastName' => '<string>', 'MailingAddress' => [ 'Address1' => '<string>', 'Address2' => '<string>', 'Address3' => '<string>', 'Address4' => '<string>', 'City' => '<string>', 'Country' => '<string>', 'County' => '<string>', 'PostalCode' => '<string>', 'Province' => '<string>', 'State' => '<string>', ], 'MiddleName' => '<string>', 'MobilePhoneNumber' => '<string>', 'PartyType' => 'INDIVIDUAL|BUSINESS|OTHER', 'PartyTypeString' => '<string>', 'PersonalEmailAddress' => '<string>', 'PhoneNumber' => '<string>', 'ShippingAddress' => [ 'Address1' => '<string>', 'Address2' => '<string>', 'Address3' => '<string>', 'Address4' => '<string>', 'City' => '<string>', 'Country' => '<string>', 'County' => '<string>', 'PostalCode' => '<string>', 'Province' => '<string>', 'State' => '<string>', ], ]);
Parameter Details
Members
- AccountNumber
-
- Type: string
An account number that you have given to the customer.
- AdditionalInformation
-
- Type: string
Any additional information relevant to the customer’s profile.
- Address
-
- Type: Address structure
A generic address associated with the customer that is not mailing, shipping, or billing.
- Attributes
-
- Type: Associative array of custom strings keys (string1To255) to strings
A key value pair of attributes of a customer profile.
- BillingAddress
-
- Type: Address structure
The customer’s billing address.
- BirthDate
-
- Type: string
The customer’s birth date.
- BusinessEmailAddress
-
- Type: string
The customer’s business email address.
- BusinessName
-
- Type: string
The name of the customer’s business.
- BusinessPhoneNumber
-
- Type: string
The customer’s business phone number.
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- EmailAddress
-
- Type: string
The customer’s email address, which has not been specified as a personal or business address.
- FirstName
-
- Type: string
The customer’s first name.
- Gender
-
- Type: string
The gender with which the customer identifies.
- GenderString
-
- Type: string
An alternative to
Gender
which accepts any string as input. - HomePhoneNumber
-
- Type: string
The customer’s home phone number.
- LastName
-
- Type: string
The customer’s last name.
- MailingAddress
-
- Type: Address structure
The customer’s mailing address.
- MiddleName
-
- Type: string
The customer’s middle name.
- MobilePhoneNumber
-
- Type: string
The customer’s mobile phone number.
- PartyType
-
- Type: string
The type of profile used to describe the customer.
- PartyTypeString
-
- Type: string
An alternative to
PartyType
which accepts any string as input. - PersonalEmailAddress
-
- Type: string
The customer’s personal email address.
- PhoneNumber
-
- Type: string
The customer’s phone number, which has not been specified as a mobile, home, or business number.
- ShippingAddress
-
- Type: Address structure
The customer’s shipping address.
Result Syntax
[ 'ProfileId' => '<string>', ]
Result Details
Members
- ProfileId
-
- Required: Yes
- Type: string
The unique identifier of a customer profile.
Errors
- BadRequestException:
The input you provided is invalid.
- AccessDeniedException:
You do not have sufficient access to perform this action.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
- ThrottlingException:
You exceeded the maximum number of requests.
- InternalServerException:
An internal service error occurred.
DeleteCalculatedAttributeDefinition
$result = $client->deleteCalculatedAttributeDefinition
([/* ... */]); $promise = $client->deleteCalculatedAttributeDefinitionAsync
([/* ... */]);
Deletes an existing calculated attribute definition. Note that deleting a default calculated attribute is possible, however once deleted, you will be unable to undo that action and will need to recreate it on your own using the CreateCalculatedAttributeDefinition API if you want it back.
Parameter Syntax
$result = $client->deleteCalculatedAttributeDefinition([ 'CalculatedAttributeName' => '<string>', // REQUIRED 'DomainName' => '<string>', // REQUIRED ]);
Parameter Details
Members
- CalculatedAttributeName
-
- Required: Yes
- Type: string
The unique name of the calculated attribute.
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
Result Syntax
[]
Result Details
Errors
- BadRequestException:
The input you provided is invalid.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
- AccessDeniedException:
You do not have sufficient access to perform this action.
- ThrottlingException:
You exceeded the maximum number of requests.
- InternalServerException:
An internal service error occurred.
DeleteDomain
$result = $client->deleteDomain
([/* ... */]); $promise = $client->deleteDomainAsync
([/* ... */]);
Deletes a specific domain and all of its customer data, such as customer profile attributes and their related objects.
Parameter Syntax
$result = $client->deleteDomain([ 'DomainName' => '<string>', // REQUIRED ]);
Parameter Details
Members
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
Result Syntax
[ 'Message' => '<string>', ]
Result Details
Members
- Message
-
- Required: Yes
- Type: string
A message that indicates the delete request is done.
Errors
- BadRequestException:
The input you provided is invalid.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
- AccessDeniedException:
You do not have sufficient access to perform this action.
- ThrottlingException:
You exceeded the maximum number of requests.
- InternalServerException:
An internal service error occurred.
DeleteEventStream
$result = $client->deleteEventStream
([/* ... */]); $promise = $client->deleteEventStreamAsync
([/* ... */]);
Disables and deletes the specified event stream.
Parameter Syntax
$result = $client->deleteEventStream([ 'DomainName' => '<string>', // REQUIRED 'EventStreamName' => '<string>', // REQUIRED ]);
Parameter Details
Members
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- EventStreamName
-
- Required: Yes
- Type: string
The name of the event stream
Result Syntax
[]
Result Details
Errors
- BadRequestException:
The input you provided is invalid.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
- AccessDeniedException:
You do not have sufficient access to perform this action.
- ThrottlingException:
You exceeded the maximum number of requests.
- InternalServerException:
An internal service error occurred.
DeleteIntegration
$result = $client->deleteIntegration
([/* ... */]); $promise = $client->deleteIntegrationAsync
([/* ... */]);
Removes an integration from a specific domain.
Parameter Syntax
$result = $client->deleteIntegration([ 'DomainName' => '<string>', // REQUIRED 'Uri' => '<string>', // REQUIRED ]);
Parameter Details
Members
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- Uri
-
- Required: Yes
- Type: string
The URI of the S3 bucket or any other type of data source.
Result Syntax
[ 'Message' => '<string>', ]
Result Details
Members
- Message
-
- Required: Yes
- Type: string
A message that indicates the delete request is done.
Errors
- BadRequestException:
The input you provided is invalid.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
- AccessDeniedException:
You do not have sufficient access to perform this action.
- ThrottlingException:
You exceeded the maximum number of requests.
- InternalServerException:
An internal service error occurred.
DeleteProfile
$result = $client->deleteProfile
([/* ... */]); $promise = $client->deleteProfileAsync
([/* ... */]);
Deletes the standard customer profile and all data pertaining to the profile.
Parameter Syntax
$result = $client->deleteProfile([ 'DomainName' => '<string>', // REQUIRED 'ProfileId' => '<string>', // REQUIRED ]);
Parameter Details
Members
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- ProfileId
-
- Required: Yes
- Type: string
The unique identifier of a customer profile.
Result Syntax
[ 'Message' => '<string>', ]
Result Details
Members
- Message
-
- Type: string
A message that indicates the delete request is done.
Errors
- BadRequestException:
The input you provided is invalid.
- AccessDeniedException:
You do not have sufficient access to perform this action.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
- ThrottlingException:
You exceeded the maximum number of requests.
- InternalServerException:
An internal service error occurred.
DeleteProfileKey
$result = $client->deleteProfileKey
([/* ... */]); $promise = $client->deleteProfileKeyAsync
([/* ... */]);
Removes a searchable key from a customer profile.
Parameter Syntax
$result = $client->deleteProfileKey([ 'DomainName' => '<string>', // REQUIRED 'KeyName' => '<string>', // REQUIRED 'ProfileId' => '<string>', // REQUIRED 'Values' => ['<string>', ...], // REQUIRED ]);
Parameter Details
Members
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- KeyName
-
- Required: Yes
- Type: string
A searchable identifier of a customer profile.
- ProfileId
-
- Required: Yes
- Type: string
The unique identifier of a customer profile.
- Values
-
- Required: Yes
- Type: Array of strings
A list of key values.
Result Syntax
[ 'Message' => '<string>', ]
Result Details
Members
- Message
-
- Type: string
A message that indicates the delete request is done.
Errors
- BadRequestException:
The input you provided is invalid.
- AccessDeniedException:
You do not have sufficient access to perform this action.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
- ThrottlingException:
You exceeded the maximum number of requests.
- InternalServerException:
An internal service error occurred.
DeleteProfileObject
$result = $client->deleteProfileObject
([/* ... */]); $promise = $client->deleteProfileObjectAsync
([/* ... */]);
Removes an object associated with a profile of a given ProfileObjectType.
Parameter Syntax
$result = $client->deleteProfileObject([ 'DomainName' => '<string>', // REQUIRED 'ObjectTypeName' => '<string>', // REQUIRED 'ProfileId' => '<string>', // REQUIRED 'ProfileObjectUniqueKey' => '<string>', // REQUIRED ]);
Parameter Details
Members
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- ObjectTypeName
-
- Required: Yes
- Type: string
The name of the profile object type.
- ProfileId
-
- Required: Yes
- Type: string
The unique identifier of a customer profile.
- ProfileObjectUniqueKey
-
- Required: Yes
- Type: string
The unique identifier of the profile object generated by the service.
Result Syntax
[ 'Message' => '<string>', ]
Result Details
Members
- Message
-
- Type: string
A message that indicates the delete request is done.
Errors
- BadRequestException:
The input you provided is invalid.
- AccessDeniedException:
You do not have sufficient access to perform this action.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
- ThrottlingException:
You exceeded the maximum number of requests.
- InternalServerException:
An internal service error occurred.
DeleteProfileObjectType
$result = $client->deleteProfileObjectType
([/* ... */]); $promise = $client->deleteProfileObjectTypeAsync
([/* ... */]);
Removes a ProfileObjectType from a specific domain as well as removes all the ProfileObjects of that type. It also disables integrations from this specific ProfileObjectType. In addition, it scrubs all of the fields of the standard profile that were populated from this ProfileObjectType.
Parameter Syntax
$result = $client->deleteProfileObjectType([ 'DomainName' => '<string>', // REQUIRED 'ObjectTypeName' => '<string>', // REQUIRED ]);
Parameter Details
Members
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- ObjectTypeName
-
- Required: Yes
- Type: string
The name of the profile object type.
Result Syntax
[ 'Message' => '<string>', ]
Result Details
Members
- Message
-
- Required: Yes
- Type: string
A message that indicates the delete request is done.
Errors
- BadRequestException:
The input you provided is invalid.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
- AccessDeniedException:
You do not have sufficient access to perform this action.
- ThrottlingException:
You exceeded the maximum number of requests.
- InternalServerException:
An internal service error occurred.
DeleteWorkflow
$result = $client->deleteWorkflow
([/* ... */]); $promise = $client->deleteWorkflowAsync
([/* ... */]);
Deletes the specified workflow and all its corresponding resources. This is an async process.
Parameter Syntax
$result = $client->deleteWorkflow([ 'DomainName' => '<string>', // REQUIRED 'WorkflowId' => '<string>', // REQUIRED ]);
Parameter Details
Members
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- WorkflowId
-
- Required: Yes
- Type: string
Unique identifier for the workflow.
Result Syntax
[]
Result Details
Errors
- BadRequestException:
The input you provided is invalid.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
- AccessDeniedException:
You do not have sufficient access to perform this action.
- ThrottlingException:
You exceeded the maximum number of requests.
- InternalServerException:
An internal service error occurred.
DetectProfileObjectType
$result = $client->detectProfileObjectType
([/* ... */]); $promise = $client->detectProfileObjectTypeAsync
([/* ... */]);
The process of detecting profile object type mapping by using given objects.
Parameter Syntax
$result = $client->detectProfileObjectType([ 'DomainName' => '<string>', // REQUIRED 'Objects' => ['<string>', ...], // REQUIRED ]);
Parameter Details
Members
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- Objects
-
- Required: Yes
- Type: Array of strings
A string that is serialized from a JSON object.
Result Syntax
[ 'DetectedProfileObjectTypes' => [ [ 'Fields' => [ '<name>' => [ 'ContentType' => 'STRING|NUMBER|PHONE_NUMBER|EMAIL_ADDRESS|NAME', 'Source' => '<string>', 'Target' => '<string>', ], // ... ], 'Keys' => [ '<name>' => [ [ 'FieldNames' => ['<string>', ...], 'StandardIdentifiers' => ['<string>', ...], ], // ... ], // ... ], 'SourceLastUpdatedTimestampFormat' => '<string>', ], // ... ], ]
Result Details
Members
- DetectedProfileObjectTypes
-
- Type: Array of DetectedProfileObjectType structures
Detected
ProfileObjectType
mappings from given objects. A maximum of one mapping is supported.
Errors
- BadRequestException:
The input you provided is invalid.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
- AccessDeniedException:
You do not have sufficient access to perform this action.
- ThrottlingException:
You exceeded the maximum number of requests.
- InternalServerException:
An internal service error occurred.
GetAutoMergingPreview
$result = $client->getAutoMergingPreview
([/* ... */]); $promise = $client->getAutoMergingPreviewAsync
([/* ... */]);
Tests the auto-merging settings of your Identity Resolution Job without merging your data. It randomly selects a sample of matching groups from the existing matching results, and applies the automerging settings that you provided. You can then view the number of profiles in the sample, the number of matches, and the number of profiles identified to be merged. This enables you to evaluate the accuracy of the attributes in your matching list.
You can't view which profiles are matched and would be merged.
We strongly recommend you use this API to do a dry run of the automerging process before running the Identity Resolution Job. Include at least two matching attributes. If your matching list includes too few attributes (such as only FirstName
or only LastName
), there may be a large number of matches. This increases the chances of erroneous merges.
Parameter Syntax
$result = $client->getAutoMergingPreview([ 'ConflictResolution' => [ // REQUIRED 'ConflictResolvingModel' => 'RECENCY|SOURCE', // REQUIRED 'SourceName' => '<string>', ], 'Consolidation' => [ // REQUIRED 'MatchingAttributesList' => [ // REQUIRED ['<string>', ...], // ... ], ], 'DomainName' => '<string>', // REQUIRED 'MinAllowedConfidenceScoreForMerging' => <float>, ]);
Parameter Details
Members
- ConflictResolution
-
- Required: Yes
- Type: ConflictResolution structure
How the auto-merging process should resolve conflicts between different profiles.
- Consolidation
-
- Required: Yes
- Type: Consolidation structure
A list of matching attributes that represent matching criteria.
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- MinAllowedConfidenceScoreForMerging
-
- Type: double
Minimum confidence score required for profiles within a matching group to be merged during the auto-merge process.
Result Syntax
[ 'DomainName' => '<string>', 'NumberOfMatchesInSample' => <integer>, 'NumberOfProfilesInSample' => <integer>, 'NumberOfProfilesWillBeMerged' => <integer>, ]
Result Details
Members
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- NumberOfMatchesInSample
-
- Type: long (int|float)
The number of match groups in the domain that have been reviewed in this preview dry run.
- NumberOfProfilesInSample
-
- Type: long (int|float)
The number of profiles found in this preview dry run.
- NumberOfProfilesWillBeMerged
-
- Type: long (int|float)
The number of profiles that would be merged if this wasn't a preview dry run.
Errors
- BadRequestException:
The input you provided is invalid.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
- AccessDeniedException:
You do not have sufficient access to perform this action.
- ThrottlingException:
You exceeded the maximum number of requests.
- InternalServerException:
An internal service error occurred.
GetCalculatedAttributeDefinition
$result = $client->getCalculatedAttributeDefinition
([/* ... */]); $promise = $client->getCalculatedAttributeDefinitionAsync
([/* ... */]);
Provides more information on a calculated attribute definition for Customer Profiles.
Parameter Syntax
$result = $client->getCalculatedAttributeDefinition([ 'CalculatedAttributeName' => '<string>', // REQUIRED 'DomainName' => '<string>', // REQUIRED ]);
Parameter Details
Members
- CalculatedAttributeName
-
- Required: Yes
- Type: string
The unique name of the calculated attribute.
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
Result Syntax
[ 'AttributeDetails' => [ 'Attributes' => [ [ 'Name' => '<string>', ], // ... ], 'Expression' => '<string>', ], 'CalculatedAttributeName' => '<string>', 'Conditions' => [ 'ObjectCount' => <integer>, 'Range' => [ 'Unit' => 'DAYS', 'Value' => <integer>, ], 'Threshold' => [ 'Operator' => 'EQUAL_TO|GREATER_THAN|LESS_THAN|NOT_EQUAL_TO', 'Value' => '<string>', ], ], 'CreatedAt' => <DateTime>, 'Description' => '<string>', 'DisplayName' => '<string>', 'LastUpdatedAt' => <DateTime>, 'Statistic' => 'FIRST_OCCURRENCE|LAST_OCCURRENCE|COUNT|SUM|MINIMUM|MAXIMUM|AVERAGE|MAX_OCCURRENCE', 'Tags' => ['<string>', ...], ]
Result Details
Members
- AttributeDetails
-
- Type: AttributeDetails structure
Mathematical expression and a list of attribute items specified in that expression.
- CalculatedAttributeName
-
- Type: string
The unique name of the calculated attribute.
- Conditions
-
- Type: Conditions structure
The conditions including range, object count, and threshold for the calculated attribute.
- CreatedAt
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp of when the calculated attribute definition was created.
- Description
-
- Type: string
The description of the calculated attribute.
- DisplayName
-
- Type: string
The display name of the calculated attribute.
- LastUpdatedAt
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp of when the calculated attribute definition was most recently edited.
- Statistic
-
- Type: string
The aggregation operation to perform for the calculated attribute.
- Tags
-
- Type: Associative array of custom strings keys (TagKey) to strings
The tags used to organize, track, or control access for this resource.
Errors
- BadRequestException:
The input you provided is invalid.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
- AccessDeniedException:
You do not have sufficient access to perform this action.
- ThrottlingException:
You exceeded the maximum number of requests.
- InternalServerException:
An internal service error occurred.
GetCalculatedAttributeForProfile
$result = $client->getCalculatedAttributeForProfile
([/* ... */]); $promise = $client->getCalculatedAttributeForProfileAsync
([/* ... */]);
Retrieve a calculated attribute for a customer profile.
Parameter Syntax
$result = $client->getCalculatedAttributeForProfile([ 'CalculatedAttributeName' => '<string>', // REQUIRED 'DomainName' => '<string>', // REQUIRED 'ProfileId' => '<string>', // REQUIRED ]);
Parameter Details
Members
- CalculatedAttributeName
-
- Required: Yes
- Type: string
The unique name of the calculated attribute.
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- ProfileId
-
- Required: Yes
- Type: string
The unique identifier of a customer profile.
Result Syntax
[ 'CalculatedAttributeName' => '<string>', 'DisplayName' => '<string>', 'IsDataPartial' => '<string>', 'Value' => '<string>', ]
Result Details
Members
- CalculatedAttributeName
-
- Type: string
The unique name of the calculated attribute.
- DisplayName
-
- Type: string
The display name of the calculated attribute.
- IsDataPartial
-
- Type: string
Indicates whether the calculated attribute’s value is based on partial data. If data is partial, it is set to true.
- Value
-
- Type: string
The value of the calculated attribute.
Errors
- BadRequestException:
The input you provided is invalid.
- AccessDeniedException:
You do not have sufficient access to perform this action.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
- ThrottlingException:
You exceeded the maximum number of requests.
- InternalServerException:
An internal service error occurred.
GetDomain
$result = $client->getDomain
([/* ... */]); $promise = $client->getDomainAsync
([/* ... */]);
Returns information about a specific domain.
Parameter Syntax
$result = $client->getDomain([ 'DomainName' => '<string>', // REQUIRED ]);
Parameter Details
Members
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
Result Syntax
[ 'CreatedAt' => <DateTime>, 'DeadLetterQueueUrl' => '<string>', 'DefaultEncryptionKey' => '<string>', 'DefaultExpirationDays' => <integer>, 'DomainName' => '<string>', 'LastUpdatedAt' => <DateTime>, 'Matching' => [ 'AutoMerging' => [ 'ConflictResolution' => [ 'ConflictResolvingModel' => 'RECENCY|SOURCE', 'SourceName' => '<string>', ], 'Consolidation' => [ 'MatchingAttributesList' => [ ['<string>', ...], // ... ], ], 'Enabled' => true || false, 'MinAllowedConfidenceScoreForMerging' => <float>, ], 'Enabled' => true || false, 'ExportingConfig' => [ 'S3Exporting' => [ 'S3BucketName' => '<string>', 'S3KeyName' => '<string>', ], ], 'JobSchedule' => [ 'DayOfTheWeek' => 'SUNDAY|MONDAY|TUESDAY|WEDNESDAY|THURSDAY|FRIDAY|SATURDAY', 'Time' => '<string>', ], ], 'RuleBasedMatching' => [ 'AttributeTypesSelector' => [ 'Address' => ['<string>', ...], 'AttributeMatchingModel' => 'ONE_TO_ONE|MANY_TO_MANY', 'EmailAddress' => ['<string>', ...], 'PhoneNumber' => ['<string>', ...], ], 'ConflictResolution' => [ 'ConflictResolvingModel' => 'RECENCY|SOURCE', 'SourceName' => '<string>', ], 'Enabled' => true || false, 'ExportingConfig' => [ 'S3Exporting' => [ 'S3BucketName' => '<string>', 'S3KeyName' => '<string>', ], ], 'MatchingRules' => [ [ 'Rule' => ['<string>', ...], ], // ... ], 'MaxAllowedRuleLevelForMatching' => <integer>, 'MaxAllowedRuleLevelForMerging' => <integer>, 'Status' => 'PENDING|IN_PROGRESS|ACTIVE', ], 'Stats' => [ 'MeteringProfileCount' => <integer>, 'ObjectCount' => <integer>, 'ProfileCount' => <integer>, 'TotalSize' => <integer>, ], 'Tags' => ['<string>', ...], ]
Result Details
Members
- CreatedAt
-
- Required: Yes
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp of when the domain was created.
- DeadLetterQueueUrl
-
- Type: string
The URL of the SQS dead letter queue, which is used for reporting errors associated with ingesting data from third party applications.
- DefaultEncryptionKey
-
- Type: 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
-
- Type: int
The default number of days until the data within the domain expires.
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- LastUpdatedAt
-
- Required: Yes
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp of when the domain was most recently edited.
- Matching
-
- Type: MatchingResponse structure
The process of matching duplicate profiles. If
Matching
=true
, Amazon Connect Customer Profiles starts a weekly batch process called Identity Resolution Job. If you do not specify a date and time for Identity Resolution Job to run, by default it runs every Saturday at 12AM UTC to detect duplicate profiles in your domains.After the Identity Resolution Job completes, use the GetMatches API to return and review the results. Or, if you have configured
ExportingConfig
in theMatchingRequest
, you can download the results from S3. - RuleBasedMatching
-
- Type: RuleBasedMatchingResponse structure
The process of matching duplicate profiles using the Rule-Based matching. If
RuleBasedMatching
= true, Amazon Connect Customer Profiles will start to match and merge your profiles according to your configuration in theRuleBasedMatchingRequest
. You can use theListRuleBasedMatches
andGetSimilarProfiles
API to return and review the results. Also, if you have configuredExportingConfig
in theRuleBasedMatchingRequest
, you can download the results from S3. - Stats
-
- Type: DomainStats structure
Usage-specific statistics about the domain.
- Tags
-
- Type: Associative array of custom strings keys (TagKey) to strings
The tags used to organize, track, or control access for this resource.
Errors
- BadRequestException:
The input you provided is invalid.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
- AccessDeniedException:
You do not have sufficient access to perform this action.
- ThrottlingException:
You exceeded the maximum number of requests.
- InternalServerException:
An internal service error occurred.
GetEventStream
$result = $client->getEventStream
([/* ... */]); $promise = $client->getEventStreamAsync
([/* ... */]);
Returns information about the specified event stream in a specific domain.
Parameter Syntax
$result = $client->getEventStream([ 'DomainName' => '<string>', // REQUIRED 'EventStreamName' => '<string>', // REQUIRED ]);
Parameter Details
Members
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- EventStreamName
-
- Required: Yes
- Type: string
The name of the event stream provided during create operations.
Result Syntax
[ 'CreatedAt' => <DateTime>, 'DestinationDetails' => [ 'Message' => '<string>', 'Status' => 'HEALTHY|UNHEALTHY', 'UnhealthySince' => <DateTime>, 'Uri' => '<string>', ], 'DomainName' => '<string>', 'EventStreamArn' => '<string>', 'State' => 'RUNNING|STOPPED', 'StoppedSince' => <DateTime>, 'Tags' => ['<string>', ...], ]
Result Details
Members
- CreatedAt
-
- Required: Yes
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp of when the export was created.
- DestinationDetails
-
- Required: Yes
- Type: EventStreamDestinationDetails structure
Details regarding the Kinesis stream.
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- EventStreamArn
-
- Required: Yes
- Type: string
A unique identifier for the event stream.
- State
-
- Required: Yes
- Type: string
The operational state of destination stream for export.
- StoppedSince
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp when the
State
changed toSTOPPED
. - Tags
-
- Type: Associative array of custom strings keys (TagKey) to strings
The tags used to organize, track, or control access for this resource.
Errors
- BadRequestException:
The input you provided is invalid.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
- AccessDeniedException:
You do not have sufficient access to perform this action.
- ThrottlingException:
You exceeded the maximum number of requests.
- InternalServerException:
An internal service error occurred.
GetIdentityResolutionJob
$result = $client->getIdentityResolutionJob
([/* ... */]); $promise = $client->getIdentityResolutionJobAsync
([/* ... */]);
Returns information about an Identity Resolution Job in a specific domain.
Identity Resolution Jobs are set up using the Amazon Connect admin console. For more information, see Use Identity Resolution to consolidate similar profiles.
Parameter Syntax
$result = $client->getIdentityResolutionJob([ 'DomainName' => '<string>', // REQUIRED 'JobId' => '<string>', // REQUIRED ]);
Parameter Details
Members
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- JobId
-
- Required: Yes
- Type: string
The unique identifier of the Identity Resolution Job.
Result Syntax
[ 'AutoMerging' => [ 'ConflictResolution' => [ 'ConflictResolvingModel' => 'RECENCY|SOURCE', 'SourceName' => '<string>', ], 'Consolidation' => [ 'MatchingAttributesList' => [ ['<string>', ...], // ... ], ], 'Enabled' => true || false, 'MinAllowedConfidenceScoreForMerging' => <float>, ], 'DomainName' => '<string>', 'ExportingLocation' => [ 'S3Exporting' => [ 'S3BucketName' => '<string>', 'S3KeyName' => '<string>', ], ], 'JobEndTime' => <DateTime>, 'JobExpirationTime' => <DateTime>, 'JobId' => '<string>', 'JobStartTime' => <DateTime>, 'JobStats' => [ 'NumberOfMatchesFound' => <integer>, 'NumberOfMergesDone' => <integer>, 'NumberOfProfilesReviewed' => <integer>, ], 'LastUpdatedAt' => <DateTime>, 'Message' => '<string>', 'Status' => 'PENDING|PREPROCESSING|FIND_MATCHING|MERGING|COMPLETED|PARTIAL_SUCCESS|FAILED', ]
Result Details
Members
- AutoMerging
-
- Type: AutoMerging structure
Configuration settings for how to perform the auto-merging of profiles.
- DomainName
-
- Type: string
The unique name of the domain.
- ExportingLocation
-
- Type: ExportingLocation structure
The S3 location where the Identity Resolution Job writes result files.
- JobEndTime
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp of when the Identity Resolution Job was completed.
- JobExpirationTime
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp of when the Identity Resolution Job will expire.
- JobId
-
- Type: string
The unique identifier of the Identity Resolution Job.
- JobStartTime
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp of when the Identity Resolution Job was started or will be started.
- JobStats
-
- Type: JobStats structure
Statistics about the Identity Resolution Job.
- LastUpdatedAt
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp of when the Identity Resolution Job was most recently edited.
- Message
-
- Type: string
The error messages that are generated when the Identity Resolution Job runs.
- Status
-
- Type: string
The status of the Identity Resolution Job.
-
PENDING
: The Identity Resolution Job is scheduled but has not started yet. If you turn off the Identity Resolution feature in your domain, jobs in thePENDING
state are deleted. -
PREPROCESSING
: The Identity Resolution Job is loading your data. -
FIND_MATCHING
: The Identity Resolution Job is using the machine learning model to identify profiles that belong to the same matching group. -
MERGING
: The Identity Resolution Job is merging duplicate profiles. -
COMPLETED
: The Identity Resolution Job completed successfully. -
PARTIAL_SUCCESS
: There's a system error and not all of the data is merged. The Identity Resolution Job writes a message indicating the source of the problem. -
FAILED
: The Identity Resolution Job did not merge any data. It writes a message indicating the source of the problem.
Errors
- BadRequestException:
The input you provided is invalid.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
- AccessDeniedException:
You do not have sufficient access to perform this action.
- ThrottlingException:
You exceeded the maximum number of requests.
- InternalServerException:
An internal service error occurred.
GetIntegration
$result = $client->getIntegration
([/* ... */]); $promise = $client->getIntegrationAsync
([/* ... */]);
Returns an integration for a domain.
Parameter Syntax
$result = $client->getIntegration([ 'DomainName' => '<string>', // REQUIRED 'Uri' => '<string>', // REQUIRED ]);
Parameter Details
Members
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- Uri
-
- Required: Yes
- Type: string
The URI of the S3 bucket or any other type of data source.
Result Syntax
[ 'CreatedAt' => <DateTime>, 'DomainName' => '<string>', 'IsUnstructured' => true || false, 'LastUpdatedAt' => <DateTime>, 'ObjectTypeName' => '<string>', 'ObjectTypeNames' => ['<string>', ...], 'RoleArn' => '<string>', 'Tags' => ['<string>', ...], 'Uri' => '<string>', 'WorkflowId' => '<string>', ]
Result Details
Members
- CreatedAt
-
- Required: Yes
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp of when the domain was created.
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- IsUnstructured
-
- Type: boolean
Boolean that shows if the Flow that's associated with the Integration is created in Amazon Appflow, or with ObjectTypeName equals _unstructured via API/CLI in flowDefinition.
- LastUpdatedAt
-
- Required: Yes
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp of when the domain was most recently edited.
- ObjectTypeName
-
- Type: string
The name of the profile object type.
- ObjectTypeNames
-
- Type: Associative array of custom strings keys (string1To255) to strings
A map in which each key is an event type from an external application such as Segment or Shopify, and each value is an
ObjectTypeName
(template) used to ingest the event. It supports the following event types:SegmentIdentify
,ShopifyCreateCustomers
,ShopifyUpdateCustomers
,ShopifyCreateDraftOrders
,ShopifyUpdateDraftOrders
,ShopifyCreateOrders
, andShopifyUpdatedOrders
. - RoleArn
-
- Type: string
The Amazon Resource Name (ARN) of the IAM role. The Integration uses this role to make Customer Profiles requests on your behalf.
- Tags
-
- Type: Associative array of custom strings keys (TagKey) to strings
The tags used to organize, track, or control access for this resource.
- Uri
-
- Required: Yes
- Type: string
The URI of the S3 bucket or any other type of data source.
- WorkflowId
-
- Type: string
Unique identifier for the workflow.
Errors
- BadRequestException:
The input you provided is invalid.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
- AccessDeniedException:
You do not have sufficient access to perform this action.
- ThrottlingException:
You exceeded the maximum number of requests.
- InternalServerException:
An internal service error occurred.
GetMatches
$result = $client->getMatches
([/* ... */]); $promise = $client->getMatchesAsync
([/* ... */]);
Before calling this API, use CreateDomain or UpdateDomain to enable identity resolution: set Matching
to true.
GetMatches returns potentially matching profiles, based on the results of the latest run of a machine learning process.
The process of matching duplicate profiles. If Matching
= true
, Amazon Connect Customer Profiles starts a weekly batch process called Identity Resolution Job. If you do not specify a date and time for Identity Resolution Job to run, by default it runs every Saturday at 12AM UTC to detect duplicate profiles in your domains.
After the Identity Resolution Job completes, use the GetMatches API to return and review the results. Or, if you have configured ExportingConfig
in the MatchingRequest
, you can download the results from S3.
Amazon Connect uses the following profile attributes to identify matches:
-
PhoneNumber
-
HomePhoneNumber
-
BusinessPhoneNumber
-
MobilePhoneNumber
-
EmailAddress
-
PersonalEmailAddress
-
BusinessEmailAddress
-
FullName
For example, two or more profiles—with spelling mistakes such as John Doe and Jhn Doe, or different casing email addresses such as JOHN_DOE@ANYCOMPANY.COM and johndoe@anycompany.com, or different phone number formats such as 555-010-0000 and +1-555-010-0000—can be detected as belonging to the same customer John Doe and merged into a unified profile.
Parameter Syntax
$result = $client->getMatches([ 'DomainName' => '<string>', // REQUIRED 'MaxResults' => <integer>, 'NextToken' => '<string>', ]);
Parameter Details
Members
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- MaxResults
-
- Type: int
The maximum number of results to return per page.
- NextToken
-
- Type: string
The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.
Result Syntax
[ 'MatchGenerationDate' => <DateTime>, 'Matches' => [ [ 'ConfidenceScore' => <float>, 'MatchId' => '<string>', 'ProfileIds' => ['<string>', ...], ], // ... ], 'NextToken' => '<string>', 'PotentialMatches' => <integer>, ]
Result Details
Members
- MatchGenerationDate
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp this version of Match Result generated.
- Matches
-
- Type: Array of MatchItem structures
The list of matched profiles for this instance.
- NextToken
-
- Type: string
If there are additional results, this is the token for the next set of results.
- PotentialMatches
-
- Type: int
The number of potential matches found.
Errors
- BadRequestException:
The input you provided is invalid.
- AccessDeniedException:
You do not have sufficient access to perform this action.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
- ThrottlingException:
You exceeded the maximum number of requests.
- InternalServerException:
An internal service error occurred.
GetProfileObjectType
$result = $client->getProfileObjectType
([/* ... */]); $promise = $client->getProfileObjectTypeAsync
([/* ... */]);
Returns the object types for a specific domain.
Parameter Syntax
$result = $client->getProfileObjectType([ 'DomainName' => '<string>', // REQUIRED 'ObjectTypeName' => '<string>', // REQUIRED ]);
Parameter Details
Members
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- ObjectTypeName
-
- Required: Yes
- Type: string
The name of the profile object type.
Result Syntax
[ 'AllowProfileCreation' => true || false, 'CreatedAt' => <DateTime>, 'Description' => '<string>', 'EncryptionKey' => '<string>', 'ExpirationDays' => <integer>, 'Fields' => [ '<name>' => [ 'ContentType' => 'STRING|NUMBER|PHONE_NUMBER|EMAIL_ADDRESS|NAME', 'Source' => '<string>', 'Target' => '<string>', ], // ... ], 'Keys' => [ '<name>' => [ [ 'FieldNames' => ['<string>', ...], 'StandardIdentifiers' => ['<string>', ...], ], // ... ], // ... ], 'LastUpdatedAt' => <DateTime>, 'MaxAvailableProfileObjectCount' => <integer>, 'MaxProfileObjectCount' => <integer>, 'ObjectTypeName' => '<string>', 'SourceLastUpdatedTimestampFormat' => '<string>', 'Tags' => ['<string>', ...], 'TemplateId' => '<string>', ]
Result Details
Members
- AllowProfileCreation
-
- Type: boolean
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. - CreatedAt
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp of when the domain was created.
- Description
-
- Required: Yes
- Type: string
The description of the profile object type.
- EncryptionKey
-
- Type: string
The customer-provided key to encrypt the profile object that will be created in this profile object type.
- ExpirationDays
-
- Type: int
The number of days until the data in the object expires.
- Fields
-
- Type: Associative array of custom strings keys (name) to ObjectTypeField structures
A map of the name and ObjectType field.
- Keys
-
- Type: Associative array of custom strings keys (name) to ObjectTypeKey structuress
A list of unique keys that can be used to map data to the profile.
- LastUpdatedAt
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp of when the domain was most recently edited.
- MaxAvailableProfileObjectCount
-
- Type: int
The amount of provisioned profile object max count available.
- MaxProfileObjectCount
-
- Type: int
The amount of profile object max count assigned to the object type.
- ObjectTypeName
-
- Required: Yes
- Type: string
The name of the profile object type.
- SourceLastUpdatedTimestampFormat
-
- Type: string
The format of your
sourceLastUpdatedTimestamp
that was previously set up. - Tags
-
- Type: Associative array of custom strings keys (TagKey) to strings
The tags used to organize, track, or control access for this resource.
- TemplateId
-
- Type: string
A unique identifier for the object template.
Errors
- BadRequestException:
The input you provided is invalid.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
- AccessDeniedException:
You do not have sufficient access to perform this action.
- ThrottlingException:
You exceeded the maximum number of requests.
- InternalServerException:
An internal service error occurred.
GetProfileObjectTypeTemplate
$result = $client->getProfileObjectTypeTemplate
([/* ... */]); $promise = $client->getProfileObjectTypeTemplateAsync
([/* ... */]);
Returns the template information for a specific object type.
A template is a predefined ProfileObjectType, such as “Salesforce-Account” or “Salesforce-Contact.” When a user sends a ProfileObject, using the PutProfileObject API, with an ObjectTypeName that matches one of the TemplateIds, it uses the mappings from the template.
Parameter Syntax
$result = $client->getProfileObjectTypeTemplate([ 'TemplateId' => '<string>', // REQUIRED ]);
Parameter Details
Members
- TemplateId
-
- Required: Yes
- Type: string
A unique identifier for the object template.
Result Syntax
[ 'AllowProfileCreation' => true || false, 'Fields' => [ '<name>' => [ 'ContentType' => 'STRING|NUMBER|PHONE_NUMBER|EMAIL_ADDRESS|NAME', 'Source' => '<string>', 'Target' => '<string>', ], // ... ], 'Keys' => [ '<name>' => [ [ 'FieldNames' => ['<string>', ...], 'StandardIdentifiers' => ['<string>', ...], ], // ... ], // ... ], 'SourceLastUpdatedTimestampFormat' => '<string>', 'SourceName' => '<string>', 'SourceObject' => '<string>', 'TemplateId' => '<string>', ]
Result Details
Members
- AllowProfileCreation
-
- Type: boolean
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. - Fields
-
- Type: Associative array of custom strings keys (name) to ObjectTypeField structures
A map of the name and ObjectType field.
- Keys
-
- Type: Associative array of custom strings keys (name) to ObjectTypeKey structuress
A list of unique keys that can be used to map data to the profile.
- SourceLastUpdatedTimestampFormat
-
- Type: string
The format of your
sourceLastUpdatedTimestamp
that was previously set up. - SourceName
-
- Type: string
The name of the source of the object template.
- SourceObject
-
- Type: string
The source of the object template.
- TemplateId
-
- Type: string
A unique identifier for the object template.
Errors
- BadRequestException:
The input you provided is invalid.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
- AccessDeniedException:
You do not have sufficient access to perform this action.
- ThrottlingException:
You exceeded the maximum number of requests.
- InternalServerException:
An internal service error occurred.
GetSimilarProfiles
$result = $client->getSimilarProfiles
([/* ... */]); $promise = $client->getSimilarProfilesAsync
([/* ... */]);
Returns a set of profiles that belong to the same matching group using the matchId
or profileId
. You can also specify the type of matching that you want for finding similar profiles using either RULE_BASED_MATCHING
or ML_BASED_MATCHING
.
Parameter Syntax
$result = $client->getSimilarProfiles([ 'DomainName' => '<string>', // REQUIRED 'MatchType' => 'RULE_BASED_MATCHING|ML_BASED_MATCHING', // REQUIRED 'MaxResults' => <integer>, 'NextToken' => '<string>', 'SearchKey' => '<string>', // REQUIRED 'SearchValue' => '<string>', // REQUIRED ]);
Parameter Details
Members
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- MatchType
-
- Required: Yes
- Type: string
Specify the type of matching to get similar profiles for.
- MaxResults
-
- Type: int
The maximum number of objects returned per page.
- NextToken
-
- Type: string
The pagination token from the previous
GetSimilarProfiles
API call. - SearchKey
-
- Required: Yes
- Type: string
The string indicating the search key to be used.
- SearchValue
-
- Required: Yes
- Type: string
The string based on
SearchKey
to be searched for similar profiles.
Result Syntax
[ 'ConfidenceScore' => <float>, 'MatchId' => '<string>', 'MatchType' => 'RULE_BASED_MATCHING|ML_BASED_MATCHING', 'NextToken' => '<string>', 'ProfileIds' => ['<string>', ...], 'RuleLevel' => <integer>, ]
Result Details
Members
- ConfidenceScore
-
- Type: double
It only has value when the
MatchType
isML_BASED_MATCHING
.A number between 0 and 1, where a higher score means higher similarity. Examining match confidence scores lets you distinguish between groups of similar records in which the system is highly confident (which you may decide to merge), groups of similar records about which the system is uncertain (which you may decide to have reviewed by a human), and groups of similar records that the system deems to be unlikely (which you may decide to reject). Given confidence scores vary as per the data input, it should not be used as an absolute measure of matching quality. - MatchId
-
- Type: string
The string
matchId
that the similar profiles belong to. - MatchType
-
- Type: string
Specify the type of matching to get similar profiles for.
- NextToken
-
- Type: string
The pagination token from the previous
GetSimilarProfiles
API call. - ProfileIds
-
- Type: Array of strings
Set of
profileId
s that belong to the same matching group. - RuleLevel
-
- Type: int
The integer rule level that the profiles matched on.
Errors
- BadRequestException:
The input you provided is invalid.
- AccessDeniedException:
You do not have sufficient access to perform this action.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
- ThrottlingException:
You exceeded the maximum number of requests.
- InternalServerException:
An internal service error occurred.
GetWorkflow
$result = $client->getWorkflow
([/* ... */]); $promise = $client->getWorkflowAsync
([/* ... */]);
Get details of specified workflow.
Parameter Syntax
$result = $client->getWorkflow([ 'DomainName' => '<string>', // REQUIRED 'WorkflowId' => '<string>', // REQUIRED ]);
Parameter Details
Members
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- WorkflowId
-
- Required: Yes
- Type: string
Unique identifier for the workflow.
Result Syntax
[ 'Attributes' => [ 'AppflowIntegration' => [ 'ConnectorProfileName' => '<string>', 'RoleArn' => '<string>', 'SourceConnectorType' => 'Salesforce|Marketo|Zendesk|Servicenow|S3', ], ], 'ErrorDescription' => '<string>', 'LastUpdatedAt' => <DateTime>, 'Metrics' => [ 'AppflowIntegration' => [ 'RecordsProcessed' => <integer>, 'StepsCompleted' => <integer>, 'TotalSteps' => <integer>, ], ], 'StartDate' => <DateTime>, 'Status' => 'NOT_STARTED|IN_PROGRESS|COMPLETE|FAILED|SPLIT|RETRY|CANCELLED', 'WorkflowId' => '<string>', 'WorkflowType' => 'APPFLOW_INTEGRATION', ]
Result Details
Members
- Attributes
-
- Type: WorkflowAttributes structure
Attributes provided for workflow execution.
- ErrorDescription
-
- Type: string
Workflow error messages during execution (if any).
- LastUpdatedAt
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp that represents when workflow execution last updated.
- Metrics
-
- Type: WorkflowMetrics structure
Workflow specific execution metrics.
- StartDate
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp that represents when workflow execution started.
- Status
-
- Type: string
Status of workflow execution.
- WorkflowId
-
- Type: string
Unique identifier for the workflow.
- WorkflowType
-
- Type: string
The type of workflow. The only supported value is APPFLOW_INTEGRATION.
Errors
- BadRequestException:
The input you provided is invalid.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
- AccessDeniedException:
You do not have sufficient access to perform this action.
- ThrottlingException:
You exceeded the maximum number of requests.
- InternalServerException:
An internal service error occurred.
GetWorkflowSteps
$result = $client->getWorkflowSteps
([/* ... */]); $promise = $client->getWorkflowStepsAsync
([/* ... */]);
Get granular list of steps in workflow.
Parameter Syntax
$result = $client->getWorkflowSteps([ 'DomainName' => '<string>', // REQUIRED 'MaxResults' => <integer>, 'NextToken' => '<string>', 'WorkflowId' => '<string>', // REQUIRED ]);
Parameter Details
Members
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- MaxResults
-
- Type: int
The maximum number of results to return per page.
- NextToken
-
- Type: string
The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.
- WorkflowId
-
- Required: Yes
- Type: string
Unique identifier for the workflow.
Result Syntax
[ 'Items' => [ [ 'AppflowIntegration' => [ 'BatchRecordsEndTime' => '<string>', 'BatchRecordsStartTime' => '<string>', 'CreatedAt' => <DateTime>, 'ExecutionMessage' => '<string>', 'FlowName' => '<string>', 'LastUpdatedAt' => <DateTime>, 'RecordsProcessed' => <integer>, 'Status' => 'NOT_STARTED|IN_PROGRESS|COMPLETE|FAILED|SPLIT|RETRY|CANCELLED', ], ], // ... ], 'NextToken' => '<string>', 'WorkflowId' => '<string>', 'WorkflowType' => 'APPFLOW_INTEGRATION', ]
Result Details
Members
- Items
-
- Type: Array of WorkflowStepItem structures
List containing workflow step details.
- NextToken
-
- Type: string
If there are additional results, this is the token for the next set of results.
- WorkflowId
-
- Type: string
Unique identifier for the workflow.
- WorkflowType
-
- Type: string
The type of workflow. The only supported value is APPFLOW_INTEGRATION.
Errors
- BadRequestException:
The input you provided is invalid.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
- AccessDeniedException:
You do not have sufficient access to perform this action.
- ThrottlingException:
You exceeded the maximum number of requests.
- InternalServerException:
An internal service error occurred.
ListAccountIntegrations
$result = $client->listAccountIntegrations
([/* ... */]); $promise = $client->listAccountIntegrationsAsync
([/* ... */]);
Lists all of the integrations associated to a specific URI in the AWS account.
Parameter Syntax
$result = $client->listAccountIntegrations([ 'IncludeHidden' => true || false, 'MaxResults' => <integer>, 'NextToken' => '<string>', 'Uri' => '<string>', // REQUIRED ]);
Parameter Details
Members
- IncludeHidden
-
- Type: boolean
Boolean to indicate if hidden integration should be returned. Defaults to
False
. - MaxResults
-
- Type: int
The maximum number of objects returned per page.
- NextToken
-
- Type: string
The pagination token from the previous ListAccountIntegrations API call.
- Uri
-
- Required: Yes
- Type: string
The URI of the S3 bucket or any other type of data source.
Result Syntax
[ 'Items' => [ [ 'CreatedAt' => <DateTime>, 'DomainName' => '<string>', 'IsUnstructured' => true || false, 'LastUpdatedAt' => <DateTime>, 'ObjectTypeName' => '<string>', 'ObjectTypeNames' => ['<string>', ...], 'RoleArn' => '<string>', 'Tags' => ['<string>', ...], 'Uri' => '<string>', 'WorkflowId' => '<string>', ], // ... ], 'NextToken' => '<string>', ]
Result Details
Members
- Items
-
- Type: Array of ListIntegrationItem structures
The list of ListAccountIntegration instances.
- NextToken
-
- Type: string
The pagination token from the previous ListAccountIntegrations API call.
Errors
- BadRequestException:
The input you provided is invalid.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
- AccessDeniedException:
You do not have sufficient access to perform this action.
- ThrottlingException:
You exceeded the maximum number of requests.
- InternalServerException:
An internal service error occurred.
ListCalculatedAttributeDefinitions
$result = $client->listCalculatedAttributeDefinitions
([/* ... */]); $promise = $client->listCalculatedAttributeDefinitionsAsync
([/* ... */]);
Lists calculated attribute definitions for Customer Profiles
Parameter Syntax
$result = $client->listCalculatedAttributeDefinitions([ 'DomainName' => '<string>', // REQUIRED 'MaxResults' => <integer>, 'NextToken' => '<string>', ]);
Parameter Details
Members
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- MaxResults
-
- Type: int
The maximum number of calculated attribute definitions returned per page.
- NextToken
-
- Type: string
The pagination token from the previous call to ListCalculatedAttributeDefinitions.
Result Syntax
[ 'Items' => [ [ 'CalculatedAttributeName' => '<string>', 'CreatedAt' => <DateTime>, 'Description' => '<string>', 'DisplayName' => '<string>', 'LastUpdatedAt' => <DateTime>, 'Tags' => ['<string>', ...], ], // ... ], 'NextToken' => '<string>', ]
Result Details
Members
- Items
-
- Type: Array of ListCalculatedAttributeDefinitionItem structures
The list of calculated attribute definitions.
- NextToken
-
- Type: string
The pagination token from the previous call to ListCalculatedAttributeDefinitions.
Errors
- BadRequestException:
The input you provided is invalid.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
- AccessDeniedException:
You do not have sufficient access to perform this action.
- ThrottlingException:
You exceeded the maximum number of requests.
- InternalServerException:
An internal service error occurred.
ListCalculatedAttributesForProfile
$result = $client->listCalculatedAttributesForProfile
([/* ... */]); $promise = $client->listCalculatedAttributesForProfileAsync
([/* ... */]);
Retrieve a list of calculated attributes for a customer profile.
Parameter Syntax
$result = $client->listCalculatedAttributesForProfile([ 'DomainName' => '<string>', // REQUIRED 'MaxResults' => <integer>, 'NextToken' => '<string>', 'ProfileId' => '<string>', // REQUIRED ]);
Parameter Details
Members
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- MaxResults
-
- Type: int
The maximum number of calculated attributes returned per page.
- NextToken
-
- Type: string
The pagination token from the previous call to ListCalculatedAttributesForProfile.
- ProfileId
-
- Required: Yes
- Type: string
The unique identifier of a customer profile.
Result Syntax
[ 'Items' => [ [ 'CalculatedAttributeName' => '<string>', 'DisplayName' => '<string>', 'IsDataPartial' => '<string>', 'Value' => '<string>', ], // ... ], 'NextToken' => '<string>', ]
Result Details
Members
- Items
-
- Type: Array of ListCalculatedAttributeForProfileItem structures
The list of calculated attributes.
- NextToken
-
- Type: string
The pagination token from the previous call to ListCalculatedAttributesForProfile.
Errors
- BadRequestException:
The input you provided is invalid.
- AccessDeniedException:
You do not have sufficient access to perform this action.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
- ThrottlingException:
You exceeded the maximum number of requests.
- InternalServerException:
An internal service error occurred.
ListDomains
$result = $client->listDomains
([/* ... */]); $promise = $client->listDomainsAsync
([/* ... */]);
Returns a list of all the domains for an AWS account that have been created.
Parameter Syntax
$result = $client->listDomains([ 'MaxResults' => <integer>, 'NextToken' => '<string>', ]);
Parameter Details
Members
- MaxResults
-
- Type: int
The maximum number of objects returned per page.
- NextToken
-
- Type: string
The pagination token from the previous ListDomain API call.
Result Syntax
[ 'Items' => [ [ 'CreatedAt' => <DateTime>, 'DomainName' => '<string>', 'LastUpdatedAt' => <DateTime>, 'Tags' => ['<string>', ...], ], // ... ], 'NextToken' => '<string>', ]
Result Details
Members
- Items
-
- Type: Array of ListDomainItem structures
The list of ListDomains instances.
- NextToken
-
- Type: string
The pagination token from the previous ListDomains API call.
Errors
- BadRequestException:
The input you provided is invalid.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
- AccessDeniedException:
You do not have sufficient access to perform this action.
- ThrottlingException:
You exceeded the maximum number of requests.
- InternalServerException:
An internal service error occurred.
ListEventStreams
$result = $client->listEventStreams
([/* ... */]); $promise = $client->listEventStreamsAsync
([/* ... */]);
Returns a list of all the event streams in a specific domain.
Parameter Syntax
$result = $client->listEventStreams([ 'DomainName' => '<string>', // REQUIRED 'MaxResults' => <integer>, 'NextToken' => '<string>', ]);
Parameter Details
Members
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- MaxResults
-
- Type: int
The maximum number of objects returned per page.
- NextToken
-
- Type: string
Identifies the next page of results to return.
Result Syntax
[ 'Items' => [ [ 'DestinationSummary' => [ 'Status' => 'HEALTHY|UNHEALTHY', 'UnhealthySince' => <DateTime>, 'Uri' => '<string>', ], 'DomainName' => '<string>', 'EventStreamArn' => '<string>', 'EventStreamName' => '<string>', 'State' => 'RUNNING|STOPPED', 'StoppedSince' => <DateTime>, 'Tags' => ['<string>', ...], ], // ... ], 'NextToken' => '<string>', ]
Result Details
Members
- Items
-
- Type: Array of EventStreamSummary structures
Contains summary information about an EventStream.
- NextToken
-
- Type: string
Identifies the next page of results to return.
Errors
- BadRequestException:
The input you provided is invalid.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
- AccessDeniedException:
You do not have sufficient access to perform this action.
- ThrottlingException:
You exceeded the maximum number of requests.
- InternalServerException:
An internal service error occurred.
ListIdentityResolutionJobs
$result = $client->listIdentityResolutionJobs
([/* ... */]); $promise = $client->listIdentityResolutionJobsAsync
([/* ... */]);
Lists all of the Identity Resolution Jobs in your domain. The response sorts the list by JobStartTime
.
Parameter Syntax
$result = $client->listIdentityResolutionJobs([ 'DomainName' => '<string>', // REQUIRED 'MaxResults' => <integer>, 'NextToken' => '<string>', ]);
Parameter Details
Members
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- MaxResults
-
- Type: int
The maximum number of results to return per page.
- NextToken
-
- Type: string
The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.
Result Syntax
[ 'IdentityResolutionJobsList' => [ [ 'DomainName' => '<string>', 'ExportingLocation' => [ 'S3Exporting' => [ 'S3BucketName' => '<string>', 'S3KeyName' => '<string>', ], ], 'JobEndTime' => <DateTime>, 'JobId' => '<string>', 'JobStartTime' => <DateTime>, 'JobStats' => [ 'NumberOfMatchesFound' => <integer>, 'NumberOfMergesDone' => <integer>, 'NumberOfProfilesReviewed' => <integer>, ], 'Message' => '<string>', 'Status' => 'PENDING|PREPROCESSING|FIND_MATCHING|MERGING|COMPLETED|PARTIAL_SUCCESS|FAILED', ], // ... ], 'NextToken' => '<string>', ]
Result Details
Members
- IdentityResolutionJobsList
-
- Type: Array of IdentityResolutionJob structures
A list of Identity Resolution Jobs.
- NextToken
-
- Type: string
If there are additional results, this is the token for the next set of results.
Errors
- BadRequestException:
The input you provided is invalid.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
- AccessDeniedException:
You do not have sufficient access to perform this action.
- ThrottlingException:
You exceeded the maximum number of requests.
- InternalServerException:
An internal service error occurred.
ListIntegrations
$result = $client->listIntegrations
([/* ... */]); $promise = $client->listIntegrationsAsync
([/* ... */]);
Lists all of the integrations in your domain.
Parameter Syntax
$result = $client->listIntegrations([ 'DomainName' => '<string>', // REQUIRED 'IncludeHidden' => true || false, 'MaxResults' => <integer>, 'NextToken' => '<string>', ]);
Parameter Details
Members
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- IncludeHidden
-
- Type: boolean
Boolean to indicate if hidden integration should be returned. Defaults to
False
. - MaxResults
-
- Type: int
The maximum number of objects returned per page.
- NextToken
-
- Type: string
The pagination token from the previous ListIntegrations API call.
Result Syntax
[ 'Items' => [ [ 'CreatedAt' => <DateTime>, 'DomainName' => '<string>', 'IsUnstructured' => true || false, 'LastUpdatedAt' => <DateTime>, 'ObjectTypeName' => '<string>', 'ObjectTypeNames' => ['<string>', ...], 'RoleArn' => '<string>', 'Tags' => ['<string>', ...], 'Uri' => '<string>', 'WorkflowId' => '<string>', ], // ... ], 'NextToken' => '<string>', ]
Result Details
Members
- Items
-
- Type: Array of ListIntegrationItem structures
The list of ListIntegrations instances.
- NextToken
-
- Type: string
The pagination token from the previous ListIntegrations API call.
Errors
- BadRequestException:
The input you provided is invalid.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
- AccessDeniedException:
You do not have sufficient access to perform this action.
- ThrottlingException:
You exceeded the maximum number of requests.
- InternalServerException:
An internal service error occurred.
ListProfileObjectTypeTemplates
$result = $client->listProfileObjectTypeTemplates
([/* ... */]); $promise = $client->listProfileObjectTypeTemplatesAsync
([/* ... */]);
Lists all of the template information for object types.
Parameter Syntax
$result = $client->listProfileObjectTypeTemplates([ 'MaxResults' => <integer>, 'NextToken' => '<string>', ]);
Parameter Details
Members
- MaxResults
-
- Type: int
The maximum number of objects returned per page.
- NextToken
-
- Type: string
The pagination token from the previous ListObjectTypeTemplates API call.
Result Syntax
[ 'Items' => [ [ 'SourceName' => '<string>', 'SourceObject' => '<string>', 'TemplateId' => '<string>', ], // ... ], 'NextToken' => '<string>', ]
Result Details
Members
- Items
-
- Type: Array of ListProfileObjectTypeTemplateItem structures
The list of ListProfileObjectType template instances.
- NextToken
-
- Type: string
The pagination token from the previous ListObjectTypeTemplates API call.
Errors
- BadRequestException:
The input you provided is invalid.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
- AccessDeniedException:
You do not have sufficient access to perform this action.
- ThrottlingException:
You exceeded the maximum number of requests.
- InternalServerException:
An internal service error occurred.
ListProfileObjectTypes
$result = $client->listProfileObjectTypes
([/* ... */]); $promise = $client->listProfileObjectTypesAsync
([/* ... */]);
Lists all of the templates available within the service.
Parameter Syntax
$result = $client->listProfileObjectTypes([ 'DomainName' => '<string>', // REQUIRED 'MaxResults' => <integer>, 'NextToken' => '<string>', ]);
Parameter Details
Members
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- MaxResults
-
- Type: int
The maximum number of objects returned per page.
- NextToken
-
- Type: string
Identifies the next page of results to return.
Result Syntax
[ 'Items' => [ [ 'CreatedAt' => <DateTime>, 'Description' => '<string>', 'LastUpdatedAt' => <DateTime>, 'MaxAvailableProfileObjectCount' => <integer>, 'MaxProfileObjectCount' => <integer>, 'ObjectTypeName' => '<string>', 'Tags' => ['<string>', ...], ], // ... ], 'NextToken' => '<string>', ]
Result Details
Members
- Items
-
- Type: Array of ListProfileObjectTypeItem structures
The list of ListProfileObjectTypes instances.
- NextToken
-
- Type: string
Identifies the next page of results to return.
Errors
- BadRequestException:
The input you provided is invalid.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
- AccessDeniedException:
You do not have sufficient access to perform this action.
- ThrottlingException:
You exceeded the maximum number of requests.
- InternalServerException:
An internal service error occurred.
ListProfileObjects
$result = $client->listProfileObjects
([/* ... */]); $promise = $client->listProfileObjectsAsync
([/* ... */]);
Returns a list of objects associated with a profile of a given ProfileObjectType.
Parameter Syntax
$result = $client->listProfileObjects([ 'DomainName' => '<string>', // REQUIRED 'MaxResults' => <integer>, 'NextToken' => '<string>', 'ObjectFilter' => [ 'KeyName' => '<string>', // REQUIRED 'Values' => ['<string>', ...], // REQUIRED ], 'ObjectTypeName' => '<string>', // REQUIRED 'ProfileId' => '<string>', // REQUIRED ]);
Parameter Details
Members
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- MaxResults
-
- Type: int
The maximum number of objects returned per page.
- NextToken
-
- Type: string
The pagination token from the previous call to ListProfileObjects.
- ObjectFilter
-
- Type: ObjectFilter structure
Applies a filter to the response to include profile objects with the specified index values.
- ObjectTypeName
-
- Required: Yes
- Type: string
The name of the profile object type.
- ProfileId
-
- Required: Yes
- Type: string
The unique identifier of a customer profile.
Result Syntax
[ 'Items' => [ [ 'Object' => '<string>', 'ObjectTypeName' => '<string>', 'ProfileObjectUniqueKey' => '<string>', ], // ... ], 'NextToken' => '<string>', ]
Result Details
Members
- Items
-
- Type: Array of ListProfileObjectsItem structures
The list of ListProfileObject instances.
- NextToken
-
- Type: string
The pagination token from the previous call to ListProfileObjects.
Errors
- BadRequestException:
The input you provided is invalid.
- AccessDeniedException:
You do not have sufficient access to perform this action.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
- ThrottlingException:
You exceeded the maximum number of requests.
- InternalServerException:
An internal service error occurred.
ListRuleBasedMatches
$result = $client->listRuleBasedMatches
([/* ... */]); $promise = $client->listRuleBasedMatchesAsync
([/* ... */]);
Returns a set of MatchIds
that belong to the given domain.
Parameter Syntax
$result = $client->listRuleBasedMatches([ 'DomainName' => '<string>', // REQUIRED 'MaxResults' => <integer>, 'NextToken' => '<string>', ]);
Parameter Details
Members
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- MaxResults
-
- Type: int
The maximum number of
MatchIds
returned per page. - NextToken
-
- Type: string
The pagination token from the previous
ListRuleBasedMatches
API call.
Result Syntax
[ 'MatchIds' => ['<string>', ...], 'NextToken' => '<string>', ]
Result Details
Members
- MatchIds
-
- Type: Array of strings
The list of
MatchIds
for the given domain. - NextToken
-
- Type: string
The pagination token from the previous
ListRuleBasedMatches
API call.
Errors
- BadRequestException:
The input you provided is invalid.
- AccessDeniedException:
You do not have sufficient access to perform this action.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
- ThrottlingException:
You exceeded the maximum number of requests.
- InternalServerException:
An internal service error occurred.
ListTagsForResource
$result = $client->listTagsForResource
([/* ... */]); $promise = $client->listTagsForResourceAsync
([/* ... */]);
Displays the tags associated with an Amazon Connect Customer Profiles resource. In Connect Customer Profiles, domains, profile object types, and integrations can be tagged.
Parameter Syntax
$result = $client->listTagsForResource([ 'resourceArn' => '<string>', // REQUIRED ]);
Parameter Details
Members
- resourceArn
-
- Required: Yes
- Type: string
The ARN of the resource for which you want to view tags.
Result Syntax
[ 'tags' => ['<string>', ...], ]
Result Details
Members
- tags
-
- Type: Associative array of custom strings keys (TagKey) to strings
The tags used to organize, track, or control access for this resource.
Errors
- InternalServerException:
An internal service error occurred.
- BadRequestException:
The input you provided is invalid.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
ListWorkflows
$result = $client->listWorkflows
([/* ... */]); $promise = $client->listWorkflowsAsync
([/* ... */]);
Query to list all workflows.
Parameter Syntax
$result = $client->listWorkflows([ 'DomainName' => '<string>', // REQUIRED 'MaxResults' => <integer>, 'NextToken' => '<string>', 'QueryEndDate' => <integer || string || DateTime>, 'QueryStartDate' => <integer || string || DateTime>, 'Status' => 'NOT_STARTED|IN_PROGRESS|COMPLETE|FAILED|SPLIT|RETRY|CANCELLED', 'WorkflowType' => 'APPFLOW_INTEGRATION', ]);
Parameter Details
Members
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- MaxResults
-
- Type: int
The maximum number of results to return per page.
- NextToken
-
- Type: string
The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.
- QueryEndDate
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
Retrieve workflows ended after timestamp.
- QueryStartDate
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
Retrieve workflows started after timestamp.
- Status
-
- Type: string
Status of workflow execution.
- WorkflowType
-
- Type: string
The type of workflow. The only supported value is APPFLOW_INTEGRATION.
Result Syntax
[ 'Items' => [ [ 'CreatedAt' => <DateTime>, 'LastUpdatedAt' => <DateTime>, 'Status' => 'NOT_STARTED|IN_PROGRESS|COMPLETE|FAILED|SPLIT|RETRY|CANCELLED', 'StatusDescription' => '<string>', 'WorkflowId' => '<string>', 'WorkflowType' => 'APPFLOW_INTEGRATION', ], // ... ], 'NextToken' => '<string>', ]
Result Details
Members
- Items
-
- Type: Array of ListWorkflowsItem structures
List containing workflow details.
- NextToken
-
- Type: string
If there are additional results, this is the token for the next set of results.
Errors
- BadRequestException:
The input you provided is invalid.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
- AccessDeniedException:
You do not have sufficient access to perform this action.
- ThrottlingException:
You exceeded the maximum number of requests.
- InternalServerException:
An internal service error occurred.
MergeProfiles
$result = $client->mergeProfiles
([/* ... */]); $promise = $client->mergeProfilesAsync
([/* ... */]);
Runs an AWS Lambda job that does the following:
-
All the profileKeys in the
ProfileToBeMerged
will be moved to the main profile. -
All the objects in the
ProfileToBeMerged
will be moved to the main profile. -
All the
ProfileToBeMerged
will be deleted at the end. -
All the profileKeys in the
ProfileIdsToBeMerged
will be moved to the main profile. -
Standard fields are merged as follows:
-
Fields are always "union"-ed if there are no conflicts in standard fields or attributeKeys.
-
When there are conflicting fields:
-
If no
SourceProfileIds
entry is specified, the main Profile value is always taken. -
If a
SourceProfileIds
entry is specified, the specified profileId is always taken, even if it is a NULL value.
-
-
You can use MergeProfiles together with GetMatches, which returns potentially matching profiles, or use it with the results of another matching system. After profiles have been merged, they cannot be separated (unmerged).
Parameter Syntax
$result = $client->mergeProfiles([ 'DomainName' => '<string>', // REQUIRED 'FieldSourceProfileIds' => [ 'AccountNumber' => '<string>', 'AdditionalInformation' => '<string>', 'Address' => '<string>', 'Attributes' => ['<string>', ...], 'BillingAddress' => '<string>', 'BirthDate' => '<string>', 'BusinessEmailAddress' => '<string>', 'BusinessName' => '<string>', 'BusinessPhoneNumber' => '<string>', 'EmailAddress' => '<string>', 'FirstName' => '<string>', 'Gender' => '<string>', 'HomePhoneNumber' => '<string>', 'LastName' => '<string>', 'MailingAddress' => '<string>', 'MiddleName' => '<string>', 'MobilePhoneNumber' => '<string>', 'PartyType' => '<string>', 'PersonalEmailAddress' => '<string>', 'PhoneNumber' => '<string>', 'ShippingAddress' => '<string>', ], 'MainProfileId' => '<string>', // REQUIRED 'ProfileIdsToBeMerged' => ['<string>', ...], // REQUIRED ]);
Parameter Details
Members
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- FieldSourceProfileIds
-
- Type: FieldSourceProfileIds structure
The identifiers of the fields in the profile that has the information you want to apply to the merge. For example, say you want to merge EmailAddress from Profile1 into MainProfile. This would be the identifier of the EmailAddress field in Profile1.
- MainProfileId
-
- Required: Yes
- Type: string
The identifier of the profile to be taken.
- ProfileIdsToBeMerged
-
- Required: Yes
- Type: Array of strings
The identifier of the profile to be merged into MainProfileId.
Result Syntax
[ 'Message' => '<string>', ]
Result Details
Members
- Message
-
- Type: string
A message that indicates the merge request is complete.
Errors
- BadRequestException:
The input you provided is invalid.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
- ThrottlingException:
You exceeded the maximum number of requests.
- InternalServerException:
An internal service error occurred.
PutIntegration
$result = $client->putIntegration
([/* ... */]); $promise = $client->putIntegrationAsync
([/* ... */]);
Adds an integration between the service and a third-party service, which includes Amazon AppFlow and Amazon Connect.
An integration can belong to only one domain.
To add or remove tags on an existing Integration, see TagResource / UntagResource.
Parameter Syntax
$result = $client->putIntegration([ 'DomainName' => '<string>', // REQUIRED 'FlowDefinition' => [ 'Description' => '<string>', 'FlowName' => '<string>', // REQUIRED 'KmsArn' => '<string>', // REQUIRED 'SourceFlowConfig' => [ // REQUIRED 'ConnectorProfileName' => '<string>', 'ConnectorType' => 'Salesforce|Marketo|Zendesk|Servicenow|S3', // REQUIRED 'IncrementalPullConfig' => [ 'DatetimeTypeFieldName' => '<string>', ], 'SourceConnectorProperties' => [ // REQUIRED 'Marketo' => [ 'Object' => '<string>', // REQUIRED ], 'S3' => [ 'BucketName' => '<string>', // REQUIRED 'BucketPrefix' => '<string>', ], 'Salesforce' => [ 'EnableDynamicFieldUpdate' => true || false, 'IncludeDeletedRecords' => true || false, 'Object' => '<string>', // REQUIRED ], 'ServiceNow' => [ 'Object' => '<string>', // REQUIRED ], 'Zendesk' => [ 'Object' => '<string>', // REQUIRED ], ], ], 'Tasks' => [ // REQUIRED [ 'ConnectorOperator' => [ 'Marketo' => 'PROJECTION|LESS_THAN|GREATER_THAN|BETWEEN|ADDITION|MULTIPLICATION|DIVISION|SUBTRACTION|MASK_ALL|MASK_FIRST_N|MASK_LAST_N|VALIDATE_NON_NULL|VALIDATE_NON_ZERO|VALIDATE_NON_NEGATIVE|VALIDATE_NUMERIC|NO_OP', 'S3' => 'PROJECTION|LESS_THAN|GREATER_THAN|BETWEEN|LESS_THAN_OR_EQUAL_TO|GREATER_THAN_OR_EQUAL_TO|EQUAL_TO|NOT_EQUAL_TO|ADDITION|MULTIPLICATION|DIVISION|SUBTRACTION|MASK_ALL|MASK_FIRST_N|MASK_LAST_N|VALIDATE_NON_NULL|VALIDATE_NON_ZERO|VALIDATE_NON_NEGATIVE|VALIDATE_NUMERIC|NO_OP', 'Salesforce' => 'PROJECTION|LESS_THAN|CONTAINS|GREATER_THAN|BETWEEN|LESS_THAN_OR_EQUAL_TO|GREATER_THAN_OR_EQUAL_TO|EQUAL_TO|NOT_EQUAL_TO|ADDITION|MULTIPLICATION|DIVISION|SUBTRACTION|MASK_ALL|MASK_FIRST_N|MASK_LAST_N|VALIDATE_NON_NULL|VALIDATE_NON_ZERO|VALIDATE_NON_NEGATIVE|VALIDATE_NUMERIC|NO_OP', 'ServiceNow' => 'PROJECTION|CONTAINS|LESS_THAN|GREATER_THAN|BETWEEN|LESS_THAN_OR_EQUAL_TO|GREATER_THAN_OR_EQUAL_TO|EQUAL_TO|NOT_EQUAL_TO|ADDITION|MULTIPLICATION|DIVISION|SUBTRACTION|MASK_ALL|MASK_FIRST_N|MASK_LAST_N|VALIDATE_NON_NULL|VALIDATE_NON_ZERO|VALIDATE_NON_NEGATIVE|VALIDATE_NUMERIC|NO_OP', 'Zendesk' => 'PROJECTION|GREATER_THAN|ADDITION|MULTIPLICATION|DIVISION|SUBTRACTION|MASK_ALL|MASK_FIRST_N|MASK_LAST_N|VALIDATE_NON_NULL|VALIDATE_NON_ZERO|VALIDATE_NON_NEGATIVE|VALIDATE_NUMERIC|NO_OP', ], 'DestinationField' => '<string>', 'SourceFields' => ['<string>', ...], // REQUIRED 'TaskProperties' => ['<string>', ...], 'TaskType' => 'Arithmetic|Filter|Map|Mask|Merge|Truncate|Validate', // REQUIRED ], // ... ], 'TriggerConfig' => [ // REQUIRED 'TriggerProperties' => [ 'Scheduled' => [ 'DataPullMode' => 'Incremental|Complete', 'FirstExecutionFrom' => <integer || string || DateTime>, 'ScheduleEndTime' => <integer || string || DateTime>, 'ScheduleExpression' => '<string>', // REQUIRED 'ScheduleOffset' => <integer>, 'ScheduleStartTime' => <integer || string || DateTime>, 'Timezone' => '<string>', ], ], 'TriggerType' => 'Scheduled|Event|OnDemand', // REQUIRED ], ], 'ObjectTypeName' => '<string>', 'ObjectTypeNames' => ['<string>', ...], 'RoleArn' => '<string>', 'Tags' => ['<string>', ...], 'Uri' => '<string>', ]);
Parameter Details
Members
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- FlowDefinition
-
- Type: FlowDefinition structure
The configuration that controls how Customer Profiles retrieves data from the source.
- ObjectTypeName
-
- Type: string
The name of the profile object type.
- ObjectTypeNames
-
- Type: Associative array of custom strings keys (string1To255) to strings
A map in which each key is an event type from an external application such as Segment or Shopify, and each value is an
ObjectTypeName
(template) used to ingest the event. It supports the following event types:SegmentIdentify
,ShopifyCreateCustomers
,ShopifyUpdateCustomers
,ShopifyCreateDraftOrders
,ShopifyUpdateDraftOrders
,ShopifyCreateOrders
, andShopifyUpdatedOrders
. - RoleArn
-
- Type: string
The Amazon Resource Name (ARN) of the IAM role. The Integration uses this role to make Customer Profiles requests on your behalf.
- Tags
-
- Type: Associative array of custom strings keys (TagKey) to strings
The tags used to organize, track, or control access for this resource.
- Uri
-
- Type: string
The URI of the S3 bucket or any other type of data source.
Result Syntax
[ 'CreatedAt' => <DateTime>, 'DomainName' => '<string>', 'IsUnstructured' => true || false, 'LastUpdatedAt' => <DateTime>, 'ObjectTypeName' => '<string>', 'ObjectTypeNames' => ['<string>', ...], 'RoleArn' => '<string>', 'Tags' => ['<string>', ...], 'Uri' => '<string>', 'WorkflowId' => '<string>', ]
Result Details
Members
- CreatedAt
-
- Required: Yes
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp of when the domain was created.
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- IsUnstructured
-
- Type: boolean
Boolean that shows if the Flow that's associated with the Integration is created in Amazon Appflow, or with ObjectTypeName equals _unstructured via API/CLI in flowDefinition.
- LastUpdatedAt
-
- Required: Yes
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp of when the domain was most recently edited.
- ObjectTypeName
-
- Type: string
The name of the profile object type.
- ObjectTypeNames
-
- Type: Associative array of custom strings keys (string1To255) to strings
A map in which each key is an event type from an external application such as Segment or Shopify, and each value is an
ObjectTypeName
(template) used to ingest the event. It supports the following event types:SegmentIdentify
,ShopifyCreateCustomers
,ShopifyUpdateCustomers
,ShopifyCreateDraftOrders
,ShopifyUpdateDraftOrders
,ShopifyCreateOrders
, andShopifyUpdatedOrders
. - RoleArn
-
- Type: string
The Amazon Resource Name (ARN) of the IAM role. The Integration uses this role to make Customer Profiles requests on your behalf.
- Tags
-
- Type: Associative array of custom strings keys (TagKey) to strings
The tags used to organize, track, or control access for this resource.
- Uri
-
- Required: Yes
- Type: string
The URI of the S3 bucket or any other type of data source.
- WorkflowId
-
- Type: string
Unique identifier for the workflow.
Errors
- BadRequestException:
The input you provided is invalid.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
- AccessDeniedException:
You do not have sufficient access to perform this action.
- ThrottlingException:
You exceeded the maximum number of requests.
- InternalServerException:
An internal service error occurred.
PutProfileObject
$result = $client->putProfileObject
([/* ... */]); $promise = $client->putProfileObjectAsync
([/* ... */]);
Adds additional objects to customer profiles of a given ObjectType.
When adding a specific profile object, like a Contact Record, an inferred profile can get created if it is not mapped to an existing profile. The resulting profile will only have a phone number populated in the standard ProfileObject. Any additional Contact Records with the same phone number will be mapped to the same inferred profile.
When a ProfileObject is created and if a ProfileObjectType already exists for the ProfileObject, it will provide data to a standard profile depending on the ProfileObjectType definition.
PutProfileObject needs an ObjectType, which can be created using PutProfileObjectType.
Parameter Syntax
$result = $client->putProfileObject([ 'DomainName' => '<string>', // REQUIRED 'Object' => '<string>', // REQUIRED 'ObjectTypeName' => '<string>', // REQUIRED ]);
Parameter Details
Members
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- Object
-
- Required: Yes
- Type: string
A string that is serialized from a JSON object.
- ObjectTypeName
-
- Required: Yes
- Type: string
The name of the profile object type.
Result Syntax
[ 'ProfileObjectUniqueKey' => '<string>', ]
Result Details
Members
- ProfileObjectUniqueKey
-
- Type: string
The unique identifier of the profile object generated by the service.
Errors
- BadRequestException:
The input you provided is invalid.
- AccessDeniedException:
You do not have sufficient access to perform this action.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
- ThrottlingException:
You exceeded the maximum number of requests.
- InternalServerException:
An internal service error occurred.
PutProfileObjectType
$result = $client->putProfileObjectType
([/* ... */]); $promise = $client->putProfileObjectTypeAsync
([/* ... */]);
Defines a ProfileObjectType.
To add or remove tags on an existing ObjectType, see TagResource/UntagResource.
Parameter Syntax
$result = $client->putProfileObjectType([ 'AllowProfileCreation' => true || false, 'Description' => '<string>', // REQUIRED 'DomainName' => '<string>', // REQUIRED 'EncryptionKey' => '<string>', 'ExpirationDays' => <integer>, 'Fields' => [ '<name>' => [ 'ContentType' => 'STRING|NUMBER|PHONE_NUMBER|EMAIL_ADDRESS|NAME', 'Source' => '<string>', 'Target' => '<string>', ], // ... ], 'Keys' => [ '<name>' => [ [ 'FieldNames' => ['<string>', ...], 'StandardIdentifiers' => ['<string>', ...], ], // ... ], // ... ], 'MaxProfileObjectCount' => <integer>, 'ObjectTypeName' => '<string>', // REQUIRED 'SourceLastUpdatedTimestampFormat' => '<string>', 'Tags' => ['<string>', ...], 'TemplateId' => '<string>', ]);
Parameter Details
Members
- AllowProfileCreation
-
- Type: boolean
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. - Description
-
- Required: Yes
- Type: string
Description of the profile object type.
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- EncryptionKey
-
- Type: string
The customer-provided key to encrypt the profile object that will be created in this profile object type.
- ExpirationDays
-
- Type: int
The number of days until the data in the object expires.
- Fields
-
- Type: Associative array of custom strings keys (name) to ObjectTypeField structures
A map of the name and ObjectType field.
- Keys
-
- Type: Associative array of custom strings keys (name) to ObjectTypeKey structuress
A list of unique keys that can be used to map data to the profile.
- MaxProfileObjectCount
-
- Type: int
The amount of profile object max count assigned to the object type
- ObjectTypeName
-
- Required: Yes
- Type: string
The name of the profile object type.
- SourceLastUpdatedTimestampFormat
-
- Type: string
The format of your
sourceLastUpdatedTimestamp
that was previously set up. - Tags
-
- Type: Associative array of custom strings keys (TagKey) to strings
The tags used to organize, track, or control access for this resource.
- TemplateId
-
- Type: string
A unique identifier for the object template. For some attributes in the request, the service will use the default value from the object template when TemplateId is present. If these attributes are present in the request, the service may return a
BadRequestException
. These attributes include: AllowProfileCreation, SourceLastUpdatedTimestampFormat, Fields, and Keys. For example, if AllowProfileCreation is set to true when TemplateId is set, the service may return aBadRequestException
.
Result Syntax
[ 'AllowProfileCreation' => true || false, 'CreatedAt' => <DateTime>, 'Description' => '<string>', 'EncryptionKey' => '<string>', 'ExpirationDays' => <integer>, 'Fields' => [ '<name>' => [ 'ContentType' => 'STRING|NUMBER|PHONE_NUMBER|EMAIL_ADDRESS|NAME', 'Source' => '<string>', 'Target' => '<string>', ], // ... ], 'Keys' => [ '<name>' => [ [ 'FieldNames' => ['<string>', ...], 'StandardIdentifiers' => ['<string>', ...], ], // ... ], // ... ], 'LastUpdatedAt' => <DateTime>, 'MaxAvailableProfileObjectCount' => <integer>, 'MaxProfileObjectCount' => <integer>, 'ObjectTypeName' => '<string>', 'SourceLastUpdatedTimestampFormat' => '<string>', 'Tags' => ['<string>', ...], 'TemplateId' => '<string>', ]
Result Details
Members
- AllowProfileCreation
-
- Type: boolean
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. - CreatedAt
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp of when the domain was created.
- Description
-
- Required: Yes
- Type: string
Description of the profile object type.
- EncryptionKey
-
- Type: string
The customer-provided key to encrypt the profile object that will be created in this profile object type.
- ExpirationDays
-
- Type: int
The number of days until the data in the object expires.
- Fields
-
- Type: Associative array of custom strings keys (name) to ObjectTypeField structures
A map of the name and ObjectType field.
- Keys
-
- Type: Associative array of custom strings keys (name) to ObjectTypeKey structuress
A list of unique keys that can be used to map data to the profile.
- LastUpdatedAt
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp of when the domain was most recently edited.
- MaxAvailableProfileObjectCount
-
- Type: int
The amount of provisioned profile object max count available.
- MaxProfileObjectCount
-
- Type: int
The amount of profile object max count assigned to the object type.
- ObjectTypeName
-
- Required: Yes
- Type: string
The name of the profile object type.
- SourceLastUpdatedTimestampFormat
-
- Type: string
The format of your
sourceLastUpdatedTimestamp
that was previously set up in fields that were parsed using SimpleDateFormat. If you havesourceLastUpdatedTimestamp
in your field, you must set upsourceLastUpdatedTimestampFormat
. - Tags
-
- Type: Associative array of custom strings keys (TagKey) to strings
The tags used to organize, track, or control access for this resource.
- TemplateId
-
- Type: string
A unique identifier for the object template.
Errors
- BadRequestException:
The input you provided is invalid.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
- AccessDeniedException:
You do not have sufficient access to perform this action.
- ThrottlingException:
You exceeded the maximum number of requests.
- InternalServerException:
An internal service error occurred.
SearchProfiles
$result = $client->searchProfiles
([/* ... */]); $promise = $client->searchProfilesAsync
([/* ... */]);
Searches for profiles within a specific domain using one or more predefined search keys (e.g., _fullName, _phone, _email, _account, etc.) and/or custom-defined search keys. A search key is a data type pair that consists of a KeyName
and Values
list.
This operation supports searching for profiles with a minimum of 1 key-value(s) pair and up to 5 key-value(s) pairs using either AND
or OR
logic.
Parameter Syntax
$result = $client->searchProfiles([ 'AdditionalSearchKeys' => [ [ 'KeyName' => '<string>', // REQUIRED 'Values' => ['<string>', ...], // REQUIRED ], // ... ], 'DomainName' => '<string>', // REQUIRED 'KeyName' => '<string>', // REQUIRED 'LogicalOperator' => 'AND|OR', 'MaxResults' => <integer>, 'NextToken' => '<string>', 'Values' => ['<string>', ...], // REQUIRED ]);
Parameter Details
Members
- AdditionalSearchKeys
-
- Type: Array of AdditionalSearchKey structures
A list of
AdditionalSearchKey
objects that are each searchable identifiers of a profile. EachAdditionalSearchKey
object contains aKeyName
and a list ofValues
associated with that specific key (i.e., a key-value(s) pair). These additional search keys will be used in conjunction with theLogicalOperator
and the requiredKeyName
andValues
parameters to search for profiles that satisfy the search criteria. - DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- KeyName
-
- Required: Yes
- Type: string
A searchable identifier of a customer profile. The predefined keys you can use to search include: _account, _profileId, _assetId, _caseId, _orderId, _fullName, _phone, _email, _ctrContactId, _marketoLeadId, _salesforceAccountId, _salesforceContactId, _salesforceAssetId, _zendeskUserId, _zendeskExternalId, _zendeskTicketId, _serviceNowSystemId, _serviceNowIncidentId, _segmentUserId, _shopifyCustomerId, _shopifyOrderId.
- LogicalOperator
-
- Type: string
Relationship between all specified search keys that will be used to search for profiles. This includes the required
KeyName
andValues
parameters as well as any key-value(s) pairs specified in theAdditionalSearchKeys
list.This parameter influences which profiles will be returned in the response in the following manner:
-
AND
- The response only includes profiles that match all of the search keys. -
OR
- The response includes profiles that match at least one of the search keys.
The
OR
relationship is the default behavior if this parameter is not included in the request. - MaxResults
-
- Type: int
The maximum number of objects returned per page.
The default is 20 if this parameter is not included in the request.
- NextToken
-
- Type: string
The pagination token from the previous SearchProfiles API call.
- Values
-
- Required: Yes
- Type: Array of strings
A list of key values.
Result Syntax
[ 'Items' => [ [ 'AccountNumber' => '<string>', 'AdditionalInformation' => '<string>', 'Address' => [ 'Address1' => '<string>', 'Address2' => '<string>', 'Address3' => '<string>', 'Address4' => '<string>', 'City' => '<string>', 'Country' => '<string>', 'County' => '<string>', 'PostalCode' => '<string>', 'Province' => '<string>', 'State' => '<string>', ], 'Attributes' => ['<string>', ...], 'BillingAddress' => [ 'Address1' => '<string>', 'Address2' => '<string>', 'Address3' => '<string>', 'Address4' => '<string>', 'City' => '<string>', 'Country' => '<string>', 'County' => '<string>', 'PostalCode' => '<string>', 'Province' => '<string>', 'State' => '<string>', ], 'BirthDate' => '<string>', 'BusinessEmailAddress' => '<string>', 'BusinessName' => '<string>', 'BusinessPhoneNumber' => '<string>', 'EmailAddress' => '<string>', 'FirstName' => '<string>', 'FoundByItems' => [ [ 'KeyName' => '<string>', 'Values' => ['<string>', ...], ], // ... ], 'Gender' => 'MALE|FEMALE|UNSPECIFIED', 'GenderString' => '<string>', 'HomePhoneNumber' => '<string>', 'LastName' => '<string>', 'MailingAddress' => [ 'Address1' => '<string>', 'Address2' => '<string>', 'Address3' => '<string>', 'Address4' => '<string>', 'City' => '<string>', 'Country' => '<string>', 'County' => '<string>', 'PostalCode' => '<string>', 'Province' => '<string>', 'State' => '<string>', ], 'MiddleName' => '<string>', 'MobilePhoneNumber' => '<string>', 'PartyType' => 'INDIVIDUAL|BUSINESS|OTHER', 'PartyTypeString' => '<string>', 'PersonalEmailAddress' => '<string>', 'PhoneNumber' => '<string>', 'ProfileId' => '<string>', 'ShippingAddress' => [ 'Address1' => '<string>', 'Address2' => '<string>', 'Address3' => '<string>', 'Address4' => '<string>', 'City' => '<string>', 'Country' => '<string>', 'County' => '<string>', 'PostalCode' => '<string>', 'Province' => '<string>', 'State' => '<string>', ], ], // ... ], 'NextToken' => '<string>', ]
Result Details
Members
- Items
-
- Type: Array of Profile structures
The list of Profiles matching the search criteria.
- NextToken
-
- Type: string
The pagination token from the previous SearchProfiles API call.
Errors
- BadRequestException:
The input you provided is invalid.
- AccessDeniedException:
You do not have sufficient access to perform this action.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
- ThrottlingException:
You exceeded the maximum number of requests.
- InternalServerException:
An internal service error occurred.
TagResource
$result = $client->tagResource
([/* ... */]); $promise = $client->tagResourceAsync
([/* ... */]);
Assigns one or more tags (key-value pairs) to the specified Amazon Connect Customer Profiles resource. Tags can help you organize and categorize your resources. You can also use them to scope user permissions by granting a user permission to access or change only resources with certain tag values. In Connect Customer Profiles, domains, profile object types, and integrations can be tagged.
Tags don't have any semantic meaning to AWS and are interpreted strictly as strings of characters.
You can use the TagResource action with a resource that already has tags. If you specify a new tag key, this tag is appended to the list of tags associated with the resource. If you specify a tag key that is already associated with the resource, the new tag value that you specify replaces the previous value for that tag.
You can associate as many as 50 tags with a resource.
Parameter Syntax
$result = $client->tagResource([ 'resourceArn' => '<string>', // REQUIRED 'tags' => ['<string>', ...], // REQUIRED ]);
Parameter Details
Members
- resourceArn
-
- Required: Yes
- Type: string
The ARN of the resource that you're adding tags to.
- tags
-
- Required: Yes
- Type: Associative array of custom strings keys (TagKey) to strings
The tags used to organize, track, or control access for this resource.
Result Syntax
[]
Result Details
Errors
- InternalServerException:
An internal service error occurred.
- BadRequestException:
The input you provided is invalid.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
UntagResource
$result = $client->untagResource
([/* ... */]); $promise = $client->untagResourceAsync
([/* ... */]);
Removes one or more tags from the specified Amazon Connect Customer Profiles resource. In Connect Customer Profiles, domains, profile object types, and integrations can be tagged.
Parameter Syntax
$result = $client->untagResource([ 'resourceArn' => '<string>', // REQUIRED 'tagKeys' => ['<string>', ...], // REQUIRED ]);
Parameter Details
Members
- resourceArn
-
- Required: Yes
- Type: string
The ARN of the resource from which you are removing tags.
- tagKeys
-
- Required: Yes
- Type: Array of strings
The list of tag keys to remove from the resource.
Result Syntax
[]
Result Details
Errors
- InternalServerException:
An internal service error occurred.
- BadRequestException:
The input you provided is invalid.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
UpdateCalculatedAttributeDefinition
$result = $client->updateCalculatedAttributeDefinition
([/* ... */]); $promise = $client->updateCalculatedAttributeDefinitionAsync
([/* ... */]);
Updates an existing calculated attribute definition. When updating the Conditions, note that increasing the date range of a calculated attribute will not trigger inclusion of historical data greater than the current date range.
Parameter Syntax
$result = $client->updateCalculatedAttributeDefinition([ 'CalculatedAttributeName' => '<string>', // REQUIRED 'Conditions' => [ 'ObjectCount' => <integer>, 'Range' => [ 'Unit' => 'DAYS', // REQUIRED 'Value' => <integer>, // REQUIRED ], 'Threshold' => [ 'Operator' => 'EQUAL_TO|GREATER_THAN|LESS_THAN|NOT_EQUAL_TO', // REQUIRED 'Value' => '<string>', // REQUIRED ], ], 'Description' => '<string>', 'DisplayName' => '<string>', 'DomainName' => '<string>', // REQUIRED ]);
Parameter Details
Members
- CalculatedAttributeName
-
- Required: Yes
- Type: string
The unique name of the calculated attribute.
- Conditions
-
- Type: Conditions structure
The conditions including range, object count, and threshold for the calculated attribute.
- Description
-
- Type: string
The description of the calculated attribute.
- DisplayName
-
- Type: string
The display name of the calculated attribute.
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
Result Syntax
[ 'AttributeDetails' => [ 'Attributes' => [ [ 'Name' => '<string>', ], // ... ], 'Expression' => '<string>', ], 'CalculatedAttributeName' => '<string>', 'Conditions' => [ 'ObjectCount' => <integer>, 'Range' => [ 'Unit' => 'DAYS', 'Value' => <integer>, ], 'Threshold' => [ 'Operator' => 'EQUAL_TO|GREATER_THAN|LESS_THAN|NOT_EQUAL_TO', 'Value' => '<string>', ], ], 'CreatedAt' => <DateTime>, 'Description' => '<string>', 'DisplayName' => '<string>', 'LastUpdatedAt' => <DateTime>, 'Statistic' => 'FIRST_OCCURRENCE|LAST_OCCURRENCE|COUNT|SUM|MINIMUM|MAXIMUM|AVERAGE|MAX_OCCURRENCE', 'Tags' => ['<string>', ...], ]
Result Details
Members
- AttributeDetails
-
- Type: AttributeDetails structure
The mathematical expression and a list of attribute items specified in that expression.
- CalculatedAttributeName
-
- Type: string
The unique name of the calculated attribute.
- Conditions
-
- Type: Conditions structure
The conditions including range, object count, and threshold for the calculated attribute.
- CreatedAt
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp of when the calculated attribute definition was created.
- Description
-
- Type: string
The description of the calculated attribute.
- DisplayName
-
- Type: string
The display name of the calculated attribute.
- LastUpdatedAt
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp of when the calculated attribute definition was most recently edited.
- Statistic
-
- Type: string
The aggregation operation to perform for the calculated attribute.
- Tags
-
- Type: Associative array of custom strings keys (TagKey) to strings
The tags used to organize, track, or control access for this resource.
Errors
- BadRequestException:
The input you provided is invalid.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
- AccessDeniedException:
You do not have sufficient access to perform this action.
- ThrottlingException:
You exceeded the maximum number of requests.
- InternalServerException:
An internal service error occurred.
UpdateDomain
$result = $client->updateDomain
([/* ... */]); $promise = $client->updateDomainAsync
([/* ... */]);
Updates the properties of a domain, including creating or selecting a dead letter queue or an encryption key.
After a domain is created, the name can’t be changed.
Use this API or CreateDomain to enable identity resolution: set Matching
to true.
To prevent cross-service impersonation when you call this API, see Cross-service confused deputy prevention for sample policies that you should apply.
To add or remove tags on an existing Domain, see TagResource/UntagResource.
Parameter Syntax
$result = $client->updateDomain([ 'DeadLetterQueueUrl' => '<string>', 'DefaultEncryptionKey' => '<string>', 'DefaultExpirationDays' => <integer>, 'DomainName' => '<string>', // REQUIRED 'Matching' => [ 'AutoMerging' => [ 'ConflictResolution' => [ 'ConflictResolvingModel' => 'RECENCY|SOURCE', // REQUIRED 'SourceName' => '<string>', ], 'Consolidation' => [ 'MatchingAttributesList' => [ // REQUIRED ['<string>', ...], // ... ], ], 'Enabled' => true || false, // REQUIRED 'MinAllowedConfidenceScoreForMerging' => <float>, ], 'Enabled' => true || false, // REQUIRED 'ExportingConfig' => [ 'S3Exporting' => [ 'S3BucketName' => '<string>', // REQUIRED 'S3KeyName' => '<string>', ], ], 'JobSchedule' => [ 'DayOfTheWeek' => 'SUNDAY|MONDAY|TUESDAY|WEDNESDAY|THURSDAY|FRIDAY|SATURDAY', // REQUIRED 'Time' => '<string>', // REQUIRED ], ], 'RuleBasedMatching' => [ 'AttributeTypesSelector' => [ 'Address' => ['<string>', ...], 'AttributeMatchingModel' => 'ONE_TO_ONE|MANY_TO_MANY', // REQUIRED 'EmailAddress' => ['<string>', ...], 'PhoneNumber' => ['<string>', ...], ], 'ConflictResolution' => [ 'ConflictResolvingModel' => 'RECENCY|SOURCE', // REQUIRED 'SourceName' => '<string>', ], 'Enabled' => true || false, // REQUIRED 'ExportingConfig' => [ 'S3Exporting' => [ 'S3BucketName' => '<string>', // REQUIRED 'S3KeyName' => '<string>', ], ], 'MatchingRules' => [ [ 'Rule' => ['<string>', ...], // REQUIRED ], // ... ], 'MaxAllowedRuleLevelForMatching' => <integer>, 'MaxAllowedRuleLevelForMerging' => <integer>, ], 'Tags' => ['<string>', ...], ]);
Parameter Details
Members
- DeadLetterQueueUrl
-
- Type: string
The URL of the SQS dead letter queue, which is used for reporting errors associated with ingesting data from third party applications. If specified as an empty string, it will clear any existing value. You must set up a policy on the DeadLetterQueue for the SendMessage operation to enable Amazon Connect Customer Profiles to send messages to the DeadLetterQueue.
- DefaultEncryptionKey
-
- Type: 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. If specified as an empty string, it will clear any existing value.
- DefaultExpirationDays
-
- Type: int
The default number of days until the data within the domain expires.
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- Matching
-
- Type: MatchingRequest structure
The process of matching duplicate profiles. If
Matching
=true
, Amazon Connect Customer Profiles starts a weekly batch process called Identity Resolution Job. If you do not specify a date and time for Identity Resolution Job to run, by default it runs every Saturday at 12AM UTC to detect duplicate profiles in your domains.After the Identity Resolution Job completes, use the GetMatches API to return and review the results. Or, if you have configured
ExportingConfig
in theMatchingRequest
, you can download the results from S3. - RuleBasedMatching
-
- Type: RuleBasedMatchingRequest structure
The process of matching duplicate profiles using the rule-Based matching. If
RuleBasedMatching
= true, Amazon Connect Customer Profiles will start to match and merge your profiles according to your configuration in theRuleBasedMatchingRequest
. You can use theListRuleBasedMatches
andGetSimilarProfiles
API to return and review the results. Also, if you have configuredExportingConfig
in theRuleBasedMatchingRequest
, you can download the results from S3. - Tags
-
- Type: Associative array of custom strings keys (TagKey) to strings
The tags used to organize, track, or control access for this resource.
Result Syntax
[ 'CreatedAt' => <DateTime>, 'DeadLetterQueueUrl' => '<string>', 'DefaultEncryptionKey' => '<string>', 'DefaultExpirationDays' => <integer>, 'DomainName' => '<string>', 'LastUpdatedAt' => <DateTime>, 'Matching' => [ 'AutoMerging' => [ 'ConflictResolution' => [ 'ConflictResolvingModel' => 'RECENCY|SOURCE', 'SourceName' => '<string>', ], 'Consolidation' => [ 'MatchingAttributesList' => [ ['<string>', ...], // ... ], ], 'Enabled' => true || false, 'MinAllowedConfidenceScoreForMerging' => <float>, ], 'Enabled' => true || false, 'ExportingConfig' => [ 'S3Exporting' => [ 'S3BucketName' => '<string>', 'S3KeyName' => '<string>', ], ], 'JobSchedule' => [ 'DayOfTheWeek' => 'SUNDAY|MONDAY|TUESDAY|WEDNESDAY|THURSDAY|FRIDAY|SATURDAY', 'Time' => '<string>', ], ], 'RuleBasedMatching' => [ 'AttributeTypesSelector' => [ 'Address' => ['<string>', ...], 'AttributeMatchingModel' => 'ONE_TO_ONE|MANY_TO_MANY', 'EmailAddress' => ['<string>', ...], 'PhoneNumber' => ['<string>', ...], ], 'ConflictResolution' => [ 'ConflictResolvingModel' => 'RECENCY|SOURCE', 'SourceName' => '<string>', ], 'Enabled' => true || false, 'ExportingConfig' => [ 'S3Exporting' => [ 'S3BucketName' => '<string>', 'S3KeyName' => '<string>', ], ], 'MatchingRules' => [ [ 'Rule' => ['<string>', ...], ], // ... ], 'MaxAllowedRuleLevelForMatching' => <integer>, 'MaxAllowedRuleLevelForMerging' => <integer>, 'Status' => 'PENDING|IN_PROGRESS|ACTIVE', ], 'Tags' => ['<string>', ...], ]
Result Details
Members
- CreatedAt
-
- Required: Yes
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp of when the domain was created.
- DeadLetterQueueUrl
-
- Type: string
The URL of the SQS dead letter queue, which is used for reporting errors associated with ingesting data from third party applications.
- DefaultEncryptionKey
-
- Type: 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
-
- Type: int
The default number of days until the data within the domain expires.
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- LastUpdatedAt
-
- Required: Yes
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp of when the domain was most recently edited.
- Matching
-
- Type: MatchingResponse structure
The process of matching duplicate profiles. If
Matching
=true
, Amazon Connect Customer Profiles starts a weekly batch process called Identity Resolution Job. If you do not specify a date and time for Identity Resolution Job to run, by default it runs every Saturday at 12AM UTC to detect duplicate profiles in your domains.After the Identity Resolution Job completes, use the GetMatches API to return and review the results. Or, if you have configured
ExportingConfig
in theMatchingRequest
, you can download the results from S3. - RuleBasedMatching
-
- Type: RuleBasedMatchingResponse structure
The process of matching duplicate profiles using the rule-Based matching. If
RuleBasedMatching
= true, Amazon Connect Customer Profiles will start to match and merge your profiles according to your configuration in theRuleBasedMatchingRequest
. You can use theListRuleBasedMatches
andGetSimilarProfiles
API to return and review the results. Also, if you have configuredExportingConfig
in theRuleBasedMatchingRequest
, you can download the results from S3. - Tags
-
- Type: Associative array of custom strings keys (TagKey) to strings
The tags used to organize, track, or control access for this resource.
Errors
- BadRequestException:
The input you provided is invalid.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
- AccessDeniedException:
You do not have sufficient access to perform this action.
- ThrottlingException:
You exceeded the maximum number of requests.
- InternalServerException:
An internal service error occurred.
UpdateProfile
$result = $client->updateProfile
([/* ... */]); $promise = $client->updateProfileAsync
([/* ... */]);
Updates the properties of a profile. The ProfileId is required for updating a customer profile.
When calling the UpdateProfile API, specifying an empty string value means that any existing value will be removed. Not specifying a string value means that any value already there will be kept.
Parameter Syntax
$result = $client->updateProfile([ 'AccountNumber' => '<string>', 'AdditionalInformation' => '<string>', 'Address' => [ 'Address1' => '<string>', 'Address2' => '<string>', 'Address3' => '<string>', 'Address4' => '<string>', 'City' => '<string>', 'Country' => '<string>', 'County' => '<string>', 'PostalCode' => '<string>', 'Province' => '<string>', 'State' => '<string>', ], 'Attributes' => ['<string>', ...], 'BillingAddress' => [ 'Address1' => '<string>', 'Address2' => '<string>', 'Address3' => '<string>', 'Address4' => '<string>', 'City' => '<string>', 'Country' => '<string>', 'County' => '<string>', 'PostalCode' => '<string>', 'Province' => '<string>', 'State' => '<string>', ], 'BirthDate' => '<string>', 'BusinessEmailAddress' => '<string>', 'BusinessName' => '<string>', 'BusinessPhoneNumber' => '<string>', 'DomainName' => '<string>', // REQUIRED 'EmailAddress' => '<string>', 'FirstName' => '<string>', 'Gender' => 'MALE|FEMALE|UNSPECIFIED', 'GenderString' => '<string>', 'HomePhoneNumber' => '<string>', 'LastName' => '<string>', 'MailingAddress' => [ 'Address1' => '<string>', 'Address2' => '<string>', 'Address3' => '<string>', 'Address4' => '<string>', 'City' => '<string>', 'Country' => '<string>', 'County' => '<string>', 'PostalCode' => '<string>', 'Province' => '<string>', 'State' => '<string>', ], 'MiddleName' => '<string>', 'MobilePhoneNumber' => '<string>', 'PartyType' => 'INDIVIDUAL|BUSINESS|OTHER', 'PartyTypeString' => '<string>', 'PersonalEmailAddress' => '<string>', 'PhoneNumber' => '<string>', 'ProfileId' => '<string>', // REQUIRED 'ShippingAddress' => [ 'Address1' => '<string>', 'Address2' => '<string>', 'Address3' => '<string>', 'Address4' => '<string>', 'City' => '<string>', 'Country' => '<string>', 'County' => '<string>', 'PostalCode' => '<string>', 'Province' => '<string>', 'State' => '<string>', ], ]);
Parameter Details
Members
- AccountNumber
-
- Type: string
An account number that you have given to the customer.
- AdditionalInformation
-
- Type: string
Any additional information relevant to the customer’s profile.
- Address
-
- Type: UpdateAddress structure
A generic address associated with the customer that is not mailing, shipping, or billing.
- Attributes
-
- Type: Associative array of custom strings keys (string1To255) to strings
A key value pair of attributes of a customer profile.
- BillingAddress
-
- Type: UpdateAddress structure
The customer’s billing address.
- BirthDate
-
- Type: string
The customer’s birth date.
- BusinessEmailAddress
-
- Type: string
The customer’s business email address.
- BusinessName
-
- Type: string
The name of the customer’s business.
- BusinessPhoneNumber
-
- Type: string
The customer’s business phone number.
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- EmailAddress
-
- Type: string
The customer’s email address, which has not been specified as a personal or business address.
- FirstName
-
- Type: string
The customer’s first name.
- Gender
-
- Type: string
The gender with which the customer identifies.
- GenderString
-
- Type: string
An alternative to
Gender
which accepts any string as input. - HomePhoneNumber
-
- Type: string
The customer’s home phone number.
- LastName
-
- Type: string
The customer’s last name.
- MailingAddress
-
- Type: UpdateAddress structure
The customer’s mailing address.
- MiddleName
-
- Type: string
The customer’s middle name.
- MobilePhoneNumber
-
- Type: string
The customer’s mobile phone number.
- PartyType
-
- Type: string
The type of profile used to describe the customer.
- PartyTypeString
-
- Type: string
An alternative to
PartyType
which accepts any string as input. - PersonalEmailAddress
-
- Type: string
The customer’s personal email address.
- PhoneNumber
-
- Type: string
The customer’s phone number, which has not been specified as a mobile, home, or business number.
- ProfileId
-
- Required: Yes
- Type: string
The unique identifier of a customer profile.
- ShippingAddress
-
- Type: UpdateAddress structure
The customer’s shipping address.
Result Syntax
[ 'ProfileId' => '<string>', ]
Result Details
Members
- ProfileId
-
- Required: Yes
- Type: string
The unique identifier of a customer profile.
Errors
- BadRequestException:
The input you provided is invalid.
- AccessDeniedException:
You do not have sufficient access to perform this action.
- ResourceNotFoundException:
The requested resource does not exist, or access was denied.
- ThrottlingException:
You exceeded the maximum number of requests.
- InternalServerException:
An internal service error occurred.
Shapes
AccessDeniedException
Description
You do not have sufficient access to perform this action.
Members
- Message
-
- Type: string
AdditionalSearchKey
Description
A data type pair that consists of a KeyName
and Values
list that is used in conjunction with the KeyName and Values parameters to search for profiles using the SearchProfiles API.
Members
- KeyName
-
- Required: Yes
- Type: string
A searchable identifier of a customer profile.
- Values
-
- Required: Yes
- Type: Array of strings
A list of key values.
Address
Description
A generic address associated with the customer that is not mailing, shipping, or billing.
Members
- Address1
-
- Type: string
The first line of a customer address.
- Address2
-
- Type: string
The second line of a customer address.
- Address3
-
- Type: string
The third line of a customer address.
- Address4
-
- Type: string
The fourth line of a customer address.
- City
-
- Type: string
The city in which a customer lives.
- Country
-
- Type: string
The country in which a customer lives.
- County
-
- Type: string
The county in which a customer lives.
- PostalCode
-
- Type: string
The postal code of a customer address.
- Province
-
- Type: string
The province in which a customer lives.
- State
-
- Type: string
The state in which a customer lives.
AppflowIntegration
Description
Details for workflow of type APPFLOW_INTEGRATION
.
Members
- Batches
-
- Type: Array of Batch structures
Batches in workflow of type
APPFLOW_INTEGRATION
. - FlowDefinition
-
- Required: Yes
- Type: FlowDefinition structure
The configurations that control how Customer Profiles retrieves data from the source, Amazon AppFlow. Customer Profiles uses this information to create an AppFlow flow on behalf of customers.
AppflowIntegrationWorkflowAttributes
Description
Structure holding all APPFLOW_INTEGRATION
specific workflow attributes.
Members
- ConnectorProfileName
-
- Required: Yes
- Type: string
The name of the AppFlow connector profile used for ingestion.
- RoleArn
-
- Type: string
The Amazon Resource Name (ARN) of the IAM role. Customer Profiles assumes this role to create resources on your behalf as part of workflow execution.
- SourceConnectorType
-
- Required: Yes
- Type: string
Specifies the source connector type, such as Salesforce, ServiceNow, and Marketo. Indicates source of ingestion.
AppflowIntegrationWorkflowMetrics
Description
Workflow specific execution metrics for APPFLOW_INTEGRATION
workflow.
Members
- RecordsProcessed
-
- Required: Yes
- Type: long (int|float)
Number of records processed in
APPFLOW_INTEGRATION
workflow. - StepsCompleted
-
- Required: Yes
- Type: long (int|float)
Total steps completed in
APPFLOW_INTEGRATION
workflow. - TotalSteps
-
- Required: Yes
- Type: long (int|float)
Total steps in
APPFLOW_INTEGRATION
workflow.
AppflowIntegrationWorkflowStep
Description
Workflow step details for APPFLOW_INTEGRATION
workflow.
Members
- BatchRecordsEndTime
-
- Required: Yes
- Type: string
End datetime of records pulled in batch during execution of workflow step for
APPFLOW_INTEGRATION
workflow. - BatchRecordsStartTime
-
- Required: Yes
- Type: string
Start datetime of records pulled in batch during execution of workflow step for
APPFLOW_INTEGRATION
workflow. - CreatedAt
-
- Required: Yes
- Type: timestamp (string|DateTime or anything parsable by strtotime)
Creation timestamp of workflow step for
APPFLOW_INTEGRATION
workflow. - ExecutionMessage
-
- Required: Yes
- Type: string
Message indicating execution of workflow step for
APPFLOW_INTEGRATION
workflow. - FlowName
-
- Required: Yes
- Type: string
Name of the flow created during execution of workflow step.
APPFLOW_INTEGRATION
workflow type creates an appflow flow during workflow step execution on the customers behalf. - LastUpdatedAt
-
- Required: Yes
- Type: timestamp (string|DateTime or anything parsable by strtotime)
Last updated timestamp for workflow step for
APPFLOW_INTEGRATION
workflow. - RecordsProcessed
-
- Required: Yes
- Type: long (int|float)
Total number of records processed during execution of workflow step for
APPFLOW_INTEGRATION
workflow. - Status
-
- Required: Yes
- Type: string
Workflow step status for
APPFLOW_INTEGRATION
workflow.
AttributeDetails
Description
Mathematical expression and a list of attribute items specified in that expression.
Members
- Attributes
-
- Required: Yes
- Type: Array of AttributeItem structures
A list of attribute items specified in the mathematical expression.
- Expression
-
- Required: Yes
- Type: string
Mathematical expression that is performed on attribute items provided in the attribute list. Each element in the expression should follow the structure of \"{ObjectTypeName.AttributeName}\".
AttributeItem
Description
The details of a single attribute item specified in the mathematical expression.
Members
- Name
-
- Required: Yes
- Type: string
The name of an attribute defined in a profile object type.
AttributeTypesSelector
Description
Configuration information about the AttributeTypesSelector
where the rule-based identity resolution uses to match profiles. You can choose how profiles are compared across attribute types and which attribute to use for matching from each type. There are three attribute types you can configure:
-
Email type
-
You can choose from
Email
,BusinessEmail
, andPersonalEmail
-
-
Phone number type
-
You can choose from
Phone
,HomePhone
, andMobilePhone
-
-
Address type
-
You can choose from
Address
,BusinessAddress
,MaillingAddress
, andShippingAddress
-
You can either choose ONE_TO_ONE
or MANY_TO_MANY
as the AttributeMatchingModel
. When choosing MANY_TO_MANY
, the system can match attribute across the sub-types of an attribute type. For example, if the value of the Email
field of Profile A and the value of BusinessEmail
field of Profile B matches, the two profiles are matched on the Email type. When choosing ONE_TO_ONE
the system can only match if the sub-types are exact matches. For example, only when the value of the Email
field of Profile A and the value of the Email
field of Profile B matches, the two profiles are matched on the Email type.
Members
- Address
-
- Type: Array of strings
The
Address
type. You can choose fromAddress
,BusinessAddress
,MaillingAddress
, andShippingAddress
.You only can use the Address type in the
MatchingRule
. For example, if you want to match profile based onBusinessAddress.City
orMaillingAddress.City
, you need to choose theBusinessAddress
and theMaillingAddress
to represent the Address type and specify theAddress.City
on the matching rule. - AttributeMatchingModel
-
- Required: Yes
- Type: string
Configures the
AttributeMatchingModel
, you can either chooseONE_TO_ONE
orMANY_TO_MANY
. - EmailAddress
-
- Type: Array of strings
The
Email
type. You can choose fromEmailAddress
,BusinessEmailAddress
andPersonalEmailAddress
.You only can use the
EmailAddress
type in theMatchingRule
. For example, if you want to match profile based onPersonalEmailAddress
orBusinessEmailAddress
, you need to choose thePersonalEmailAddress
and theBusinessEmailAddress
to represent theEmailAddress
type and only specify theEmailAddress
on the matching rule. - PhoneNumber
-
- Type: Array of strings
The
PhoneNumber
type. You can choose fromPhoneNumber
,HomePhoneNumber
, andMobilePhoneNumber
.You only can use the
PhoneNumber
type in theMatchingRule
. For example, if you want to match a profile based onPhone
orHomePhone
, you need to choose thePhone
and theHomePhone
to represent thePhoneNumber
type and only specify thePhoneNumber
on the matching rule.
AutoMerging
Description
Configuration settings for how to perform the auto-merging of profiles.
Members
- ConflictResolution
-
- Type: ConflictResolution structure
How the auto-merging process should resolve conflicts between different profiles. For example, if Profile A and Profile B have the same
FirstName
andLastName
(and that is the matching criteria), whichEmailAddress
should be used? - Consolidation
-
- Type: Consolidation structure
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.
- Enabled
-
- Required: Yes
- Type: boolean
The flag that enables the auto-merging of duplicate profiles.
- MinAllowedConfidenceScoreForMerging
-
- Type: double
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.
BadRequestException
Description
The input you provided is invalid.
Members
- Message
-
- Type: string
Batch
Description
Batch defines the boundaries for ingestion for each step in APPFLOW_INTEGRATION
workflow. APPFLOW_INTEGRATION
workflow splits ingestion based on these boundaries.
Members
- EndTime
-
- Required: Yes
- Type: timestamp (string|DateTime or anything parsable by strtotime)
End time of batch to split ingestion.
- StartTime
-
- Required: Yes
- Type: timestamp (string|DateTime or anything parsable by strtotime)
Start time of batch to split ingestion.
Conditions
Description
The conditions including range, object count, and threshold for the calculated attribute.
Members
ConflictResolution
Description
How the auto-merging process should resolve conflicts between different profiles.
Members
- ConflictResolvingModel
-
- Required: Yes
- Type: string
How the auto-merging process should resolve conflicts between different profiles.
-
RECENCY
: Uses the data that was most recently updated. -
SOURCE
: Uses the data from a specific source. For example, if a company has been aquired or two departments have merged, data from the specified source is used. If two duplicate profiles are from the same source, thenRECENCY
is used again.
- SourceName
-
- Type: string
The
ObjectType
name that is used to resolve profile merging conflicts when choosingSOURCE
as theConflictResolvingModel
.
ConnectorOperator
Description
The operation to be performed on the provided source fields.
Members
- Marketo
-
- Type: string
The operation to be performed on the provided Marketo source fields.
- S3
-
- Type: string
The operation to be performed on the provided Amazon S3 source fields.
- Salesforce
-
- Type: string
The operation to be performed on the provided Salesforce source fields.
- ServiceNow
-
- Type: string
The operation to be performed on the provided ServiceNow source fields.
- Zendesk
-
- Type: string
The operation to be performed on the provided Zendesk source fields.
Consolidation
Description
The matching criteria to be used during the auto-merging process.
Members
- MatchingAttributesList
-
- Required: Yes
- Type: Array of stringss
A list of matching criteria.
DestinationSummary
Description
Summary information about the Kinesis data stream
Members
- Status
-
- Required: Yes
- Type: string
The status of enabling the Kinesis stream as a destination for export.
- UnhealthySince
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp when the status last changed to
UNHEALHY
. - Uri
-
- Required: Yes
- Type: string
The StreamARN of the destination to deliver profile events to. For example, arn:aws:kinesis:region:account-id:stream/stream-name.
DetectedProfileObjectType
Description
Contains ProfileObjectType
mapping information from the model.
Members
- Fields
-
- Type: Associative array of custom strings keys (name) to ObjectTypeField structures
A map of the name and the
ObjectType
field. - Keys
-
- Type: Associative array of custom strings keys (name) to ObjectTypeKey structuress
A list of unique keys that can be used to map data to a profile.
- SourceLastUpdatedTimestampFormat
-
- Type: string
The format of
sourceLastUpdatedTimestamp
that was detected in fields.
DomainStats
Description
Usage-specific statistics about the domain.
Members
- MeteringProfileCount
-
- Type: long (int|float)
The number of profiles that you are currently paying for in the domain. If you have more than 100 objects associated with a single profile, that profile counts as two profiles. If you have more than 200 objects, that profile counts as three, and so on.
- ObjectCount
-
- Type: long (int|float)
The total number of objects in domain.
- ProfileCount
-
- Type: long (int|float)
The total number of profiles currently in the domain.
- TotalSize
-
- Type: long (int|float)
The total size, in bytes, of all objects in the domain.
EventStreamDestinationDetails
Description
Details of the destination being used for the EventStream.
Members
- Message
-
- Type: string
The human-readable string that corresponds to the error or success while enabling the streaming destination.
- Status
-
- Required: Yes
- Type: string
The status of enabling the Kinesis stream as a destination for export.
- UnhealthySince
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp when the status last changed to
UNHEALHY
. - Uri
-
- Required: Yes
- Type: string
The StreamARN of the destination to deliver profile events to. For example, arn:aws:kinesis:region:account-id:stream/stream-name.
EventStreamSummary
Description
An instance of EventStream in a list of EventStreams.
Members
- DestinationSummary
-
- Type: DestinationSummary structure
Summary information about the Kinesis data stream.
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- EventStreamArn
-
- Required: Yes
- Type: string
A unique identifier for the event stream.
- EventStreamName
-
- Required: Yes
- Type: string
The name of the event stream.
- State
-
- Required: Yes
- Type: string
The operational state of destination stream for export.
- StoppedSince
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp when the
State
changed toSTOPPED
. - Tags
-
- Type: Associative array of custom strings keys (TagKey) to strings
The tags used to organize, track, or control access for this resource.
ExportingConfig
Description
Configuration information about the S3 bucket where Identity Resolution Jobs writes result files.
You need to give Customer Profiles service principal write permission to your S3 bucket. Otherwise, you'll get an exception in the API response. For an example policy, see Amazon Connect Customer Profiles cross-service confused deputy prevention.
Members
- S3Exporting
-
- Type: S3ExportingConfig structure
The S3 location where Identity Resolution Jobs write result files.
ExportingLocation
Description
The S3 location where Identity Resolution Jobs write result files.
Members
- S3Exporting
-
- Type: S3ExportingLocation structure
Information about the S3 location where Identity Resolution Jobs write result files.
FieldSourceProfileIds
Description
A duplicate customer profile that is to be merged into a main profile.
Members
- AccountNumber
-
- Type: string
A unique identifier for the account number field to be merged.
- AdditionalInformation
-
- Type: string
A unique identifier for the additional information field to be merged.
- Address
-
- Type: string
A unique identifier for the party type field to be merged.
- Attributes
-
- Type: Associative array of custom strings keys (string1To255) to strings
A unique identifier for the attributes field to be merged.
- BillingAddress
-
- Type: string
A unique identifier for the billing type field to be merged.
- BirthDate
-
- Type: string
A unique identifier for the birthdate field to be merged.
- BusinessEmailAddress
-
- Type: string
A unique identifier for the party type field to be merged.
- BusinessName
-
- Type: string
A unique identifier for the business name field to be merged.
- BusinessPhoneNumber
-
- Type: string
A unique identifier for the business phone number field to be merged.
- EmailAddress
-
- Type: string
A unique identifier for the email address field to be merged.
- FirstName
-
- Type: string
A unique identifier for the first name field to be merged.
- Gender
-
- Type: string
A unique identifier for the gender field to be merged.
- HomePhoneNumber
-
- Type: string
A unique identifier for the home phone number field to be merged.
- LastName
-
- Type: string
A unique identifier for the last name field to be merged.
- MailingAddress
-
- Type: string
A unique identifier for the mailing address field to be merged.
- MiddleName
-
- Type: string
A unique identifier for the middle name field to be merged.
- MobilePhoneNumber
-
- Type: string
A unique identifier for the mobile phone number field to be merged.
- PartyType
-
- Type: string
A unique identifier for the party type field to be merged.
- PersonalEmailAddress
-
- Type: string
A unique identifier for the personal email address field to be merged.
- PhoneNumber
-
- Type: string
A unique identifier for the phone number field to be merged.
- ShippingAddress
-
- Type: string
A unique identifier for the shipping address field to be merged.
FlowDefinition
Description
The configurations that control how Customer Profiles retrieves data from the source, Amazon AppFlow. Customer Profiles uses this information to create an AppFlow flow on behalf of customers.
Members
- Description
-
- Type: string
A description of the flow you want to create.
- FlowName
-
- Required: Yes
- Type: string
The specified name of the flow. Use underscores (_) or hyphens (-) only. Spaces are not allowed.
- KmsArn
-
- Required: Yes
- Type: string
The Amazon Resource Name of the AWS Key Management Service (KMS) key you provide for encryption.
- SourceFlowConfig
-
- Required: Yes
- Type: SourceFlowConfig structure
The configuration that controls how Customer Profiles retrieves data from the source.
- Tasks
-
- Required: Yes
- Type: Array of Task structures
A list of tasks that Customer Profiles performs while transferring the data in the flow run.
- TriggerConfig
-
- Required: Yes
- Type: TriggerConfig structure
The trigger settings that determine how and when the flow runs.
FoundByKeyValue
Description
A data type pair that consists of a KeyName
and Values
list that were used to find a profile returned in response to a SearchProfiles request.
Members
- KeyName
-
- Type: string
A searchable identifier of a customer profile.
- Values
-
- Type: Array of strings
A list of key values.
IdentityResolutionJob
Description
Information about the Identity Resolution Job.
Members
- DomainName
-
- Type: string
The unique name of the domain.
- ExportingLocation
-
- Type: ExportingLocation structure
The S3 location where the Identity Resolution Job writes result files.
- JobEndTime
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp of when the job was completed.
- JobId
-
- Type: string
The unique identifier of the Identity Resolution Job.
- JobStartTime
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp of when the job was started or will be started.
- JobStats
-
- Type: JobStats structure
Statistics about an Identity Resolution Job.
- Message
-
- Type: string
The error messages that are generated when the Identity Resolution Job runs.
- Status
-
- Type: string
The status of the Identity Resolution Job.
-
PENDING
: The Identity Resolution Job is scheduled but has not started yet. If you turn off the Identity Resolution feature in your domain, jobs in thePENDING
state are deleted. -
PREPROCESSING
: The Identity Resolution Job is loading your data. -
FIND_MATCHING
: The Identity Resolution Job is using the machine learning model to identify profiles that belong to the same matching group. -
MERGING
: The Identity Resolution Job is merging duplicate profiles. -
COMPLETED
: The Identity Resolution Job completed successfully. -
PARTIAL_SUCCESS
: There's a system error and not all of the data is merged. The Identity Resolution Job writes a message indicating the source of the problem. -
FAILED
: The Identity Resolution Job did not merge any data. It writes a message indicating the source of the problem.
IncrementalPullConfig
Description
Specifies the configuration used when importing incremental records from the source.
Members
- DatetimeTypeFieldName
-
- Type: string
A field that specifies the date time or timestamp field as the criteria to use when importing incremental records from the source.
IntegrationConfig
Description
Configuration data for integration workflow.
Members
- AppflowIntegration
-
- Type: AppflowIntegration structure
Configuration data for
APPFLOW_INTEGRATION
workflow type.
InternalServerException
Description
An internal service error occurred.
Members
- Message
-
- Type: string
JobSchedule
Description
The day and time when do you want to start the Identity Resolution Job every week.
Members
- DayOfTheWeek
-
- Required: Yes
- Type: string
The day when the Identity Resolution Job should run every week.
- Time
-
- Required: Yes
- Type: string
The time when the Identity Resolution Job should run every week.
JobStats
Description
Statistics about the Identity Resolution Job.
Members
- NumberOfMatchesFound
-
- Type: long (int|float)
The number of matches found.
- NumberOfMergesDone
-
- Type: long (int|float)
The number of merges completed.
- NumberOfProfilesReviewed
-
- Type: long (int|float)
The number of profiles reviewed.
ListCalculatedAttributeDefinitionItem
Description
The details of a single calculated attribute definition.
Members
- CalculatedAttributeName
-
- Type: string
The unique name of the calculated attribute.
- CreatedAt
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The threshold for the calculated attribute.
- Description
-
- Type: string
The threshold for the calculated attribute.
- DisplayName
-
- Type: string
The display name of the calculated attribute.
- LastUpdatedAt
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp of when the calculated attribute definition was most recently edited.
- Tags
-
- Type: Associative array of custom strings keys (TagKey) to strings
The tags used to organize, track, or control access for this resource.
ListCalculatedAttributeForProfileItem
Description
The details of a single calculated attribute for a profile.
Members
- CalculatedAttributeName
-
- Type: string
The unique name of the calculated attribute.
- DisplayName
-
- Type: string
The display name of the calculated attribute.
- IsDataPartial
-
- Type: string
Indicates whether the calculated attribute’s value is based on partial data. If data is partial, it is set to true.
- Value
-
- Type: string
The value of the calculated attribute.
ListDomainItem
Description
An object in a list that represents a domain.
Members
- CreatedAt
-
- Required: Yes
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp of when the domain was created.
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- LastUpdatedAt
-
- Required: Yes
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp of when the domain was most recently edited.
- Tags
-
- Type: Associative array of custom strings keys (TagKey) to strings
The tags used to organize, track, or control access for this resource.
ListIntegrationItem
Description
An integration in list of integrations.
Members
- CreatedAt
-
- Required: Yes
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp of when the domain was created.
- DomainName
-
- Required: Yes
- Type: string
The unique name of the domain.
- IsUnstructured
-
- Type: boolean
Boolean that shows if the Flow that's associated with the Integration is created in Amazon Appflow, or with ObjectTypeName equals _unstructured via API/CLI in flowDefinition.
- LastUpdatedAt
-
- Required: Yes
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp of when the domain was most recently edited.
- ObjectTypeName
-
- Type: string
The name of the profile object type.
- ObjectTypeNames
-
- Type: Associative array of custom strings keys (string1To255) to strings
A map in which each key is an event type from an external application such as Segment or Shopify, and each value is an
ObjectTypeName
(template) used to ingest the event. It supports the following event types:SegmentIdentify
,ShopifyCreateCustomers
,ShopifyUpdateCustomers
,ShopifyCreateDraftOrders
,ShopifyUpdateDraftOrders
,ShopifyCreateOrders
, andShopifyUpdatedOrders
. - RoleArn
-
- Type: string
The Amazon Resource Name (ARN) of the IAM role. The Integration uses this role to make Customer Profiles requests on your behalf.
- Tags
-
- Type: Associative array of custom strings keys (TagKey) to strings
The tags used to organize, track, or control access for this resource.
- Uri
-
- Required: Yes
- Type: string
The URI of the S3 bucket or any other type of data source.
- WorkflowId
-
- Type: string
Unique identifier for the workflow.
ListProfileObjectTypeItem
Description
A ProfileObjectType instance.
Members
- CreatedAt
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp of when the domain was created.
- Description
-
- Required: Yes
- Type: string
Description of the profile object type.
- LastUpdatedAt
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
The timestamp of when the domain was most recently edited.
- MaxAvailableProfileObjectCount
-
- Type: int
The amount of provisioned profile object max count available.
- MaxProfileObjectCount
-
- Type: int
The amount of profile object max count assigned to the object type.
- ObjectTypeName
-
- Required: Yes
- Type: string
The name of the profile object type.
- Tags
-
- Type: Associative array of custom strings keys (TagKey) to strings
The tags used to organize, track, or control access for this resource.
ListProfileObjectTypeTemplateItem
Description
A ProfileObjectTypeTemplate in a list of ProfileObjectTypeTemplates.
Members
- SourceName
-
- Type: string
The name of the source of the object template.
- SourceObject
-
- Type: string
The source of the object template.
- TemplateId
-
- Type: string
A unique identifier for the object template.
ListProfileObjectsItem
Description
A ProfileObject in a list of ProfileObjects.
Members
- Object
-
- Type: string
A JSON representation of a ProfileObject that belongs to a profile.
- ObjectTypeName
-
- Type: string
Specifies the kind of object being added to a profile, such as "Salesforce-Account."
- ProfileObjectUniqueKey
-
- Type: string
The unique identifier of the ProfileObject generated by the service.
ListWorkflowsItem
Description
A workflow in list of workflows.
Members
- CreatedAt
-
- Required: Yes
- Type: timestamp (string|DateTime or anything parsable by strtotime)
Creation timestamp for workflow.
- LastUpdatedAt
-
- Required: Yes
- Type: timestamp (string|DateTime or anything parsable by strtotime)
Last updated timestamp for workflow.
- Status
-
- Required: Yes
- Type: string
Status of workflow execution.
- StatusDescription
-
- Required: Yes
- Type: string
Description for workflow execution status.
- WorkflowId
-
- Required: Yes
- Type: string
Unique identifier for the workflow.
- WorkflowType
-
- Required: Yes
- Type: string
The type of workflow. The only supported value is APPFLOW_INTEGRATION.
MarketoSourceProperties
Description
The properties that are applied when Marketo is being used as a source.
Members
- Object
-
- Required: Yes
- Type: string
The object specified in the Marketo flow source.
MatchItem
Description
The Match group object.
Members
- ConfidenceScore
-
- Type: double
A number between 0 and 1, where a higher score means higher similarity. Examining match confidence scores lets you distinguish between groups of similar records in which the system is highly confident (which you may decide to merge), groups of similar records about which the system is uncertain (which you may decide to have reviewed by a human), and groups of similar records that the system deems to be unlikely (which you may decide to reject). Given confidence scores vary as per the data input, it should not be used an absolute measure of matching quality.
- MatchId
-
- Type: string
The unique identifiers for this group of profiles that match.
- ProfileIds
-
- Type: Array of strings
A list of identifiers for profiles that match.
MatchingRequest
Description
The flag that enables the matching process of duplicate profiles.
Members
- AutoMerging
-
- Type: AutoMerging structure
Configuration information about the auto-merging process.
- Enabled
-
- Required: Yes
- Type: boolean
The flag that enables the matching process of duplicate profiles.
- ExportingConfig
-
- Type: ExportingConfig structure
Configuration information for exporting Identity Resolution results, for example, to an S3 bucket.
- JobSchedule
-
- Type: JobSchedule structure
The day and time when do you want to start the Identity Resolution Job every week.
MatchingResponse
Description
The flag that enables the matching process of duplicate profiles.
Members
- AutoMerging
-
- Type: AutoMerging structure
Configuration information about the auto-merging process.
- Enabled
-
- Type: boolean
The flag that enables the matching process of duplicate profiles.
- ExportingConfig
-
- Type: ExportingConfig structure
Configuration information for exporting Identity Resolution results, for example, to an S3 bucket.
- JobSchedule
-
- Type: JobSchedule structure
The day and time when do you want to start the Identity Resolution Job every week.
MatchingRule
Description
Specifies how does the rule-based matching process should match profiles. You can choose from the following attributes to build the matching Rule:
-
AccountNumber
-
Address.Address
-
Address.City
-
Address.Country
-
Address.County
-
Address.PostalCode
-
Address.State
-
Address.Province
-
BirthDate
-
BusinessName
-
EmailAddress
-
FirstName
-
Gender
-
LastName
-
MiddleName
-
PhoneNumber
-
Any customized profile attributes that start with the
Attributes
Members
- Rule
-
- Required: Yes
- Type: Array of strings
A single rule level of the
MatchRules
. Configures how the rule-based matching process should match profiles.
ObjectFilter
Description
The filter applied to ListProfileObjects
response to include profile objects with the specified index values.
Members
- KeyName
-
- Required: Yes
- Type: string
A searchable identifier of a profile object. The predefined keys you can use to search for
_asset
include:_assetId
,_assetName
, and_serialNumber
. The predefined keys you can use to search for_case
include:_caseId
. The predefined keys you can use to search for_order
include:_orderId
. - Values
-
- Required: Yes
- Type: Array of strings
A list of key values.
ObjectTypeField
Description
Represents a field in a ProfileObjectType.
Members
- ContentType
-
- Type: string
The content type of the field. Used for determining equality when searching.
- Source
-
- Type: 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
-
- Type: string
The location of the data in the standard ProfileObject model. For example: _profile.Address.PostalCode.
ObjectTypeKey
Description
An object that defines the Key element of a ProfileObject. A Key is a special element that can be used to search for a customer profile.
Members
- FieldNames
-
- Type: Array of strings
The reference for the key name of the fields map.
- StandardIdentifiers
-
- Type: Array of strings
The types of keys that a ProfileObject can have. Each ProfileObject can have only 1 UNIQUE key but multiple PROFILE keys. PROFILE, ASSET, CASE, or ORDER means that this key can be used to tie an object to a PROFILE, ASSET, CASE, or ORDER respectively. 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.
Profile
Description
The standard profile of a customer.
Members
- AccountNumber
-
- Type: string
An account number that you have given to the customer.
- AdditionalInformation
-
- Type: string
Any additional information relevant to the customer’s profile.
- Address
-
- Type: Address structure
A generic address associated with the customer that is not mailing, shipping, or billing.
- Attributes
-
- Type: Associative array of custom strings keys (string1To255) to strings
A key value pair of attributes of a customer profile.
- BillingAddress
-
- Type: Address structure
The customer’s billing address.
- BirthDate
-
- Type: string
The customer’s birth date.
- BusinessEmailAddress
-
- Type: string
The customer’s business email address.
- BusinessName
-
- Type: string
The name of the customer’s business.
- BusinessPhoneNumber
-
- Type: string
The customer’s home phone number.
- EmailAddress
-
- Type: string
The customer’s email address, which has not been specified as a personal or business address.
- FirstName
-
- Type: string
The customer’s first name.
- FoundByItems
-
- Type: Array of FoundByKeyValue structures
A list of items used to find a profile returned in a SearchProfiles response. An item is a key-value(s) pair that matches an attribute in the profile.
If the optional
AdditionalSearchKeys
parameter was included in the SearchProfiles request, theFoundByItems
list should be interpreted based on theLogicalOperator
used in the request:-
AND
- The profile included in the response matched all of the search keys specified in the request. TheFoundByItems
will include all of the key-value(s) pairs that were specified in the request (as this is a requirement ofAND
search logic). -
OR
- The profile included in the response matched at least one of the search keys specified in the request. TheFoundByItems
will include each of the key-value(s) pairs that the profile was found by.
The
OR
relationship is the default behavior if theLogicalOperator
parameter is not included in the SearchProfiles request. - Gender
-
- Type: string
The gender with which the customer identifies.
- GenderString
-
- Type: string
An alternative to Gender which accepts any string as input.
- HomePhoneNumber
-
- Type: string
The customer’s home phone number.
- LastName
-
- Type: string
The customer’s last name.
- MailingAddress
-
- Type: Address structure
The customer’s mailing address.
- MiddleName
-
- Type: string
The customer’s middle name.
- MobilePhoneNumber
-
- Type: string
The customer’s mobile phone number.
- PartyType
-
- Type: string
The type of profile used to describe the customer.
- PartyTypeString
-
- Type: string
An alternative to PartyType which accepts any string as input.
- PersonalEmailAddress
-
- Type: string
The customer’s personal email address.
- PhoneNumber
-
- Type: string
The customer's phone number, which has not been specified as a mobile, home, or business number.
- ProfileId
-
- Type: string
The unique identifier of a customer profile.
- ShippingAddress
-
- Type: Address structure
The customer’s shipping address.
Range
Description
The relative time period over which data is included in the aggregation.
Members
- Unit
-
- Required: Yes
- Type: string
The unit of time.
- Value
-
- Required: Yes
- Type: int
The amount of time of the specified unit.
ResourceNotFoundException
Description
The requested resource does not exist, or access was denied.
Members
- Message
-
- Type: string
RuleBasedMatchingRequest
Description
The request to enable the rule-based matching.
Members
- AttributeTypesSelector
-
- Type: AttributeTypesSelector structure
Configures information about the
AttributeTypesSelector
where the rule-based identity resolution uses to match profiles. - ConflictResolution
-
- Type: ConflictResolution structure
How the auto-merging process should resolve conflicts between different profiles.
- Enabled
-
- Required: Yes
- Type: boolean
The flag that enables the rule-based matching process of duplicate profiles.
- ExportingConfig
-
- Type: ExportingConfig structure
Configuration information about the S3 bucket where Identity Resolution Jobs writes result files.
You need to give Customer Profiles service principal write permission to your S3 bucket. Otherwise, you'll get an exception in the API response. For an example policy, see Amazon Connect Customer Profiles cross-service confused deputy prevention.
- MatchingRules
-
- Type: Array of MatchingRule structures
Configures how the rule-based matching process should match profiles. You can have up to 15
MatchingRule
in theMatchingRules
. - MaxAllowedRuleLevelForMatching
-
- Type: int
Indicates the maximum allowed rule level.
- MaxAllowedRuleLevelForMerging
-
- Type: int
RuleBasedMatchingResponse
Description
The response of the Rule-based matching request.
Members
- AttributeTypesSelector
-
- Type: AttributeTypesSelector structure
Configures information about the
AttributeTypesSelector
where the rule-based identity resolution uses to match profiles. - ConflictResolution
-
- Type: ConflictResolution structure
How the auto-merging process should resolve conflicts between different profiles.
- Enabled
-
- Type: boolean
The flag that enables the rule-based matching process of duplicate profiles.
- ExportingConfig
-
- Type: ExportingConfig structure
Configuration information about the S3 bucket where Identity Resolution Jobs writes result files.
You need to give Customer Profiles service principal write permission to your S3 bucket. Otherwise, you'll get an exception in the API response. For an example policy, see Amazon Connect Customer Profiles cross-service confused deputy prevention.
- MatchingRules
-
- Type: Array of MatchingRule structures
Configures how the rule-based matching process should match profiles. You can have up to 15
MatchingRule
in theMatchingRules
. - MaxAllowedRuleLevelForMatching
-
- Type: int
Indicates the maximum allowed rule level.
- MaxAllowedRuleLevelForMerging
-
- Type: int
- Status
-
- Type: string
PENDING
-
The first status after configuration a rule-based matching rule. If it is an existing domain, the rule-based Identity Resolution waits one hour before creating the matching rule. If it is a new domain, the system will skip the
PENDING
stage.
IN_PROGRESS
-
The system is creating the rule-based matching rule. Under this status, the system is evaluating the existing data and you can no longer change the Rule-based matching configuration.
ACTIVE
-
The rule is ready to use. You can change the rule a day after the status is in
ACTIVE
.
S3ExportingConfig
Description
Configuration information about the S3 bucket where Identity Resolution Jobs write result files.
Members
- S3BucketName
-
- Required: Yes
- Type: string
The name of the S3 bucket where Identity Resolution Jobs write result files.
- S3KeyName
-
- Type: string
The S3 key name of the location where Identity Resolution Jobs write result files.
S3ExportingLocation
Description
The S3 location where Identity Resolution Jobs write result files.
Members
- S3BucketName
-
- Type: string
The name of the S3 bucket name where Identity Resolution Jobs write result files.
- S3KeyName
-
- Type: string
The S3 key name of the location where Identity Resolution Jobs write result files.
S3SourceProperties
Description
The properties that are applied when Amazon S3 is being used as the flow source.
Members
- BucketName
-
- Required: Yes
- Type: string
The Amazon S3 bucket name where the source files are stored.
- BucketPrefix
-
- Type: string
The object key for the Amazon S3 bucket in which the source files are stored.
SalesforceSourceProperties
Description
The properties that are applied when Salesforce is being used as a source.
Members
- EnableDynamicFieldUpdate
-
- Type: boolean
The flag that enables dynamic fetching of new (recently added) fields in the Salesforce objects while running a flow.
- IncludeDeletedRecords
-
- Type: boolean
Indicates whether Amazon AppFlow includes deleted files in the flow run.
- Object
-
- Required: Yes
- Type: string
The object specified in the Salesforce flow source.
ScheduledTriggerProperties
Description
Specifies the configuration details of a scheduled-trigger flow that you define. Currently, these settings only apply to the scheduled-trigger type.
Members
- DataPullMode
-
- Type: string
Specifies whether a scheduled flow has an incremental data transfer or a complete data transfer for each flow run.
- FirstExecutionFrom
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
Specifies the date range for the records to import from the connector in the first flow run.
- ScheduleEndTime
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
Specifies the scheduled end time for a scheduled-trigger flow.
- ScheduleExpression
-
- Required: Yes
- Type: string
The scheduling expression that determines the rate at which the schedule will run, for example rate (5 minutes).
- ScheduleOffset
-
- Type: long (int|float)
Specifies the optional offset that is added to the time interval for a schedule-triggered flow.
- ScheduleStartTime
-
- Type: timestamp (string|DateTime or anything parsable by strtotime)
Specifies the scheduled start time for a scheduled-trigger flow.
- Timezone
-
- Type: string
Specifies the time zone used when referring to the date and time of a scheduled-triggered flow, such as America/New_York.
ServiceNowSourceProperties
Description
The properties that are applied when ServiceNow is being used as a source.
Members
- Object
-
- Required: Yes
- Type: string
The object specified in the ServiceNow flow source.
SourceConnectorProperties
Description
Specifies the information that is required to query a particular Amazon AppFlow connector. Customer Profiles supports Salesforce, Zendesk, Marketo, ServiceNow and Amazon S3.
Members
- Marketo
-
- Type: MarketoSourceProperties structure
The properties that are applied when Marketo is being used as a source.
- S3
-
- Type: S3SourceProperties structure
The properties that are applied when Amazon S3 is being used as the flow source.
- Salesforce
-
- Type: SalesforceSourceProperties structure
The properties that are applied when Salesforce is being used as a source.
- ServiceNow
-
- Type: ServiceNowSourceProperties structure
The properties that are applied when ServiceNow is being used as a source.
- Zendesk
-
- Type: ZendeskSourceProperties structure
The properties that are applied when using Zendesk as a flow source.
SourceFlowConfig
Description
Contains information about the configuration of the source connector used in the flow.
Members
- ConnectorProfileName
-
- Type: string
The name of the AppFlow connector profile. This name must be unique for each connector profile in the AWS account.
- ConnectorType
-
- Required: Yes
- Type: string
The type of connector, such as Salesforce, Marketo, and so on.
- IncrementalPullConfig
-
- Type: IncrementalPullConfig structure
Defines the configuration for a scheduled incremental data pull. If a valid configuration is provided, the fields specified in the configuration are used when querying for the incremental data pull.
- SourceConnectorProperties
-
- Required: Yes
- Type: SourceConnectorProperties structure
Specifies the information that is required to query a particular source connector.
Task
Description
A class for modeling different type of tasks. Task implementation varies based on the TaskType.
Members
- ConnectorOperator
-
- Type: ConnectorOperator structure
The operation to be performed on the provided source fields.
- DestinationField
-
- Type: string
A field in a destination connector, or a field value against which Amazon AppFlow validates a source field.
- SourceFields
-
- Required: Yes
- Type: Array of strings
The source fields to which a particular task is applied.
- TaskProperties
-
- Type: Associative array of custom strings keys (OperatorPropertiesKeys) to strings
A map used to store task-related information. The service looks for particular information based on the TaskType.
- TaskType
-
- Required: Yes
- Type: string
Specifies the particular task implementation that Amazon AppFlow performs.
Threshold
Description
The threshold for the calculated attribute.
Members
- Operator
-
- Required: Yes
- Type: string
The operator of the threshold.
- Value
-
- Required: Yes
- Type: string
The value of the threshold.
ThrottlingException
Description
You exceeded the maximum number of requests.
Members
- Message
-
- Type: string
TriggerConfig
Description
The trigger settings that determine how and when Amazon AppFlow runs the specified flow.
Members
- TriggerProperties
-
- Type: TriggerProperties structure
Specifies the configuration details of a schedule-triggered flow that you define. Currently, these settings only apply to the Scheduled trigger type.
- TriggerType
-
- Required: Yes
- Type: string
Specifies the type of flow trigger. It can be OnDemand, Scheduled, or Event.
TriggerProperties
Description
Specifies the configuration details that control the trigger for a flow. Currently, these settings only apply to the Scheduled trigger type.
Members
- Scheduled
-
- Type: ScheduledTriggerProperties structure
Specifies the configuration details of a schedule-triggered flow that you define.
UpdateAddress
Description
Updates associated with the address properties of a customer profile.
Members
- Address1
-
- Type: string
The first line of a customer address.
- Address2
-
- Type: string
The second line of a customer address.
- Address3
-
- Type: string
The third line of a customer address.
- Address4
-
- Type: string
The fourth line of a customer address.
- City
-
- Type: string
The city in which a customer lives.
- Country
-
- Type: string
The country in which a customer lives.
- County
-
- Type: string
The county in which a customer lives.
- PostalCode
-
- Type: string
The postal code of a customer address.
- Province
-
- Type: string
The province in which a customer lives.
- State
-
- Type: string
The state in which a customer lives.
WorkflowAttributes
Description
Structure to hold workflow attributes.
Members
- AppflowIntegration
-
- Type: AppflowIntegrationWorkflowAttributes structure
Workflow attributes specific to
APPFLOW_INTEGRATION
workflow.
WorkflowMetrics
Description
Generic object containing workflow execution metrics.
Members
- AppflowIntegration
-
- Type: AppflowIntegrationWorkflowMetrics structure
Workflow execution metrics for
APPFLOW_INTEGRATION
workflow.
WorkflowStepItem
Description
List containing steps in workflow.
Members
- AppflowIntegration
-
- Type: AppflowIntegrationWorkflowStep structure
Workflow step information specific to
APPFLOW_INTEGRATION
workflow.
ZendeskSourceProperties
Description
The properties that are applied when using Zendesk as a flow source.
Members
- Object
-
- Required: Yes
- Type: string
The object specified in the Zendesk flow source.