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
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.
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");
}Julkaise ja hae URL
Julkaiseminen luo URL-osoitteen kuten https://script.google.com/macros/s/.../exec - liitä se vaiheen 1 YeetForm-webhook-kenttään.
Lähetä testivastaus
Lähetä lomake (tai käytä webhook-integraation testipainiketta) ja varmista, että uusi rivi ilmestyy taulukkoon vastaukset järjestyksessä.
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.