SOLVED

Pre-populate fields in Microsoft Forms via URL parameter?

Iron Contributor

Is there a way to pre-populate a field on a form in Microsoft Forms using a parameter that is attached to the form's URL? 

 

Idea/scenario behind this: We could send out personalized links to people from whom we'd like to gather some information, e.g. https://[my-form-url]?UserID=27

 

Result: When the receipient opens the link in the browser, the field "UserID" would already be filled with the value 27 without the need to enter the number manually.

 

In SharePoint URL-parameters are quite common for many years, for example for filtering the content that is shown in certain web parts. I was wondering if Microsoft Forms can already handle a similar functionality. 

 

Any ideas/thoughts on this?

30 Replies

@JesseDuffield 

Still waiting for feature as of 12/15/2019....

Looks like this functionality is achievable now, check the following video - 

Passing Variables Through The Forms Pro Survey URL - Microsoft Forms Pro

 

I know this topic already has been solved. But, reading the possible solutions, many of them focused just on the specific scenario, and not in the thing of pre-fill the form.

 

Here is another possible scenario that I don't know if might get covered by the solution posted.

 

If I use forms to register machines' stops, I would like to pre-populate the Work Order field with the next number of the last one filled. Example, if yesterday a technician did the 15784 work order, the next one should be the 15785. Is there a way to pre-populate this, and not just fill it automatically in the database with an incremental?

 

I know that maybe you could design a form in PowerApps with a field consulting a database to obtain the MAX workorder on it, and display the max work order +1 on the form, but, any other ideas?

 

Thanks and excellent topic.

@ChrisCollao ,

Cognito Forms can accept multiple incoming parameters (we launch them from Power Apps) including the ID of the SharePoint List Item to update with Power Automate, the email of the user to respond to and any pre-population of the form. They are very powerful, reasonably priced and quick to develop and make MS Forms a third-rate alternative for anything other than self-marking exams. We use them mainly for field-based data collection and can easily be Word-merged / PDF including signatures.

Great idea. Exactly what i'm looking for also. Would love this to be implemented.
Also looking for this. Google Forms has less features yet is able to do this. It's very useful when you need to identify that specific response with other identifiers.
Simple one being job application, you can have one application form but prefill the vacancy ID so that you know what job they are applying for.
Another one would be a feedback form where you need to match that feedback with a specific case ID.
https://support.google.com/a/users/answer/9308781?hl=en

@drkmccy I always used Google Forms and now I'm working in a company that only use Microsoft365 environment and I'm struggling having few basic features Google Forms had, like:

 

  • Passing parameters and even submitting the form via URL, in this way I could create dynamic links in e-mail and with Power Automate creating some sort of ERP without wasting time in Power Apps
  • Free Integration such as Autocrat that is able to generate (Word and PDF) documents and e-mails easily based on a simple form (a thing that even with Power Automate is hard if not impossibile to achieve) 

It's really frustrating, I can't believe they had time to think about introducing background music in a Form and not these really basic features.

Hi,
I think this is pretty dangerous. Everyone receiving an invitation to fill the form and understanding how the URL is encoded would know how to fill the form for another User ID, just by changing the ID.
Is the risk not minimal in most cases for public surveys? Pairs of large integers as IDs are not dangerous for public surveys because it's trivial to ask another question to discredit the bogus interceptor's masquerade response. An example is when we know the other value in combination eg a one-time pad with two pairs of integers would do this to an acceptable standard for public surveys. The real reason for Microsoft not implementing the passing of variables into Forms is to protect the Dynamics 365 CUSTOMER VOICE cash flow. In other words, it's probably deliberate protectionist coding behaviour at the expense of empowering customers with web technology that's been around for 30 years and should be free. That's why Google has implemented it for free and Microsoft hasn't. (and I'm no fan of Google!) Please Microsoft, don't be hypocritical and listen to the "CUSTOMER VOICE" ! Passing of variables should be free - and this is why many people just go elsewhere instead of Microsoft, because it rarely listens to genuine concerns that would benefit both Microsoft and it's customers. Word up!