Marketing Cloud Engagement for Appexchange API Guide

This guide presents the details needed to use the capabilities of Marketing Cloud Engagement for AppExchange via a SOAP (Simple Object Access Protocol) web service in your business application.

Prerequisites 

To begin to use these capabilities, your account must be fully configured for Marketing Cloud Engagement for AppExchange.

About Marketing Cloud Engagement for AppExchange 

The Marketing Cloud Engagement for AppExchange API enables email to be sent to Salesforce.com reports, campaigns, contacts, or leads using a SOAP web service. The Marketing Cloud Engagement for AppExchange API web service supports many business scenarios. The architecture of the web service allows multiple send requests in a single call. Additionally, a send can consist of many Salesforce entities.

Some use cases for this feature include:

  • A custom landing page that sends an individual confirmation email to a Salesforce.com Lead or Contact
  • A Salesforce.com workflow that sends individual email based on Salesforce.com data events
  • Sending mass email to one or many Salesforce.com Campaigns or Reports on a recurring basis triggered from an external application
  • An application that creates a Marketing Cloud Engagement email based on Salesforce templates and sends the email to Salesforce.com entities.

Accessing the Integration Framework Web Service 

To access Marketing Cloud Engagement for AppExchange web service, contact your Account Executive to configure your account and create a service user. A service user has a combination of user permissions and user settings. A user in your account is given permissions to access the web service and has the API User setting checked. Users who have the API User setting checked aren’t subject to the account’s security settings.

WSDL File 

Use the correct address for your Marketing Cloud Engagement instance and contact your Account Executive if you have any questions regarding which WSDL file to use. This table lists Marketing Cloud Engagement for Appexchange WSDL URLs.

InstanceWSDL URL
S1 Instancehttps://etappx.exacttarget.com/etframeworksf.wsdl
S4 Instancehttps://etappx.s4.exacttarget.com/etframeworksf.wsdl
S6 Instancehttps://etappx.s6.exacttarget.com/etframeworksf.wsdl
S7 Instancehttps://etappx.s7.exacttarget.com/etframeworksf.wsdl

These files define the objects and calls exposed to SOAP clients.

Security 

Authenticating to the Integration Framework requires passing a WS-Security 1.0 security token in the SOAP header.

Developing for the Marketing Cloud Engagement for AppExchange API 

This sample code demonstrates how to send to a single Salesforce Lead.

1<Envelope xmlns="http://schemas.xmlsoap.org/soap/envelope/"
2          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
3  <Header>
4    <fueloauth>YOUR_ACCESS_TOKEN</fueloauth>
5  </Header>
6  <Body>
7    <CreateRequest xmlns="http://exacttarget.com/wsdl/partnerAPI">
8      <Options/>
9      <Objects xsi:type="SalesforceSend">
10        <PartnerKey xsi:nil="true"/>
11        <ObjectID xsi:nil="true"/>
12        <Email>
13          <PartnerKey xsi:nil="true"/>
14          <ID>123456</ID>
15          <ObjectID xsi:nil="true"/>
16        </Email>
17        <FromAddress>jdoe@example.com</FromAddress>
18        <FromName>MAC</FromName>
19        <Targets>
20          <PartnerKey xsi:nil="true"/>
21          <ObjectID>123456789abc</ObjectID>
22          <ObjectType>Lead</ObjectType>
23        </Targets>
24      </Objects>
25    </CreateRequest>
26  </Body>
27</Envelope>