Creación y prueba de una plantilla de transformación de mensaje

Información general

Como parte del SDK de destino, Adobe proporciona herramientas para desarrolladores que le ayudan a configurar y probar el destino. En esta página se describe cómo crear y probar una plantilla de transformación de mensaje. Para obtener información sobre cómo probar el destino, lea Probar la configuración de destino.

Para crear y probar una plantilla de transformación de mensaje entre el esquema de destino en Adobe Experience Platform y el formato de mensaje admitido por el destino, utilice la Template authoring tool que se describe a continuación. Obtenga más información sobre la transformación de datos entre el esquema de origen y destino en el documento de formato de mensaje.

A continuación se ilustra cómo la creación y prueba de una plantilla de transformación de mensaje encaja en el flujo de trabajo de configuración de destino en el SDK de destino:

Gráfico de dónde encaja el paso crear plantilla en el flujo de trabajo de configuración de destino

Por qué debe crear y probar una plantilla de transformación de mensaje

Uno de los primeros pasos para crear su destino en el SDK de destino es pensar en cómo se transforma el formato de datos para la pertenencia a un segmento, las identidades y los atributos de perfil al exportarlo de Adobe Experience Platform a su destino. Busque información sobre la transformación entre el esquema XDM de Adobe y el esquema de destino en el documento message format document.

Para que la transformación tenga éxito, debe proporcionar una plantilla de transformación, similar a esta: Cree una plantilla que envíe segmentos, identidades y atributos de perfil.

Adobe proporciona una herramienta de plantilla que le permite crear y probar la plantilla de mensaje que transforma los datos del formato XDM de Adobe al formato admitido por el destino. La herramienta tiene dos extremos de API que puede utilizar:

  • Utilice la API de plantilla de ejemplo para obtener una plantilla de ejemplo.
  • Use la API de plantilla de renderización para procesar la plantilla de ejemplo y poder comparar el resultado con el formato de datos esperado del destino. Después de comparar los datos exportados con el formato de datos esperado por el destino, puede editar la plantilla. De este modo, los datos exportados que genere coincidirán con el formato de datos esperado por el destino.

Cómo utilizar la API de plantilla de muestra y la API de plantilla de renderización para crear una plantilla para el destino

El proceso para obtener y probar la plantilla es iterativo. Repita los pasos siguientes hasta que los perfiles exportados coincidan con el formato de datos esperado del destino.

  1. Primero, obtenga una plantilla de ejemplo.
  2. Utilice la plantilla de ejemplo como punto de partida para crear un borrador propio.
  3. Llame al extremo de la API de plantilla de renderización con su propia plantilla. Adobe genera perfiles de muestra basados en el esquema y devuelve el resultado o cualquier error encontrado.
  4. Compare los datos exportados con el formato de datos esperado por el destino. Si es necesario, edite la plantilla.
  5. Repita este proceso hasta que los perfiles exportados coincidan con el formato de datos esperado del destino.

Pasos que se deben completar antes de crear la plantilla

Antes de crear la plantilla, asegúrese de completar los pasos siguientes:

  1. Cree una configuración de servidor de destino. La plantilla que va a generar es diferente, en función del valor que proporcione para el parámetro maxUsersPerRequest.
    • Utilice maxUsersPerRequest=1 si desea que una llamada de API a su destino incluya un solo perfil, junto con sus cualificaciones de segmento, identidades y atributos de perfil.
    • Utilice maxUsersPerRequest con un valor bueno a uno si desea que una llamada de API al destino incluya varios perfiles, junto con sus clasificaciones de segmentos, identidades y atributos de perfil.
  2. Cree una configuración de destino y añada el ID de la configuración del servidor de destino en destinationDelivery.destinationServerId.
  3. Obtenga el ID de la configuración de destino que acaba de crear, de modo que pueda utilizarlo en la herramienta de creación de plantillas.

Obtener una plantilla de ejemplo mediante la API de plantilla de ejemplo

NOTA

Para obtener toda la documentación de referencia de la API, lea Obtener operaciones de API de plantilla de muestra.

Agregue un ID de destino a la llamada, como se muestra a continuación, y la respuesta devolverá un ejemplo de plantilla correspondiente al ID de destino.

curl --location --request GET 'https://platform.adobe.io/data/core/activation/authoring/testing/template/sample/5114d758-ce71-43ba-b53e-e2a91d67b67f' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'x-api-key: {API_KEY}' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--header 'x-gw-ims-org-id: {IMS_ORG}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \

Si el ID de destino que proporciona corresponde a una configuración de destino con mejor agregación de esfuerzo y maxUsersPerRequest=1 en la política de agregación, la solicitud devuelve una plantilla de ejemplo similar a esta:

{#- THIS is an example template for a single profile -#}
{#- A '-' at the beginning or end of a tag removes all whitespace on that side of the tag. -#}
{
    "identities": [
    {%- for idMapEntry in input.profile.identityMap -%}
    {%- set namespace = idMapEntry.key -%}
        {%- for identity in idMapEntry.value %}
        {
            "type": "{{ namespace }}",
            "id": "{{ identity.id }}"
        }{%- if not loop.last -%},{%- endif -%}
        {%- endfor -%}{%- if not loop.last -%},{%- endif -%}
    {% endfor %}
    ],
    "AdobeExperiencePlatformSegments": {
        "add": [
        {%- for segment in input.profile.segmentMembership.ups | added %}
            "{{ segment.key }}"{%- if not loop.last -%},{%- endif -%}
        {% endfor %}
        ],
        "remove": [
        {#- Alternative syntax for filtering segments by status: -#}
        {% for segment in removedSegments(input.profile.segmentMembership.ups) %}
            "{{ segment.key }}"{%- if not loop.last -%},{%- endif -%}
        {% endfor %}
        ]
    }
}

Si el ID de destino que proporciona corresponde a una plantilla de servidor de destino con agregación configurable o agregación de mejor esfuerzo con maxUsersPerRequest buena que una, la solicitud devuelve una plantilla de ejemplo similar a esta:

{#- THIS is an example template for multiple profiles -#}
{#- A '-' at the beginning or end of a tag removes all whitespace on that side of the tag. -#}
{
    "profiles": [
    {%- for profile in input.profiles %}
        {
            "identities": [
            {%- for idMapEntry in profile.identityMap -%}
            {%- set namespace = idMapEntry.key -%}
                {%- for identity in idMapEntry.value %}
                {
                    "type": "{{ namespace }}",
                    "id": "{{ identity.id }}"
                }{%- if not loop.last -%},{%- endif -%}
                {%- endfor -%}{%- if not loop.last -%},{%- endif -%}
            {% endfor %}
            ],
            "AdobeExperiencePlatformSegments": {
                "add": [
                {%- for segment in profile.segmentMembership.ups | added %}
                    "{{ segment.key }}"{%- if not loop.last -%},{%- endif -%}
                {% endfor %}
                ],
                "remove": [
                {#- Alternative syntax for filtering segments by status: -#}
                {% for segment in removedSegments(profile.segmentMembership.ups) %}
                    "{{ segment.key }}"{%- if not loop.last -%},{%- endif -%}
                {% endfor %}
                ]
            }
        }{%- if not loop.last -%},{%- endif -%}
    {% endfor %}
    ]
}

Aplicar caracteres de escape a la plantilla

Antes de utilizar la plantilla para procesar perfiles que coincidan con el formato esperado del destino, debe omitir los caracteres de la plantilla, como se muestra en la grabación de pantalla que aparece a continuación.

Vídeo que muestra cómo escapar caracteres de una plantilla mediante una herramienta de escape de caracteres en línea

Puede utilizar una herramienta de escape de caracteres en línea. La demostración anterior utiliza el formateador de escape JSON.

API de plantilla de procesamiento

Después de crear una plantilla de transformación de mensaje con la API de plantilla de ejemplo, puede procesar la plantilla para generar los datos exportados en función de ella. Esto le permite comprobar si los perfiles que Adobe Experience Platform exportaría a su destino coinciden con el formato esperado de su destino.

Consulte la referencia de la API para ver ejemplos de llamadas que puede realizar:

Edite la plantilla y realice llamadas al extremo API de plantilla de renderización hasta que los perfiles exportados coincidan con el formato de datos esperado del destino.

Añada la plantilla con caracteres de escape a la configuración del servidor de destino

Una vez que esté satisfecho con la plantilla de transformación de mensajes, agréguela a la configuración del servidor de destino, en httpTemplate.requestBody.value.

En esta página