Verwenden externer Integrationen für die Personalisierung integrations-personalization

Auf dieser Seite: Erfahren Sie, wie Marketing-Fachleute konfigurierte Integrationen anwenden, um E-Mail-, SMS- und Push-Inhalte zu personalisieren und einen API-Aufruf mit einem anderen zu verketten, um reichhaltigeres, dynamischeres Messaging zu ermöglichen.

Bevor Sie externe Integrationen in Ihren Inhalten verwenden, vergewissern Sie sich, dass Admins jede Integration (Endpunkt, Authentifizierung, Richtlinien, Antwort-Payload und Aktivierung) wie in Arbeiten mit Integrationen beschrieben konfiguriert und aktiviert haben.

Sie können bis zu 3 Integrationen pro Fragment und bis zu 5 in der Nachricht hinzufügen. Integrationen, die ausschließlich aus Fragmenten stammen, werden nicht auf die 5 angerechnet.

Anwenden der Integrationspersonalisierung auf Ihre Inhalte apply-integration-personalization

Als Marketing-Fachleute können Sie konfigurierte Integrationen verwenden, um Ihre Inhalte zu personalisieren. Führen Sie folgende Schritte aus:

  1. Greifen Sie auf Ihren Kampagneninhalt zu und klicken Sie in Ihren Text- oder HTML-Komponenten auf Personalisierung hinzufügen.

    Weitere Informationen zu Komponenten

  2. Navigieren Sie zum Abschnitt Integrationen und klicken Sie auf Integrationen öffnen, um alle aktiven Integrationen anzuzeigen.

    Beachten Sie, dass Journey Optimizer-Fragmente für Integrationen verfügbar sind, aber nur ausgehende Kanäle unterstützen. Sobald ein Fragment veröffentlicht ist, ist das Hinzufügen und Speichern neuer Integrationen deaktiviert, um Auswirkungen auf bestehende Journeys und Kampagnen zu vermeiden.

  3. Wählen Sie eine Integration aus und klicken Sie auf Speichern.

  4. Aktivieren Sie den Pillen-Modus, um das erweiterte Integrationsmenü zu entsperren.

  5. Wenn Sie die Integrationspersonalisierung erstellen, enthält der Integrations-Helper ein Feld required, das festlegt, wie sich Fehler oder fehlende Daten auf Standardinhalte auswirken:

    • required=true (Standard): Das Rendern wird für diese Nachricht gestoppt. Der Versand wird mit ExternalDataLookupExclusion ausgeschlossen, und dieser Ausschluss wird im Nachrichten-Feedback-Datensatz erfasst.

    • required=false: Die Ergebnisvariable wird auf null festgelegt und das Rendern wird fortgesetzt. Verwenden Sie Standardtext, Fallbacks oder bedingte Logik in Ihrer Vorlage, damit Profile keine leeren Inhalte erhalten, wenn die Integration keine Daten zurückgibt.

  6. Um die Einrichtung der Integration abzuschließen, definieren Sie die Integrationsattribute, die zuvor bei der Konfiguration angegeben wurden.

    Sie können diesen Attributen Werte zuweisen – entweder mithilfe statischer Werte, die konstant bleiben, oder mithilfe von Profilattributen, die Informationen dynamisch aus Benutzerprofilen abrufen.

  7. Sobald die Integrationsattribute definiert sind, können Sie die Integrationsfelder in Ihren Inhalten für personalisierte Nachrichten verwenden, indem Sie auf das Symbol Hinzufügen klicken.

    note
    NOTE
    Token in Ihrer Vorlage dürfen nur Felder verwenden, die Admins in der Integrationskonfiguration bereitgestellt haben. Beispielsweise ist {{weatherResponse.temperature}} gültig, wenn temperature bereitgestellt wird; {{weatherResponse.humidity}} wird im Editor abgelehnt, wenn humidity nicht bereitgestellt wurde.
  8. Klicken Sie auf Speichern.

Ihre Integrationspersonalisierung wird jetzt erfolgreich auf Ihre Inhalte angewendet, sodass alle Empfängerinnen und Empfänger ein maßgeschneidertes, relevantes Erlebnis erhalten, das auf den von Ihnen konfigurierten Attributen basiert.

Zuordnen eines API-Aufrufs zu einem anderen map-integration-chain

Sie können Integrationen verketten, sodass die Ergebnisse eines Aufrufs in den nächsten einfließen, z. B. Pfadsegmente, Header oder Abfrageparameter. Die Aufrufe werden in derselben Nachricht nacheinander ausgeführt, was eine reichhaltigere Personalisierung ohne benutzerdefinierten Code unterstützt.

Bevor Sie beginnen, stellen Sie Folgendes sicher:

  • Admins haben alle benötigten Integrationen konfiguriert und aktiviert. Siehe Konfigurieren der Integration.
  • Variable Pfadplatzhalter, Header und Abfrageparameter werden in der Integrationskonfiguration mit Labels für Marketing-Fachleute eingerichtet.
  • Admins haben die von Ihnen benötigten Antwortfelder in der Antwort-Payload jeder Integration bereitgestellt, sodass sie beim Authoring angezeigt werden.

Das folgende Beispiel zeigt eine Reservierungsintegration, die eine Flugnummer aus der Buchung des Profils zurückgibt, und anschließend eine Fluginformationsintegration, die diese Nummer für den Live-Status (Verzögerungen, Reiseziel) nutzt. Sie ordnen die Eingaben der zweiten Integration der Antwort des ersten Aufrufs zu.

  1. Öffnen Sie Ihre Nachricht oder Ihr Fragment und öffnen Sie den Personalisierungseditor.

  2. Klicken Sie in Integrationen auf Integrationen öffnen.

  3. Fügen Sie die Integration hinzu, deren Antwort den nächsten Aufruf befüllt, z. B. Reservierungs- oder Buchungsdaten, die die Flugkennung enthalten.

  4. (Optional) Öffnen Sie das Menü Hilfsfunktionen und fügen Sie eine Hilfsfunktion hinzu, z. B. die Funktion Let, wenn Sie eine benannte Variable an die Reservierungsantwort binden möchten.

    note
    NOTE
    Es sind nur Felder verfügbar, die in der von Admins definierten Antwort-Payload bereitgestellt wurden. Sie können nicht auf Eigenschaften verweisen, die in der Konfiguration nicht bereitgestellt wurden.
  5. Wenn Sie eine Hilfsvariable verwenden, ordnen Sie diese für die nachgelagerte Verwendung dem Feld zu, das die Reservierungsintegration zurückgibt, z. B. der Flugnummer in der Passagier- oder Buchungs-Payload.

  6. Fügen Sie über das Menü Integrationen öffnen die zweite Integration hinzu, z. B. den Flugstatus.

  7. Öffnen Sie in der zweiten Integration die Integrationsattribute. Wählen Sie für jede Eingabe, die Daten aus dem ersten Aufruf wiederverwenden muss, wie z. B. eine Pfadvariable, einen Header oder einen Abfrageparameter, eine Zuordnungsquelle aus der ersten Integrationsantwort aus.

    Im Pillen-Erlebnis können Sie die Ausgabe des ersten Aufrufs ohne Let-Anweisung direkt der Eingabe des zweiten Aufrufs zuordnen. Wenn Sie Let verwendet haben, können Sie die Zuordnung stattdessen über diese Variable vornehmen.

  8. Fügen Sie Token aus der zweiten Integration mit dem Steuerelement Hinzufügen in Ihren Inhalt ein, z. B. das Reiseziel aus der Fluginformationsantwort.

  9. Speichern Sie Ihren Inhalt.

Bei der Simulation oder beim Versand führt Journey Optimizer die Integrationen der Reihe nach aus: Der erste Aufruf verwendet den von Ihnen konfigurierten Profilkontext und sein Ergebnis bildet die Grundlage für die zweite Anfrage. Ob eine bestimmte Integration zum Simulations- oder Versandzeitpunkt ausgeführt wird, hängt von Ihrer Einrichtung und Ihrem Kanal ab.

Verwenden von Adobe Target Recommendations in Ihren Inhalten use-adobe-target-in-templates

In diesem Abschnitt wird erläutert, wie Sie Integrationen in Adobe Journey Optimizer verwenden, um Personalisierungsdaten zum Versandzeitpunkt aus Adobe Target abzurufen und in Ihren Nachrichteninhalten zu verwenden, unabhängig davon, ob diese in einer Vorlage oder inline verfasst wurden. Es wird davon ausgegangen, dass die Target-Bereitstellungs-API bereits als Integration konfiguriert wurde.

Informationen zu den Konfigurationsschritten finden Sie unter Arbeiten mit Integrationen und im Beispiel Adobe Target Recommendations.

Die Target-Bereitstellungs-API gibt ein prefetch.mboxes-Array zurück. Jede Mbox enthält ein Objekt options mit den Feldern content und type. Der Wert type bestimmt, wie Sie content in Ihrer Vorlage verwenden. Öffnen Sie die Registerkarte, die Ihrer Mbox-Antwort entspricht, und führen Sie dann die Schritte aus, um diese Daten in Ihrer Nachricht zu verwenden.

JSON-Inhalt

Wenn es sich bei type um json handelt, ist das Feld content eine JSON-Zeichenfolge. Führen Sie eine Analyse durch, bevor Sie auf verschachtelte Felder zugreifen. Das folgende Beispiel zeigt eine typische Bereitstellungs-API-Antwort für eine JSON-Mbox.

code language-json
{
  "status": 200,
  "prefetch": {
    "mboxes": [
      {
        "index": 0,
        "name": "SummerOffer",
        "options": {
          "content": "{\"recommendations\":[{\"productId\":\"p101\",\"name\":\"Noise Smartwatch\",\"price\":2999},{\"productId\":\"p205\",\"name\":\"Boat Earbuds\",\"price\":1499}],\"strategy\":\"collaborative-filtering\"}",
          "type": "json"
        }
      }
    ]
  }
}

Verwenden Sie drei Helper nacheinander, um die Target-Antwort abzurufen, zu extrahieren und zu analysieren.

  1. Abrufen der Target-Antwort. Rufen Sie Ihre konfigurierte Target-Integration mit externalDataLookup auf. Legen Sie integrationName auf den Namen dieser Integration fest (ersetzen Sie den Beispielplatzhalter target_recommendations). Verwenden Sie den Parameter result, um die Vorlagenvariable zu benennen, die die vollständige Payload der Bereitstellungs-API enthält, z. B. targetResponse.

    Sie können die Integration auch direkt über das Menü Integrationen im linken Navigationsbereich des Personalisierungseditors auswählen. Siehe Anwenden der Integrationspersonalisierung auf Ihre Inhalte.

    code language-handlebars
    {{externalDataLookup integrationName="target_recommendations" result="targetResponse"}}
    
  2. Extrahieren einer spezifischen Mbox mithilfe von valueAtPath. valueAtPath extrahiert ein Element anhand seines 0-basierten Index aus einem Array und weist es einer Vorlagenvariablen zu. Verwenden Sie den Parameter idx, um anzugeben, auf welches Element zugegriffen werden soll.

    code language-handlebars
    {{valueAtPath targetResponse.prefetch.mboxes idx=0 result="summerOffer"}}
    
    table 0-row-2 1-row-2 2-row-2 3-row-2
    Parameter Beschreibung
    path Pfad zum Array (Position, kein Keyword)
    idx 0-basierter Index für den Array-Zugriff (optional)
    result Variablenname zum Speichern des extrahierten Werts
    note
    NOTE
    Wenn idx außerhalb des gültigen Bereichs liegt, löst das Rendern eine Ausnahme aus. Sichern Sie ungültige Indizes mit {%#if idx >= 0 and idx < count(targetResponse.prefetch.mboxes)%}, wenn der Index ungültig sein könnte. PQL-Ausdrücke können nicht als Pfad verwendet werden. Verfügbar seit Version 2025.9.0.
  3. Analysieren der JSON-Zeichenfolge mithilfe von parseJson. Das Mbox-Feld options.content ist eine unbearbeitete JSON-Zeichenfolge. parseJson wandelt diese in ein strukturiertes Objekt um, auf dessen Felder anschließend direkt in der Vorlage zugegriffen werden kann.

    code language-handlebars
    {{parseJson jsonStr=summerOffer.options.content result="summerOfferContent"}}
    
    table 0-row-2 1-row-2 2-row-2
    Parameter Beschreibung
    jsonStr Pfad zum Zeichenfolgenfeld, das eine gültige JSON-Zeichenfolge enthält
    result Variablenname zum Speichern des geparsten Objekts
    note
    NOTE
    Wenn die JSON-Zeichenfolge ungültig ist oder die Referenz null ist, wird result auf null gesetzt – es wird kein Renderfehler ausgelöst. Testen Sie mit Ihrer tatsächlichen Target-Antwort, um zu bestätigen, dass der Inhalt eine gültige JSON-Zeichenfolge ist. Verfügbar seit: 2026.6.0
  4. Zugreifen auf die Daten. Verwenden Sie nach der Analyse die Punktnotation, um auf Felder von summerOfferContent zuzugreifen. So rendern Sie eine Liste von Empfehlungen:

    code language-handlebars
    {{externalDataLookup integrationName="target_recommendations" result="targetResponse"}}
    {{valueAtPath targetResponse.prefetch.mboxes idx=0 result="summerOffer"}}
    {{parseJson jsonStr=summerOffer.options.content result="summerOfferContent"}}
    
    Strategy: {{summerOfferContent.strategy}}
    {{#each summerOfferContent.recommendations as |rec|}}
      {{rec.name}} — {{rec.price}}
    {{/each}}
    
HTML-Inhalte

Wenn es sich bei type um html handelt, ist das Feld content eine renderbereite HTML-Zeichenfolge. Sie müssen sie nicht parsen. Das folgende Beispiel zeigt eine typische Bereitstellungs-API-Antwort für eine HTML-Mbox.

code language-json
{
  "status": 200,
  "prefetch": {
    "mboxes": [
      {
        "index": 0,
        "name": "SummerOffer",
        "options": {
          "content": "<div class=\"offer\"><h2>Summer Sale</h2><p>50% off Smartwatch</p></div>",
          "type": "html"
        }
      }
    ]
  }
}

Rufen Sie die Mbox ab, extrahieren Sie sie und rendern Sie content direkt. Überspringen Sie parseJson.

code language-handlebars
{{externalDataLookup integrationName="target_recommendations" result="targetResponse"}}
{{valueAtPath targetResponse.prefetch.mboxes idx=0 result="summerOffer"}}
{{{summerOffer.options.content}}}
note
NOTE
Verwenden Sie dreifache Klammern ({{{...}}}), um HTML-Inhalte unverändert zu rendern. Doppelte Klammern ({{...}}) setzen HTML-Entitäten um und rendern rohe Tag-Zeichenfolgen anstelle von HTML.

Anleitungsvideo video

In diesem Video wird gezeigt, wie Adobe Journey Optimizer mithilfe von Integrationen mit externen APIs verbunden ist, damit Sie Live-Daten und -Inhalte in die ausgehenden Kanäle E-Mail, SMS und Push-Benachrichtigungen übertragen können, um eine relevantere Personalisierung zu erzielen.

AI Knowledge Reference

This section contains structured knowledge intended to support interpretation, retrieval, and question answering related to this topic.

For complete understanding, this information should be combined with the documentation on this page. Neither source is intended to stand alone; the page describes the feature, while this section provides additional context that helps disambiguate terminology, intent, applicability, and constraints.

  • TL;DR: This page explains how marketers apply configured external integrations to personalize email, SMS, and push content, chain one API call’s response into another, and use Adobe Target Delivery API responses in message templates.

Intents:

  • Apply a configured integration to personalize Text or HTML content via Add personalization
  • Control fallback behavior with the required field when an integration fails or returns no data
  • Chain integrations so one call’s response feeds the next call’s inputs
  • Map first-call output to second-call input using Pills mode or a Let helper
  • Use Adobe Target Recommendations by fetching, extracting, and parsing the Target Delivery API response
  • Render JSON or HTML mbox content with the externalDataLookup, valueAtPath, and parseJson helpers

Glossary:

  • required field: An Integrations helper field that defines how failures or missing data interact with default content (product-specific)
  • Pills mode: A mode that unlocks the advanced integration menu and lets you map first-call output directly to second-call input without a Let statement (product-specific)
  • externalDataLookup: The helper that calls a configured integration and stores its full response in a named result variable (product-specific)
  • valueAtPath: The helper that extracts an element from an array by its 0-based index and assigns it to a template variable (product-specific)
  • parseJson: The helper that converts a raw JSON string field into a structured object for direct field access (product-specific)
  • Simulation: The mode in which Journey Optimizer runs chained integrations in order, alongside send (product-specific)

Guardrails:

  • You can add up to 3 integrations per Fragment and up to 5 on the message; integrations that come only from fragments do not count toward the 5.
  • Journey Optimizer Fragments are available with Integrations but support outbound channels only.
  • Once a fragment is published, adding and saving new integrations is disabled to avoid impact on existing journeys and campaigns.
  • An administrator must have configured and activated each integration (endpoint, authentication, policies, response payload, and activation) before use.
  • Tokens in a template must use only fields the administrator exposed in the integration configuration; unexposed fields are rejected in the editor.
  • With required=true (default), rendering stops for that message, the send is excluded with ExternalDataLookupExclusion, and the exclusion is recorded in the message feedback dataset; with required=false, the result variable is set to null and rendering continues.
  • For valueAtPath, if idx is out of bounds, rendering throws an exception; PQL expressions cannot be used as the path. Available since release 2025.9.0.
  • For parseJson, if the JSON string is invalid or the reference is null, result is set to null and no rendering error is thrown. Available since 2026.6.0.

Terminology:

  • Canonical name: External integrations for personalization — Acronym: n/a — variants: Integrations, integration personalization
  • Synonyms: “required=true” = “default”
  • Do not confuse: “required=true” (rendering stops, send excluded) ≠ “required=false” (result set to null, rendering continues)
  • Do not confuse: JSON content (type is json; parse content with parseJson) ≠ HTML content (type is html; render content directly with triple braces)

FAQ:

  • Q: How many integrations can I add? — Up to 3 per Fragment and up to 5 on the message; fragment-only integrations do not count toward the 5.
  • Q: What happens if an integration returns no data? — With required=true the message rendering stops and the send is excluded (ExternalDataLookupExclusion, recorded in the message feedback dataset); with required=false the result is null and rendering continues, so use fallbacks or conditional logic.
  • Q: Can I feed one integration’s response into another? — Yes; chain integrations so calls run in order in the same message, mapping first-call output to second-call input in Pills mode or through a Let variable.
  • Q: How do I use an Adobe Target JSON mbox response? — Fetch it with externalDataLookup, extract the mbox with valueAtPath, then parse options.content with parseJson before accessing nested fields.
  • Q: How do I render an Adobe Target HTML mbox response? — Fetch and extract the mbox, then render content directly with triple braces; skip parseJson.
recommendation-more-help
journey-optimizer-help