Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to add "Edit Response" link to Google Forms emails?

Tags:

I have a simple Google Form that collects data, and, using AppScript, sends confirmation emails to users who fill it out. After user submits the form, on confirmation, s/he will see a link to edit his/her response.

I'd like to include that link as a part of the confirmation email (Right now, it only shows up on the page.) How can I obtain the URL to edit a submitted response?

I am able to get the link to the Form through SpreadsheetApp.getActiveSpreadsheet().getFormUrl(). It gives me the following format: https://docs.google.com/a/domain.com/spreadsheet/viewform?formkey=<formKey>

The link however doesn't include the edit key, which is required for users to edit his/her response. The expected URL should look like this: https://docs.google.com/a/domain.com/spreadsheet/viewform?formkey=<formKey>&edit=<editKey>

Thanks for the help in advance!

-K

Edited:

Added a feature request on this: http://code.google.com/p/google-apps-script-issues/issues/detail?id=1345&thanks=1345&ts=1337773007

like image 861
DashK Avatar asked May 22 '12 21:05

DashK


People also ask

Can owner edit responses in Google forms?

The form's owner or collaborators can make changes to it at any moment. They can also select the edit after submit option in Google Forms when constructing the form, allowing form respondents to alter their provided responses.

Can you put a link in a Google form response?

After creating the form you can insert a link in the description field that you want to display on your form. Note: In Google Forms, you are allowed to paste the raw URL only in the description field. From there Google will automatically recognize it and publish it as a live link.


2 Answers

The answer that this wasn't possible by @Henrique Abreu was true until very recently. Google seems to have added getEditResponseUrl() to the FormResponse class and with that it becomes possible to use code like this to get the edit URL for a bunch of existing forms:

function responseURL() {  // Open a form by ID and log the responses to each question.  var form = FormApp.openById('1gJw1MbMKmOYE40Og1ek0cRgtdofguIrAB8KhmB0BYXY'); //this is the ID in the url of your live form  var formResponses = form.getResponses();  for (var i = 0; i < formResponses.length; i++) {    var formResponse = formResponses[i];    Logger.log(formResponse.getEditResponseUrl());  } } 

To make it automatically email the user as they respond one could add a trigger on form submit. As The situation I'm working with doesn't require people to log in with an apps account I don't have access to an email address automatically so I have a text question that captures the user's email address.

It does ask the question about whether or not editing the forms is what you want. I've been grappling with the relative advantages of editing an existing response or sending a prefilled form using toPrefilledUrl() so that I can see how things have changed over time. I guess this comes down to the value that tracking this will provide you.

like image 188
Ben Avatar answered Sep 21 '22 14:09

Ben


If you are using Google Apps your responders can edit there form responses.

See: How to Edit Form Responses

like image 33
ScampMichael Avatar answered Sep 22 '22 14:09

ScampMichael