Explore product-specific spaces to ask questions, share insights, and learn best practices.
Attivo di recente
As the marketing practitioner for the e-commerce business, I have created a journey to engage with approximately 10 million users during the Diwali sale and offer period. I now need to test the journey before publishing, as even a small issue in your journey can cause major problems, from broken flows to a poor customer experience. In this blog, we’ll walk through the different testing techniques available in Adobe Journey Optimizer(AJO) and how they help you deliver with assurance.Journeys Test ModeAfter creating the journey, we need to see how it interacts with real profiles. That’s where AJO’s Journey Test Mode comes in handy — it lets you test your journey using the test profiles you’ve set up in AEP.Steps to activate a journey in test modeOpen the draft journey that you want to test.Click on the Test mode button from the header menu.While the transition takes place, we will see a status message that says Activating test mode.Once the transition is complete, we will
🚦🚦 Planning customer journeys isn’t just about creating a flow—it’s about seeing the big picture, identifying overlaps, and ensuring your journeys hit the mark. Adobe Journey Optimizer (AJO) empowers marketers, journey planners, and support teams with intuitive views designed to streamline journeys oversight. Let’s walk through how AJO’s Calendar View, Dashboard and Browse List each solve distinct challenges—paired with real-life use cases to inspire you to use them smartly. Calendar View – Plan Strategically with Visual Clarity 📍Use Case: Journey planner aligning journey timelines You’re launching a weeklong journey and want to avoid audience fatigue. Use Calendar View to: 📅See what’s live or scheduled across the current week ⏱️Identify overlaps that may overload specific segments 👁️Click on any journey block to see its audience and scheduling logic 📎Easily distinguish journeys running acro
What Are Custom Actions? Custom actions in AJO are user-defined HTTP requests (typically REST APIs) that can be executed within a journey. They allow you to: Call external systems Send data to downstream services Trigger internal workflows Make real-time decisions based on API responses They are configured with authentication, headers, request/response schemas, and can include dynamic personalisation using AJO expressions. Use Cases for Custom Actions Here are several categories and examples of how custom actions are being used across industries. 1. Integration with External Services Use Case: Triggering a WhatsApp or SMS via Third-Party API Send a message through a messaging service (like Twilio) directly from an AJO journey. POST https://api.twilio.com/... { "to": "{{ profile.phoneNumber }}", "message": "Hi {{ profile.firstName }}, your cart is waiting!" } Use Case: Notifying Logistics Systems Trigger fulfillment or shipping workflows when a user places an orde
Dear AEP Community,Your time is precious, and we understand the importance of efficiency when it comes to troubleshooting issues with Adobe Experience Platform.That's why we're excited to again bring you our carefully curated collection of Top KCS (Knowledge-Base) Articles for June 2025, designed to help you resolve common challenges swiftly and effectively.Our Top KCS Articles are your shortcut to:Quickly identifying and resolving recurring issues.Accessing expert insights and best practices for AEP.Streamlining your troubleshooting process for maximum productivity.Empowering yourself with the knowledge to tackle any AEP-related problem head-on.Why spend hours searching for solutions, when our Top KCS Articles have already done the heavy lifting for you?Let us help you save time so you can focus on what truly matters – creating highly personalized digital experiences with AEP.Start supercharging your problem-solving skills today by exploring our Top KCS Articles! Take a
Dear AEM Community,Your time is precious, and we understand the importance of efficiency when it comes to troubleshooting issues with AEM.That's why we're excited to again bring you our carefully curated collection of Top KCS (Knowledge-Base) Articles for June 2025, designed to help you resolve common challenges swiftly and effectively.Our Top KCS Articles are your shortcut to:Quickly identifying and resolving recurring issues.Accessing expert insights and best practices for AEM.Streamlining your troubleshooting process for maximum productivity.Empowering yourself with the knowledge to tackle any AEM-related problem head-on.Why spend hours searching for solutions, when our Top KCS Articles have already done the heavy lifting for you?Let us help you save time so you can focus on what truly matters – empowering you to provide a truly personalized experience to your customers with AEM.Start supercharging your problem-solving skills today by exploring our Top KCS Articles!Take a
First and foremost, a huge thank you to Andy Hess @andyhess for leading today's workshop on the upcoming changes to the Workfront API and Fusion. If you missed out, no worries - links to both the slide deck and recording are listed below, along with a few key takeaways and resources from the chat.Slide deck PDF Workshop recording An event hosted in partnership with the Adobe Software Development Team was delivered in early May on the changes to Event Subscriptions if you want to learn more on that specific area, [Event Follow-Up] Preserving Your Fusion Scenarios During the Event Subscriptions V2 UpgradeKey Takeaways and Resources: Changes to the Workfront API multi-select fields are coming in version 21 (October 2025) to ensure consistent JSON array format instead of mixed string/array responsesEvent subscription versioning is being introduced - version 2 will always return multi-select fields as arrays, while version 1 maintains current inconsistent behaviorNe
Creating truly personalised customer journeys often requires more than simple conditions. You need the power to dynamically evaluate customer data, perform complex calculations, and create sophisticated logic that adapts to real-time customer behavior. While Journey Optimiser's simple expression mode works well for basic conditions. The Advanced Expression Editor unlocks a world of possibilities for marketers who need to create intelligent, data-driven customer experiences. This guide will show you how to leverage advanced expressions to solve real marketing challenges and create more engaging customer journeys. The Challenge: When Simple Conditions Aren't Enough Consider these common marketing scenarios: Scenario 1: Abandoned Cart Recovery You want to target customers who added items to their cart but didn't purchase, but only if they're high-value customers and it's been exactly 24 hours since abandonment. Scenario 2: Dynamic Loyalty Offers You need to send differ
We've now learned a good deal about Agentic AI as per Adobe Summit 2025. Does anyone know what the release schedule looks like for these? I'd love to know what's coming this summer, later this year, and anything that might go into next year.
When i insert a custom snippet into Guides editor and tried to click the Undo button from Menu it is not working. But it is working for OOTB snippet and snippet having only one tag. Please let me know how to resolve the issue. <note></note> ---> working <section> <title></title> -----> not working</section>
Is it possible to override the Smart Crop positioning on an image, for a specific Image Crop? I've created an Imaging Processing Profile and added some breakpoints. At smaller screen sizes / breakpoints, I'd like to override the Smart Crop and set a custom focal point. Ideally, this would mean that when I upload an image, the Smart Crop is applied only to larger screen sizes and smaller sizes will use the custom focal point / position. Is there a way to implement this or is it a bit too counter-intuitive to the purpose of Smart Cropping?
🔹IntroductionModern marketing demands speed—but not at the cost of accuracy, brand integrity, or compliance. Whether you’re creating journeys, sending policy updates, or launching cross-channel campaigns, every message matters. That’s why having a structured way to review and approve assets before they go live is essential.Adobe Journey Optimizer (AJO) offers a powerful solution through Approval Workflows, ensuring that every customer experience is reviewed, approved, and auditable—not just for marketing, but across all AJO use cases.In this blog, we’ll walk through a real-world enterprise use case, explore how Approval Workflows solve governance challenges, and share practical steps and tips for making the most of this feature.❌The Challenge: Disjointed Reviews, Risk of Error, and Compliance DelaysA global insurance provider faced a recurring bottleneck: every marketing message and policy update had to be reviewed by Legal and Compliance before it could be activated. Th
Hi all, I have an already existing application in AEM.Please let me know how to know Template and Components on its Landing Page. My knowledge says in CRXDE one can see Templates folder and Components folder under the project name under /apps.Under Templates folder, the template will be there, whose resourceType property points to the Page Component and Page Component houses all other components. But here there is no Templates folder. I am also aware that Templates named folder is not mandatory.I have access to the code. Similarly I have a button on the Landing Page. Need to know the servlet it invokes. Appreciate all your replies. Thanks,RK.
Introduction For organizations using Adobe Customer Journey Analytics (CJA), understanding the data processing and ingestion process from the Adobe Experience Platform (AEP) data lake to CJA is crucial. This is because CJA does not work with a fixed data size, which means Adobe cannot provide a standard time frame for data ingestion. As a result, users should understand the factors that can affect the queue status, data processing speed, and any deviations from the expected timeline. With this knowledge, CJA users can plan their data management strategies more effectively, ensuring efficient data ingestion and maximizing the benefits of using CJA. Note: The latest ingestion prioritization and latency guidance for CJA as of June 12th, 2024, is as follows: Ingestion Prioritization and Latency You can now ingest your events data in Customer Journey Analytics within 90 minutes (SLT), regardless of whether the data is 24 hours, 48 hours, or 7 days old. Note that this capability
Hi All,Recently, while working on my AEM project, I encountered an unexpected issue after upgrading the react-router-dom dependency from version 5.3.4 to 6.22.0 in a remote Single Page Application (SPA) setup.Issue Description:After updating the react-router-dom dependency, I made the necessary changes in the app.js file of my AEM project. Specifically, I replaced the <Switch> component with the <Routes> component as Switch is not supported in react-router-dom version 6.// Before:<Switch><Route path="/"> <Home /> </Route></Switch>// After:<Routes><Route path="/" element={<Home />} /></Routes>However, after making this change, I noticed that the AEM home page started rendering as a blank page as shown in the below image while the react page continued to work as expected.Is there any way to fix this issue? Any help will be appreciated. Thanks.
Hi All,Does anyone have insights on how to programmatically extend an existing AEM session (login-token)? Most of the articles I’ve come across describe creating a new session with a fresh expiry, rather than extending the current one.I’m aware of the approach that involves updating the expiry time under the .tokens node in /home/users, but since those nodes are read-only, it's not a recommended practice.Ideally, I’m looking for a cleaner solution that allows extending the session based on user activity. I understand that AEM’s out-of-the-box TokenConfiguration refresh mechanism extends the session once it nears the threshold, but I’d like to trigger the extension proactively based on specific user interactions.Any suggestions or best practices would be greatly appreciated. Thanks,
One of the things that I find very helpful as a learner (and when I'm teaching others) is to make comparisons, or "translations" between new vs known products. In this case, I often try and use Marketo Engage as the anchor point. Adobe Journey Optimizer B2B Edition has a functionality to create buying group stages in what is called the stage model. The most similar translation to that in Marketo would be the lifecycle model and lifecycle stages. Below are some similarities and differences in their use cases. Like a Marketo Engage lifecycle model, AJO B2B buying group stages are designed to track the progression of opportunities converted to customers - but in this case it tracks the progression of the buying groups as a whole, rather than only individual person records. You can use this feature to track buying group progression and identify the next best actions for buying group members to compliment your existing strategy. Though it is not a requirement to build and
“Confidence is the foundation of great customer experiences.” Launching a journey in Adobe Journey Optimizer (AJO) is a critical step for marketers. But what if you could see exactly how profiles flow through your journey before actually going live—without risking real customer contact or profile updates? Enter: Dry Run Mode. 🧩 The Problem: Uncertainty Before Going Live Crafting the perfect customer journey is both an art and a science. But here’s the challenge: marketers often face major blind spots during the pre-publication phase. These include: - How many profiles will qualify for the journey? - Which paths will they take? - What are the expected delivery counts? While Test Mode offers basic functionality, it doesn’t provide the full confidence needed to predict actual behavior once a journey is live. 🔍Use Case Snapshot In this complex journey: - We start with 200,000 profiles. - Several conditions filter p
The Global Profile Filter is a powerful new feature in Adobe Journey Optimizer designed to provide marketers with greater control and flexibility over live customer journeys.What it is: Simply put, the Global Profile Filter allows you to define specific criteria based on profile attributes when the journey is paused and that will be applied to all profiles when that journey is resumed. This acts as an immediate, universal filter.This feature is particularly beneficial for scenarios where: Dynamic Exclusion is Needed: Your business rules or customer segments change after a journey has gone live, requiring immediate exclusion of certain profiles from an ongoing journey. Preventing Irrelevant Communications: You need to ensure that specific customer groups do not receive messages from a journey that are no longer applicable or could lead to confusion. Operational Agility: It provides a mechanism to quickly adapt live journeys to new policies or customer classifications without re
How to Send Emails Only on Weekdays in Adobe Journey Optimizer Sending marketing emails at the right time is crucial for engagement and deliverability. Many organizations want to ensure that emails are sent only on weekdays (Monday to Friday), even if profiles enter a journey on weekends. In this post, we'll show you how to achieve this in Adobe Journey Optimizer (AJO) using Wait activities and custom formulas, based on a community-accepted solution. The Challenge You want profiles to enter your AJO journey every day, but emails should only be sent Monday through Friday. If a profile enters on Saturday or Sunday, the email should be queued and sent on Monday at a specific time (e.g., 9 AM). The Solution: Using Wait Activities and Custom Formulas The recommended approach is to use a Condition to check the day of the week, and then use Wait activities with a custom formula to delay sending for weekend entries. Step-by-Step Guide Add a Condition ActivityRight after
Hi Community, I am seeing an issue where AEM custom sling servlet is not accessible on one of the Dispatcher servers (IIS 10). On trying to access the servlet, I get this error: I have added filter to allow the servlet path in dispatcher.any file./0116 { /type "allow" /method "GET" /url "/bin/nameofthepath*" } The pages are loading fine, just the servlets are not working. Kindly let me know if I am missing out anything. Appreciate your support. Please note: The custom sling servlet is working fine on publish instance.
Hi! I need to take over the administration of an AEM instance and I'm trying to understand how the permissions and groups have been configured.There are a lot of groups on AEM and I would like to know which group belongs to. It's easy to find the members of a group, but how can I find the upper level (the "parent" of a group)? Thanks!
Hi All, I want to override the Asset Share Commons SearchConfig https://github.com/adobe/asset-share-commons/blob/develop/core/src/main/java/com/adobe/aem/commons/assetshare/components/search/SearchConfig.java. It already has an implementation class in AssetShareCommons (https://github.com/adobe/asset-share-commons/blob/develop/core/src/main/java/com/adobe/aem/commons/assetshare/components/search/impl/SearchConfigImpl.java) and is being referred in other sling models using @Self@Required private SearchConfig searchConfig; I have a custom requirement to override one of the methods of the SearchConfig and make sure this gets used. I have already implemented the delegate pattern but that is not working out.Can anyone help me on this ? What would be the right approach of doing overriding the Sling Model ?
Hello Community, I have two AEM sites (AEM as cloud service Author + Edge Delivery Service with Franklin/EDS template) set up almost identically, but I’m seeing two puzzling differences: 1. hostRoot / codeBasePath detection: function setup() { window.hlx = window.hlx || {}; window.hlx.RUM_MASK_URL = 'full'; window.hlx.RUM_MANUAL_ENHANCE = true; window.hlx.codeBasePath = ''; window.hlx.lighthouse = new URLSearchParams(window.location.search).get('lighthouse') === 'on'; const scriptEl = document.querySelector('script[src$="/scripts/scripts.js"]'); if (scriptEl) { try { console.log('👉 hlx.codeBasePath scriptEl.src:', scriptEl); const scriptURL = new URL(scriptEl.src, window.location); if (scriptURL.host === window.location.host) { [window.hlx.codeBasePath] = scriptURL.pathname.split('/scripts/scripts.js'); } else { [window.hlx.codeBasePath] = scriptURL.href.split('/scripts/scripts.js'); } } catch (error)
Hello community!We are in the process of implementing Workfront and migrating from Percolate. As part of our migration effort, we had been using Percolate IDs as a lookup element to match metadata from Percolate with content like web pages, emails, and other marketing materials in a PowerBI report. Workfront has their own ID system that will support us in maintaining that similar set of reporting which is great.Enhancement and clarifications we are trying to work through from our legacy process include:Can Workfront IDs be sent as custom metadata into an AEM Sites page?Should we consider a web page as a "Project" or "Document" in Workfront? Document is appealing as webpages are updated from time to time and having a durable ID is critical for analysis. Project feels more like a what would be used to create or update a webpage.Thank you for a point of view on what other teams might be using or if this investigation is helpful for you.
Hii Team I am trying to setup "universal editor" on AEM as a cloud . Here the page is redirecting to Universal editor but there is not content to edit ,attached the file. I have taken the reference from the below article.Getting Started with Edge Delivery Services for AEM Forms in Universal Editor - Developer Tutorial | Adobe Experience Manager And : Universal Editor Overview for AEM Developers | Adobe Experience Manager Thank you,Pratyusha Talari.
Hai già un account? Accedi
Non hai ancora un account? Crea un account
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.