Quantcast
Channel: Topliners : All Content - All Communities
Viewing all articles
Browse latest Browse all 3423

Eloqua API How To: Create and Send Emails

$
0
0

Have you played with Eloqua’s Email API yet? Eloqua’s SOAP API exposes operations for sending and tracking email messages. It also provides endpoints for creating emails, editing content and configuring details such as the sender and recipient lists. In this post, we’ll demonstrate a very basic use-case that uses this service to create an Email and send it to a list of recipients.


If you're working with Eloqua 10, please see the following post on Sending Emails using the REST API.


Please note that you’ll need to have API access and should be familiar with how to connect with the Eloqua SOAP API. For documentation and additional details please see the Email Service API Overview.

Developers can use this web service to build applications that perform tasks such as displaying, composing and sending emails. As an example, consumers could leverage the API to create their own Eloqua Email Editor.

We’re starting with the basics in this post. The following code sample demonstrates how to create and send an Email via the SOAP API. Please note that you will need to add a service reference to the Email Service WSDL in your application.

Email Service WSDL : https://secure.eloqua.com/API/1.2/EmailService.svc

Sample code c#

    // Instantiate a new instance of the Email client    EmailServiceClient emailClient = new EmailServiceClient();    // Set your API user credentials    emailClient.ClientCredentials.UserName.UserName = @"ClientName\UserName";    emailClient.ClientCredentials.UserName.Password = "xxxxx";    // Set the email details    EmailDetails email = new EmailDetails                                            {                                                BouncebackAddress = "admin@eloqua.com",                                                Name = "Email Service Client - Sample Code",                                                FromAddress = "",                                                FromName = "",                                                ReplyToAddress = "",                                                ReplyToName = "",                                                NeverExpires = true,                                                SendToUnsubscribes = false,                                                HtmlContent = "<html><body></body></html>",                                                TextContent = "",                                                AutoGenerateTextContent = true,                                                Subject = "Email Service Client - Sample Code",                                                Tracked = true,                                                SendHtml = true,                                                HeaderId = 106, // see endpoints for listing Headers                                                FooterId = 3, // see endpoints for listing Footers                                                EncodingId = 1,                                                GroupId = 1,                                            };    try    {        // Invoke a service request to create the Email        email.Id = emailClient.CreateHtmlEmail(email);        // Update the Email's content        email.HtmlContent = "<html><body>Updated Content</body></html>";        // Invoke a service request to update the Email        emailClient.UpdateHtmlEmail(email);    }    catch (Exception ex)    {        Console.WriteLine(ex.Message);    }    // Configure the Email deployment settings    DeploymentSettings settings = new DeploymentSettings                                        {                                            Name = "Deployment Settings - Sample",                                            EmailId = email.Id,                                            AllowResend = false,                                            DistributionListId = 1,                                            NotificationEmailAddress = "fred.sakr@eloqua.com",                                            SignatureRuleId = 3,                                            SendOnBehalfOfUser = "fred.sakr@eloqua.com",                                            AllowSendToBouncebacked = false,                                            AllowSendToUnsubscribed = false,                                            AllowSendToEmailGroupUnsubscribed = false,                                            AllowSendToMasterExcludeList = false,                                        };    try    {        // Deploy the Email        Deployment deploy = emailClient.Deploy(settings);        // Retrieve the state        deploy = emailClient.GetDeployment(deploy.Id);        // Write your own custom code to poll the API and verify the state of the deployment        Console.WriteLine(deploy.State);    }    catch (Exception ex)    {        Console.WriteLine(ex.Message);    }

Viewing all articles
Browse latest Browse all 3423

Trending Articles