Supporto per metadati personalizzati: formato XDM

L’API di Experience Edge consente di inviare metadati personalizzati per contenuti multimediali insieme ai campi XDM standard negli eventi API sessionStart, adStart e chapterStart. I metadati personalizzati dei contenuti multimediali inviati tramite il formato XDM possono essere inoltrati sia ad Adobe Analytics che a Adobe Experience Platform.

Per le implementazioni API di Media Collection, vedere Supporto metadati personalizzati.

Panoramica

I metadati personalizzati dei contenuti multimediali possono essere inviati in due posizioni all’interno di una richiesta Experience Edge, ciascuna con un comportamento di indirizzamento diverso:

Posizione
Inviato ad Adobe Analytics
Inviato a Adobe Experience Platform
Caso d’uso
xdm.mediaCollection.customMetadata
✅ Sì
✅ Sì
Dati aziendali necessari in entrambi i sistemi
_data
✅ Sì
❌ No
Flag specifici di Analytics o hint di elaborazione

I metadati personalizzati si applicano a tre tipi di eventi:

Evento
I metadati si applicano a
sessionStart
Contenuto principale (intera sessione)
adStart
Pubblicità individuale
chapterStart
Capitolo o segmento di contenuto

Struttura

xdm.mediaCollection.customMetadata (Analytics + AEP)

I metadati personalizzati sono un array di oggetti nome-valore all’interno dell’oggetto mediaCollection:

{
  "xdm": {
    "mediaCollection": {
      "customMetadata": [
        {
          "name": "_tenant.fieldName",
          "value": "fieldValue"
        }
      ]
    }
  }
}

<InlineAlert variant=“warning” slots=“text” />

customMetadata deve essere un array all’interno di mediaCollection, non al livello principale xdm.

Errato:

{
  "xdm": {
    "eventType": "media.sessionStart",
    "customMetadata": [...]  // ❌ Wrong location
  }
}

Corretto:

{
  "xdm": {
    "eventType": "media.sessionStart",
    "mediaCollection": {
      "customMetadata": [...]  // ✅ Inside mediaCollection
    }
  }
}

_data (solo Analytics)

L’oggetto _data è un costrutto speciale di Experience Edge che invia dati esclusivamente ad Adobe Analytics, ignorando i set di dati di AEP. I metadati personalizzati devono essere inseriti in __adobe.analytics.contextData.

A differenza di xdm.mediaCollection.customMetadata che utilizza un array di oggetti nome-valore, il mapping _data utilizza un oggetto chiave-valore flat direttamente in contextData:

Approccio
Struttura
Destinazione
xdm.mediaCollection.customMetadata
Array di {"name": "...", "value": "..."} oggetti
Analytics + AEP
_data.__adobe.analytics.contextData
Oggetto chiave-valore flat {"key": "value"}
Solo Analytics
{
  "xdm": { ... },
  "_data": {
    "__adobe": {
      "analytics": {
        "contextData": {
          "debugMode": "true",
          "internalTestFlag": "QA-Session"
        }
      }
    }
  }
}

Convenzioni di denominazione

  • Formato XDM: prefisso con spazio dei nomi tenant che utilizza un carattere di sottolineatura. È inoltre possibile creare strutture nel gruppo di campi personalizzato del tenant, ad esempio _<tenant>.<struct_name>.<field_name>.
  • Formato _data: campi sono posizionati in _data.__adobe.analytics.contextData — non è richiesto alcun prefisso di sottolineatura nel nome del campo (ad esempio, debugFlag)

Metadati personalizzati del contenuto principale

Inviato con sessionStart. Si applica al supporto principale tracciato e rimane disponibile durante le chiamate di annunci e capitoli. Eventuali metadati personalizzati definiti qui verranno uniti automaticamente dal backend multimediale nelle corrispondenti chiamate di chiusura. Sarà incluso insieme a tutti i metadati personalizzati specifici definiti per annunci e capitoli.

Richiesta

curl -X POST "https://edge.adobedc.net/ee/va/v1/sessionStart?configId={datastreamId}" \
--header 'Content-Type: application/json' \
--data '{
  "events": [
    {
      "xdm": {
        "eventType": "media.sessionStart",
        "mediaCollection": {
          "sessionDetails": {
            "name": "Sample Video",
            "playerName": "HTML5 Player",
            "contentType": "VOD",
            "length": 3600,
            "channel": "Sports"
          },
          "playhead": 0,
          "customMetadata": [
            {
              "name": "_mycompany.contentCategory",
              "value": "Live Sports"
            },
            {
              "name": "_mycompany.leagueType",
              "value": "Professional"
            }
          ]
        },
        "timestamp": "2026-03-10T18:00:00Z"
      }
    }
  ]
}'

Aggiungere metadati personalizzati

Inviato con adStart. Specifico per ogni singolo annuncio pubblicitario. I metadati personalizzati da sessionStart vengono inoltre uniti automaticamente dal backend multimediale nella chiamata di chiusura dell’annuncio insieme a eventuali metadati personalizzati specifici dell’annuncio qui definiti.

Richiesta

curl -X POST "https://edge.adobedc.net/ee/va/v1/adStart?configId={datastreamId}" \
--header 'Content-Type: application/json' \
--data '{
  "events": [
    {
      "xdm": {
        "eventType": "media.adStart",
        "mediaCollection": {
          "sessionID": "your-session-id",
          "playhead": 30,
          "advertisingDetails": {
            "name": "Summer Sale Ad",
            "playerName": "HTML5 Player",
            "length": 30,
            "podPosition": 1
          },
          "customMetadata": [
            {
              "name": "_mycompany.campaignId",
              "value": "SUMMER2026"
            },
            {
              "name": "_mycompany.targetAudience",
              "value": "18-34"
            },
            {
              "name": "_mycompany.adFormat",
              "value": "skippable"
            }
          ]
        },
        "timestamp": "2026-03-10T18:05:30Z"
      }
    }
  ]
}'

Metadati personalizzati del capitolo

Inviato con chapterStart. Specifico per ogni capitolo o segmento di contenuto. I metadati personalizzati di sessionStart vengono inoltre uniti automaticamente dal backend multimediale nella chiamata di chiusura del capitolo insieme ai metadati personalizzati specifici del capitolo qui definiti.

Richiesta

curl -X POST "https://edge.adobedc.net/ee/va/v1/chapterStart?configId={datastreamId}" \
--header 'Content-Type: application/json' \
--data '{
  "events": [
    {
      "xdm": {
        "eventType": "media.chapterStart",
        "mediaCollection": {
          "sessionID": "your-session-id",
          "playhead": 600,
          "chapterDetails": {
            "friendlyName": "Introduction",
            "length": 300,
            "index": 1,
            "offset": 600
          },
          "customMetadata": [
            {
              "name": "_mycompany.chapterType",
              "value": "tutorial"
            },
            {
              "name": "_mycompany.difficulty",
              "value": "beginner"
            }
          ]
        },
        "timestamp": "2026-03-10T18:10:00Z"
      }
    }
  ]
}'

Utilizzo dell’oggetto _data (metadati solo Analytics)

Utilizza l’oggetto _data quando hai bisogno di metadati in Adobe Analytics che devono non essere memorizzati nei set di dati di AEP, ad esempio flag temporanei, variabili di debug o hint di elaborazione specifici per Analytics.

<InlineAlert variant=“warning” slots=“text” />

I dati inviati tramite _data non sono memorizzati in Adobe Experience Platform e non sono disponibili per Real-Time CDP, Journey Orchestration o altri servizi AEP.

Richiesta

curl -X POST "https://edge.adobedc.net/ee/va/v1/sessionStart?configId={datastreamId}" \
--header 'Content-Type: application/json' \
--data '{
  "events": [
    {
      "xdm": {
        "eventType": "media.sessionStart",
        "mediaCollection": {
          "sessionDetails": {
            "name": "Sample Video",
            "playerName": "HTML5 Player",
            "contentType": "VOD",
            "length": 3600
          },
          "playhead": 0,
          "customMetadata": [
            {
              "name": "_mycompany.league",
              "value": "Action"
            }
          ]
        },
        "timestamp": "2026-03-10T18:00:00Z"
      },
      "_data": {
        "__adobe": {
          "analytics": {
            "contextData": {
              "debugMode": "true",
              "testFlag": "QA-Session"
            }
          }
        }
      }
    }
  ]
}'

In questo esempio:

Posizione dei dati a valle

<InlineAlert variant=“info” slots=“text” />

xdm.mediaCollection.customMetadata è il percorso API in entrata utilizzato per inviare metadati personalizzati con eventi. Dopo l’elaborazione, i dati vengono inoltrati ad Adobe Analytics come variabili di dati di contesto e memorizzati in Adobe Experience Platform in mediaReporting.customMetadata e come campi appiattiti di livello superiore.

Adobe Analytics:

Adobe Experience Platform:

Comportamento

Documentazione correlata

recommendation-more-help
media-analytics-help