La configuration d'un projet Apps Script pour appeler l'API Google Forms directement via un appel REST nécessite quelques étapes. 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 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.
Créer et configurer un projet Apps Script
- Avec le même compte Google que celui utilisé pour configurer votre projet Google Cloud, 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 (Google Cloud), cliquez sur Changer de projet, puis saisissez le numéro du projet Google Cloud que vous avez configuré pour l'API Forms.
Votre projet Apps Script est maintenant configuré pour accéder à l'API 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 champs d'application requis 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 Forms à l'aide d'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_IDpar 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 compte 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.