Auf dieser Seite: Erstellen Sie eine durch API ausgelöste Kampagne in Journey Optimizer, damit Sie Live-Aktivitäten für einzelne Benutzende oder Zielgruppen remote starten, aktualisieren und beenden können.
Nachdem Sie Ihre Mobile-Konfiguration konfiguriert und Ihr Adobe Experience Platform Mobile SDK implementiert haben, können Sie mit der Erstellung Ihrer Live-Aktivität in Journey Optimizer beginnen:
-
Rufen Sie das Menü Kampagnen auf und klicken Sie auf Kampagne erstellen.
-
Wählen Sie den Kampagnentyp Durch API ausgelöst aus.
-
Wählen Sie API-ausgelöst (Marketing) für zielgruppenbasierte Kampagnen aus.
-
Wählen Sie API-ausgelöst (Transaktion) für einzelne Kampagnen aus.
note important IMPORTANT Beachten Sie, dass für API-ausgelöst (Transaktion) die Option Hoher Durchsatz nicht aktiviert werden sollte.
-
-
Bearbeiten Sie im Bereich Eigenschaften den Titel und die Beschreibung Ihrer Kampagne.
-
Wählen Sie im Abschnitt Aktionen die Option Live-Aktivität und eine Konfiguration aus oder erstellen Sie eine neue Konfiguration.
Weitere Informationen zur Konfiguration von Live-Aktivitäten finden Sie auf dieser Seite.
-
Klicken Sie auf Experiment erstellen, um mit der Konfiguration Ihres Inhaltsexperiments zu beginnen und Abwandlungen zu erstellen, deren Performance zu messen und die beste Option für Ihre Zielgruppe zu ermitteln. Weitere Informationen
-
Wählen Sie auf der Registerkarte Zielgruppe Ihren Identitätstyp aus. Weitere Informationen.
note NOTE Bei durch API ausgelösten Marketing-Kampagnen können Sie eine vorhandene Zielgruppe auswählen, die als erste Segmentierung fungiert, bevor Sie das APNs-channelID-Abonnement über die API-Payload überprüfen. -
Kampagnen sind so konzipiert, dass sie an einem bestimmten Datum oder in regelmäßigen Abständen ausgeführt werden. Erfahren Sie in diesem Abschnitt, wie Sie den Zeitplan der Kampagne konfigurieren können.
-
Klicken Sie nach der Konfiguration auf Zum Aktivieren überprüfen und dann auf Aktivieren.
-
Verwenden Sie nach dem Aktivieren der Kampagne die bereitgestellte cURL-Anfrage als Vorlage, um Start-, Aktualisierungs- und Endereignisse für Live-Aktivitäten auszulösen. Aktualisieren Sie die Beispiel-Payload vor der Ausführung mit Ihren konkreten Daten.
Stellen Sie sicher, dass Sie auch die Kampagnen-ID-Kennungen kopieren, die in Ihre Payload aufgenommen werden sollen.
➡️ Informationen zu Authentifizierungspflichten, einschließlich OAuth-Token und API-Schlüsseln, finden Sie der Dokumentation zu durch API ausgelösten Kampagnen.
Nachdem Sie Ihre Live-Aktivität entworfen haben, können Sie mit integrierten Berichten die Wirkung Ihrer Live-Aktivität messen.
Payload-Beispiele payload
Die Payload-Struktur hängt davon ab, ob iOS das aps-Objekt des Push-Benachrichtigungs-Service (APNs) von Apple verwendet, während Android das fcm-Objekt von Firebase Cloud Messaging (FCM) verwendet. Verwenden Sie die folgenden Beispiele für Ihre Plattform und Ihren Kampagnentyp.
iOS-Payload
Platzieren Sie für iOS Personalisierungs- und Lebenszyklusfelder im APNs-aps. Stellen Sie sicher, dass attributes-type mit dem Namen der LiveActivityAttributes Struktur Ihrer App übereinstimmt und dass attributes mit den in dieser Struktur definierten Feldern übereinstimmt.
Einzelne Anwendungsfälle (API-ausgelöste Transaktionskampagne)
Dieses Payload-Beispiel ist für einzelne Kampagnen mit dem Kampagnentyp API-ausgelöst – Transaktion vorgesehen. Beachten Sie, dass die meisten Felder aus dem folgenden Payload-Beispiel obligatorisch sind. Nur requestId, dismissal-date und alert sind optional.
| code language-json |
|---|
|
Broadcast-Anwendungsfälle (API-ausgelöste Marketing-Kampagne)
Dieses Payload-Beispiel ist für zielgruppenbasierte Kampagnen vorgesehen, bei denen der Kampagnentyp API-ausgelöst – Marketing verwendet wird.
| code language-json |
|---|
|
Android-Payload
Platzieren Sie für Android Live-Aktivitätsfelder im Firebase Cloud Messaging (FCM)-fcm. Definieren Sie dynamische Werte in content_state mithilfe von custom_key_*, für die der Stilanbieter Ihrer App konfiguriert ist.
Einzelne Anwendungsfälle (API-ausgelöste Transaktionskampagne)
fcm-Objekt enthält zwei Zeitfelder, die beide in Epochensekunden ausgedrückt werden:timestampsteuert die Nachrichtenreihenfolge. Jedes Start-, Update- und End-Ereignis muss einen größeren Wert als das vorherige Ereignis für dieselbenotification_id(odertopic_namefür Sendungen) verwenden. Aktualisierungen werden nur angezeigt, wenn ihr Zeitstempel neuer als der zuletzt verarbeitete Wert ist. Ältere oder gleiche Zeitstempel werden ignoriert.whensteuert die angezeigte Zeit der Benachrichtigung. Dieses optionale Feld entspricht dersetWhenvon Android und hat keine Auswirkungen auf die Nachrichtenreihenfolge. Halten Sie den Wert relativ aktuell, da ein veralteter Wert zu Anzeigeproblemen führen kann.
Verwenden Sie diese Payloads für einzelne Kampagnen des Typs API-ausgelöste Transaktion.
Verwenden Sie dieselben notification_id für alle Start-, Update- und End-Ereignisse, um sicherzustellen, dass sie dieselbe Live-Aktivitätsinstanz ansprechen.
| code language-json |
|---|
|
Um eine Live -Aktivität zu aktualisieren, setzen Sie event_type auf update und halten Sie notification_id unverändert. Aktualisieren Sie body, critical_text und die Werte in content_state nach Bedarf, um den neuesten Status widerzuspiegeln.
| code language-json |
|---|
|
Um eine Live -Aktivität zu beenden, setzen Sie event_type auf end. Schließen Sie optional dismiss_after ein, um die Verzögerung in Sekunden anzugeben, bevor die abgeschlossene Live-Aktivität beendet wird.
| code language-json |
|---|
|
Broadcast-Anwendungsfälle (API-ausgelöste Marketing-Kampagne)
Verwenden Sie diese Payload für zielgruppenbasierte Kampagnen des Typs API-ausgelöstes Marketing.
Legen Sie topic_name auf das FCM-Thema fest, das die Geräte der Benutzer abonniert haben. Senden Sie alle Update- und End-Ereignisse an dasselbe Thema und behalten Sie notification_id unverändert bei, um dieselbe Live-Aktivitätsbenachrichtigung anzuvisieren.
| code language-json |
|---|
|
Hinzufügen benutzerdefinierter Daten mit Ausführungsmetadaten metadata
executionMetadata ist nur für Kampagnen des Typs API-ausgelöst (Transaktion) verfügbar.Fügen Sie mithilfe des optionalen Felds executionMetadata einem Profil Ihre eigenen benutzerdefinierten Daten hinzu, z. B. eine Auftrags-ID, eine Treuestufe oder einen Regions-Code. Journey Optimizer speichert diese Daten zusammen mit der Ausführung, damit Sie sie später aus Ihrem Live-Aktivitäts-Feedback-Datensatz abrufen und die Versandergebnisse mit Ihren eigenen Geschäftseinträgen abgleichen können.
Informationen zum Senden dieser Daten über die API finden Sie in der Messaging-API-Referenz für das Feld executionMetadata. Informationen zum Auslesen der Werte auf dem Gerät finden Sie im Handbuch zum Mobile SDK zum Empfangen von Ausführungsmetadaten vom API-Trigger .
So fügen Sie benutzerdefinierte Daten mit Ausführungsmetadaten hinzu:
-
Fügen Sie einem Profil
executionMetadatanebenuserIdundnamespacehinzu. Es werden nur String-Schlüssel und String-Werte akzeptiert. Konvertieren Sie alle Nicht-String-Werte in einen String, bevor Sie sie senden. -
Werte werden genau so aufgezeichnet, wie sie gesendet werden.
executionMetadataunterstützt keine Personalisierungsausdrücke, sodass jeder{{...}}-Ausdruck als Literaltext behandelt und nicht aufgelöst wird. Sie sollten immer endgültige Literalwerte senden. -
Jedes Profil kann bis zu 50 Schlüssel-Wert-Paare mit einem kombinierten Größen-Limit von 2 KB für alle Schlüssel und Werte enthalten. Metadaten, die dieses Limit überschreiten, werden verworfen, die Live-Aktivität wird jedoch weiterhin bereitgestellt. Beschränken Sie die Payload auf die für Reporting-Zwecke erforderlichen Informationen.
In diesem Beispiel sind orderId, tier, restaurant und region Ihre eigenen Werte. Nachdem die Live-Aktivität ausgelöst wurde, können Sie diese aus dem Feedback-Datensatz auslesen, um den Versand mit Ihrem Auftragseintrag zu verknüpfen.
| code language-json |
|---|
|
| note |
|---|
| NOTE |
Rufen Sie Ausführungsmetadaten auf Android auf die gleiche Weise ab wie auf iOS: aus message.feedback Ereignissen im AJO-Nachrichten-Feedback-Datensatz. Abfragebeispiele finden Sie im Abschnitt Erweitert: Debugging über Datensatzabfragen. |
| Android verwendet die Open-Source-Messaging-Erweiterung von Adobe Experience Platform (AEP) für die mobile SDK. |
In diesem Beispiel sind seat und type benutzerdefinierte Metadatenfelder, die Ihre Buchungsdetails enthalten. Rufen Sie nach dem Auslösen der Live-Aktivität diese Werte aus dem Live-Aktivitäts-Feedback-Datensatz ab, um die Versandergebnisse mit Ihrem Buchungsdatensatz zu verknüpfen.
| code language-json |
|---|
|
Anleitungsvideo
Erfahren Sie, wie Sie iOS-Live-Aktivitäten mit Adobe Journey Optimizer konfigurieren, um umfangreiche Echtzeit-Updates auf dem iPhone-Sperrbildschirm und auf Dynamic Island bereitzustellen.
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 to build an API-triggered campaign in Journey Optimizer to remotely start, update, and end Live activities for individual users or audiences, and how to attach custom data to a profile using the optional
executionMetadatafield.
Intents:
- Create an API-triggered campaign for Live activities, selecting API-triggered Marketing for audience-based campaigns or API-triggered Transactional for individual campaigns
- Choose Live activity in the Actions section and select or create a configuration
- Create a content experiment with treatments to measure performance
- Activate the campaign and use the provided cURL request to trigger start, update, or end events
- Attach custom data to a profile using the optional
executionMetadatafield for later retrieval from the Live activity feedback dataset
Glossary:
- API-triggered Marketing: The campaign type used for audience-based campaigns (product-specific)
- API-triggered Transactional: The campaign type used for individual campaigns (product-specific)
- High Throughput: An option that should not be enabled for API-triggered Transactional Live activity campaigns (product-specific)
- Live activity: The action chosen in the Actions section, tied to a selected or newly created configuration (product-specific)
- executionMetadata: An optional field that attaches custom data to a profile, stored alongside the execution and retrievable from the Live activity feedback dataset (product-specific)
- Live activity feedback dataset: The dataset from which stored
executionMetadatavalues can be retrieved to match delivery results to your own records (product-specific) - event (iOS) / event_type (Android): The payload field whose values are
start,update, orend
Guardrails:
- For API-triggered Transactional campaigns, the High Throughput option should not be enabled.
executionMetadatais only available for API-triggered Transactional campaigns.executionMetadataaccepts only string keys and string values; convert any non-string value to a string before sending.executionMetadatadoes not support personalization expressions, so any{{...}}expression is treated as literal text rather than resolved.- Each profile can carry up to 50 key/value pairs in
executionMetadata(hard limit), with a combined size limit of 2 KB for all keys and values (hard limit). Metadata exceeding this limit is discarded, but the Live activity is still delivered. - In the iOS unitary payload example, most fields are mandatory; only
requestId,dismissal-date, andalertare optional.
Terminology:
- Canonical name: Live activity — Acronym: n/a — variants: Live activities
- Synonyms: “Unitary use cases” = “individual campaigns (API-triggered Transactional)”
- Synonyms: “Broadcast use cases” = “audience-based campaigns (API-triggered Marketing)”
- Do not confuse: “API-triggered Marketing” (audience-based campaigns) ≠ “API-triggered Transactional” (individual campaigns)
- Do not confuse: “start” ≠ “update” ≠ “end” (the values of the
eventfield in iOS payloads and theevent_typefield in Android payloads) - Do not confuse: “dismissal-date” (optional; auto-removes the activity when
eventisend) ≠ “timestamp” (current epoch time)
FAQ:
- Q: Which campaign type do I use for Live activities? — API-triggered Marketing for audience-based campaigns; API-triggered Transactional for individual campaigns.
- Q: Should High Throughput be enabled for API-triggered Transactional? — No; for API-triggered Transactional, the High Throughput option should not be enabled.
- Q: How do I trigger start, update, or end events after activation? — Use the provided cURL request as a template, update the sample payload with your specific data, and copy the Campaign ID into your payload.
- Q: What is
executionMetadatafor? — Attaching your own custom data, such as an order ID, loyalty tier, or region code, to a profile; it is stored alongside the execution and retrievable from the Live activity feedback dataset. It is only available for API-triggered Transactional campaigns. - Q: What are the
executionMetadatalimits? — Up to 50 key/value pairs per profile with a combined 2 KB size limit; only string keys and values are accepted, and personalization expressions are not resolved. Metadata exceeding the limit is discarded, but the Live activity is still delivered.