Skip to Content
Technical Articles
Author's profile photo Former Member

Deliver Qualtrics surveys using Conversational AI interfaces

Conversational AI(CAI) is not the new kid on the block anymore and each one of us have engaged with chatbots in one way or the other, either with digital assistants like Alexa, Siri et al. or when we visit different retail websites. In the Gartner hype cycle for Emerging Technologies 2019, CAI however still remained at the peak with continued adoption of this technology by corporates specially in the realm of customer service. With Qualtrics, the same corporates have been collecting the experience data from customers with an aim of transitioning from customer service into the world of customer experience,.

So, how about bringing these two together to deliver a Qualtrics survey through a conversational AI interface. We could engage our users in a feedback session either through a text-based or voice based chatbot through Alexa or closer home SAP Conversational AI.

In this blog post, I am going to take you through how I did this with,

  • Amazon Alexa
  • SAP Conversational AI

What is out of scope in this blog post: 

  • Personalized surveys
  • Proactive remediation based on survey responses.

Now you may say these are super important for creating the ,,holistic” customer experience and I could not agree more. So, I do plan to explore these topics another day through other blog posts.

What is in scope : Technical details of the framework I put together which you can test, explore, derive from and extend for your use cases, to deliver Qualtrics surveys though conversational AI platforms.

Some things to note:

  • Qualtrics has a variety of question types, and the ones that are suited for this type of use case are :
    • Text entry questions.
    • Multiple choice questions.
    • Descriptive text.
  • NPS type of questions are also multiple choice questions. To handle these type of questions in here, I made the assumption that NPS type of questions are multiple choice questions with “two” column labels for the start and end of the scale, and also typically these type of questions begin with “On a scale from

(You can find more details in this Qualtrics Conversational API link)

My very basic survey that I used in both use cases is available here for download. Below you can find a screenshot for reference.

So, lets get started with Qualtrics and Alexa integration:

Here are the steps,

  1. Set up a survey in Qualtrics.
  2. I used the Qualtrics Conversational APIs to write my AWS lambda function which
    • calls the Qualtrics APIs , creates a survey session,
    • retrieves the questions and presents it to the user in a human-like conversation
    • listens to the answers and uses Qualtrics APIs to record the answer and move on the next question.


You can find the Alexa custom skill source code on my Github here. You can import the above survey and the custom skill code in the repository to get this working for yourself.

Here is a sequence diagram on the interaction between the user and the Amazon Echo/Alexa device

Here’s a short video on the demo on consuming the survey using Amazon Echo :

Let’s look at the SAP Conversational AI integration with Qualtrics in the second part of this blog post:

Here are the steps,

  1. Set up a survey in Qualtrics.
  2. Use the Qualtrics Conversational APIs to create python webhooks which are hosted on SAP Cloud Platform (CF) to perform the following actions
    • call the Qualtrics APIs  and create a survey session,
    • retrieve the questions and present it to the user
    • reads to the answers and uses Qualtrics APIs to record the answer and move on the next question.

Here’s a quick demo of the bot through screenshots:

If you’s like to test it out yourself:

  • set up the survey.
  • Fork the bot i have created from here.
  • Clone the webhook project from my github repository.
  • Update the webhook with your survey id, qualtrics api token and qualtrics data center details.
  • Push the project to your SAP Cloud Platform CF account.
  • Update your bot memory with the survey id at (Build tab -> @greetings skill -> Actions tab)
  • Update your bot webhook base url with the application url that you obtained after deploying your webhook project to SAP Cloud Platform.With this you should be able to take your survey through the SAP CAI interface.


Assigned Tags

      1 Comment
      You must be Logged on to comment or reply to a post.
      Author's profile photo Vishnuvardhan Singineedi
      Vishnuvardhan Singineedi

      Great Post!! Thanks for Sharing!