What's the best way to add unsubscribe online (not in e-mail)?

Options

We recently received a couple e-mails from concerned users about e-news unsubscribes, but doing so from the site not via the e-newsletter. Obviously, all they have to do is log in to do this, but as it stands, getting there isn't exactly a direct route. I am working on correcting this.

Can someone please provide the best way to add in an unsubscribe--one that would be easy for less-than-savvy users to easily grasp (which accounts for a lot of our users)? I've seen where surveys are embedded (enter e-mail > click "unsubscribe") on the page, but do those update the C360 record automatically?

I'm more or less content with the Login > Edit My Profile (ConsProfileUser) pathway, but there have been, again, a couple people expressing concern. I would at least like to entertain the possibility of making it a little easier for some users.

This is the link we use in our e-mails, and it works well; it's easy for users to figure out (see attached). I would like to have something like this, but when you go to this link by itself, it redirects to the home page.

http://www.chicagosfoodbank.org/site/CO

Is there anything similar to this?

Thanks!

Tagged:

Comments

  • It is not possible to link directly to the Unsubscribe page outside of an Email, because the URL is dynamically generated each time you send an Email. Also, you should note that embedding a Survey won't really meet your need -- when a logged in user is opted in to receive email, Convio removes the opt-in checkbox from forms like Survey, so the user would not even see an option to opt-out. Your best bet would be to construct a form using the Constituent API. With that, you could provide logged in users a simple way to unsubscribe. Here's an example you can drop in a PageBuilder page:



    ]x::
    <!--User is not logged in-->
    <p>You must be <a href="UserLogin?NEXTURL=]]]">logged in</a> to update your e-mail preferences.</p>
    ::
    <!--User is logged in-->
    ]x::
    <!--Page is in error, prompt the user to login to continue-->
    <p>You must be <a href="UserLogin?NEXTURL=]]]">logged in</a> to update your e-mail preferences.</p>
    ::
    ]x::
    <!--User has successfully updated their preferences-->
    <p>Your e-mail preferences have been saved.</p>
    ::
    <!--User has not yet updated their preferences-->
    <form method="post" action="CRConsAPI">
    <input type="hidden" name="method" value="createOrUpdate" />
    <input type="hidden" name="api_key" value="]" />
    <input type="hidden" name="v" value="1.0" />
    <input type="hidden" name="success_redirect" value="http://]]PageServer?pagename=]&pg=success" />
    <input type="hidden" name="error_redirect" value="http://]]PageServer?pagename=]&pg=error" />
    <input type="hidden" name="cons_id" value="]" />
    <input type="hidden" name="auth" value="]" />
    <p><label for="accepts-email">E-mail preferences:</label><br />
    <select name="email.accepts_email" id="accepts-email">
    <option value="true" selected="selected">I would like to receive e-mail from ]</option>
    <option value="false">Stop sending all e-mail from ] to ]</option>
    </select></p>
    <p><input type="submit" value="Submit" /></p>
    </form>
    ]]]]
    ]]

    Note: For this to work, the Site Option CONVIO_API_KEY must have some value.

  • Noah Cooper:

    It is not possible to link directly to the Unsubscribe page outside of an Email, because the URL is dynamically generated each time you send an Email. Also, you should note that embedding a Survey won't really meet your need -- when a logged in user is opted in to receive email, Convio removes the opt-in checkbox from forms like Survey, so the user would not even see an option to opt-out. Your best bet would be to construct a form using the Constituent API. With that, you could provide logged in users a simple way to unsubscribe. Here's an example you can drop in a PageBuilder page:



    ]x::
    <!--User is not logged in-->
    <p>You must be <a href="UserLogin?NEXTURL=]]]">logged in</a> to update your e-mail preferences.</p>
    ::
    <!--User is logged in-->
    ]x::
    <!--Page is in error, prompt the user to login to continue-->
    <p>You must be <a href="UserLogin?NEXTURL=]]]">logged in</a> to update your e-mail preferences.</p>
    ::
    ]x::
    <!--User has successfully updated their preferences-->
    <p>Your e-mail preferences have been saved.</p>
    ::
    <!--User has not yet updated their preferences-->
    <form method="post" action="CRConsAPI">
    <input type="hidden" name="method" value="createOrUpdate" />
    <input type="hidden" name="api_key" value="]" />
    <input type="hidden" name="v" value="1.0" />
    <input type="hidden" name="success_redirect" value="http://]]PageServer?pagename=]&pg=success" />
    <input type="hidden" name="error_redirect" value="http://]]PageServer?pagename=]&pg=error" />
    <input type="hidden" name="cons_id" value="]" />
    <input type="hidden" name="auth" value="]" />
    <p><label for="accepts-email">E-mail preferences:</label><br />
    <select name="email.accepts_email" id="accepts-email">
    <option value="true" selected="selected">I would like to receive e-mail from ]</option>
    <option value="false">Stop sending all e-mail from ] to ]</option>
    </select></p>
    <p><input type="submit" value="Submit" /></p>
    </form>
    ]]]]
    ]]

    Note: For this to work, the Site Option CONVIO_API_KEY must have some value.


    Note: For this to work, the Site Option CONVIO_API_KEY must have some value.

    Wow! Thanks for this. I'll check it out. Just to clarify, it just needs any value, right? We indeed have a value.

  • jdp :

    Note: For this to work, the Site Option CONVIO_API_KEY must have some value.

    Wow! Thanks for this. I'll check it out. Just to clarify, it just needs any value, right? We indeed have a value.

    That's correct.

  • Noah Cooper:

    That's correct.

    Hi Noah,

    I tried this here: http://www.2harvest.org/site/PageServer?pagename=email_preferences, and when I try to unsub it just refreshes the page/sends me to http://www.2harvest.org/site/PageServer?pagename=email_preferences&pg=error.

    I just added an arbitrary value in the API key field for the first time, and created an API admin account...

    What am I doing wrong? I copied your exact code.

  • Lindsi Gish:

    Hi Noah,

    I tried this here: http://www.2harvest.org/site/PageServer?pagename=email_preferences, and when I try to unsub it just refreshes the page/sends me to http://www.2harvest.org/site/PageServer?pagename=email_preferences&pg=error.

    I just added an arbitrary value in the API key field for the first time, and created an API admin account...

    What am I doing wrong? I copied your exact code.

    So, this is weird. I realized the WYSIWYG turned the & to &amp; (in &autologin) which was messing with the auto-login functionality and thus the unsub...so now it looks like it's signing me in correctly but when I select the unsubscribe option in the drop-down, it throws the error asking me to log in again. I'm a complete API newbie and tend to overlook details sometimes, so maybe other eyes will help.

    Also, when you log in and go to that page without clicking the link in the email, the unsub works perfectly fine. So I'm not sure if the autologin function in the unsub link in the email isn't working properly or what. This is the link in the email -> http://www.2harvest.org/site/PageServer?pagename=email_preferences&autologin=true

    And this is the page -> http://www.2harvest.org/site/PageServer?pagename=email_preferences

  • Lindsi Gish:

    So, this is weird. I realized the WYSIWYG turned the & to &amp; (in &autologin) which was messing with the auto-login functionality and thus the unsub...so now it looks like it's signing me in correctly but when I select the unsubscribe option in the drop-down, it throws the error asking me to log in again. I'm a complete API newbie and tend to overlook details sometimes, so maybe other eyes will help.

    Also, when you log in and go to that page without clicking the link in the email, the unsub works perfectly fine. So I'm not sure if the autologin function in the unsub link in the email isn't working properly or what. This is the link in the email -> http://www.2harvest.org/site/PageServer?pagename=email_preferences&autologin=true

    And this is the page -> http://www.2harvest.org/site/PageServer?pagename=email_preferences

    Hey Lindsi,

    I made a small change to the form on your page (changed the form action from https://]]CRConsAPI to CRConsAPI). This seems to have resolved the issue. Can you test again and see if it's working for you?

  • Noah Cooper:

    Hey Lindsi,

    I made a small change to the form on your page (changed the form action from https://]]CRConsAPI to CRConsAPI). This seems to have resolved the issue. Can you test again and see if it's working for you?

    Still doesn't seem to be working...I'm going to temporarily add you to the test group and send you the quick email and see if it works on your end.

    Note: I had to re-add the survey embed at the top of the page...looks like it accidentally got deleted when you edited. I'm assuming that won't mess anything up, but let me know if it does.

  • Lindsi Gish:

    Still doesn't seem to be working...I'm going to temporarily add you to the test group and send you the quick email and see if it works on your end.

    Note: I had to re-add the survey embed at the top of the page...looks like it accidentally got deleted when you edited. I'm assuming that won't mess anything up, but let me know if it does.

    For others' benefit -- the issue in Lindsi's case was that the Constituent API update method does not allow a constituent to update their record if they are logged in with an autologin cookie. Constituents can only update their record if they are logged in by entering a username and password. The example form outlined here cannot be used in an Email message as an autologin link. I've updated the code above so that an error message is displayed prompting constituents to login if they attempt to update their profile while logged in with a cookie.

  • Noah Cooper:

    For others' benefit -- the issue in Lindsi's case was that the Constituent API update method does not allow a constituent to update their record if they are logged in with an autologin cookie. Constituents can only update their record if they are logged in by entering a username and password. The example form outlined here cannot be used in an Email message as an autologin link. I've updated the code above so that an error message is displayed prompting constituents to login if they attempt to update their profile while logged in with a cookie.

    Couldn't a Convio user allow an unsubscribing "non-ID" link to be used on pages or emails to unsubscribe? 

    When going to: http://my.care.org/site/CO?i=&cid=0, it looks like the process of unsubscribing is as simple as taking in an email address. Does it actually work?

    On trying it, I notice it gives a message of 'removing your email within 24 hrs'  and that part makes sense, but...

    .

    ..where does the request to remove the email go, assuming that users have entered an email that is already "in the books"?  And what happens when they enter an email that's never been signed up? They still get the same 'removing email' message....

    Thanks for your replies

Categories