Articles on: Developers

WDSL guide parts generation and shipments

This module includes all the services required for the creation of Parts and/or Shipments.


Create Part


Allows you to generate a new Newsletter (Part) in the system.


Petition


URL:


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


*platformdomain must be replaced by the URL of the instance



WebService:


CreateHTML



Request Parameters


- ApiKey: Key corresponding to the instance (Obtain from the instance configuration module)- UserName: Platform access user name- Campaign: Name of the campaign in which to generate the piece- NewsletterName: Name of the piece to generate- PlainText: Plain text of the piece- Content: HTML content of the piece



Request Response -> Results


Object with the following structure (JSON) ->

* StatusCode: Operation Result Code* Message: Text of the result of the operation* MessageDetail: Details of the error message when it occurs* Data: Additional information


List of Response Codes


(1) Newsletter Created: The Newsletter has been created and approved satisfactorily.(501) Template not found: The HTML template was not found in the instance.(502) User Not Found: The UserName sent could not be found among the users of the instance.(503) Campaign Not Found: The sent campaign does not exist.(504) Campaign is not valid for this User: The sent user does not have access to the requested campaign.(505) Content or Plain Text are empty: The content or plain text of the request is empty.(550) General Error: An error has occurred while generating the part, view the Message and MessageDetail fields for more information.**(512) Invalid SocialNetworks Field Value: The content of the SocialNetworks field is invalid. You must send a comma-delimited string that contains the IDs of the social networks that you want to include in the communication.


PHP Example


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>'; }

}


Create Shipment


It allows triggering a new delivery from the instance, detailing the content to be sent and the audience to which it will be addressed.


Petition


URL
http://dominioplataforma.icommarketing.com/Deliveries.asmx?WSDL

*platformdomain must be replaced by the URL of the instance


WebService
CreateConfiguration


Request Parameters


- ApiKey: Key corresponding to the instance (Obtain from the instance configuration module)- UserName: Platform access user name- Campaign: Name of the campaign in which to generate the piece- NewsletterName: Name of the piece to generate- PlainText: Plain text of the piece- Content: HTML content of the piece- FromMail: Sender Email Address (must exist in the platform's address list)- FromName: Sender's Name- ReplyMail: Reply Mail Address (must exist in the platform's address list)- Subject: Mail Subject- PreHeader: Mail PreHeader (additional information to the Subject that some mail programs allow)- Profiles: Comma-separated list of the PROFILE_KEYs to be associated with the shipment (obtain the PROFILE_KEYs from the PROFILES screen on the platform).- StartDate: Date and Time of Scheduling the Shipment. The format must be YYYY-MM-DDTHH24:MI:SS.- ViralMarketing: Property to determine if you want to include the LINK so that the recipient can forward the Newsletter to a friend. Possible values: true or false.- SocialNetworks: Property to determine WHICH LINKS to share on social networks are included. This field must be a string of IDs separated by commas, according to the following reference:* ID 1: Facebook* ID 2: Twitter* ID 3: LinkedIN* ID 4: Google +* ID 5: PinterestNote: If you do not wish to incorporate any icon to share on social networks, this field must remain EMPTY.- Testing: Property to determine if the shipment is from Testing or Real. Possible values: true or false.- SendGoogleAnalyticsData: Property to determine if the sending automatically includes the campaign identification parameters for Google Analytics. Possible values: true or false.


Request Response -> Results


Object with the following structure (JSON) ->

StatusCode: Operation Result CodeMessage: Text of the result of the operationMessageDetail: Details of the error message when it occursData: Additional information


List of Response Codes


(1) Configuration Created: The Shipping Configuration has been successfully created and approved.(501) Template not found: The HTML template was not found in the instance.(502) User Not Found: The UserName sent could not be found among the users of the instance.(503) Campaign Not Found: The sent campaign does not exist.(504) Campaign is not valid for this User: The sent user does not have access to the requested campaign.(510) Profile/s Not Found: Any of the PROFILE_KEYs sent does not exist.(511) Selected profile/s not compatible with selected Template: The submitted profiles are not compatible with the submitted part. The shipment will be aborted.(550) General Error: An error has occurred while generating the part, view the Message and MessageDetail fields for more information.



PHP Example


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>'; }

}


Create Submission w/Pre-existing News

Allows you to trigger a new shipment from the instance, using a previously created part.


Petition


URL


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

*platformdomain must be replaced by the URL of the instance


WebService


CreateConfigurationWithExistingNews


Request Parameters


- ApiKey: Key corresponding to the instance (Obtain from the instance configuration module)- UserName: Platform access user name- Campaign: Name of the campaign in which to generate the piece- NewsletterName: Name of the piece to generate- FromMail: Sender Email Address (must exist in the platform's address list)- FromName: Sender's Name- ReplyMail: Reply Mail Address (must exist in the platform's address list)- Subject: Mail Subject- PreHeader: Mail PreHeader (additional information to the Subject that some mail programs allow)- Profiles: Comma-separated list of the PROFILE_KEYs to be associated with the shipment (obtain the PROFILE_KEYs from the PROFILES screen on the platform).- StartDate: Date and Time of Scheduling the Shipment. The format must be YYYY-MM-DDTHH24:MI:SS.- ViralMarketing: Property to determine if you want to include the LINK so that the recipient can forward the Newsletter to a friend. Possible values: true or false.- SocialNetworks: Property to determine WHICH LINKS to share on social networks are included. This field must be a string of separate ID'sby commas, according to the following reference:* ID 1: Facebook* ID 2: Twitter* ID 3: LinkedIN* ID 4: Google +* ID 5: Pinterest- Note: If you do not wish to incorporate any icon to share on social networks, this field must remain EMPTY.- Testing: Property to determine if the shipment is from Testing or Real. Possible values: true or false.- SendGoogleAnalyticsData: Property to determine if the sending automatically includes the campaign identification parameters for GoogleAnalytics. Possible values: true or false.


Request Response -> Results


Object with the following structure (JSON) ->


StatusCode: Operation Result CodeMessage: Text of the result of the operationMessageDetail: Details of the error message when it occursData: Additional information


List of response codes


(1) Configuration Created: The Shipping Configuration has been successfully created and approved.(502) User Not Found: The UserName sent could not be found among the users of the instance.(503) Campaign Not Found: The sent campaign does not exist.(504) Campaign is not valid for this User: The sent user does not have access to the requested campaign.(505) NewsletterName could not be found: The newsletter requested to associate with the delivery has not been found.(510) Profile/s Not Found: Any of the PROFILE_KEYs sent does not exist.(550) General Error: An error has occurred while generating the part, view the Message and MessageDetail fields for more information.


PHP Example


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>'; }

}```

Updated on: 02/02/2024

Was this article helpful?

Share your feedback

Cancel

Thank you!