The following events are handled by the Profile extension:
The event is used to put a user profile attribute update action on the Event Hub and is consumed by the Profile extension. This event is generated when an updateUserAttribute
call is made by the SDK client.
Event Type | Event Source | Paired | Paired Event |
---|---|---|---|
com.adobe.eventType.userProfile |
com.adobe.eventSource.requestProfile |
No |
Here are the key-value pairs in this event:
Key | Value Type | Optional | Description |
---|---|---|---|
userprofileupdatekey |
Map<String, Object> | no | A map of the attributes and the attribute values that the client wants to update or add to the User Profile that is managed by the Adobe Experience Platform SDK. An existing attribute name updates the attribute in the SDK, and a new attribute name adds a new attribute to the profile. When the value of an attribute is null, the attribute is deleted from the profile. Currently supported object types are String, Integer, Double, Boolean, Map and Vector. All the other types are ignored during processing. |
Here is a code sample of the USER_PROFILE : REQUEST_PROFILE
event:
{
EventName : "UserProfileUpdate"
EventType : "com.adobe.eventType.userProfile",
EventSource : "com.adobe.eventSource.requestProfile",
EventData: {
"userProfileupdatekey":
{
"userName": "JohnDoe",
"creditPoints": 255,
"isPaidUser": true
}
}
}
This event clears the specified key from the Profile extension and is generated when the removeUserAttributes
API is called.
Key/Key Type | Value Type | Optional | Description |
---|---|---|---|
userprofileremovekey |
String | No | The attribute key which has to be deleted |
Here is a code sample of the USERPROFILE : REQUEST_RESET
event:
{
EventName : "RemoveUserProfile"
EventType : "com.adobe.eventType.userProfile",
EventSource : "com.adobe.eventSource.requestReset",
EventData: {
"userprofileremovekey": "userName"
}
}
The following events are dispatched by the Profile extension:
The event is used to share the user profile with the other extension. This event will be generated by the Profile extension when the user profile is updated and persistently stored.
Key | Value Type | Optional | Description |
---|---|---|---|
userprofiledata |
Map<String, Object> | no | A map of all the user profile attributes and the attribute values. This map contains the most updated copies of all of the user profile attributes. The consumers of this data might replace the existing user profile copy that they might have with this copy. |
Here is a code sample for the USER_PROFILE : RESPONSE_PROFILE
event:
{
EventName : "UserProfile Response Event"
EventType : "com.adobe.eventType.userProfile",
EventSource : "com.adobe.eventSource.responseProfile",
EventData: {
"userprofiledata":
{
"userName": "John Doe"
"creditPoints": 255,
"isPaidUser": true
}
}
}
EXTENSION_NAME: com.adobe.module.userProfile
The shared state for the Profile extension is created in the following situations:
- At initialization After the extension is initialized, the extension updates the shared state by reading the previously set value from persistence.
- Each time a UserProfile attribute is created or updated The shared state is updated when there is a change in the user attribute data from the API or by other triggers (Rules Engine).
Key | Value Type | Optional | Description |
---|---|---|---|
userprofiledata |
Map<String, Object> | no | Map that contains all the key-value pairs of the user profile attributes. |