Integraatiot

Lähetä lomakevastaukset Google Sheetsiin

YeetFormissa ei ole natiivia Google Sheets -synkronointia tänään, mutta saat saman lopputuloksen - yhden taulukkorivin per vastaus, lisätty automaattisesti - pienellä Google Apps Scriptillä ja webhookilla. Tämä sivu käy läpi tarkan skriptin (noin 15 riviä), miten se otetaan käyttöön verkkosovelluksena ja miten YeetForm-webhook osoitetaan syntyvään URL-osoitteeseen. Se vie muutaman minuutin eikä vaadi omaa palvelinta.

Käyttöönotto

1

Lisää webhook-integraatio

Google Sheetsillä ei ole natiivia YeetForm-liitäntää, joten silta on webhook: lisää lomakkeen Integraatiot-välilehdelle Webhooks-päätepiste, joka osoittaa Google Apps Script -verkkosovelluksen URL-osoitteeseen.

2

Luo Apps Script

Avaa kohdetaulukossasi Laajennukset → Apps Script, liitä alla oleva skripti ja julkaise se verkkosovelluksena (Suorita nimellä: Minä, Käyttöoikeus: Kenellä tahansa jolla on linkki). Käytä julkaisun URL-osoitetta webhook-päätepisteenäsi.

function doPost(e) {
  var payload = JSON.parse(e.postData.contents);
  if (payload.event !== "response.created") return ContentService.createTextOutput("ignored");

  var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  var labels = {};
  (payload.fields || []).forEach(function (f) { labels[f.id] = f.label; });

  var row = [payload.response_id, payload.submitted_at];
  Object.keys(payload.answers).forEach(function (id) {
    row.push(labels[id] || id, payload.answers[id]);
  });

  sheet.appendRow(row);
  return ContentService.createTextOutput("ok");
}
3

Julkaise ja hae URL

Julkaiseminen luo URL-osoitteen kuten https://script.google.com/macros/s/.../exec - liitä se vaiheen 1 YeetForm-webhook-kenttään.

4

Lähetä testivastaus

Lähetä lomake (tai käytä webhook-integraation testipainiketta) ja varmista, että uusi rivi ilmestyy taulukkoon vastaukset järjestyksessä.

5

Pidä taulukko ja lomake synkronoituna

Jos lisäät tai poistat lomakkeen kenttiä myöhemmin, päivitä skriptin sarakekartoitus - se lukee vastaukset kenttätunnuksen, ei sijainnin perusteella, joten se ei sekoita olemassa olevia sarakkeita hiljaa, mutta uudet kentät tarvitsevat oman rivin skriptiin.

Vinkit

  • Käytä vastauksen response_id-tunnusta taulukon kaksoiskappaleiden torjuntaan (ohita rivin lisääminen, jos kyseisellä id:llä on jo rivi), sillä uudelleen yritetty webhook-toimitus lähettää saman vastauksen uudelleen.
  • Kartoita sarakkeet payload.fields-taulukosta (id → label) kenttätunnusten kovakoodaamisen sijaan, jotta skripti kestää kenttien uudelleennimeämisen tai -järjestämisen.
  • Tämä on webhook-resepti, ei natiivi integraatio - jos Apps Scriptin kiintiö tai tilisi tuottaa ongelmia, rivit lakkaavat ilmestymästä hiljaa; tarkista lomakkeen Integraatiot-välilehdeltä toimitustila taulukon tuijottamisen sijaan.

Rakenna lomakkeesi tekoälyllä sekunneissa

Aloita ilmaiseksi

UKK

Onko Google Sheetsille natiivi integraatio?+
Ei - YeetForm ei synkronoi Sheetsiin suoraan. Tämä sivu näyttää webhook-Apps Script-reseptin, joka saavuttaa saman lopputuloksen: yksi rivi per vastaus, lisätty automaattisesti.
Toimiiko tämä Google Formsin 'Sheets-kohde'-ominaisuuden kanssa?+
Ei, tuo ominaisuus on erityisesti Google Formsille. Tämä resepti käyttää Google Apps Script -verkkosovellusta omana päätepisteenään, jota YeetFormin webhook laukaisee, riippumatta Google Formsista.
Entä jos lisään lomakkeeseeni uuden kentän myöhemmin?+
Skripti kartoittaa vastaukset kenttätunnuksen ja nimen perusteella, joten se toimii edelleen, mutta täysin uusi kenttä tarvitsee rivin skriptiin (tai pienen muokkauksen) näkyäkseen omana sarakkeenaan - katso yllä olevat vinkit.
Yritetäänkö tätä uudelleen, jos skripti epäonnistuu?+
Kyllä - se on tavallinen webhook-toimitus konepellin alla, joten epäonnistunut Apps Script -vastaus yritetään uudelleen enintään 3 kertaa kuten mikä tahansa muu webhook.