*** NOTE: ALL INFORMATION IS ACCURATE AT DATE OF PUBLISHING ***
If you send out Forms Pro surveys to your customers there is always the possibility they forget to respond. They are busy and time slips away so even with good intentions they might not get around to providing you with feedback. So what about sending them a reminder after a few days if they haven’t replied to your original request? Let’s take a look at a Microsoft Flow to achieve this.
First we need to start our Flow with a recurrence trigger. This will run every day at 9am.
Next, we are going to use the Date/Time action of ‘Get past time’. The interval is the number of days you want to go before you send a follow up IF your Forms Pro survey feedback request hasn’t been responded to. The time unit will be set to Day.
Now we use the CDS connector and the List records action to find all of the Forms Pro survey invites that meet our filter query criteria. The first part filters based on the msfp_invitestatus. 647390002 is equal to Sent. Once the survey invite is received to, the status changes to 647390003 to indicate Responded. Now we need to format the Past Date we just retrieved and put it in the format of yyyy-MM-dd.We are then going to compare it with the created date of the survey invites to see if it matches. Finally, we are going to check the Status Reason (statuscode) and only get those that equal 1 which is Open.
You can copy and paste this code in to your Filter Query if needed.
msfp_invitestatus eq 647390002 and Microsoft.Dynamics.CRM.On(PropertyName='createdon',PropertyValue=@{formatDateTime(body('Past_Date'),'yyyy-MM-dd')}) and statuscode eq 1
For each Survey Invite that is retrieved in the List action we are going to format the created date. This is so we can add it in to our notification to our client so they have a little context of which request we are referring to. For this we are going to use the Convert time zone action.
Now we need to figure out the Contact that the survey invite is linked to. For this we need to use the activityparties entity. You can’t find this in the drop down list. Instead scroll to the bottom and click on Enter custom value. YOu can then type in activityparties. Then add in the filter query using the _activityid_value for the Activity id from the List survey invites step. We are also going to filter on the Participation Type of the To Recipient which has a value of 2.
You can copy and paste this code in to your Filter Query if needed.
_activityid_value eq @{items('Apply_To_Each_Survey_Invite')?['activityid']} and participationtypemask eq 2
Now we are going to use the CDS connector again and the Get record action to get the Contact the survey invite was sent to. For this, the item identifier is the Party id from the list activity parties step.
Let’s create our reminder email which can then be sent out to the Contact. The To field will be the Email address from the Get Contact step. Put in whatever subject you wish to use, then fill out the Body of the email. Here we can see the First Name from the Contact, the Converted time to show when the original invite was sent, and the survey invitation url from the original survey invite. This means the link they click on will be the same personalised link you sent them previously.
Here is our completed email received by a customer. You can decide how many times you will do this, although likely one reminder is enough. If they don’t respond after that, let’s just leave them alone π
Want to just watch how to do this? Check out the video below:
Check out the latest post:
Split Your Audience By Number Or Percentage In Customer Insights - Journeys
This is just 1 of 480 articles. You can browse through all of them by going to the main blog page, or navigate through different categories to find more content you are interested in. You can also subscribe and get new blog posts emailed to you directly.
Love your blogs!!!
Thank you so much for your continued support Pavlos! β€
Hi Megan,
Nice blog, thanks for sharing.
In our environment, we have noticed Survey Invitation URL is null, any idea why?
Thanks,
Mehul
Hi Mehul, is it blank on your most recent survey responses? Originally it was blank on the responses coming through, but that was resolved in a recent release. If it is still blank, I would contact Microsoft with a support ticket to ask them to review.
Hi Megan,
A co-worker provided a link to your blog – very helpful. I read through this article and it seems a user could do the same kind of reminder flow in Forms as well as Forms Pro. Am I missing something here?
Hi Mike, glad you’ve found it useful! You won’t be able to do the same with regular Forms. The difference is where the data is stored, and that’s in the Common Data Service for Forms Pro. So you can use the records stored in CDS that show the survey invitation hasn’t been responded to yet, and send the reminders. Not sure how you would achieve that with Forms other than doing everything manually. Hope that helps!
Thank you this worked great!
Question: How do you structure it if you only want the reminder to be sent once? Our users will revolt if they get more than 1 reminder π
Is it a change to the original trigger? Or an update to the record to indicate a reminder has been sent.
Your blog is terrific
Hi Kelly, thanks so much! The reminder should only go out once, because the query is finding those that have a created date that equals the same date as X number of days ago, rather than just finding any that haven’t been responded to. So you should find it only goes out once for each of the survey invitations that are outstanding.
Hi Megan, I’m thinking about using your reminder method, but have one issue with it.
This way it seems not possible to add an unsubscribe link with the mail. An unsubscribe option must be added, maybe even by law.
The Forms Pro connector of Power Automate doesn’t have an action like “create unsubscribe link” (which must not be that hard to develop I guess), nor is this link saved with the original invitation.
Do you have a workaround for this?
Kind regards,
Maurits
Hi Maurits, this is very true, there is no way to get an unsubscribe link for Forms Pro… however, you could always add an unsubscribe link to the reminder emails that you send out. That way they are unsubscribing to your emails and should mean they won’t get anything further from you. It’s not ideal, but it’s the only thing I can think of that might help.
Thanks for the prompt reply, Megan.
Are you close with the MS development team so maybe able to request for a “Create unsubscribe link” action in Power Automate? π
Kind regards,
Maurits
Sure, I’ll make sure they add it by the end of the week ????
HAHA, anyway, I’ve solved it in another way.
Like I used to do with the Voice of the Customer I created a seperate Unsubscribe survey.
This works like a charm, as I can now create the invitation link for the CSAT survey and one for the Unsubscribe survey.
It’s just that I cannot use the email templates of Forms Pro in that case, but I win a lot with it.
I can handle unsubscriptions in a much better way then the Forms Pro way.
Happy with the results!
Kind regards,
Maurits
Hi Megan – I refer to your site and been learning a lot about Forms and Flows. I have multiple forms which are sent on different occasions (at different time frame). I would like to send a reminder email , if my consumer did not respond in maybe a week . However, I do not see where you specify the name of the survey for which I want to create a reminder . My issue is when I followed your instructions to the “T”, including the 3 day past date – i keep getting 0 records even though I have 95 surveys sent (for one form) and received only 9 responses. Pleasseee help!
Hi Dinesh, so this is something that I believe is coming to Customer Voice (was Forms Pro), but I am not sure when. In the example above, are you using Dynamics 365? If so, what happens when you do an advanced find and do a search for survey invites where the invite status is Sent and the status reason is Open, then set your date. Do you get results that way? If so, then something in your flow in Power Automate is not quite right.
Hi Megan,
I’ve used this article today for sending out reminders π THANKS for supporting us with answer to most problems in the Customer Voice world π
But … I notice your OData filter expression with the expression:
Microsoft.Dynamics.CRM.On(PropertyName=’createdon’,PropertyValue=@{formatDateTime(body(‘Past_Date’),’yyyy-MM-dd’)})
How on earth did you come up with this little trick, and do you have a link to a reference page, where we can read a little more on this kind of filters in the OData query?
Thanks in advance π
Hi Henrik! Hmm…. I honestly can’t remember. I think I ended up Googling it myself!
Hi Megan,
Like everybody else has said; great article and thanks for the info. I have two questions.
1) Will this email all of the people who haven’t replied across all of the forms I have running. If so, is there a way to filter the query to just point to a specific form?
2) This may be a silly question but will it only send emails for the forms I’ve personally created? The reason I ask is that I work for a very big company and would hate if it sent reminders for anything other than the forms I’ve created.
Thanks,
Philip
Hi Phillip,
You are welcome, glad the article has helped!
1) You could add this in to your filter criteria n the List Records step: msfp_sourcesurveyidentifier eq ‘ID OF SURVEY’ – you can get the id of the survey from Customer Voice. It’s at the end of the URL for the survey you want to use as the filter.
2) It would send for all, unless you add that in to your List Records step as part of the filter too. So you could add something like this – owneridname eq ‘Megan Walker’. That would be the owner of the survey invite records though, and not the owner of the survey they are linked to.
Hi Megan,
I think your posts about Microsoft forms are great and they have really helped me to understand the features.
I was wondering if it is possible to track whether participants have responded to the survey while still allowing their answers to be anonymous? I.e. I could find out whether an individual has completed the survey without knowing which set of answers belonged to them?
Thank you!
Hi Kate. Hmmm…. not sure that would be possible. It’s either an anonymous response, where you haven’t linked their invitation/response to a Contact in CDS, or it is a personalised invitation/response where you set the activities regarding the Contact or have them linked as the recipient. There is no in-between if that makes sense.