Ga naar https://docs.google.com/forms en maak een formulier aan
Voeg de velden toe die je interesseren ;)
Ga naar https://app.cadulis.com
Ga naar Instellingen
> Externe toegangen
> Externe toegang aanmaken
Kies het type “Webservice REST”
Heb je in het gedeelte API Rest geleerd hoe je je webservice-toegang aanmaakt?
Vink het vakje aan om Activiteit aanmaken
toe te staan en indien nodig ook Klant aanmaken
Sla op.
Kopieer je API-sleutel
die beschikbaar is in het betreffende vak
We willen nu de antwoorden van het Google Formulier rechtstreeks in Cadulis injecteren. We gaan dit automatiseren via de script editor
.
Vanuit je GoogleForm-formulier, klik op en kies Script editor
Voeg een bestand toe en gebruik de volgende code, waarbij je zeker API-sleutel
vervangt door diegene die je hierboven hebt verkregen
Denk eraan om aan het begin van het script apiKey en activityTypeId aan te passen
:
function onFormSubmit(e) {
// apiKey: Vervang door de sleutel van de externe toegang van je Cadulis-configuratie
var apiKey = 'XXXXXXXX';
// activityTypeId: Vervang door het id van het activiteitentype (in catalogus) waarvoor je een activiteit wilt aanmaken
var activityTypeId = 1234;
var form = FormApp.getActiveForm();
var allResponses = form.getResponses();
var latestResponse = allResponses[allResponses.length - 1];
var responseId = latestResponse.getId();
var response = latestResponse.getItemResponses();
var responseMap = {};
// Genereer een string met alle vragen per titel en hun antwoord
var responseString = '# ' + responseId + "\n\n";
for (var i = 0; i < response.length; i++) {
var question = response[i].getItem().getTitle();
var answer = response[i].getResponse();
responseString += question + ' : ' + answer + "\n";
responseMap[question] = answer;
}
// genereer een unieke referentie van het Google Formulier response ID
var cref = responseId.substring(0, 15) + '-' + responseId.substring(responseId.length - 15);
// bereid Cadulis data voor
var formData = {
'cref': cref,
'reference': cref,
'intervention_type':{
'id': activityTypeId
},
'comment': responseString,
'title': 'Antwoord op Google Formulier'
};
var options = {
"method": "post",
"contentType": "application/json",
"payload": JSON.stringify(formData)
};
console.log(formData);
var url = 'https://api.cadulis.com/connectors/' + apiKey + '/interventions';
var result = UrlFetchApp.fetch(url, options);
console.log(result.getContentText());
}
Om dit script bij elke formulierinzending te gebruiken, ga je naar het menu aan de linkerkant en kies je Triggers
Bij “Gebeurtenistype” kies je Bij het verzenden van formulier
, en sla je op.
En dat is het: bij elk antwoord op Google Formulier wordt er een activiteit aangemaakt in Cadulis!