Dokumentation

Google Form zu Cadulis


Konfigurieren Sie ein Google-Formular

Gehen Sie zu https://docs.google.com/forms und erstellen Sie ein Formular

Cadulis Google form

Fügen Sie die gewünschten Felder hinzu ;)

Einen Zugang in Cadulis erstellen

Gehen Sie zu https://app.cadulis.com

Navigieren Sie zu Einstellungen > Externe Zugänge > Externer Zugang erstellen

Wählen Sie den Typ “Webservice REST”

Erlauben Sie das Erstellen einer Aktivität

Haben Sie im Abschnitt API Rest gelernt, wie Sie Ihren Webservice-Zugang erstellen?

Aktivieren Sie das Kontrollkästchen, um das Erstellen einer Aktivität zu erlauben, und je nach Bedarf auch Kunde erstellen

Speichern Sie.

Kopieren Sie Ihren API-Schlüssel, der im entsprechenden Bereich angezeigt wird

GoogleForm-Skript konfigurieren, um Daten in Cadulis zu übertragen

Nun möchten wir die Antworten des Google-Formulars direkt in Cadulis übertragen. Wir automatisieren dies mit dem Skript-Editor.

Öffnen Sie in Ihrem GoogleForm-Formular das Menü und wählen Sie Skript-Editor

Code

Fügen Sie eine Datei hinzu und verwenden Sie folgenden Code. Ersetzen Sie dabei API-Schlüssel durch den oben erhaltenen Schlüssel.

Denken Sie daran, am Anfang des Skripts apiKey und activityTypeId zu ersetzen:

  • apiKey ist der oben erhaltene API-Schlüssel Ihres externen Cadulis-Zugangs
  • activityTypeId ist die Kennung Ihres Aktivitätstyps. Diese Kennung finden Sie in der URL, wenn Sie im Katalog auf den Aktivitätstyp klicken.

function onFormSubmit(e) {  
    // apiKey: Replace with the key of the external access of your Cadulis configuration
    var apiKey = 'XXXXXXXX';
    // activityTypeId: Replace with the id of activity type (in catalog) you want to create an activity
    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 = {};
    
    // Generate a string containing all questions by ttle and their answer
    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;
    }
    
    // generate a unique reference from Google Form response ID
    var cref = responseId.substring(0, 15) + '-' + responseId.substring(responseId.length - 15);
    
    // prepare Cadulis data
    var formData = {
        'cref': cref,
        'reference': cref,
        'intervention_type':{
            'id': activityTypeId
        },
        'comment': responseString,
        'title': 'Réponse sur Google Form'
    };
    
    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());
}

Trigger

Damit dieses Skript bei jeder Formularübermittlung ausgeführt wird, gehen Sie in das linke Menü und wählen Sie Trigger

Wählen Sie bei “Ereignistyp” Beim Absenden des Formulars und speichern Sie.

Und das war’s: Bei jeder Antwort im Google-Formular wird eine Aktivität in Cadulis erstellt!