I'm trying to figure out how to use the ExactTarget API to redirect to a custom unsubscribe page when a use clicks the unsubscribe button at the bottom of an HTML email. So far, in ExactTarget's documentation, I found something about custom "profile centers" but since I'm new to ExactTarget, I wasn't sure if this is what I was looking for. So the bottom line is that I would like to create a branded landing page on a Joomla-powered website that users get directed to when they click the unsubscribe button on the company emails. All this needs to connect to ExactTarget as well. In the documentation, ExactTarget talks about SOAP API and AMPscript and all this stuff I've never heard of. Is all this necessary or can a custom unsubscribe page just be written in PHP?
Exacttarget API Custom Unsubscribe Page
4.4k views Asked by Rambo8000 AtThere are 2 answers
You do not need to use ET/Salesforce.com Marketing Cloud landing pages at all, though it does make it easier in some ways since you can use AMP Script and all the recipient and send-time data is already in available as constants, but honestly, neither of those should be non-starters.
To use a custom profile center outside of ET, you will need to interact with the api. The SDKs available at code.exacttarget.com are propbably your best best since they are constantly being updated and utilize the FUEL (REST) API whenever possible (the REST api is much younger and not as robust yet) and the SOAP Web-Service otherwise.
When you are handling unsubscribe requests, you don't want to just update the Subscriber's status to "Unsubscribed", though. While that will achieve the result of unsubscribing the person, it will not register the Unsubscribe "Tracking Event" which is what shows up in the email tracking. Instead use the Execute method on a LogUnsubEvent object. (Detailed documentation here)
You will need to pass some values from ET for this to work, but this is easily accomplished via url query parameters. The main ET data points you will need are SubscriberID, SubscriberKey, JobId, BatchID, ListID, Email Address, and optionally a Reason. (Full list of the available ET System personalization fields available in emails here.)
Once you get your profile center/unsub landing page up and running and have confirmed it is functioning as expected, you can have ET change the values populated by the %%profile_center_url%% and %%unsub_center_url%% Personalization Strings so that you can easily apply the custom profile center across your account.
I realize this is a bit after the original question was asked, but this is a very common scenario that a lot of Salesforce.com Marketing Cloud users have.
Feel free to message me with any other ET questions, platform or api related.
Honestly, your best bet for a quick, no mess user friendly solution is to use their Smart Capture capabilities on an ET landing page - unfortunately this means it has to be hosted via Exact Target though, and not your web host. Custom Unsub page with Smart Capture
If you just are looking to get it branded, talk to Global Support or your Account Executive and see because I believe they allow some customization options (depending on your contract) to include your logo, and color scheme, etc.
I am not entirely sure it is a good idea to host an unsub page without using ET's landing page functionality(AMPScript), but if you were to create a purely custom profile center page, you need to build out a fairly intense back end with API calls connecting your server with the Exact Target server. I am sure you COULD use PHP to compile the data and then use a SOAP call of the PHP info to ET to update the data extension or list, etc. Will likely require at least Automation Studio on each account this will affect. ET Documents on Custom Profile Center
But you will also need to work with global support to change your default profile page off of what currently exists to your new page so the personalization string fills correctly when inserted.