Get started with code-based channel get-sarted-code-based
Journey Optimizer allows you to personalize and test the experiences you want to deliver to your customers across all your touchpoints like: web apps, mobile apps, desktop apps, video consoles, TV connected devices, smart TVs, kiosks, ATMs, voice assistants, IoT devices, etc.
With the code-based experience capability, you can define inbound experiences using a simple and intuitive non-visual editor. It allows you to insert and edit specific elements at individual and more granular locations of your apps or web pages, no matter the type of applications you have - rather than applying modifications to an entire content.
When to use code-based vs. other channels code-based-vs-other-channels
Code-based vs. other channels
When to use the code-based channel rather than the other Journey Optimizer channels?
-
You can consider using code-based experiences any time when your digital property is not accessed through a web browser or a mobile app – cases in which you can probably better use the Journey Optimizer web channel or the Journey Optimizer in-app messaging channel.
-
You can use the code-based channel as an alternative to the Journey Optimizer web channel if your website cannot be loaded into the web designer visual editor or if you cannot use the browser extension that powers visual authoring for web channel.
-
You can also use the code-based channel as an alternative to the Journey Optimizer web or in-app channels in case you have an API-based, headless or server-side implementation.
Code-based vs. web channel code-based-vs-web
To execute web use cases, you can use either the web channel or code-based experience, but depending on your context one would be more appropriate than the other. The main differences are listed below so you can make an informed decision on what to use when.
Web
- Edit your content using the web designer visual editor.
- You need the Adobe Experience Platform Web SDK implementation and the Adobe Experience Cloud Visual Editing Helper extension installed on your web browser. Learn more
- The web channel lets you modify everything on your page and has a pre-defined list of actions you can use to make changes. Learn more
- It is easy to set up and get going fast.
- It is marketer-persona focused.
Code-based experience
- Edit your content using the personalization editor.
- The code-based experience requires previous development work on your implementation to make sure that your applications can interpret and deliver the content published on the edge by Journey Optimizer for these locations. Learn more
- It requires more planning and it can change only the things that developers specify. Therefore, it is essential to identify the components (home banner, hero image, menu bar, etc.) on the applications that need to be modified for personalization or testing, and work with your development team to build the implementation needed for handling these changes.
- It allows you to use JSON code content.
- It is developer-persona focused.
How it works how-it-works
To edit your content using the Journey Optimizer code-based experience feature, your pages or apps need to be instrumented. To do so, you must declare upfront the specific individual locations (called “surfaces”) where you want to insert or replace content.
The key steps to implement a code-based campaign are as follows.
-
Define a surface in your application implementation, which is basically the location where you want to add your code-based experience, and create a code-based experience channel configuration that references that location. Learn how
-
Create a journey or campaign in Journey Optimizer using this configuration. Learn how
-
Compose an experience by specifying content for the selected configuration using the Journey Optimizer personalization editor. Learn how
-
Your app implementation team makes explicit API or SDK calls to fetch content for the named surfaces, such as “Banner Text” or “Recommendations Tray 1”, or non-UI-related decision points in an application, such as “search algorithm parameters”. In this case, the implementation team is responsible for rendering or otherwise interpreting and acting on the returned content. Learn more