AddProfileKey
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.
Request Syntax
POST /domains/DomainName
/profiles/keys HTTP/1.1
Content-type: application/json
{
"KeyName": "string
",
"ProfileId": "string
",
"Values": [ "string
" ]
}
URI Request Parameters
The request uses the following URI parameters.
- DomainName
-
The unique name of the domain.
Length Constraints: Minimum length of 1. Maximum length of 64.
Pattern:
^[a-zA-Z0-9_-]+$
Required: Yes
Request Body
The request accepts the following data in JSON format.
- KeyName
-
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.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 64.
Pattern:
^[a-zA-Z0-9_-]+$
Required: Yes
- ProfileId
-
The unique identifier of a customer profile.
Type: String
Pattern:
[a-f0-9]{32}
Required: Yes
- Values
-
A list of key values.
Type: Array of strings
Length Constraints: Minimum length of 1. Maximum length of 255.
Required: Yes
Response Syntax
HTTP/1.1 200
Content-type: application/json
{
"KeyName": "string",
"Values": [ "string" ]
}
Response Elements
If the action is successful, the service sends back an HTTP 200 response.
The following data is returned in JSON format by the service.
Errors
For information about the errors that are common to all actions, see Common Errors.
- AccessDeniedException
-
You do not have sufficient access to perform this action.
HTTP Status Code: 403
- BadRequestException
-
The input you provided is invalid.
HTTP Status Code: 400
- InternalServerException
-
An internal service error occurred.
HTTP Status Code: 500
- ResourceNotFoundException
-
The requested resource does not exist, or access was denied.
HTTP Status Code: 404
- ThrottlingException
-
You exceeded the maximum number of requests.
HTTP Status Code: 429
Examples
Example
This example illustrates one usage of AddProfileKey.
Sample Request
POST /v1/domains/ExampleDomainName/profiles/keys
Content-type: application/json
{
"ProfileId": "3991a7d959d248bba82546b2dEXAMPLE",
"KeyName": "_ctrContactId",
"Values": ["valueOfTheContactId"]
}
Sample Response
Content-type: application/json
{
"KeyName": "_ctrContactId",
"Values": ["valueOfTheContactId"]
}
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following: