Configurer un projet Apps Script pour appeler directement l'API Google Forms via un appel REST est simple. Si vous avez déjà configuré un projet Google Cloud, procédez comme suit:
- Créez un projet Apps Script.
- Modifiez le numéro de projet Google Cloud associé pour qu'il corresponde au projet que vous avez activé pour l'API Google Forms.
- Modifiez le fichier manifeste (
appsscript.json
) pour ajouter les portées OAuth nécessaires. - Ajoutez du code Apps Script pour récupérer un jeton OAuth et effectuer un appel REST à l'aide du jeton.
Voici un bref aperçu de ces étapes.
Créer et configurer un projet Apps Script
- Utilisez le même ID Google que celui avec lequel vous avez configuré votre projet GCP, accédez au tableau de bord Apps Script, puis cliquez sur Nouveau projet.
- Une fois votre projet ouvert, cliquez sur Project Settings (Paramètres du projet).
- Cochez la case Afficher le fichier manifeste "appsscript.json" dans l'éditeur.
- Dans la section Projet Google Cloud Platform (GCP), cliquez sur Modifier le projet, puis saisissez le numéro de projet GCP que vous avez configuré pour l'API Forms.
Votre projet Apps Script est maintenant configuré pour accéder à l'API Google Forms. L'étape suivante consiste à ajouter les habilitations OAuth appropriées.
Ajouter des habilitations OAuth
Pour générer un jeton OAuth correctement défini dans Apps Script, vous devez définir les champs d'application requis dans le fichier manifeste du projet.
- Dans l'éditeur, ouvrez
appsscript.json
. Ajoutez les champs d'application au corps du fichier manifeste.
{ ... "oauthScopes": [ "https://www.googleapis.com/auth/script.external_request", "https://www.googleapis.com/auth/drive", "https://www.googleapis.com/auth/drive.readonly", "https://www.googleapis.com/auth/forms.body", "https://www.googleapis.com/auth/forms.body.readonly", "https://www.googleapis.com/auth/forms.responses.readonly" ], ... }
Cliquez sur
Enregistrer le projet et corrigez les erreurs de syntaxe si nécessaire. Votre projet devrait désormais pouvoir appeler l'API Google Forms via un appel REST.
Ajouter du code Apps Script pour appeler l'API
Avant d'écrire le code permettant d'appeler un formulaire, vous devez identifier un formulaire qui vous appartient et qui contient des réponses, puis noter son ID. L'ID du formulaire se trouve dans l'URL lorsque vous le modifiez:
https://docs.google.com/forms/d/<FORM_ID>/edit
Pour appeler l'API, vous utiliserez un appel UrlFetchApp
Apps Script.
Ouvrez Code.gs et ajoutez le code suivant:
Remplacez
YOUR_FORM_ID
par la valeur que vous avez notée précédemment.Exemple :
var formId = 'tL5ygBC8zpbTnTp76JCZdIg80hA-cnpbTnTjnsewCKJH';
Cliquez sur
Enregistrer le projet et corrigez les erreurs de syntaxe si nécessaire.
Tester le code
- Cliquez sur Exécuter.
- Autorisez le projet si nécessaire à l'aide du même ID Google que précédemment.
Une fois le script lancé, une réponse semblable à celle-ci doit s'afficher dans le journal d'exécution:
Execution started Calling the Forms API! OAuth token is: ya29.a0ARrdaM8IMjtlv… formsAPIUrl is: https://forms.googleapis.com/v1beta/forms/…/responses Response from Forms.responses was: { "responses": [ { "responseId":"...", "createTime": "2021-03-25T01:23:58.146Z", "lastSubmittedTime": "2021-03-25T01:23:58.146607Z", "answers": { "1e9b0ead": { "questionId": "1e9b0ead", "textAnswers": { "answers": [ { "value": "Red" } ] } }, "773ed8f3": { "questionId": "773ed8f3", "textAnswers": { "answers": [ { "value": "Tesla" } ] } } } } ] } Execution completed
Étapes suivantes
Une fois que vous avez appelé l'API avec Apps Script, consultez la documentation de référence et essayez d'effectuer d'autres appels à l'API.