ExactTarget SOAP Request returns Fault in Response

POSTMAN is not sending any headers with the SOAP Packet. Try adding this to test:

POST https://webservice.exacttarget.com/Service.asmx HTTP/1.1
Accept-Encoding: gzip,deflate
Content-Type: text/xml;charset=UTF-8
SOAPAction: "Create"
Content-Length: 1925
Host: webservice.exacttarget.com
Connection: Keep-Alive

ALSO during my testing of your packet I found that this:

<IsHTMLPaste>True</IsHTMLPaste>

Should be

<IsHTMLPaste>true</IsHTMLPaste>

Hope this helps you.


The action can be specified 2 different ways: in the header of the SOAP envelope or in the HTTP header.

If you want to pass it in the SOAP header, you will need to include the Action/MessageID/ReplyTo/To tags like this example:

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
   <soap:Header>
      <wsa:Action>Create</wsa:Action>
      <wsa:MessageID>urn:uuid:491bf8a1-ac2b-4fe4-9f1c-56e45c9e497a</wsa:MessageID>
      <wsa:ReplyTo>
         <wsa:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</wsa:Address>
      </wsa:ReplyTo>
      <wsa:To>https://webservice.exacttarget.com/Service.asmx</wsa:To>
      <wsse:Security soap:mustUnderstand="1">
         <wsse:UsernameToken wsu:Id="SecurityToken-6421ac0b-a454-42a3-99f7-a77ace024446">
            <wsse:Username>ccc</wsse:Username>
            <wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">ccc</wsse:Password>
         </wsse:UsernameToken>
      </wsse:Security>
   </soap:Header>
   <soap:Body>
      <CreateRequest xmlns="http://exacttarget.com/wsdl/partnerAPI">
         <!-- Removed for example -->
      </CreateRequest>
   </soap:Body>
</soap:Envelope>

Alternatively, it can be passed in the HTTP Header, an example working header for a Create call looks like:

POST https://webservice.exacttarget.com/Service.asmx HTTP/1.1
Accept-Encoding: gzip,deflate
Content-Type: text/xml;charset=UTF-8
SOAPAction: "Create"
Content-Length: 1925
Host: webservice.exacttarget.com
Connection: Keep-Alive

I would recommend checking out SoapUI(www.soapui.org) as it makes testing SOAP envelopes a bit easier as it will automatically build out the HTTP header, also provides formatting a validation based on the WSDL.