Artículos sobre: Developers

Guía WDSL generación de piezas y envíos

Este módulo incluye todos los servicios requeridos para la creación de Piezas y/o Envíos.

Crear Pieza



Permite generar un nuevo Newsletter (Pieza) en el sistema.

Petición



URL:


http://dominioplataforma.icommarketing.com/Newsletters.asmx?WSDL

*dominioplataforma debe ser reemplazado por la URL de la instancia


WebService:


CreateHTML


Parámetros de la Petición



- ApiKey: Key correspondiente a la instancia (Obtener desde el módulo de configuración de la instancia)
- UserName: Nombre del usuario de acceso a la plataforma
- Campaign: Nombre de la campaña en la cual generar la pieza
- NewsletterName: Nombre de la pieza a generar
- PlainText: Texto plano de la pieza
- Content: Contenido HTML de la pieza


Respuesta a la Petición -> Resultados


Objeto con la siguiente estructura (JSON) ->
* StatusCode: Código del Resultado de la Operación
* Message: Texto del Resultado de la operación
* MessageDetail: Detalles del mensaje de error cuando se produce
* Data: Información adicional


Listado de Códigos de Respuesta



(1) Newsletter Created: El Newsletter ha sido creado y aprobado en forma satisfactoria.
(501) Template not found: No se ha encontrado la plantilla HTML en la instancia.
(502) User Not Found: El UserName enviado no ha podido ser encontrado entre los usuarios de la instancia.
(503) Campaign Not Found: La campaña enviada no existe.
(504) Campaign is not valid for this User: El usuario enviado no tiene acceso a la campaña solicitada.
(505) Content or Plain Text are empty: El contenido o texto plano de la petición se encuentran vacíos.
(550) Error General: Se ha producido un error generando la pieza, visualizar los campos Message y MessageDetail para más información.
(512) Invalid SocialNetworks Field Value: El contenido el campo SocialNetworks es inválido. Debe enviar un string delimitado por comas que contenga los IDs de las redes sociales que se desean incluir en la comunicación.


Ejemplo PHP



require_once('lib/nusoap.php');
date_default_timezone_set('UTC');
$proxyhost = isset($_POST['proxyhost']) ? $_POST['proxyhost'] : '';
$proxyport = isset($_POST['proxyport']) ? $_POST['proxyport'] : '';
$proxyusername = isset($_POST['proxyusername']) ? $_POST['proxyusername'] : '';
$proxypassword = isset($_POST['proxypassword']) ? $_POST['proxypassword'] : '';
$useCURL = isset($_POST['usecurl']) ? $_POST['usecurl'] : '0';
$client = new nusoap_client('http://domain.icommarketing.com/Newsletters.asmx?WSDL','wsdl','','','','');
$err = $client->getError();
if ($err) {
echo '<h2>Constructor error</h2><pre>' . $err . '</pre>';
exit();
}
$client->setUseCurl($useCURL);
$html = 'HTML';
$html = utf8_decode($html);
$param = Array(
"ApiKey"=>"API_KEY",
"UserName"=>"UserName",
"Campaign"=>"Campaign Name",
"NewsletterName"=>"Newsletter Name",
"Content"=>$html,
"PlainText"=>"test"
);
$result = $client->call('CreateHTML',$param,",",false,true);
// Check for a fault
if ($client->fault) {
echo '<h2>Fault</h2><pre>';
print_r($result);
echo '</pre>';
} else {
// Check for errors
$err = $client->getError();
if ($err) {
// Display the error
echo '<h2>Error</h2><pre>' . $err . '</pre>';
} else {
echo '<h2>Result</h2><pre>';
$auxresponse = json_decode($client->responseData);
echo '<pre>StatusCode' . $auxresponse->{'StatusCode'} . '</pre>';
echo '<pre>Message' . $auxresponse->{'Message'} . '</pre>';
echo '<pre>MessageDetail' . $auxresponse->{'MessageDetail'} . '</pre>';
echo '<pre>Data' . $auxresponse->{'Data'} . '</pre>'; }

}


Crear Envío



Permite disparar un nuevo envío desde la instancia, detallando el contenido a enviar y la audiencia a la cual se destinará el mismo.

Petición



URL

http://dominioplataforma.icommarketing.com/Deliveries.asmx?WSDL
*dominioplataforma debe ser reemplazado por la URL de la instancia

WebService

CreateConfiguration

Parámetros de la Petición



- ApiKey: Key correspondiente a la instancia (Obtener desde el módulo de configuración de la instancia)
- UserName: Nombre del usuario de acceso a la plataforma
- Campaign: Nombre de la campaña en la cual generar la pieza
- NewsletterName: Nombre de la pieza a generar
- PlainText: Texto plano de la pieza
- Content: Contenido HTML de la pieza
- FromMail: Dirección de Correo Remitente (debe existir en la lista de direcciones de la plataforma)
- FromName: Nombre del Remitente
- ReplyMail: Dirección de Correo de Respuesta (debe existir en la lista de direcciones de la plataforma)
- Subject: Asunto del Correo
- PreHeader: PreHeader del Correo (información adicional al Subject que permiten algunos programas de correo)
- Profiles: Lista separada por comas de los PROFILE_KEY a asociar al envío (obtener los PROFILE_KEY desde la pantalla de PROFILES en la plataforma).
- StartDate: Fecha y Hora de Programación del Envío. El formato debe ser YYYY-MM-DDTHH24:MI:SS.
- ViralMarketing: Propiedad para determinar si se desea incluir el LINK para que el receptor pueda reenviar a un amigo el Newsletter. Valores posibles: true o false.
- SocialNetworks: Propiedad para determinar QUE LINKS para compartir en redes sociales se incluyen. Este campo debe ser una cadena de ID’s separados por comas, según la siguiente referencia:
* ID 1: Facebook
* ID 2: Twitter
* ID 3: LinkedIN
* ID 4: Google +
* ID 5: Pinterest
Nota: En caso de no desear incorporar ningún ícono para compartir en redes sociales, este campo deberá permanecer VACIO.
- Testing: Propiedad para determinar si el envío es de Testing o Real. Valores posibles: true o false.
- SendGoogleAnalyticsData: Propiedad para determinar si el envío incluye automáticamente los parámetros de identificación de campañas para Google Analytics. Valores posibles: true o false.

Respuesta a la Petición -> Resultados


Objeto con la siguiente estructura (JSON) ->
StatusCode: Código del Resultado de la Operación
Message: Texto del Resultado de la operación
MessageDetail: Detalles del mensaje de error cuando se produce
Data: Información adicional

Listado de Códigos de Respuesta



(1) Configuration Created: La Configuración de Envío ha sido creada y aprobada en forma satisfactoria.
(501) Template not found: No se ha encontrado la plantilla HTML en la instancia.
(502) User Not Found: El UserName enviado no ha podido ser encontrado entre los usuarios de la instancia.
(503) Campaign Not Found: La campaña enviada no existe.
(504) Campaign is not valid for this User: El usuario enviado no tiene acceso a la campaña solicitada.
(510) Profile/s Not Found: Alguno de los PROFILE_KEY remitidos no existe.
(511) Selected profile/s not compatible with selected Template: Los perfiles remitidos no son compatibles con la pieza enviada. El envío se abortará.
(550) Error General: Se ha producido un error generando la pieza, visualizar los campos Message y MessageDetail para más información.


Ejemplo PHP



require_once('lib/nusoap.php');
date_default_timezone_set('UTC');
$proxyhost = isset($_POST['proxyhost']) ? $_POST['proxyhost'] : '';
$proxyport = isset($_POST['proxyport']) ? $_POST['proxyport'] : '';
$proxyusername = isset($_POST['proxyusername']) ? $_POST['proxyusername'] : '';
$proxypassword = isset($_POST['proxypassword']) ? $_POST['proxypassword'] : '';
$useCURL = isset($_POST['usecurl']) ? $_POST['usecurl'] : '0';
$client = new nusoap_client('http://domain.icommarketing.com/Deliveries.asmx?WSDL','wsdl','','','','');
$err = $client->getError();
if ($err) {
echo '<h2>Constructor error</h2><pre>' . $err . '</pre>';
exit();
}
$client->setUseCurl($useCURL);
$html = 'HTML';
$html = utf8_decode($html);
$param = Array(
"ApiKey"=>"API_KEY",
"UserName"=>"UserName",
"Campaign"=>"Campaign Name",
"NewsletterName"=>"Newsletter Name",
"Content"=>$html,
"PlainText"=>"test",
"FromMail"=>"newsletter@dominionews.com",
"FromName"=>"FromName",
"Subject"=>"Subject",
"ReplyMail"=>" newsletter-reply@dominionews.com ",
"Profiles"=>"PROFILE_KEY1, PROFILE_KEY1",
"StartDate"=>"2014-06-06T17:30:00.000",
"ViralMarketing"=>"true",
"SocialNetworks"=>"1,2,3,4,5",
"Testing"=>"false",
"PreHeader"=>"PreHeader",
"SendGoogleAnalyticsData"=>"true"
);
$result = $client->call('CreateConfiguration',$param,",",false,true);
// Check for a fault
if ($client->fault) {
echo '<h2>Fault</h2><pre>';
print_r($result);
echo '</pre>';
} else {
// Check for errors
$err = $client->getError();
if ($err) {
// Display the error
echo '<h2>Error</h2><pre>' . $err . '</pre>';
} else {
echo '<h2>Result</h2><pre>';
$auxresponse = json_decode($client->responseData);
echo '<pre>StatusCode' . $auxresponse->{'StatusCode'} . '</pre>';
echo '<pre>Message' . $auxresponse->{'Message'} . '</pre>';
echo '<pre>MessageDetail' . $auxresponse->{'MessageDetail'} . '</pre>';
echo '<pre>Data' . $auxresponse->{'Data'} . '</pre>'; }

}



Crear Envío c/News Pre-existente


Permite disparar un nuevo envío desde la instancia, utilizando una pieza previamente creada.

Petición



URL


http://dominioplataforma.icommarketing.com/Deliveries.asmx?WSDL
*dominioplataforma debe ser reemplazado por la URL de la instancia

WebService


CreateConfigurationWithExistingNews

Parámetros de la Petición



- ApiKey: Key correspondiente a la instancia (Obtener desde el módulo de configuración de la instancia)
- UserName: Nombre del usuario de acceso a la plataforma
- Campaign: Nombre de la campaña en la cual generar la pieza
- NewsletterName: Nombre de la pieza dentro de la plataforma
- FromMail: Dirección de Correo Remitente (debe existir en la lista de direcciones de la plataforma)
- FromName: Nombre del Remitente
- ReplyMail: Dirección de Correo de Respuesta (debe existir en la lista de direcciones de la plataforma)
- Subject: Asunto del Correo
- PreHeader: PreHeader del Correo (información adicional al Subject que permiten algunos programas de correo)
- Profiles: Lista separada por comas de los PROFILE_KEY a asociar al envío (obtener los PROFILE_KEY desde la pantalla de PROFILES en la plataforma).
- StartDate: Fecha y Hora de Programación del Envío. El formato debe ser YYYY-MM-DDTHH24:MI:SS.
- ViralMarketing: Propiedad para determinar si se desea incluir el LINK para que el receptor pueda reenviar a un amigo el Newsletter. Valores posibles: true o false.
- SocialNetworks: Propiedad para determinar QUE LINKS para compartir en redes sociales se incluyen. Este campo debe ser una cadena de ID’s separados
por comas, según la siguiente referencia:
* ID 1: Facebook
* ID 2: Twitter
* ID 3: LinkedIN
* ID 4: Google +
* ID 5: Pinterest
- Nota: En caso de no desear incorporar ningún ícono para compartir en redes sociales, este campo deberá permanecer VACIO.
- Testing: Propiedad para determinar si el envío es de Testing o Real. Valores posibles: true o false.
- SendGoogleAnalyticsData: Propiedad para determinar si el envío incluye automáticamente los parámetros de identificación de campañas para Google
Analytics. Valores posibles: true o false.

Respuesta a la Petición -> Resultados


Objeto con la siguiente estructura (JSON) ->

StatusCode: Código del Resultado de la Operación
Message: Texto del Resultado de la operación
MessageDetail: Detalles del mensaje de error cuando se produce
Data: Información adicional

Listado de códigos de respuesta



(1) Configuration Created: La Configuración de Envío ha sido creada y aprobada en forma satisfactoria.
(502) User Not Found: El UserName enviado no ha podido ser encontrado entre los usuarios de la instancia.
(503) Campaign Not Found: La campaña enviada no existe.
(504) Campaign is not valid for this User: El usuario enviado no tiene acceso a la campaña solicitada.
(505) NewsletterName could not be found: No se ha encontrado el newsletter solicitado para asociar al envío.
(510) Profile/s Not Found: Alguno de los PROFILE_KEY remitidos no existe.
(550) Error General: Se ha producido un error generando la pieza, visualizar los campos Message y MessageDetail para más información.

Ejemplo PHP



require_once('lib/nusoap.php');
date_default_timezone_set('UTC');
$proxyhost = isset($_POST['proxyhost']) ? $_POST['proxyhost'] : '';
$proxyport = isset($_POST['proxyport']) ? $_POST['proxyport'] : '';
$proxyusername = isset($_POST['proxyusername']) ? $_POST['proxyusername'] : '';
$proxypassword = isset($_POST['proxypassword']) ? $_POST['proxypassword'] : '';
$useCURL = isset($_POST['usecurl']) ? $_POST['usecurl'] : '0';
$client = new nusoap_client('http://domain.icommarketing.com/Deliveries.asmx?WSDL','wsdl','','','','');
$err = $client->getError();
if ($err) {
echo '<h2>Constructor error</h2><pre>' . $err . '</pre>';
exit();
}
$client->setUseCurl($useCURL);
$html = 'HTML';
$html = utf8_decode($html);
$param = Array(
"ApiKey"=>"API_KEY",
"UserName"=>"UserName",
"Campaign"=>"Campaign Name",
"NewsletterName"=>"Newsletter Name",
"FromMail"=>"newsletter@dominionews.com",
"FromName"=>"FromName",
"Subject"=>"Subject",
"ReplyMail"=>" newsletter-reply@dominionews.com ",
"Profiles"=>"PROFILE_KEY1, PROFILE_KEY1",
"StartDate"=>"2014-06-06T17:30:00.000",
"ViralMarketing"=>"true",
"SocialNetworks"=>"1,2,3,4,5",
"Testing"=>"false",
"PreHeader"=>"PreHeader",
"SendGoogleAnalyticsData"=>"true"
);
$result = $client->call('CreateConfigurationWithExistingNews',$param,",",false,true);
// Check for a fault
if ($client->fault) {
echo '<h2>Fault</h2><pre>';
print_r($result);
echo '</pre>';
} else {
// Check for errors
$err = $client->getError();
if ($err) {
// Display the error
echo '<h2>Error</h2><pre>' . $err . '</pre>';
} else {
echo '<h2>Result</h2><pre>';
$auxresponse = json_decode($client->responseData);
echo '<pre>StatusCode' . $auxresponse->{'StatusCode'} . '</pre>';
echo '<pre>Message' . $auxresponse->{'Message'} . '</pre>';
echo '<pre>MessageDetail' . $auxresponse->{'MessageDetail'} . '</pre>';
echo '<pre>Data' . $auxresponse->{'Data'} . '</pre>'; }

}

Actualizado el: 02/02/2024

¿Este artículo te resultó útil?

Comparte tu opinión

Cancelar

¡Gracias!