using qualtrics as a personalized web service with the Authenticator

Using qualtrics' "autheticator" survey object, it is possible to create a sort of sign-in system for qualtrics that can allow people to engage in tasks requiring multiple visits and various surveys -- for instance, an online, self-paced educational course. Below is a description of the steps I took to get it working.

1) create a panel trigger such that when someone submits a survey, they are automatically added to a panel ("account registration"). 

Check out this page for instructions on how to do that. When making your trigger, ensure that the "email" (or "username") and "password" fields from the account registration suvey are passed to the panel -- this will allow people to log in again later.

2) create a "login" for already-created accounts using an authenticator See qualtrics' authenticator page for more info about the authenticator. Here's a screenshot of my survey flow which shows you how everything is laid out.

The embedded data under the authenticator I obtained by creating a new embedded data block and hitting "Add from panel" (shown boxed in red above) and selecting the appropriate panel (in this case my test panel). This is EXTREMELY IMPORTANT. It gives us access to "TriggerResponseID", which is our unique identifier. Depending on how you set up your system, you may also want to add a person's name or username variables (if you collected them when creating your panel). Useful for personalized greetings!

3) automatically log people in to further authenticators using a unique ID accessible only after logging in.

Survey redirects should be placed in CUSTOM END OF SURVEY MESSAGES. This is critical for the redirect after registering and just (IMO) cleaner in all other cases.

To pass a variable to a new survey using a redirect, simply append "&newEmbeddedDataName=${e://Field/embeddedDataName}" to the end of the url for the survey you're redirecting to. (in our case, we will append &TriggerResponseID=${e://Field/TriggerResponseID}).

To bypass the authenticators, ensure that you have an embedded data field called "TriggerResponseID" OUTSIDE THE AUTHENTICATOR. (note that this is different from the login survey, which should have this variable *inside* the authenticator).
Ensure that your authenticator looks like the image below and uses TriggerResponseID as the authentication variable.


The area circled in red is where the magic happens. For ANY AUTHENTICATION YOU WISH TO BYPASS using the unique identifier, you should put the following in this field:

${e://Field/TriggerResponseID} <script>Qualtrics.SurveyEngine.addOnload(function() { this.clickNextButton();  });</script>

This will fill the field with the unique identifier and automatically advance to the next page -- when I tested it, I couldn't even see it happen.

Also worth noting: In the authenticator options, you can choose to reload a participant's progress (meaning that they can come back to the survey later to finish their work). Qualtrics recommends only having one authenticator in the survey if you're doing this, and disabling the survey-wide save and continue option.

And now you have the building blocks of a log-in system for qualtrics!