In questa pagina: Esplora esempi di query SQL pronti all’uso per i set di dati di sistema di Journey Optimizer in modo da poter analizzare il tracciamento e-mail e push, il feedback sui messaggi, i passaggi di percorso e i dati decisionali per la generazione di rapporti e la risoluzione dei problemi.
In questa pagina è disponibile l’elenco dei set di dati di Adobe Journey Optimizer e dei casi d’uso correlati:
Per visualizzare l’elenco completo dei campi e degli attributi di ogni schema, consulta il dizionario dello schema di Journey Optimizer.
Vedi anche alcuni esempi comunemente utilizzati per eseguire query sugli eventi dei passaggi del Percorso.
Scegli il set di dati corretto choose-the-correct-dataset
Prima di eseguire una query, conferma quale set di dati corrisponde al tipo di azione che desideri analizzare nel percorso.
- Per verificare il feedback sulla consegna dei messaggi per le azioni native del canale Journey Optimizer (ad esempio gli stati
sentobounce), utilizza il Set di dati evento feedback messaggio. - Per verificare gli eventi di interazione e-mail, ad esempio aperture e clic, utilizza il Set di dati evento di tracciamento e-mail.
- Per verificare che Journey Optimizer abbia eseguito un’azione personalizzata e per verificarne lo stato di esecuzione, la latenza e i dettagli dell’errore, utilizzare il set di dati Evento passaggio Percorso.
Se una query restituisce “Tabella non predisposta per il set di dati” table-not-provisioned
Questo messaggio non significa necessariamente che il provisioning del set di dati non sia riuscito. Prima di contattare il supporto Adobe, verifica quanto segue:
- Nell’area di lavoro Set di dati, abilitare Mostra set di dati di sistema. I set di dati generati dal sistema sono nascosti per impostazione predefinita. Scopri come accedere ai set di dati.
- Conferma che il nome esatto della tabella utilizzato nella query corrisponda al nome della tabella mostrato nell’area di lavoro Set di dati per la sandbox.
- Conferma che il tipo di azione del percorso corrisponda al set di dati su cui stai eseguendo la query. Vedere Scegliere il set di dati corretto.
- Per i set di dati che utilizzano l’acquisizione in batch, ad esempio il set di dati Evento di feedback del messaggio, lascia passare fino a due ore prima che i dati siano disponibili.
- Per le azioni personalizzate, eseguire una query sul set di dati Evento passaggio Percorso anziché attendersi un record Evento feedback messaggio per la consegna esterna.
Se il set di dati deve contenere dati e la tabella non è ancora disponibile, raccogli il nome della sandbox, il nome del set di dati, l’ID query e la marca temporale prima di contattare il supporto Adobe.
Set di dati dell’evento di tracciamento e-mail email-tracking-experience-event-dataset
Nome nell’interfaccia: Set di dati evento di tracciamento e-mail AJO
Set di dati di sistema per l’acquisizione di eventi di esperienza di tracciamento e-mail da Journey Optimizer.
Lo schema correlato è lo schema AJO Email Tracking Experience Event.
Questa query mostra il numero di diverse interazioni e-mail (aperture, clic) per un determinato messaggio:
select
_experience.customerJourneyManagement.messageInteraction.interactionType AS interactionType,
count(1) eventCount
from ajo_email_tracking_experience_event_dataset
where
_experience.customerJourneyManagement.messageExecution.messageExecutionID IN ('UMA-30647505')
group by
_experience.customerJourneyManagement.messageInteraction.interactionType
Questa query mostra il raggruppamento dei conteggi di diverse interazioni e-mail (aperture, clic) per messaggio per un determinato percorso:
select
_experience.customerJourneyManagement.messageExecution.messageExecutionID AS messageExecutionID,
_experience.customerJourneyManagement.messageInteraction.interactionType AS interactionType,
count(1) eventCount
from ajo_email_tracking_experience_event_dataset
where
_experience.customerJourneyManagement.messageExecution.journeyVersionID IN ('0e86ac62-c315-48cc-ab4f-3f8b741ae667')
group by
_experience.customerJourneyManagement.messageExecution.messageExecutionID,
_experience.customerJourneyManagement.messageInteraction.interactionType
order by
_experience.customerJourneyManagement.messageExecution.messageExecutionID,
_experience.customerJourneyManagement.messageInteraction.interactionType
limit 100;
Set di dati evento feedback messaggio message-feedback-event-dataset
Nome nell’interfaccia: Set di dati evento feedback messaggi di AJO
Il set di dati evento feedback messaggio di AJO memorizza il feedback di consegna del messaggio generato da Adobe Journey Optimizer. Supporta l’analisi del feedback di consegna tra i canali dei messaggi, inclusi e-mail, SMS/RCS/MMS e Direct Mail. Puoi utilizzare gli eventi di feedback per generare rapporti e casi d’uso per la creazione di tipi di pubblico.
Lo schema correlato è lo schema AJO Message Feedback Event.
-
In Adobe Journey Optimizer,
sentè il valore utilizzato per i risultati di recapito dei messaggi;deliverednon è utilizzato nei set di dati evento di feedback dei messaggi. -
Questo set di dati utilizza l’acquisizione batch, pertanto i dati possono essere ritardati di un massimo di 2 ore.
-
Non è garantito che i campi di contesto specifici del canale vengano compilati su ogni evento. Come campi di correlazione principali, utilizza identificatori di esecuzione dei messaggi, stato del feedback, dettagli di errore, marche temporali e informazioni sull’identità.
Per l’elenco completo dei campi, dei percorsi dei campi, dei tipi di dati e delle descrizioni, vedere la Guida di riferimento dello schema di Adobe Journey Optimizer.
Classificare le esecuzioni di test e non di test classify-test-executions
Utilizza il campo isTestExecution per distinguere le esecuzioni di test da quelle non di test quando il campo viene popolato.
Prima di creare una query, utilizzare la Guida di riferimento allo schema di Adobe Journey Optimizer per confermare il percorso del campo, il tipo di dati e la descrizione correnti per lo schema evento di feedback dei messaggi di AJO.
Interpreta i valori compilati come segue:
truefalseNULL o mancanteNon convertire automaticamente NULL in false e non presumere che ogni valore null rappresenti un’esecuzione di produzione. Se un’implementazione di reporting ha verificato che i valori Null rappresentano record non di test per un canale o un periodo storico specifico, applica tale mappatura in una vista di reporting a valle e documenta esplicitamente la regola.
Alcuni record storici o specifici del canale potrebbero non popolare ogni campo messaggio-contesto. È pertanto consigliabile verificare la disponibilità del campo per canale e mantenere i valori nulli anziché trattarli come stringhe vuote o valori dedotti.
Esegui questa query solo dopo la conferma del percorso isTestExecution nella Guida di riferimento dello schema di Adobe Journey Optimizer:
SELECT
_experience.customerJourneyManagement.messageProfile.isTestExecution AS isTestExecution,
_experience.customerJourneyManagement.messageDeliveryfeedback.feedbackStatus AS feedbackStatus,
COUNT(*) AS eventCount
FROM ajo_message_feedback_event_dataset
GROUP BY
_experience.customerJourneyManagement.messageProfile.isTestExecution,
_experience.customerJourneyManagement.messageDeliveryfeedback.feedbackStatus
ORDER BY
isTestExecution,
feedbackStatus;
Questa query raggruppa i record di feedback dei messaggi in base all’indicatore di esecuzione dei test e allo stato di feedback della consegna. Il risultato mantiene i valori isTestExecution nulli o mancanti in modo che i record senza un valore di esecuzione dei test registrato possano essere esaminati separatamente.
Questa query mostra i conteggi di diversi stati di feedback e-mail (inviato, non recapitato, ecc.) per un determinato messaggio:
select
_experience.customerJourneyManagement.messageDeliveryfeedback.feedbackStatus AS feedbackStatus,
count(1) eventCount
from ajo_message_feedback_event_dataset
where
_experience.customerJourneyManagement.messageExecution.messageExecutionID IN ('UMA-30647505')
group by
_experience.customerJourneyManagement.messageDeliveryfeedback.feedbackStatus;
Questa query mostra il raggruppamento dei conteggi dei diversi stati di feedback delle e-mail (inviato, non recapitato, ecc.) per messaggio per un determinato percorso:
select
_experience.customerJourneyManagement.messageExecution.messageExecutionID AS messageExecutionID,
_experience.customerJourneyManagement.messageDeliveryfeedback.feedbackStatus AS feedbackStatus,
count(1) eventCount
from ajo_message_feedback_event_dataset
where
_experience.customerJourneyManagement.messageExecution.journeyVersionID IN ('0e86ac62-c315-48cc-ab4f-3f8b741ae667')
group by
_experience.customerJourneyManagement.messageExecution.messageExecutionID,
_experience.customerJourneyManagement.messageDeliveryfeedback.feedbackStatus
order by
_experience.customerJourneyManagement.messageExecution.messageExecutionID,
_experience.customerJourneyManagement.messageDeliveryfeedback.feedbackStatus
limit 100;
A livello aggregato, rapporto a livello di dominio (ordinato per domini principali): Nome di dominio, Messaggio inviato, Mancato recapito
SELECT split_part(_experience.customerJourneyManagement.emailChannelContext.address, '@', 2) AS recipientDomain, SUM( CASE WHEN _experience.customerJourneyManagement.messageDeliveryfeedback.feedbackStatus = 'sent' THEN 1 ELSE 0 END)AS sentCount , SUM( CASE WHEN _experience.customerJourneyManagement.messageDeliveryfeedback.feedbackStatus = 'bounce' THEN 1 ELSE 0 END )AS bounceCount FROM ajo_message_feedback_event_dataset WHERE _experience.customerjourneymanagement.messageprofile.channel._id = 'https://ns.adobe.com/xdm/channels/email' GROUP BY recipientDomain ORDER BY sentCount DESC;
L’e-mail viene inviata su base giornaliera:
SELECT date_trunc('day', TIMESTAMP) AS rolluptimestamp, SUM( CASE WHEN _experience.customerjourneymanagement.messagedeliveryfeedback.feedbackstatus = 'sent' THEN 1 ELSE 0 END) AS deliveredcount FROM ajo_message_feedback_event_dataset WHERE _experience.customerjourneymanagement.messageprofile.channel._id = 'https://ns.adobe.com/xdm/channels/email' GROUP BY date_trunc('day', TIMESTAMP) ORDER BY rolluptimestamp ASC;
Scopri se un particolare ID e-mail ha ricevuto o meno un’e-mail e, in caso contrario, qual era l’errore, la categoria di mancato recapito e il codice:
SELECT _experience.customerjourneymanagement.messagedeliveryfeedback.feedbackstatus AS status, _experience.customerjourneymanagement.messagedeliveryfeedback.messagefailure.reason AS failurereason, _experience.customerjourneymanagement.messagedeliveryfeedback.messagefailure.type AS bouncetype FROM ajo_message_feedback_event_dataset WHERE _experience.customerjourneymanagement.messageprofile.channel._id = 'https://ns.adobe.com/xdm/channels/email' AND _experience.customerjourneymanagement.emailchannelcontext.address = 'user@domain.com' AND TIMESTAMP >= now() - INTERVAL '7' DAY ORDER BY status ASC
Trova l’elenco di tutti i singoli ID e-mail che hanno presentato un errore, una categoria di mancato recapito o un codice particolare nelle ultime x ore/giorni o associati a una consegna di messaggio particolare:
SELECT _experience.customerjourneymanagement.emailchannelcontext.address AS emailid, _experience.customerjourneymanagement.messagedeliveryfeedback.feedbackstatus AS status, _experience.customerjourneymanagement.messagedeliveryfeedback.messagefailure.reason AS failurereason, _experience.customerjourneymanagement.messagedeliveryfeedback.messagefailure.type AS bouncetype FROM ajo_message_feedback_event_dataset WHERE _experience.customerjourneymanagement.messageprofile.channel._id = 'https://ns.adobe.com/xdm/channels/email' AND _experience.customerjourneymanagement.messagedeliveryfeedback.feedbackstatus != 'sent' AND TIMESTAMP >= now() - INTERVAL '10' HOUR AND _experience.customerjourneymanagement.messageexecution.messageexecutionid = 'BMA-45237824' ORDER BY emailid
Percentuale mancati recapiti permanenti a livello aggregato:
select hardBounceCount, case when sentCount > 0 then(hardBounceCount/sentCount)*100.0 else 0 end as hardBounceRate from ( select SUM( CASE WHEN _experience.customerJourneyManagement.messageDeliveryfeedback.feedbackStatus = 'bounce' AND _experience.customerJourneyManagement.messageDeliveryfeedback.messageFailure.type = 'Hard' THEN 1 ELSE 0 END)AS hardBounceCount , SUM( CASE WHEN _experience.customerJourneyManagement.messageDeliveryfeedback.feedbackStatus = 'sent' THEN 1 ELSE 0 END )AS sentCount from ajo_message_feedback_event_dataset WHERE _experience.customerjourneymanagement.messageprofile.channel._id = 'https://ns.adobe.com/xdm/channels/email' )
Errori permanenti raggruppati per codice di mancato recapito:
SELECT _experience.customerjourneymanagement.messagedeliveryfeedback.messagefailure.reason AS failurereason, COUNT(*) AS hardbouncecount FROM ajo_message_feedback_event_dataset WHERE _experience.customerjourneymanagement.messagedeliveryfeedback.feedbackstatus = 'bounce' AND _experience.customerjourneymanagement.messagedeliveryfeedback.messagefailure.type = 'Hard' AND _experience.customerjourneymanagement.messageprofile.channel._id = 'https://ns.adobe.com/xdm/channels/email' GROUP BY failurereason
messageID potrebbe non essere univoco per ogni singola consegna. Se un percorso invia nuovamente la stessa azione allo stesso profilo, è possibile riutilizzare messageID. Pertanto, per tenere traccia o attribuire con precisione gli eventi al livello di invio individuale, combinare i campi journeyVersionID, journeyActionID e batchInstanceID (per percorsi batch) o identityMap per ottenere un'univocità più precisa.Identificare gli indirizzi messi in quarantena dopo un’interruzione del servizio ISP isp-outage-query
In caso di interruzione del servizio di un provider di servizi Internet (ISP), è necessario identificare gli indirizzi e-mail erroneamente contrassegnati come mancati recapiti (messi in quarantena) per domini specifici, durante un determinato arco temporale. Per ottenere tali indirizzi, utilizza la seguente query:
SELECT
_experience.customerJourneyManagement.emailChannelContext.address AS RecipientAddress,
timestamp AS EventTime,
_experience.customerJourneyManagement.messageDeliveryfeedback.messageFailure.reason AS "Invalid Recipient"
FROM ajo_message_feedback_event_dataset
WHERE
eventtype = 'message.feedback' AND
DATE(timestamp) BETWEEN '<start-date-time>' AND '<end-date-time>' AND
_experience.customerjourneymanagement.messagedeliveryfeedback.feedbackstatus = 'bounce' AND
_experience.customerJourneyManagement.emailChannelContext.address ILIKE '%domain.com%'
ORDER BY timestamp DESC;
dove il formato delle date è: YYYY-MM-DD HH:MM:SS.
Una volta identificati, rimuovi tali indirizzi dall’elenco di soppressione di Journey Optimizer. Ulteriori informazioni.
Set di dati dell’evento di tracciamento push push-tracking-experience-event-dataset
Nome nell’interfaccia: Set di dati evento di tracciamento push di AJO
Set di dati per l’acquisizione degli eventi di esperienza di tracciamento mobile per il push da Journey Optimizer.
Lo schema correlato è Schema AJO Push Tracking Experience Event.
Esempio di query:
select _experience.customerJourneyManagement.pushChannelContext.platform, sum(pushNotificationTracking.customAction.value) from ajo_push_tracking_experience_event_dataset
group by _experience.customerJourneyManagement.pushChannelContext.platform
select _experience.customerJourneyManagement.pushChannelContext.platform, SUM (_experience.customerJourneyManagement.messageInteraction.offers.offerCount) from ajo_email_tracking_experience_event_dataset
group by _experience.customerJourneyManagement.pushChannelContext.platform
Evento passaggio percorso journey-step-event
Nome interno: eventi passaggio Percorso (set di dati di sistema)
Set di dati per l’acquisizione degli eventi dei passaggi nel percorso.
Lo schema correlato è lo schema evento passaggio di Percorso per Journey Orchestration.
Questa query mostra la suddivisione dei conteggi di successo delle azioni per etichetta azione per un determinato percorso:
select
_experience.journeyOrchestration.stepEvents.actionName AS actionLabel,
count(1) actionSuccessCount
from journey_step_events
where
_experience.journeyOrchestration.stepEvents.journeyVersionID IN ('0e86ac62-c315-48cc-ab4f-3f8b741ae667')
AND _experience.journeyOrchestration.stepEvents.actionID IS NOT NULL
AND _experience.journeyOrchestration.stepEvents.actionType IS NOT NULL
AND _experience.journeyOrchestration.stepEvents.actionExecutionErrorCode IS NULL
group by
_experience.journeyOrchestration.stepEvents.actionName;
Questa query mostra la suddivisione dei conteggi dei passaggi immessi per nodeId e nodeLabel per un determinato percorso. nodeId è incluso qui poiché nodeLabel può essere lo stesso per nodi di percorso diversi.
select
_experience.journeyOrchestration.stepEvents.nodeID AS nodeID,
_experience.journeyOrchestration.stepEvents.nodeName AS nodeLabel,
count(1) stepEnteredCount
from journey_step_events
where
_experience.journeyOrchestration.stepEvents.journeyVersionID IN ('0e86ac62-c315-48cc-ab4f-3f8b741ae667')
AND _experience.journeyOrchestration.stepEvents.journeyNodeProcessed = TRUE
AND _experience.journeyOrchestration.stepEvents.eventID IS DISTINCT FROM 'createInstance'
group by
_experience.journeyOrchestration.stepEvents.nodeID,
_experience.journeyOrchestration.stepEvents.nodeName;
Questa query recupera i nodi (per nodeID e nodeName) del percorso associati alla consegna di un messaggio a un profilo, utilizzando il relativo ID profilo e il set di dati Evento di feedback del messaggio:
select
_experience.journeyorchestration.stepevents.nodeID, JSE._experience.journeyorchestration.stepevents.nodeName
from journey_step_events JSE
where
_experience.journeyOrchestration.stepEvents.actionID
in
(
select
_experience.customerJourneyManagement.messageExecution.journeyActionID
from ajo_message_feedback_event_dataset
where
_experience.customerJourneyManagement.messageProfile.messageProfileID = '<PROFILE ID>'
group by
_experience.customerJourneyManagement.messageExecution.journeyActionID
)
group by
_experience.journeyorchestration.stepevents.nodeID, JSE._experience.journeyorchestration.stepevents.nodeName
Vedi anche alcuni esempi comunemente utilizzati per eseguire query sugli eventi dei passaggi del Percorso.
Scopri come risolvere i problemi relativi ai tipi di evento eliminati in percorsi_step_events.
Set di dati dell’evento Decisioning ode-decisionevents
Nome nell’interfaccia: ODE DecisionEvents (set di dati di sistema)
Set di dati per l’acquisizione delle proposte di offerte agli utenti.
Lo schema correlato è ODE DecisionEvents.
Questa query mostra tutte le offerte restituite il giorno precedente:
SELECT date_format(Decision.Timestamp, 'MM/dd/yyyy') as Date
,HOUR(Decision.timestamp) as Hour
,COUNT(*) as Count
FROM ode_decisionevents_b699fa78_efec_41b1_99fa_78efecc1b1ef_decision AS Decision
WHERE date_format(Decision.timestamp, 'MM/dd/yyyy') = date_format(CURRENT_DATE, 'MM/dd/yyyy') and Decision._experience.decisioning.propositionDetails.activity[0].id = 'xcore:offer-activity:13ab41890a335ad6'
GROUP BY date_format(Decision.Timestamp, 'MM/dd/yyyy')
,HOUR(Decision.timestamp)
ORDER BY 1, 2 DESC;
Questa query mostra il numero di offerte proposte negli ultimi 30 giorni di una particolare attività/decisione e la relativa priorità di offerta.
select proposedOffers.id,proposedOffers.name, po._experience.decisioning.ranking.priority, count(proposedOffers.id) as ProposedCount from (
select explode(propositionexplode.selections) AS proposedOffers from
(select explode(_experience.decisioning.propositionDetails) AS propositionexplode,timestamp FROM ode_decisionevents_itca_decisioning_20230925_235340_379 where date_format(timestamp, 'MM/dd/yyyy') >= date_format(DATE_ADD(CURRENT_DATE, -30), 'MM/dd/yyyy') and _experience.decisioning.propositionDetails.activity[0].id = 'xcore:offer-activity:12ae6f35a055c6f0')) a, decision_object_repository_personalized_offers po where proposedOffers.id LIKE 'xcore:personalized-offer%' and po._id=proposedOffers.id
group by proposedOffers.id, proposedOffers.name, po._experience.decisioning.ranking.priority;
Set di dati evento di feedback destinatario secondario (CCN) bcc-feedback-event-dataset
Nome nell’interfaccia: Set di dati evento feedback destinatario secondario AJO (set di dati di sistema). In Query Service, la tabella del set di dati può ancora essere denominata ajo_bcc_feedback_event_dataset.
Set di dati per messaggi CCN (destinatario secondario) e-mail quando è abilitata l’archiviazione CCN.
Eseguire una query per tutti i messaggi Ccn entro 2 giorni (per una determinata campagna):
SELECT bcc.*
FROM ajo_bcc_feedback_event_dataset AS bcc
WHERE
bcc._experience.customerJourneyManagement.messageExecution.messageExecutionID = '<message-execution-id>' AND
bcc.timestamp >= now() - INTERVAL '2' day;
Esegui una query con set di dati di feedback per mostrare gli utenti che non hanno ricevuto (tutti i mancati recapiti e le eliminazioni) e che dispongono di voci Ccn per un particolare messaggio:
SELECT
distinct bcc._experience.customerJourneyManagement.secondaryRecipientDetail.originalRecipientAddress AS OriginalRecipientAddress
FROM ajo_bcc_feedback_event_dataset AS bcc
WHERE
bcc.timestamp > now() - INTERVAL '2' DAY AND bcc._experience.customerJourneyManagement.messageExecution.messageExecutionID = '<message-execution-id>' AND bcc._experience.customerJourneyManagement.secondaryRecipientDetail.originalRecipientAddress != '' AND
(
bcc._experience.customerJourneyManagement.secondaryRecipientDetail.originalRecipientAddress NOT IN (
SELECT distinct mfe._experience.customerJourneyManagement.emailChannelContext.address
FROM ajo_message_feedback_event_dataset AS mfe
WHERE
mfe.timestamp > now() - INTERVAL '2' DAY AND
mfe._experience.customerJourneyManagement.messageExecution.messageExecutionID = '<message-execution-id>' AND
mfe._experience.customerjourneymanagement.messagedeliveryfeedback.feedbackstatus = 'sent'
)
OR bcc._experience.customerJourneyManagement.secondaryRecipientDetail.originalRecipientAddress IN (
SELECT distinct mfe._experience.customerJourneyManagement.emailChannelContext.address
FROM ajo_message_feedback_event_dataset AS mfe
WHERE
mfe.timestamp > now() - INTERVAL '2' DAY AND
mfe._experience.customerJourneyManagement.messageExecution.messageExecutionID = '<message-execution-id>' AND
mfe._experience.customerJourneyManagement.messageDeliveryfeedback.messageFailure.category = 'async' AND
mfe._experience.customerjourneymanagement.messagedeliveryfeedback.feedbackstatus
Set di dati di entità entity-dataset
Nome nell’interfaccia: ajo entity_dataset (set di dati di sistema)_
Set di dati per memorizzare i metadati di entità per i messaggi inviati all’utente finale.
Lo schema correlato è AJO Entity Schema.
Questo set di dati consente di accedere a metadati definiti dall’addetto al marketing, che consentono di ottenere informazioni migliori sui rapporti quando i set di dati di Journey Optimizer vengono esportati per la visualizzazione di reporting in strumenti esterni. Questo viene ottenuto utilizzando l’attributo messageID che consente di unire vari set di dati, come il set di dati di feedback sui messaggi e di tracciamento degli eventi sull’esperienza, per ottenere i dettagli di una consegna di messaggi dall’invio al tracciamento a livello di profilo.
Note importanti
-
Una voce per un messaggio viene creata solo dopo la pubblicazione del percorso o della campagna.
-
La voce potrebbe essere visualizzata 30 minuti dopo la pubblicazione della campagna/del percorso.
Se desideri ordinare, nei rapporti, le e-mail inviate da un percorso specifico in base all’azione che le ha inviate. puoi unire il set di dati Feedback messaggio con il set di dati Entità. I campi da utilizzare sono: _experience.decisioning.propositions.scopeDetails.correlationID e _id field in entity dataset.
La query seguente ti aiuta a ottenere il modello di messaggio associato per una determinata campagna:
SELECT
AE._experience.customerJourneyManagement.entities.channelDetails.template
from
ajo_entity_dataset AE
WHERE AE._experience.customerJourneyManagement.entities.campaign.campaignVersionID = 'd7a01136-b113-4ef2-8f59-b6001f7eef6e'
La query seguente consente di ottenere i dettagli del Percorso e l’oggetto e-mail associati a tutti gli eventi di feedback:
SELECT
AE._experience.customerJourneyManagement.entities.journey.journeyActionName,
AE._experience.customerJourneyManagement.entities.journey.journeyActionID,
AE._experience.customerJourneyManagement.entities.journey.journeyVersionID,
AE._experience.customerJourneyManagement.entities.channelDetails.email.subject
from
ajo_entity_dataset AE
INNER JOIN ajo_message_feedback_event_dataset MF ON AE._experience.customerJourneyManagement.entities.channelDetails.messageID = MF._experience.customerJourneyManagement.messageExecution.messageID
WHERE
AE._experience.customerJourneyManagement.entities.channelDetails.channel._id = 'https://ns.adobe.com/xdm/channels/email'
AND MF._experience.customerJourneyManagement.messageDeliveryfeedback.feedbackStatus = 'sent'
AND AE._experience.customerJourneyManagement.entities.journey.journeyVersionID IS NOT NULL
Puoi unire gli eventi dei passaggi del percorso, il feedback dei messaggi e i set di dati di tracciamento per ottenere le statistiche per un particolare profilo:
SELECT
AE._experience.customerJourneyManagement.entities.journey.journeyActionName,
AE._experience.customerJourneyManagement.entities.journey.journeyActionID,
AE._experience.customerJourneyManagement.entities.journey.journeyVersionID,
AE._experience.customerJourneyManagement.entities.channelDetails.email.subject,
JE._EXPERIENCE.JOURNEYORCHESTRATION.STEPEVENTS.PROFILEID,
JE._EXPERIENCE.JOURNEYORCHESTRATION.STEPEVENTS.NODENAME
from
ajo_entity_dataset AE
INNER JOIN ajo_message_feedback_event_dataset MF
ON AE._experience.customerJourneyManagement.entities.channelDetails.messageID = MF._experience.customerJourneyManagement.messageExecution.messageID
INNER JOIN journey_step_events JE
ON AE._experience.customerJourneyManagement.entities.journey.journeyActionID = JE._experience.journeyOrchestration.stepEvents.actionID
WHERE
AE._experience.customerJourneyManagement.entities.channelDetails.channel._id = 'https://ns.adobe.com/xdm/channels/email'
AND MF._experience.customerJourneyManagement.messageDeliveryfeedback.feedbackStatus = 'sent'
AND AE._experience.customerJourneyManagement.entities.journey.journeyVersionID IS NOT NULL
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 provides ready-to-use SQL query examples for Journey Optimizer system datasets so you can analyze email and push tracking, message feedback, journey step, decisioning, BCC, and entity data for reporting and troubleshooting.
Intents:
- Choose the correct system dataset for a given analysis (message feedback versus email tracking versus journey step).
- Query email and push interaction counts (opens, clicks).
- Query message delivery feedback statuses (
sent,bounce) and bounce categories. - Distinguish test executions from non-test executions using the
isTestExecutionfield. - Join the Entity Dataset with feedback and tracking datasets using
messageIDorcorrelationID. - Troubleshoot the “Table not provisioned for dataset” message.
Glossary:
- AJO Email Tracking Experience Event Dataset: system dataset for email tracking events; queried as
ajo_email_tracking_experience_event_dataset(product-specific) - AJO Message Feedback Event Dataset: message delivery feedback across channels (Email, SMS/RCS/MMS, Direct Mail); queried as
ajo_message_feedback_event_dataset; uses batch ingestion (product-specific) - AJO Push Tracking Experience Event Dataset: push interaction events; queried as
ajo_push_tracking_experience_event_dataset(product-specific) - Journey Step Event: journey step events; queried as
journey_step_events(product-specific) - Decisioning Event Dataset (ODE DecisionEvents): offer proposition events (product-specific)
- Secondary Recipient Feedback Event Dataset (BCC): email BCC events when BCC archiving is enabled; table may still be named
ajo_bcc_feedback_event_dataset(product-specific) - Entity Dataset: stores entity metadata for messages; queried as
ajo_entity_dataset(product-specific) isTestExecution: field distinguishing test executions (true) from non-test executions (false), withNULLor missing treated as unknown (product-specific)
Guardrails:
- The AJO Message Feedback Event Dataset uses batch ingestion; expect a data latency of up to 2 hours (expected latency, batch ingestion — not a configurable limit) when querying it or using it for reporting.
- If a query returns “Table not provisioned for dataset”, for batch-ingested datasets allow up to two hours for data to become available before contacting Adobe Support.
- System datasets are hidden by default; enable Show system datasets in the Datasets workspace to query them.
- An Entity Dataset entry for a message is created only after the journey or campaign is published, and may appear about 30 minutes after publication (observed delay).
- Do not automatically convert a
NULLor missingisTestExecutionvalue tofalse, and do not assume null represents a production execution. - A successful custom action HTTP call confirms only that the call completed, not that the external system delivered a message.
Terminology:
- Canonical name: Journey Step Event — table:
journey_step_events - Do not confuse: “AJO Message Feedback Event Dataset” (delivery feedback such as
sentorbounce) ≠ “AJO Email Tracking Experience Event Dataset” (interaction events such as opens and clicks) ≠ “Journey Step Event” (custom action execution status and errors) - Do not confuse: “
isTestExecution=NULL” (unknown) ≠ “isTestExecution=false” (non-test execution)
FAQ:
- Q: Which dataset do I query for opens and clicks? — The AJO Email Tracking Experience Event Dataset.
- Q: Which dataset do I query for sent and bounce delivery status? — The AJO Message Feedback Event Dataset.
- Q: Why does my query return “Table not provisioned for dataset”? — It does not necessarily mean provisioning failed; enable Show system datasets, confirm the table name matches the Datasets workspace, and for batch datasets allow up to two hours for data to become available.
- Q: How do I separate test executions from non-test executions? — Use the
isTestExecutionfield; treatNULLor missing values as unknown rather than converting them tofalse. - Q: How do I enrich feedback records with campaign, journey, and message metadata? — Join the Entity Dataset using
messageIDor_experience.decisioning.propositions.scopeDetails.correlationID.