The following events are handled by the Identity extension:
This event is used for the Identity extension to complete one of the following tasks::
- To retrieve the custom visitor identifiers
- To retrieve the ECID (MID)
- To append the visitor identifiers to an URL
- To synchronize a visitor identifier or a list of identifiers with the ECID service
This event is generated by:
- Calling the Identity
getIdentifiers
API - Calling the Identity
getExperienceCloudId
API - Calling the Identity
appendVisitorInfoForURL
(Android) /appendToUrl
(iOS) API - Calling the Identity
getUrlVariables
API - Calling the Identity
syncIdentifier
orsyncIdentifiers
APIs
Event Type | Event Source | Paired | Paired Event |
---|---|---|---|
com.adobe.eventType.identity |
com.adobe.eventSource.requestIdentity |
Yes | Identity Response Identity event |
Here are the key-value pairs in this event:
Key | Value Type | Optional | Description |
---|---|---|---|
baseurl |
String | Yes | The base URL passed as parameter to the appendVisitorInfoForURL (Android) / appendToUrl (iOS) API. |
urlvariables |
Boolean | Yes | This key is present in the Identity request event when the getUrlVariables API is called. |
visitoridentifiers |
Map | Yes | The visitor identifiers that need to be synced with the ECID service. The keys of the map are the identifier types and the values are the associated identifiers. |
authenticationstate |
Integer | Yes | The VisitorID Authentication State represent (Unknown - 0, Authenticated - 1, Logged Out - 2). |
Append to URL request
{
"baseurl": "https://example.com/path?query=parameter1&other=parameter2"
}
Get URL variables request
{
"urlvariables": true
}
Sync identifiers request
{
"visitoridentifiers": {
"idtype1" : "id1",
"idtype2" : "id2"
},
"authenticationstate" : 1
}
This event is used to set identifiers in the Identity extension and it is generated by:
- Calling the MobileCore (Android) / ACPCore (iOS)
setAdvertisingIdentifier
API - Calling the MobileCore (Android) / ACPCore (iOS)
setPushIdentifier
API
Event Type | Event Source | Paired | Paired Event |
---|---|---|---|
com.adobe.eventType.generic.identity |
com.adobe.eventSource.requestIdentity |
No | N/A |
Here are the key-value pairs in this event:
Key | Value Type | Optional | Description |
---|---|---|---|
advertisingidentifier |
String | Yes | The value of the Advertising Identifier for the mobile device that needs to be set in the SDK. This key is populated when the setAdvertisingIdentifier API is called. |
pushidentifier |
String | Yes | The value of the Push Identifier that needs to be set. This key is populated when the setPushIdentifier API is called. |
Set the Advertising Identifier request
{
"advertisingidentifier": "advertisingIdExample"
}
Set the Push Identifier request
{
"pushidentifier": "pushIdExample"
}
Identity Extension listens to Analytics Identity Response Event to retrieve the value of the Analytics tracking identifier (AID) that is returned as part of the visitor information for the appendToURL and getUrlVariables API calls.
For more details see Analytics response identity Document.
The Identity extension listens for the Audience extension response content event for any user opt-out updates. If this response contains optedouthitsent: false
an opt-out network call is sent to the Experience Cloud Identity Service.
For more details see Audience Manager Content Response Document.
Whenever the configuration extension dispatches the Configuration Response Content event, the Identity extension fetches the URL of the Experience Cloud Identity Service, Experience Cloud Organization Identifier, and the Privacy status settings.
This event is generated in the following scenarios:
- Initial config requested by the customer.
- Configuration modified (remote update or local developer action).
- In response to a configuration request event with the
config.getData
data key.
For more information about the data payload definition for this event, see the Configuration Keys topics in each extension section.
Event Type | Event Source | Paired | Paired Event |
---|---|---|---|
com.adobe.eventType.configuration | com.adobe.eventSource.responseContent | No | N/A |
The data property in the Configuration Response Content event is used by each extension to modify its current settings. Each extension is responsible to read out the part of the data property for which it is concerned.
The Identity extension reads the following keys from the configuration event:
Here are the key-value pairs in this event:
Key | Value Type | Optional | Description |
---|---|---|---|
experienceCloud.org |
String | Yes | Experience Cloud Org Identifier |
experienceCloud.server |
Sting | Yes | Custom endpoint to be used for Visitor ID Service network requests |
global.privacy |
String | Yes | Contains the mobile privacy status settings. |
The shared state event is dispatched by the event hub after a shared state is created or updated. The event data contains the event owner, the name of the extension to which the shared state belongs. The Identity extension triggers processing the queued events, if any, when the Configuration's shared state is updated.
Event Type | Event Source | Paired | Paired Event |
---|---|---|---|
com.adobe.eventType.hub | com.adobe.eventSource.sharedState | No | N/A |
Definition of the key/value pairs that are present in this event
Key | Value Type | Optional | Description |
---|---|---|---|
stateOwner | String | N/A | N/A |
The following events are dispatched by the Identity extension:
This event is a response from the Identity extension to the public API callbacks, and it will be generated in response to an Identity Request Identity event when:
- Retrieving the ECID (MID).
- Retrieving the custom visitor identifiers.
- Synchronizing a visitor identifier or a list of identifiers with the ECID Service is complete.
- The result for the append to URL request is ready.
Event Type | Event Source | Paired | Paired Event |
---|---|---|---|
com.adobe.eventType.identity | com.adobe.eventSource.responseIdentity | Yes | Identity Request Identity event |
Here are the key-value pairs in this event:
Key | Value Type | Optional | Description |
---|---|---|---|
mid |
String | Yes | The value of the Experience Cloud Identifier (MID). |
advertisingidentifier |
String | Yes | The value of the Advertising Identifier if it was previously set. |
pushidentifier |
String | Yes | The Push Identifier if one was previously set. |
blob |
String | Yes | The blob value retrieved from the ECID Service. |
locationhint |
String | Yes | The location hint value retrieved from the ECID Service. |
visitoridslist |
List> | Yes | A list of visitor identifiers that were previously synced using syncIdentifier or syncIdentifiers public APIs. Each visitor ID will have the following keys: id_origin , id_type , id , authentication_state . |
lastsync |
Long | Yes | Timestamp in seconds of the last sync call sent to the ECID Service, by default it is 0. |
updatedurl |
String | Yes | The update URL when appendVisitorInfoForURL (Android) / appendToUrl (iOS) public API is called. |
urlvariables |
String | Yes | The Visitor IDs as query parameters string when getUrlVariables API is called. |
When all identifiers, blob and location hint are populated
{
"mid": "midExample",
"advertisingidentifier": "advertisingIdExample",
"pushidentifier": "pushIdExample",
"blob": "blobExample",
"locationhint": "locationHintExample",
"visitoridslist": [{
"id_type": "type1",
"id_origin": "origin1",
"id": "id1",
"authentication_state": 1
},
{
"id_type": "type2",
"id_origin": "origin2",
"id": "id2",
"authentication_state": 2
}]
}
The result for the appendToUrl
request:
{
"updatedurl": "https://example.com/path?query=parameter1&other=parameter2&adobe_mc=TS%3D1563845864296%7CMCMID%3Dmidexample%7CMCORGID%3Dorgidexample%40AdobeOrg%7CMCAID%3Daidexample&adobe_aa_vid=videxample"
}
The result for the getUrlVariables
request:
{
"urlvariables": "adobe_mc=TS%3D1563845864296%7CMCMID%3Dmidexample%7CMCORGID%3Dorgidexample%40AdobeOrg%7CMCAID%3Daidexample&adobe_aa_vid=videxample"
}
{% hint style="warning" %} The Analytics Custom VID is no longer included in the Identity event data payload. If needed, it may be retrieved from the Analytics extension. {% endhint %}
The Identity extension dispatches a new Configuration Content Request event when a privacy change is detected in the response that is received from the ECID Service. This event is handled by the Core extension, and the new privacy status is broadcasted to other extensions.
For more details about this event, see the Mobile Core Configuration event reference section.
The Identity extension dispatches a new Analytics Content Request event when a push status preference change is detected, when the push identifier is initially set, or when it is cleared from the SDK. This event is handled by the Analytics extension, and a new internal hit is sent to the Adobe Analytics Server.
For more details about this event see Analytics Content Request
EXTENSION_NAME: com.adobe.module.identity
The Identity extension shared state is created in the following situations:
- When the extension first loads and is initialized.
- When handling a sync request, regardless of whether an actual sync occurs. Occurs when setting the Push Identifier, the Advertising Identifier, or the customer's custom identifiers.
- When the global privacy status changes to
optedout
, a shared state is set after the identifiers are cleared.
Key | Type | Description |
---|---|---|
mid |
String | MID is a unique ID for that visitor for the given Experience Cloud organization ID. |
advertisingidentifier |
String | iOS: the IDFA from retrieved Apple APIs Android: The Advertising Identifier that is returned from Google Play Services. |
pushidentifier |
String | The Push Identifier. |
blob |
String | The blob value returned by the the ECID Service. |
locationhint |
String | The ECID Service region ID. A region ID (or location hint), is a numeric identifier for the geographic location of a particular ID service data center. |
visitoridslist |
List> | The list of all the customer's custom identifiers. |
lastsync |
Long | The timestamp of the last sync with the ECID Service (in seconds). The default value 0. |