Créer une activité en direct create-mobile-live

Sur cette page : créez une campagne déclenchée par API dans Journey Optimizer afin de démarrer, mettre à jour et terminer à distance des activités en direct pour des utilisateurs et utilisatrices ou des audiences spécifiques.

Après avoir effectué la configuration mobile et implémenté le SDK mobile Adobe Experience Platform, vous pouvez créer une activité en direct dans Journey Optimizer :

  1. Accédez au menu Campagnes, puis cliquez sur Créer une campagne.

  2. Sélectionnez le type de campagne Déclenchée par API.

    • Sélectionnez Marketing déclenché par API pour les campagnes basées sur les audiences.

    • Sélectionnez Transactionnelle déclenchée par API pour les campagnes individuelles.

    note important
    IMPORTANT
    Notez que pour Transactionnelle déclenchée par API, l’option Débit élevé ne doit pas être activée.

  3. Dans la section Propriétés, modifiez le Titre et la Description de votre campagne.

  4. Dans la section Actions, sélectionnez Activité en direct et sélectionnez ou créez une nouvelle configuration.

    Pour en savoir plus sur la configuration des activités en direct, consultez cette page.

  5. Cliquez sur Créer une expérience pour commencer à configurer votre expérience de contenu et créer des traitements afin de mesurer leurs performances et d’identifier la meilleure option pour votre audience cible. En savoir plus

  6. Dans l’onglet Audience, choisissez le Type d’identité En savoir plus.

    note
    NOTE
    Pour les campagnes marketing déclenchées par API, vous pouvez sélectionner une audience existante qui agit comme première segmentation avant de vérifier l’abonnement à l’identifiant de canal APNs à partir de la payload de l’API.
  7. Les campagnes sont conçues pour être exécutées à une date spécifique ou à une fréquence récurrente. Découvrez comment configurer le Planning de votre campagne dans cette section.

  8. Une fois la configuration effectuée, cliquez sur Réviser pour activer, puis sur Activer.

  9. Une fois la campagne activée, utilisez la requête cURL fournie comme modèle pour déclencher les événements de démarrage, de mise à jour ou d’arrêt de l’activité en direct. Modifiez l’exemple de payload en incluant vos données avant l’exécution.

    Veillez également à copier les identifiants ID de campagne à inclure dans votre payload.

    ➡️ Les exigences d’authentification, y compris les jetons OAuth et les clés d’API, sont disponibles dans la documentation sur les campagnes déclenchées par API.

    accordion
    Exemple de payload pour les cas d’utilisation unitaires (campagnes transactionnelles déclenchées par API)

    Cet exemple de payload concerne les campagnes de type Transactionnelle déclenchée par API. Notez que la plupart des champs de l’exemple de payload suivant sont obligatoires, seuls requestId, dismissal-date et alert sont facultatifs.

    code language-json
    {
        "requestId": "your-request-id",
        "campaignId": "your-campaign-id",
        "recipients": [
    {
        "type": "aep",
        "userId": "testemail@gmail.com",
        "namespace": "email",
        "context": {
         "requestPayload": {
        "aps": {
        "content-available": 1,
        "timestamp": 1756984054,              // current epoch time
        "dismissal-date": 1756984084,         // optional – auto remove when event="end"
        "event": "update",                    // start | update | end
    
        // Fields from FoodDeliveryLiveActivityAttributes
        "content-state": {
          "orderStatus": "Delivered"
        },
    
        "attributes-type": "FoodDeliveryLiveActivityAttributes",
        "attributes": {
          "restaurantName": "Pizza",
          "liveActivityData": {
            "liveActivityID": "orderId1"       // customer reference ID
          }
        },
    
        "alert": {
          "title": "Order Delivered!",
          "body": "Your pizza has arrived."
        }
      }
    }
    }
    }
    ]
    }
    
    accordion
    Exemple de payload pour les cas d’utilisation de diffusion (campagnes marketing déclenchées par API)

    Cet exemple de payload concerne les campagnes basées sur une audience de type Marketing déclenchée par API.

    code language-json
    {
        "requestId": "123400000",
        "campaignId": "d32e6f6c-56df-4a98-a2c0-6db6008f8f32",
        "audience": {
            "id": "508f9416-52d0-4898-ba47-08baaa22e9c7"
        },
        "context": {
            "requestPayload": {
                "aps": {
                    "input-push-channel": "V+8UslywEfAAAOq9SbTrLg==",  //apns-channel-id
                    "content-available": 1,
                    "timestamp": 1770808339,
                    "event": "update",   // start | update | end
    
                    // Fields from GameScoreLiveActivityAttributes
                    "content-state": {
                        "homeTeamScore": 33,
                        "awayTeamScore": 49,
                        "statusText": "Wingdom keeps scoring!"
                    },
                    "attributes-type": "GameScoreLiveActivityAttributes",
                    "attributes": {
                        "liveActivityData": {
                            "channelID": "V+8UslywEfAAAOq9SbTrLg=="   //apns-channel-id, must match the "input-push-channel" value
                        }
                    },
                    "alert": {
                        "title": "This is the title for game",
                        "body": "This is the body for body"
                    }
                }
            }
        }
    }
    

Après avoir créé votre activité en direct, vous pouvez suivre son impact à l’aide des rapports intégrés.

TIP
Si votre activité en direct ne s’affiche pas ou ne se met pas à jour comme prévu, consultez Dépannage des activités en direct pour obtenir des instructions détaillées.

Ajout de données personnalisées avec des métadonnées d’exécution metadata

AVAILABILITY
executionMetadata n’est disponible que pour les campagnes transactionnelles déclenchées par API.

Joignez vos propres données personnalisées à un profil, tel qu’un identifiant de commande, un niveau de fidélité ou un code de région, à l’aide du champ de executionMetadata facultatif. Journey Optimizer stocke ces données avec l’exécution afin que vous puissiez les récupérer ultérieurement à partir de votre jeu de données de commentaires sur l’activité en direct et faire correspondre les résultats de la diffusion aux enregistrements de votre propre entreprise.

Pour envoyer ces données via l’API, reportez-vous à la référence de l’API Messaging pour le champ executionMetadata. Pour relire les valeurs sur l’appareil, consultez le guide Mobile SDK Guide sur la réception des métadonnées d’exécution à partir du déclencheur d’API.

Pour ajouter des données personnalisées avec des métadonnées d’exécution :

  • Ajoutez des executionMetadata à un profil, en regard de userId et namespace. Seules les clés de chaîne et les valeurs de chaîne sont acceptées. Convertissez toute valeur qui n’est pas de chaîne en chaîne avant de l’envoyer.

  • Les valeurs sont enregistrées exactement comme envoyées. executionMetadata ne prend pas en charge les expressions de personnalisation. Toute expression de {{...}} est donc traitée comme du texte littéral plutôt que résolue. Vous devez toujours envoyer des valeurs finales et littérales.

  • Chaque profil peut transporter jusqu’à 50 paires clé/valeur, avec une limite de taille combinée de 2 Ko pour toutes les clés et valeurs. Les métadonnées qui dépassent cette limite sont ignorées, mais l’activité Live est toujours diffusée. Limitez la payload aux informations requises à des fins de création de rapports.

Exemple JSON

Dans cet exemple, orderId, tier, restaurant et region sont vos propres valeurs. Une fois l’activité Live déclenchée, vous pouvez les relire à partir du jeu de données de commentaires pour lier la diffusion à votre enregistrement de commande.

code language-json
{
    "requestId": "your-request-id",
    "campaignId": "your-campaign-id",
    "recipients": [
        {
            "type": "aep",
            "userId": "testemail@gmail.com",
            "namespace": "email",
            "executionMetadata": {
                "orderId": "A-123",
                "tier": "gold",
                "restaurant": "PizzaPlace",
                "region": "EU"
            },
            "context": {
                "requestPayload": {
                    "aps": {
                        "content-available": 1,
                        "timestamp": 1756984054,
                        "dismissal-date": 1756984084,
                        "event": "update",
                        "content-state": {
                            "orderStatus": "Delivered"
                        },
                        "attributes-type": "FoodDeliveryLiveActivityAttributes",
                        "attributes": {
                            "restaurantName": "PizzaPlace",
                            "liveActivityData": {
                                "liveActivityID": "orderId1"
                            }
                        },
                        "alert": {
                            "title": "Order Delivered!",
                            "body": "Your pizza has arrived."
                        }
                    }
                }
            }
        }
    ]
}

Vidéo pratique

Découvrez comment configurer les activités en direct iOS avec Adobe Journey Optimizer pour afficher des mises à jour détaillées et en temps réel sur l’écran verrouillé et la Dynamic Island d’un iPhone.

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 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 executionMetadata field.

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 executionMetadata field 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 executionMetadata values can be retrieved to match delivery results to your own records (product-specific)
  • event: The payload field whose values are start, update, or end

Guardrails:

  • For API-triggered Transactional campaigns, the High Throughput option should not be enabled.
  • executionMetadata is only available for API-triggered Transactional campaigns.
  • executionMetadata accepts only string keys and string values; convert any non-string value to a string before sending.
  • executionMetadata does 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 unitary payload example, most fields are mandatory; only requestId, dismissal-date, and alert are 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 event field)
  • Do not confuse: “dismissal-date” (optional; auto-removes the activity when event is end) ≠ “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 executionMetadata for? — 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 executionMetadata limits? — 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.
recommendation-more-help
journey-optimizer-help