Consent Management: Configuring Adobe Experience Platform
In this tutorial, we'll configure Adobe Experience Platform (AEP) to respect the end-user consent choices provided by Fides.js.
Overview
The Adobe Experience Platform integration automatically syncs Fides consent to Adobe products. It supports both modern and legacy Adobe consent mechanisms:
- Adobe Web SDK (Alloy) - Modern Consent API v2.0
- Adobe ECID Opt-In Service (AppMeasurement) - Legacy consent framework
SDK stands for Software Development Kit, API stands for Application Programming Interface, and ECID stands for Experience Cloud ID.
The integration provides out-of-the-box default mappings for common consent categories and allows full customization to meet your specific requirements.
Prerequisites
For this tutorial you'll need:
- A Fides Cloud or Fides Enterprise account
- The role of
OwnerorContributorfor your Fides organization. - Adobe Experience Platform or Adobe Analytics installed on your website
- At least one system with a data use on your Data Map. Read how to add systems to the Data Map now.
- At least one privacy notice configured. Read how to configure privacy notices now.
- At least one privacy experience configured. Read how to configure privacy experiences now.
- Installed
Fides.json your web site. Read how to install fides.js now.
Basic Usage
The simplest way to integrate Adobe Experience Platform is to use the default mappings:
// Load Fides.js
<script src="path/to/fides.js"></script>
<script>
// Initialize Adobe Experience Platform integration
Fides.aep();
</script>This will automatically sync Fides consent to Adobe using the following default mappings:
Default Adobe Web SDK Mappings
| Fides Consent Key | Adobe Purposes |
|---|---|
analytics | collect, measure |
functional | personalize |
advertising | share, personalize |
Default ECID Opt-In Mappings
| Fides Consent Key | Adobe ECID Categories |
|---|---|
analytics | aa (Analytics) |
functional | target (Target) |
advertising | aam (Audience Manager) |
Custom Mappings
You can customize the consent mappings to match your specific Adobe configuration and privacy notice structure:
const aep = Fides.aep({
// Custom Adobe Web SDK purpose mappings
purposeMapping: {
analytics: ['collect', 'measure'],
marketing: ['personalize', 'share'],
essential: []
},
// Custom ECID Opt-In Service category mappings
ecidMapping: {
analytics: ['aa'],
marketing: ['target', 'aam'],
essential: []
}
});Adobe Web SDK Purposes
The Adobe Web SDK Consent API v2.0 supports the following standard purposes:
collect- Permission to collect datameasure- Permission to measure and analyze datapersonalize- Permission to personalize contentshare- Permission to share data with third parties
ECID Opt-In Categories
The legacy Adobe ECID Opt-In Service supports these standard categories:
aa- Adobe Analyticstarget- Adobe Targetaam- Adobe Audience Manageradcloud- Adobe AdCloudcampaign- Adobe Campaignecid- Adobe Experience Cloud ID Servicelivefyre- Adobe Livefyremediaaa- Adobe Media Analytics
The integration dynamically handles all Adobe categories. You only need to map the categories you're actually using in your Adobe configuration.
Checking Consent State
You can check the current Adobe consent state at any time using the consent() method:
const aep = Fides.aep();
// Get current Adobe consent state
const state = aep.consent();
console.log(state);
// Output:
// {
// timestamp: "2025-12-08T12:00:00.000Z",
// alloy: {
// configured: true,
// purposes: undefined // Adobe Web SDK doesn't expose this
// },
// ecidOptIn: {
// configured: true,
// categories: {
// aa: true,
// target: false,
// aam: true
// }
// }
// }The Adobe Web SDK (Alloy) does not expose consent state for reading. The integration can only show whether Alloy is configured, not what consent values were set. Use the ECID Opt-In state for verification.
Complete Example
Here's a complete example showing how to install Fides.js and configure the Adobe Experience Platform integration:
<!DOCTYPE html>
<html>
<head>
<!-- Load Fides.js -->
<script src="https://privacy.example.com/fides.js"></script>
<script>
// Initialize Adobe Experience Platform integration
const aep = Fides.aep({
// Map Fides consent to Adobe Web SDK purposes
purposeMapping: {
analytics: ['collect', 'measure'],
functional: ['personalize'],
advertising: ['share', 'personalize']
},
// Map Fides consent to legacy ECID categories
ecidMapping: {
analytics: ['aa', 'mediaaa'],
functional: ['target'],
advertising: ['aam', 'adcloud']
}
});
// Optional: Check consent state when needed
console.log('Adobe consent state:', aep.consent());
</script>
</head>
<body>
<!-- Your website content -->
</body>
</html>Integration Behavior
The Adobe Experience Platform integration:
- Listens to Fides events - Automatically responds to
FidesReadyandFidesUpdatedevents - Syncs consent immediately - If Fides consent is already available when initialized, it syncs immediately
- Supports both Adobe SDKs - Works with Adobe Web SDK (Alloy) and/or ECID Opt-In Service
- Graceful degradation - If Adobe is not detected, the integration logs debug information but does not error
- Dynamic category support - Automatically handles all Adobe ECID categories without hardcoded logic
Debugging
To debug the integration, listen to Fides events to see when consent changes are applied:
window.addEventListener("FidesUpdated", (event) => {
console.log("Fides consent updated:", event.detail);
});This will show you the current consent state whenever it changes, which you can then verify against your Adobe Experience Cloud console or by checking the Adobe SDK state.
Troubleshooting
Adobe SDK not detected
If you see the message "Adobe not detected. Ensure Adobe Web SDK or ECID is loaded", verify:
- Adobe Web SDK (Alloy) is loaded before the integration: Check for
window.alloy - Or, Adobe ECID Opt-In Service is loaded: Check for
window.adobe.optIn - Fides.js is loaded after the Adobe SDK
Consent not applying
If consent doesn't seem to be applying to Adobe:
- Check the browser console for error messages
- Listen to Fides events (see Debugging section above) to verify consent is being updated
- Verify your
purposeMappingandecidMappingmatch your Adobe configuration - Confirm your Fides privacy notice cookie keys match what you're using in the mappings
Mixed SDK environments
If you have both Adobe Web SDK and ECID Opt-In Service on the same page:
- The integration will sync consent to both SDKs automatically
- Each SDK requires its own mapping:
purposeMappingfor Web SDK,ecidMappingfor ECID - No additional configuration is required
What's next?
Now that you have Adobe Experience Platform integration configured, you might want to:
- Configure other integrations like Google Tag Manager
- Customize the appearance of your privacy experiences
- Configure additional privacy notices for different data uses