Il est facile de configurer un projet Apps Script pour appeler directement l'API Google Forms via un appel REST. En supposant que vous ayez 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 niveaux d'accès 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
- En utilisant le même compte Google 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 > 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 Changer de projet, puis saisissez le numéro du 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 bons champs d'application OAuth.
Ajouter des habilitations OAuth
Pour générer un jeton OAuth correctement limité dans Apps Script, vous devez définir les autorisations requises dans le fichier manifeste du projet.
- Dans l'éditeur, ouvrez
appsscript.json
. Ajoutez les niveaux d'accès 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 éventuelles erreurs de syntaxe. Votre projet devrait maintenant pouvoir appeler l'API Google Forms via un appel REST.
Ajouter du code Apps Script pour appeler l'API
Avant d'écrire le code pour appeler un formulaire, vous devez identifier un formulaire dont vous êtes propriétaire 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 éventuelles erreurs de syntaxe.
Tester le code
- Cliquez sur Exécuter.
- Autorisez le projet si nécessaire en utilisant le même ID Google qu'auparavant.
Une fois qu'il a démarré, une réponse semblable à celle-ci devrait 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 réussi à appeler l'API avec Apps Script, consultez la documentation de référence et essayez d'effectuer d'autres appels à l'API.