Loading
Correo electrónico en Marketing Cloud Engagement
Agrupación de contenido en la API

Agrupación de contenido en la API

Aquí puede consultar información acerca de la agrupación de contenido de Email Studio en la API.

Comando HTTPGet

Finalidad

Se incluye en el cuerpo del email para extraer contenido de la URL que se especifique en ese email en el momento de su envƭo. Si el contenido se almacena en cachƩ, el sistema incluye la copia en cachƩ; de lo contrario, el sistema accede a la URL. Utilice este comando para incluir contenido especƭfico del suscriptor en cada email de la campaƱa.

Si el contenido distribuido no es especĆ­fico del suscriptor, utilice el comando Before;HTTPGet.

Sintaxis

%%httpget "URL"%%

Argumentos

URL

Ejemplo
Ejemplo Llamada de una secuencia de comandos con HTTPGet

Tiene mĆŗltiples anuncios en su servidor web, y usa una secuencia de comandos que selecciona uno de forma aleatoria, de modo que cada suscriptor recibe un anuncio seleccionado al azar.

La dirección del sitio web es https://www.ejemplo.com. El nombre de archivo de la secuencia de comandos que redactó para generar pÔginas web personalizadas es getdata.pl, que utiliza el atributo de Email Studio con la etiqueta Dirección de email para determinar qué pÔgina se muestra. Ingresa este código en el cuerpo del email en el punto en el que aparece el contenido de la pÔgina web:

%%httpget "https://www.example.com/cgi-bin/getdata.pl?id=[Email Address]"%%

Cuando se genera el email, la aplicación sustituye la dirección de email del suscriptor por la dirección URL (por ejemplo: https://www.ejemplo.com/cgibin/getdat...heirDomain.com). El contenido que se muestra en esa ubicación del cuerpo del email es la pÔgina web específica para la dirección de email de ese suscriptor.

Aunque la etiqueta de combinación HTTPGet no requiere que la URL proporcione un resultado específico, recomendamos incluir una línea de estado HTTP/1.0 200 OK estÔndar, una línea Content-Type: text/plain o Content-Type: text/html, seguida de una línea vacía y luego el contenido del texto que se va a insertar. Por ejemplo, una secuencia de comandos de Perl incluiría un código similar al siguiente:

print "HTTP/1.0 200 OK\r\n";

print "Content-Type: text/plain\r\n";

print "\r\n";

print "Welcome to the Northern Trail newsletter!";

Esta función se desarrolla con HTTP en el puerto 80 y HTTPS en el puerto 443. Las asignaciones de puertos no estÔndar generan un error en esta función.

Comando HTTPGetWrap

Finalidad

Se incluye en las etiquetas <a> de vínculos en el contenido agrupado para realizar un seguimiento de los vínculos que aparecen en el contenido extraído en sus emails con HTTPGet o con la función TreatAsContent() de AMPscript.

Nota
Nota Solo los emails de agrupación de contenido de nivel de suscriptor requieren que se use este comando. El resto de los emails que utilizan la agrupación de contenido incluyen automÔticamente el código necesario para realizar el seguimiento de los vínculos.

Sintaxis

<a href="httpgetwrap|URL">Click here</a>

Argumentos

URL

Comando Before;HTTPGet

Finalidad

Se incluye en el cuerpo del email para extraer el contenido de la URL especificada una vez, al principio de un envío de email, y luego incluir ese contenido en todos los emails de la campaña. Este comando ahorra mÔs tiempo que el comando HTTPGet, y se usa cuando no es necesario extraer el contenido por separado para cada instancia de email. También puede utilizar este comando para obtener una notificación indicando cuando comience el envío de email. Si el contenido distribuido es específico del suscriptor, utilice el comando HTTPGet lugar de este comando.

Sintaxis

%%before;httpget "URL"%%

Argumentos

URL

Ejemplo
Ejemplo

Incluir la misma publicidad en cada email

Aunque tiene muchos anuncios en su servidor web, quiere que todos los suscriptores de un envío de email concreto vean el mismo anuncio. La dirección web del sitio es https://www.ejemplo.com y el nombre de archivo de la secuencia de comandos que extrae el anuncio es getmailad.pl. Ingrese este código en el cuerpo del email en el punto en el aparece el anuncio:

%%before;httpget "https://www.example.com/cgi-bin/getmailad.pl"%%

Ejemplo
Ejemplo

Solicitar una notificación de que el envío de email comenzó

Redactó una secuencia de comandos que registra la hora de inicio del envío del email. La dirección del sitio web donde se encuentra la secuencia de comandos es https://www.ejemplo.com y el nombre de archivo de la secuencia de comandos es recordevent.pl. Ingrese este código en la parte superior del cuerpo del email:

%%before;httpget "https://www.example.com/cgi-bin/recordevent.pl"%%

El sistema ejecutarĆ” la secuencia de comandos en el momento de procesar el envĆ­o del email. Este comando no hace que se agregue contenido al cuerpo del email. El comando before;httpget se procesa fuera del contexto del suscriptor porque recupera

contenido que se utiliza en el email para todos los suscriptores. Por lo tanto, la única personalización que es vÔlida en la cadena de consulta de URL es la sustitución de JobID. Por ejemplo:

%%before;httpget "https://www.example.com/cgibin/record....pl?id=[jobid]"%%

Comando After;HTTPGet

Finalidad

Se incluye al final de una definición de email para realizar una acción puntual al final de una campaña de email. Este comando no incluye contenido en el cuerpo del email. Use este comando para proporcionar a su sistema de CRM o CMS una notificación de que se completó el envío del email.

Nota
Nota Esta llamada no puede utilizarse con envƭos de emails desencadenados porque el trabajo de envƭo de emails desencadenados no finaliza despuƩs de enviar el mensaje.

Sintaxis

%%after;httpget "URL"%%

Argumentos

URL

Ejemplo
Ejemplo

Solicitar notificación de que se completó un envío de email

Redactó una secuencia de comandos que registra que se completó un envío de email.

La dirección del sitio web en el que se encuentra la secuencia de comandos es https://www.ejemplo.com y el nombre de archivo de la secuencia de comandos es logsentmessage.pl. Ingrese el siguiente código al final del cuerpo del email:

%%after;httpget "https://www.example.com/cgi-bin/logsentmessage.pl"%%

El sistema ejecutarĆ” su secuencia de comandos cuando termine el envĆ­o del email. Este comando no hace que se agregue contenido al cuerpo del email.

El comando after;httpget se procesa fuera del contexto del suscriptor porque se invoca una vez que completó el envío a todos los suscriptores. Por lo tanto, la única personalización que es vÔlida en la cadena de consulta de URL es la sustitución de JobID. Por ejemplo:

%%after;httpget "https://www.example.com/cgi-bin/logse...pl?jid=[jobid]"%%

Opciones de gestión de devoluciones vacías

La llamada HTTPGET puede realizarse exitosamente sin errores, pero sin devolver contenido. De forma predeterminada, el sistema asume que no hay contenido agrupado relevante para el contexto del email, y continĆŗa el envĆ­o de este. Puede anular este comportamiento predeterminado mediante un indicador opcional.

Sintaxis

%%httpget[;EmptyReturnHandlingOption] "URL"%%

O

%%before;httpget[;EmptyReturnHandlingOption] "URL"%%

Valores vƔlidos

  • 0 (o ninguno): seguir procesando normalmente
  • 1: detener el procesamiento y establecer el estado del trabajo como error
  • 2 (para una llamada de nivel de suscriptor): omitir el suscriptor y continuar con el envĆ­o
  • 2 (para una llamada de nivel anterior): detener el envĆ­o y establecer el estado del trabajo como error

Este indicador se ignora para el comando After;HTTPGet.

Ejemplo
Ejemplo

Tiene mĆŗltiples anuncios en su servidor web, y usa una secuencia de comandos que selecciona uno de forma aleatoria, de modo que cada suscriptor recibe un anuncio seleccionado al azar. Quiere que, si la secuencia de comandos no devuelve un anuncio, el sistema omita ese suscriptor y continĆŗe con el resto del envĆ­o.

La dirección del sitio web es https://www.ejemplo.com y el nombre de archivo de la secuencia de comandos es ad.pl, que se encuentra en la carpeta cgi-bin. Ingrese el código siguiente en el cuerpo del email en el punto en el aparece el anuncio:

%%httpget ; 2 "https://www.example.com/cgi-bin/ad.pl"%%

Gestión de errores

La mejor defensa contra los errores de distribución de contenido es un buen ataque. Puede usar AMPScript para prevalidar los valores usados en la distribución de contenido. Si su pÔgina requiere un valor de cadena de consulta y genera errores cuando no lo recibe, puede comprobar el valor antes de que se produzca la llamada.

Peligro potencial

%%httpget "http://adomain.com/newsletter/album?...umId=[albumid]"%%

En esta llamada de distribución de contenido, hay que incluir albumid para que se devuelva contenido. Si este no forma parte de la solicitud, devuelve un error de servidor.

La mejor estrategia

%%[ if length(albumid) > 0 then ]%% %%httpget "http://adomain.com/newsletter/album?...umId=[albumid]"%% %%[ endif ]%%

Esta estrategia utiliza Manuscript para validar los datos antes de ejecutar la llamada de distribución de contenido. Esto no evita que haya errores de servidor web aleatorios, pero evita problemas relacionados con los datos.

 
Cargando
Salesforce Help | Article