Generating personal links "on the fly" | XM Community
Skip to main content

I have a use case where we have lots of company-level information (e.g. street address), but don't know who exactly at each company will be filling out the survey. Our process will be to email or call people at each company, ask them to whom we should send the survey, and then send the survey to that person via email.
We want to send them personal links. The process to generate personal links requires a contact list as an input.  All contact lists must have an email address for each contact.
I want to minimize the turnaround between us learning the email address we should send any one company's survey to, and that person getting their personal link.
A few options I'm considering:
*Upload a contact list with "spoof" email addresses for every company, and use that to generate personal links
*Investigate whether there's a way to use the API to generate personal links one at a time?
*Use an anonymous link and string together URL parameters to simulate the effect of personal links. I'm a bit leery of this, because our embedded data payload is long/complicated enough to be a bit fragile. (E.g. I suspect we might be sending enough data to put us close to the 2083 character limit for URL length.)
Does anyone have experience with a similar use case? Any opinions on what the best practice is here?

Create a survey which will ask the email address of a person to whom we want to send the survey. Then in the same survey before end of survey use two API

  1. https://api.qualtrics.com/reference#create-contact-in-mailinglist - This will create a contact in our mailing list and return contact ID which will be used in second API

  2. https://api.qualtrics.com/reference#distribution-create-1 - (Obviously, we will put our actual survey's survey ID for distribution)


Has the API changed since this answer was put here? I don't see any way to create a personal link for a single contact ID, which is what our current requirements are.


PerficientDex you may refer to this API instead. This will generate an individual link.
https://api.qualtrics.com/sdks/b3A6NjA5NzA-create-distribution#generate-distribution-links
And for you to get the URL link, used this API.
https://api.qualtrics.com/sdks/b3A6NjA5NzA-create-distribution#retrieve-generated-links


Looks like the APIs changed once more. I achieved this by doing:

  1. Creating a mailing list in my XM Direcory

  2. Using https://api.qualtrics.com/fc43c25b3f3c3-create-contact-in-mailing-list to add the contact to the mailing list.

  3. Create a distribution with a
    sendDate
    of sometime way in the future with this API: https://api.qualtrics.com/573e3f0a94888-create-distribution (PS it looks like the "Generate Distribution Links" and "Retrieve Generated Links" variations of the API are broken/deprecated as they no longer work. The documentation on them is poor as well).

  4. List all the distributions links https://api.qualtrics.com/437447486af95-list-distribution-links and filter by the firstName, lastName, and email. Also take the last one in case there are two contacts with the same name/email.

I had to use scripting languages (R in my case, but Python would have worked) as I couldn't get the APIs to work as webservices in my survey.


Leave a Reply