# Adobe Journey Optimizer Integration Guide

### Using Personalization&#x20;

{% stepper %}
{% step %}
Select **Adobe Journey Optimizer** in Connect to CRM.
{% endstep %}

{% step %}
Map the dynamic variables needed in the video, to AJO personalization syntax:\
e.g. Name → `{{profile.person.name.firstName}}`. ([reference](https://experienceleague.adobe.com/en/docs/journey-optimizer/using/content-management/personalization/personalization-syntax?utm_source=chatgpt.com))

* Other common fields:

  * Last name: `{{profile.person.name.lastName}}`&#x20;
  * Custom profile attribute (example): `{{profile.myBrand.loyaltyTier}}`&#x20;

{% endstep %}

{% step %}
Example URL, that includes the base link to the video page, and AJO personalization field (copy from Blings app)\
&#x20;`https://app.blings.io/embed?name={{profile.person.name.firstName}}` .

* [Helpers](https://experienceleague.adobe.com/en/docs/journey-optimizer/using/content-management/personalization/functions/string?utm_source=chatgpt.com) like `urlEncode(...)` and `encode64(...)` are available when you need URL safety or obfuscation.&#x20;

<div align="left" data-full-width="false" data-with-frame="true"><figure><img src="/files/CxLfiKUA9iJiZ0yj5faC" alt="Dynamic link for Klaviyo campaigns, using &#x60;first_name&#x60; variable. " width="375"><figcaption><p>Dynamic link for AJO campaigns, using "name" variable.</p></figcaption></figure></div>
{% endstep %}

{% step %}
**Embed** in AJO email template:

![](/files/aNOR2pPmobClqj66pe2h)         ![](/files/v4g6OBnitSKgG2XY29MY)

Embed Options – Video Link vs Visual Placeholder

| Method                               | Email Editor                                                  | CRM Help                                                                                                                             |
| ------------------------------------ | ------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------ |
| **Video Link (URL)**                 | Add a **Button** or **Text** → set **Link** in the right pane | <https://experienceleague.adobe.com/en/docs/journey-optimizer/using/channels/email/design-email/add-content/content-components>      |
| **Visual Placeholder (HTML banner)** | Drag **HTML** component → paste HTML snippet from Blings      | <https://experienceleague.adobe.com/en/docs/journey-optimizer/using/channels/email/design-email/add-content/content-components#HTML> |

{% endstep %}

{% step %}
**Validate** in the Personalization editor, or test snippets in the Personalization playground
{% endstep %}
{% endstepper %}

{% tabs %}
{% tab title="Tips" %}

* Token not resolving - confirm the field path exists on the profile and re-validate in the editor.&#x20;
* Special characters in URLs - wrap values with the appropriate helper from the editor’s function list.&#x20;
* In URL fields inside the AJO link dialog, helper functions are disabled. If you need encoding or hashing, either precompute the value in a profile field or build the full \<a> in an HTML block.&#x20;
  {% endtab %}

{% tab title="Dynamic Thumbnails" %}
Supported by appending the same tokens.
{% endtab %}
{% endtabs %}

**Official Resources:**

* [AJO: Add Personalization](https://experienceleague.adobe.com/en/docs/journey-optimizer/using/content-management/personalization/personalization-build-expressions)
* [AJO - Personalization syntax. ](https://experienceleague.adobe.com/en/docs/journey-optimizer/using/content-management/personalization/personalization-syntax?utm_source=chatgpt.com)
* [AJO - Helper functions overview and string functions. ](https://experienceleague.adobe.com/en/docs/journey-optimizer/using/content-management/personalization/functions/functions?utm_source=chatgpt.com)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://help.blings.io/integrations-crm-guides/ajo.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
