Showing results for 
Search instead for 
Did you mean: 
Not applicable

Record Microsoft Form choice response to the SharePoint list

When I am trying to record the Microsoft Form single choice response to the SharePoint list choice (dropdown) column throw flow I am getting bad request error.

Where as if I save into signle line text field it works fine.


From the flow response I see the request has been formated wrong for the signle choice column.


"testchoice": {    "Value": "Yes"  }

I am not sure is this going to be handled internally before insert to SharePoint. But throws BadRequest error.


It sounds like issue is updating SharePoint choice column through Flow.


Is there any work around?



Venkat Konjeti


Has there been any formal solutions to this query at all? Again this would be really helpful for something I am working on, tried the magic formula and I can't get it to work... 

@Basic_User007 I agree, doesn't seem to work (at least as of now).

@efisher @npatelAU Is this still working for you guys?

I myself had a solution but it does require more steps to do and requires an array.

It is working for me. Thanks, @efisher for giving me the solution.  @bloodoff please refer the message from @efisher in this discussion.

@v-xida-msft Do you think you guys might change something that will break any of these workarounds?


@Basic_User007, here is my version of the workaround.


A flow that works needs to have these core steps:

  • initialize an array variable (1)
  • remove extra symbols from Microsoft Forms string output
  • split the previous line into an array (not the same step 1)
  • append to array variable using a formula
  • create a SharePoint list item


Where Initializing an array variable:


Removing extra symbols from MS Forms string output: 

replace(replace(replace(body('Get_response_details')?['r5beb9c2e9e4849129d94468e3db92b7a'],'","','|'), '["',''), '"]','')


Splitting the previous compose into an array: 



Appending to array variable using a formula:


Creating an item (in a Create Item step a Switch to input entire array option must be selected for that very multi choice field):


Please note that if you don’t work with Microsoft Forms and already have an array of values, then the steps are just initializing an array and appending to array variable using a formula. That’s it!


For more details and my thought process please visit my new blog, thanks!

Thanks for sharing.  


I am trying your suggestion and getting this errorr:


The template validation failed: 'The template action 'Set_variable' at line '1' and column '3409' is not valid: "The template function 'body' is not expected at this location.".'.


Is the first variable in the flow (the initialize variable)?  


Thanks for your help!


Also - I am using this expression:


replace(variables(replace(variables(replace(body('Get_response_details')?['rcd59c8f4f5ef43f886bda229d6f06d73'],'","',';#')), '["',';#')), '"]',';#')

 I replaced the rcd59xxxxxxxx - with my ID for the Multiselect form field.  



@DuaneAlleman I think you are overcomplicating the flow with another variable from what I can see here:

replace(variables(replace(variables(replace(body('Get_response_details')?['rcd59c8f4f5ef43f886bda229d6f06d73'],'","',';#')), '["',';#')), '"]',';#')

The only reason and the only place I use a variable is for an array, that's it. Note how my code doesn't have anything about "variables":

replace(replace(replace(body('Get_response_details')?['r5beb9c2e9e4849129d94468e3db92b7a'],'","','|'), '["',''), '"]','')

So if your case is getting info from Microsoft Forms and saving it into SharePoint, then make it simple (check my post above).

I know it is possible to add a variable but why doing it? 🙂


Super User
Super User

To work around the problem, we need to Convert the individual items as an array element and pass it to our SharePoint Control.


  • Create an Array variable.
  • Split the Responses.
  • Filter the Array variable to remove empty elements.
  • Select the individual items from the Filtered Array.
  • Set the value to an Array variable.
  • Use the Array variable in the Multiple Choice input.

You can find the complete solution in my blog post:





Helpful resources

UG GA Amplification 768x460.png

Launching new user group features

Learn how to create your own user groups today!

Community Connections 768x460.jpg

Community & How To Videos

Check out the new Power Platform Community Connections gallery!

M365 768x460.jpg

Microsoft 365 Collaboration Conference | December 7–9, 2021

Join us, in-person, December 7–9 in Las Vegas, for the largest gathering of the Microsoft community in the world.

Top Solution Authors
Users online (3,068)