Ejemplos de consultas query-examples

En esta página: Explore ejemplos de consultas SQL listos para usar para conjuntos de datos del sistema de Journey Optimizer a fin de analizar el seguimiento de correo electrónico y push, los comentarios de mensajes, los pasos de recorrido y los datos de toma de decisiones para la creación de informes y la solución de problemas.

En esta página, encontrará la lista de conjuntos de datos de Adobe Journey Optimizer y casos de uso relacionados:

Para ver la lista completa de campos y atributos para cada esquema, consulte el diccionario del esquema de Journey Optimizer.

Vea también ejemplos usados con frecuencia para consultar los eventos de pasos de Recorrido.

Elija el conjunto de datos correcto choose-the-correct-dataset

Antes de ejecutar una consulta, confirme qué conjunto de datos coincide con el tipo de acción que desea analizar en el recorrido.

  1. Para comprobar los comentarios del envío de mensajes para las acciones nativas del canal de Journey Optimizer (como los estados sent o bounce), use el conjunto de datos de evento de comentarios de mensajes.
  2. Para comprobar eventos de interacción de correo electrónico como aperturas y clics, use el conjunto de datos de evento de experiencia de seguimiento de correo electrónico.
  3. Para comprobar que Journey Optimizer ejecutó una acción personalizada y comprobar su estado de ejecución, latencia y detalles de error, use el conjunto de datos Evento de paso de Recorrido.
NOTE
Una llamada HTTP de acción personalizada que se realice correctamente solo confirma que la llamada se ha completado. No confirma que el sistema externo haya enviado un mensaje. Para confirmar la entrega descendente, compruebe los registros o informes del sistema externo. Aprenda a solucionar problemas de la ejecución del recorrido en directo.

Si una consulta devuelve “Tabla no aprovisionada para el conjunto de datos” table-not-provisioned

Este mensaje no significa necesariamente que el conjunto de datos no se haya aprovisionado. Antes de ponerse en contacto con el Soporte de Adobe, compruebe lo siguiente:

  1. En el área de trabajo Conjuntos de datos, habilite Mostrar conjuntos de datos del sistema. Los conjuntos de datos generados por el sistema están ocultos de forma predeterminada. Obtenga información sobre cómo acceder a conjuntos de datos.
  2. Confirme que el nombre de tabla exacto utilizado en la consulta coincida con el nombre de tabla que se muestra en el espacio de trabajo Conjuntos de datos de la zona protegida.
  3. Confirme que el tipo de acción de recorrido coincide con el conjunto de datos que está consultando. Consulte Elegir el conjunto de datos correcto.
  4. En el caso de los conjuntos de datos que utilizan la ingesta por lotes, como el Conjunto de datos de evento de comentarios de mensajes, los datos pueden tardar hasta dos horas en estar disponibles.
  5. Para las acciones personalizadas, consulte el conjunto de datos Evento de paso de Recorrido en lugar de esperar un registro de Evento de comentarios de mensaje para el envío externo.

Si el conjunto de datos debe contener datos y la tabla sigue sin estar disponible, recopile el nombre de la zona protegida, el nombre del conjunto de datos, el ID de la consulta y la marca de tiempo antes de ponerse en contacto con el Soporte técnico de Adobe.

Seguimiento de correo electrónico Conjunto de datos de evento de experiencia email-tracking-experience-event-dataset

Nombre en la interfaz: conjunto de datos de evento de experiencia de seguimiento de correo electrónico de AJO

Conjunto de datos del sistema para la ingesta de eventos de experiencia de seguimiento de correo electrónico de Journey Optimizer.

El esquema relacionado es el Esquema de evento de experiencia de seguimiento de correo electrónico de AJO.

Esta consulta muestra el recuento de diferentes interacciones por correo electrónico (aperturas, clics) para un mensaje determinado:

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

Esta consulta muestra el desglose de los recuentos de diferentes interacciones de correo electrónico (aperturas, clics) por mensaje para un recorrido determinado:

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;

Conjunto de datos de evento de comentarios message-feedback-event-dataset

Nombre en la interfaz: conjunto de datos de evento de comentarios de mensajes de AJO

El conjunto de datos de evento de comentarios de mensajes de AJO almacena los comentarios de envío de mensajes generados por Adobe Journey Optimizer. Admite el análisis de comentarios de entrega en todos los canales de mensajes, incluidos correo electrónico, SMS/RCS/MMS y correo directo. Los eventos de comentarios se pueden utilizar para casos de uso de creación de informes y audiencias.

El esquema relacionado es el esquema AJO Message Feedback Event.

NOTE
  • En Adobe Journey Optimizer, sent es el valor utilizado para los resultados de envío de mensajes correctos; delivered no se usa en los conjuntos de datos de eventos de comentarios de mensajes.

  • Este conjunto de datos utiliza la ingesta por lotes, por lo que los datos se pueden retrasar hasta dos horas.

  • No se garantiza que los campos de contexto específicos del canal se rellenen en cada evento. Utilice identificadores de ejecución de mensajes, estado de comentarios, detalles de errores, marcas de tiempo e información de identidad como campos de correlación principales.

Para obtener la lista completa de campos, rutas de campo, tipos de datos y descripciones, consulte la Referencia de esquema de Adobe Journey Optimizer.

Clasificar ejecuciones de prueba y no de prueba classify-test-executions

Utilice el campo isTestExecution para distinguir las ejecuciones de prueba de las ejecuciones que no son de prueba cuando se rellene el campo.

Antes de crear una consulta, use la Referencia de esquema de Adobe Journey Optimizer para confirmar la ruta de campo, el tipo de datos y la descripción actuales del esquema de evento de comentarios de mensajes de AJO.

Interprete los valores rellenados de la siguiente manera:

Valor
Interpretación
true
El mensaje formaba parte de una ejecución de prueba.
false
El mensaje no formaba parte de una ejecución de prueba.
NULL o falta
No se ha registrado ningún valor para el campo. Tratar esto como desconocido a menos que se haya validado una asignación específica de canal y hora.

No convierta automáticamente NULL a false y no dé por sentado que cada valor nulo representa una ejecución de producción. Si una implementación de informes ha validado que los valores nulos representan registros que no son de prueba para un canal o período histórico específico, aplique esa asignación en una vista de informes descendente y documente la regla explícitamente.

Es posible que algunos registros históricos o específicos del canal no rellenen todos los campos de contexto del mensaje. Por lo tanto, debe probar la disponibilidad de los campos por canal y conservar los valores nulos en lugar de tratarlos como cadenas vacías o valores deducidos.

Ejecute esta consulta solo después de confirmar la ruta de acceso isTestExecution en la Referencia de esquema de 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;

Esta consulta agrupa los registros de comentarios de los mensajes por indicador de ejecución de prueba y estado de comentarios de entrega. El resultado conserva los valores isTestExecution nulos o que faltan, de modo que los registros sin un valor de ejecución de prueba registrado se pueden revisar por separado.

Esta consulta muestra el recuento de diferentes estados de comentarios de correo electrónico (enviados, rechazados, etc.) para un mensaje determinado:

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;

Esta consulta muestra el desglose de los recuentos de estados de comentarios de correo electrónico diferentes (enviados, rechazados, etc.) por mensaje para un recorrido determinado:

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;

En el nivel agregado, informe de nivel de dominio (ordenado por dominios principales): Nombre de dominio, Mensaje enviado, Devoluciones

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;

El correo electrónico envía diariamente:

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;

Busque si un ID de correo electrónico en particular recibió un correo electrónico o no y, en caso contrario, cuál fue el error, categoría de rechazo, código:

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

Encuentre la lista de todos los ID de correo electrónico individuales que tuvieron un error, una categoría de rechazo o un código en particular en las últimas x horas/días o asociados a una entrega de mensaje en particular:

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

Tasa de devoluciones graves a nivel agregado:

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' )

Errores permanentes agrupados por código de rechazo:

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
NOTE
En algunos recorridos, messageID puede no ser único para cada envío individual. Si un recorrido reenvía la misma acción al mismo perfil, se puede reutilizar el mismo messageID. Por lo tanto, para rastrear o atribuir eventos con precisión en el nivel de envío individual, combine los campos journeyVersionID, journeyActionID y batchInstanceID (para recorridos por lotes) o identityMap para obtener una unicidad más precisa.

Identificación de direcciones en cuarentena después de una interrupción del ISP isp-outage-query

En caso de una interrupción del proveedor de servicios de Internet (ISP), debe identificar las direcciones de correo electrónico erróneamente marcadas como rechazos (en cuarentena) para dominios específicos, durante un periodo de tiempo. Para obtener esas direcciones, utilice la siguiente consulta:

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;

donde el formato de las fechas es: YYYY-MM-DD HH:MM:SS.

Una vez identificadas, elimine esas direcciones de la lista de supresión de Journey Optimizer. Más información.

NOTE
Al hacer referencia al identityMap en el conjunto de datos de evento de comentarios de mensajes, tenga en cuenta que solo refleja la identidad utilizada durante la ejecución. Para las notificaciones push, un evento "enviado" dependería únicamente del ECID vinculado al token push utilizado para enviar esta notificación, mientras que un evento "exclusión" podría depender de una identidad personalizada. Por ejemplo, si se excluyó un perfil porque no se encontró ningún token push, se seleccionará la identidad utilizada en el nivel de recorrido o de campaña de acción para registrar este evento. Si necesita áreas de nombres adicionales (por ejemplo, ID personalizados), una estos registros de comentarios con un conjunto de datos relacionado con el perfil (por ejemplo: los registros profile_snapshot) para recuperar la lista de identidad completa.

Conjunto de datos de evento de experiencia de seguimiento push push-tracking-experience-event-dataset

Nombre en la interfaz: conjunto de datos de evento de experiencia de seguimiento push de AJO

Conjunto de datos para la ingesta de eventos de experiencia de seguimiento móvil para notificaciones push desde Journey Optimizer.

El esquema relacionado es AJO Push Tracking Experience Event Schema.

Ejemplo de consulta:

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 de paso de recorrido journey-step-event

Nombre interno: eventos de paso de Recorrido (conjunto de datos del sistema)

Conjunto de datos para la ingesta de eventos de paso en el recorrido.

El esquema relacionado es el esquema de Evento de paso de Recorrido para Journey Orchestration.

Esta consulta muestra el desglose de los recuentos de éxito de las acciones por rótulo de acción para un recorrido determinado:

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;

Esta consulta muestra el desglose de los recuentos introducidos por nodeId y nodeLabel para un recorrido determinado. nodeId se incluye aquí, ya que nodeLabel puede ser el mismo para diferentes nodos de recorrido.

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;

Esta consulta recupera qué nodos (por ID de nodo y nombre de nodo) del recorrido están asociados con el envío de un mensaje a un perfil, mediante su ID de perfil y el conjunto de datos de evento de comentarios de mensajes:

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

Vea también ejemplos usados con frecuencia para consultar los eventos de pasos de Recorrido.

Aprenda a solucionar problemas de tipos de eventos descartados en recorrido_step_events.

Conjunto de datos de evento de decisión ode-decisionevents

Nombre en la interfaz: ODE DecisionEvents (conjunto de datos del sistema)

Conjunto de datos para la ingesta de propuestas de ofertas a los usuarios.

El esquema relacionado es ODE DecisionEvents.

Esta consulta muestra todas las ofertas devueltas el día anterior:

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;

Esta consulta muestra el número de veces que se propusieron ofertas en los últimos 30 días de una actividad o decisión en particular y la prioridad de ofertas asociada.

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;

Conjunto de datos de evento de comentarios del destinatario secundario (CCO) bcc-feedback-event-dataset

Nombre en la interfaz: conjunto de datos de evento de comentarios secundarios del destinatario de AJO (conjunto de datos del sistema). En el servicio de consultas, la tabla del conjunto de datos aún puede llamarse ajo_bcc_feedback_event_dataset.

Conjunto de datos para mensajes CCO del correo electrónico (destinatario secundario) cuando el archivado de CCO está habilitado.

Consulte todos los mensajes CCO en un plazo de 2 días (para una campaña en particular):

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;

Realice una consulta con el conjunto de datos de comentarios para mostrar los usuarios que no recibieron (todas las devoluciones y supresiones) y que tienen una entrada CCO para un mensaje en particular:

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

Conjunto de datos de entidad entity-dataset

Nombre en la interfaz: ajo entity_dataset (conjunto de datos del sistema)_

Conjunto de datos para almacenar metadatos de entidad para mensajes enviados al usuario final.

El esquema relacionado es AJO Entity Schema.

Este conjunto de datos le da acceso a metadatos definidos por expertos en marketing, lo que le permite obtener mejores perspectivas de creación de informes cuando los conjuntos de datos de Journey Optimizer se exportan para la visualización de informes en herramientas externas. Esto se logra mediante el atributo messageID, que ayuda a unir varios conjuntos de datos, como conjuntos de datos de comentarios de mensajes y conjuntos de datos de seguimiento de eventos de experiencia, para obtener detalles de una entrega de mensajes desde el envío hasta el seguimiento a nivel de perfil.

Notas importantes

  • La entrada de un mensaje solo se crea después de publicar el recorrido o la campaña.

  • Puede ver la entrada 30 minutos después de la publicación de la campaña o el recorrido.

NOTE
Por el momento, hay dos entradas para cada publicación de mensaje en el conjunto de datos de entidad por motivos de compatibilidad futuros. Esto no afecta a la capacidad de utilizar consultas de unión según sea necesario entre conjuntos de datos para recuperar la información deseada.

Si desea ordenar, en los informes, los correos electrónicos enviados por un recorrido específico según la acción que los envió. puede unir el conjunto de datos de comentarios del mensaje con el conjunto de datos de entidad. Los campos que se van a utilizar son: _experience.decisioning.propositions.scopeDetails.correlationID y _id field in entity dataset.

La siguiente consulta le ayuda a obtener la plantilla de mensaje asociada para una campaña determinada:

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 siguiente consulta ayuda a obtener los detalles del Recorrido y el asunto del correo electrónico asociados con todos los eventos de comentarios:

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

Puede unir eventos de paso de recorrido, comentarios de mensajes y conjuntos de datos de seguimiento para obtener las estadísticas de un perfil en particular:

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
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 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 isTestExecution field.
  • Join the Entity Dataset with feedback and tracking datasets using messageID or correlationID.
  • 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), with NULL or 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 NULL or missing isTestExecution value to false, 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 sent or bounce) ≠ “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 isTestExecution field; treat NULL or missing values as unknown rather than converting them to false.
  • Q: How do I enrich feedback records with campaign, journey, and message metadata? — Join the Entity Dataset using messageID or _experience.decisioning.propositions.scopeDetails.correlationID.
recommendation-more-help
journey-optimizer-help