SubscribeFormPassThrough
The SubscribeFormPassThrough mimics the submission of a Listrak Subscribe Form.
It allows users to subscribe/update individual contacts on their lists and trigger welcome messages and double-opt-in messages for that specific contact.
SubscribeFormPassThrough method takes in a WSContact object containing the contact’s email address, ListID, profile data (as a list of AttributeID and Value pairs), and a comma-delimited list of ExternalEventIDs.
The AttributeIDs, ExternalEventIDs, and ListIDs can be found in the application’s “API ID Information” page under the “Support & Information” tab.
If the specified email address is already subscribed to the provided ListID, that contact’s profile information is updated, and the specified external events (if any) are raised for that contact.
If the contact is not already subscribed to the provided ListID, the contact is subscribed with the given profile data and the external events (if any) are raised for that contact.
The SubscribeFormPassThrough method returns one of the following results:
- ContactSubscribed: The contact was subscribed to the list.
- ContactCurrentlyBanned: The contact is banned.
- ContactCurrentlySuppressed: The contact is subscribed to a suppression list.
- ContactCurrentlySubscribed: The contact is already subscried to the list.
- ContactCurrentlyUnsubscribed: The contact is unsubscribed from the list.
- ContactCurrentlyPendingConfirmation: The contact has been sent a subscription confirmation email and has not yet responded.
- ContactConfirmationRequested: The contact will be subscribed pending subscription confirmation.
- InvalidEmailAddress: The email address provided for the contact is invalid.
- ContactPreviouslySubscribedProfileUpdated: The contact is already subscribed to the list. The contact's profile data has been updated.
SOAP 1.1 Request
The following is a sample SOAP 1.1 request and response. The placeholders shown need to be replaced with actual values.
POST /v31/IntegrationService.asmx HTTP/1.1 Host: webservices.listrak.com Content-Type: text/xml; charset=utf-8 Content-Length: length SOAPAction: "http://webservices.listrak.com/v31/SubscribeFormPassThrough" <?xml version="1.0" encoding="utf-8"?> <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Header> <WSUser xmlns="http://webservices.listrak.com/v31/"> <UserName>string</UserName> <Password>string</Password> </WSUser> </soap:Header> <soap:Body> <SubscribeFormPassThrough xmlns="http://webservices.listrak.com/v31/"> <WSContact> <EmailAddress>string</EmailAddress> <ListID>int</ListID> <ContactProfileAttribute> <AttributeID>int</AttributeID> <Value>string</Value> </ContactProfileAttribute> <ContactProfileAttribute> <AttributeID>int</AttributeID> <Value>string</Value> </ContactProfileAttribute> </WSContact> <ExternalEventIDs>string</ExternalEventIDs> <SendDoubleOptIn>boolean</SendDoubleOptIn> <SendWelcomeMessage>boolean</SendWelcomeMessage> </SubscribeFormPassThrough> </soap:Body> </soap:Envelope>
SOAP 1.1 Response
HTTP/1.1 200 OK Content-Type: text/xml; charset=utf-8 Content-Length: length <?xml version="1.0" encoding="utf-8"?> <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <SubscribeFormPassThroughResponse xmlns="http://webservices.listrak.com/v31/"> <SubscribeFormPassThroughResult>ContactSubscribed or ContactCurrentlyBanned or ContactCurrentlySuppressed or ContactCurrentlySubscribed or ContactCurrentlyUnsubscribed or ContactCurrentlyPendingConfirmation or ContactConfirmationRequested or InvalidEmailAddress or ContactPreviouslySubscribedProfileUpdated</SubscribeFormPassThroughResult> </SubscribeFormPassThroughResponse> </soap:Body> </soap:Envelope>
SOAP 1.2 Request
The following is a sample SOAP 1.2 request and response. The placeholders shown need to be replaced with actual values.
POST /v31/IntegrationService.asmx HTTP/1.1 Host: webservices.listrak.com Content-Type: application/soap+xml; charset=utf-8 Content-Length: length <?xml version="1.0" encoding="utf-8"?> <soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope"> <soap12:Header> <WSUser xmlns="http://webservices.listrak.com/v31/"> <UserName>string</UserName> <Password>string</Password> </WSUser> </soap12:Header> <soap12:Body> <SubscribeFormPassThrough xmlns="http://webservices.listrak.com/v31/"> <WSContact> <EmailAddress>string</EmailAddress> <ListID>int</ListID> <ContactProfileAttribute> <AttributeID>int</AttributeID> <Value>string</Value> </ContactProfileAttribute> <ContactProfileAttribute> <AttributeID>int</AttributeID> <Value>string</Value> </ContactProfileAttribute> </WSContact> <ExternalEventIDs>string</ExternalEventIDs> <SendDoubleOptIn>boolean</SendDoubleOptIn> <SendWelcomeMessage>boolean</SendWelcomeMessage> </SubscribeFormPassThrough> </soap12:Body> </soap12:Envelope>
SOAP 1.2 Response
HTTP/1.1 200 OK Content-Type: application/soap+xml; charset=utf-8 Content-Length: length <?xml version="1.0" encoding="utf-8"?> <soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope"> <soap12:Body> <SubscribeFormPassThroughResponse xmlns="http://webservices.listrak.com/v31/"> <SubscribeFormPassThroughResult>ContactSubscribed or ContactCurrentlyBanned or ContactCurrentlySuppressed or ContactCurrentlySubscribed or ContactCurrentlyUnsubscribed or ContactCurrentlyPendingConfirmation or ContactConfirmationRequested or InvalidEmailAddress or ContactPreviouslySubscribedProfileUpdated</SubscribeFormPassThroughResult> </SubscribeFormPassThroughResponse> </soap12:Body> </soap12:Envelope>