google formに値をprefillした状態になるようURLパラメータをつけて叩く


なんてことはないのですが、googleformを使ってwebでアンケートをとる際に、prefillした値を入れておきたい時にどうしたらいいかのメモ。

やり方

まずは作成したgoogleformのサイドメニューから「事前入力したURLを取得」

prefillしたい項目に適当な値をぶっ込んで「リンクを取得」を押します

そうするとリンクをコピーするよう言われるので、クリップボードにコピーします

そうするとコピーした内容が下記のように出てくるはずです。「entry.1234567890=hogehoge」がprefill目的の対象です

https://docs.google.com/forms/.../viewform?usp=pp_url&entry.1234567890=hogehoge

あとは各自の実装によると思いますが、hogehogeの前までと実際に入れ込みたい値をURLとして加工してlinkに与えるだけです。
(下記の例ではわかりやすさのために、パラメーターごと直書きし、格納済みの任意の値(@feedback_id)をくっつけています)

sample.html.slim
  - feedback_url = "https://docs.google.com/forms/.../viewform?usp=pp_url&entry.1234567890=" + @feedback_id
  = link_to feedback_url, style: "..." do
    | アンケートに回答する

(なお注意として、googleformの「送信」>「(リンクボタン)」>「URLを短縮」で、短縮URLを得ることができますが、こちらはパラメーターをそのままくっつけることはできません。)