L'API Google Apps Script vous permet de créer et de modifier des projets Google Apps Script à partir de votre application. Les exemples de cette page illustrent comment effectuer des opérations courantes de gestion de projet avec l'API.
Pour utiliser l'API, vous devez d'abord l'activer.
Dans ces exemples, l'espace réservé scriptId est utilisé pour indiquer où vous devez fournir l'ID du projet de script. Procédez comme suit pour trouver l'ID du script :
- Dans le projet Apps Script, en haut à gauche, cliquez sur Paramètres du projet .
- Cliquez sur Copier à côté de "ID du script".
Créer un projet Apps Script
La requête projects.create suivante crée un nouveau script autonome.
POST https://scriptmanagement.googleapis.com/v1/projects/
{
"title": "My Script"
}Récupérer les métadonnées du projet
La requête projects.get suivante récupère les métadonnées du projet de script .
GET https://scriptmanagement.googleapis.com/v1/projects/scriptId
La réponse se compose d'un objet tel que celui-ci :
{
"scriptId": "scriptId",
"title": "My Title",
"parentId": "parentId",
"createTime": "2017-10-02T15:01:23.045123456Z",
"updateTime": "2017-10-02T15:01:23.045123456Z",
"creator": { "name": "Grant" },
"lastModifyUser": { "name": "Grant" },
}Récupérer les fichiers du projet
La requête projects.getContent suivante récupère le contenu du projet de script, y compris le code source et les métadonnées de chaque fichier de script.
GET https://scriptmanagement.googleapis.com/v1/projects/scriptId/content
La réponse se compose d'un objet Content tel que celui-ci :
{ "scriptId": "scriptId", "files": [{ "name": "My Script", "type": "SERVER_JS", "source": "function hello(){\nconsole.log('Hello world');}", "lastModifyUser": { "name": "Grant", "email": "grant@example.com", }, "createTime": "2017-10-02T15:01:23.045123456Z", "updateTime": "2017-10-02T15:01:23.045123456Z", "functionSet": { "values": [ "name": "helloWorld" ] } }, { "name": "appsscript", "type": "JSON", "source": "{\"timeZone\":\"America/New_York\",\"exceptionLogging\":\"CLOUD\"}", "lastModifyUser": { "name": "Grant", "email": "grant@example.com", }, "createTime": "2017-10-02T15:01:23.045123456Z", "updateTime": "2017-10-02T15:01:23.045123456Z" }] }
Mettre à jour les fichiers du projet
La requête projects.updateContent suivante met à jour le contenu du projet de script spécifié. Ce contenu est stocké en tant que version HEAD et est utilisé lorsque le script est exécuté en tant que projet exécutable d'API.
PUT https://scriptmanagement.googleapis.com/v1/projects/scriptID/content
{ "files": [{ "name": "index", "type": "HTML", "source": "<html> <header><title>HTML Page</title></header> <body> My HTML </body> </html>" }, { "name": "My Script", "type": "SERVER_JS", "source": "function hello(){\nconsole.log('Hello world');}", }, { "name": "appsscript", "type": "JSON", "source": "{\"timeZone\":\"America/New_York\",\"exceptionLogging\":\"CLOUD\"}", "lastModifyUser": { "name": "Grant", "email": "grant@example.com", }, "createTime": "2017-10-02T15:01:23.045123456Z", "updateTime": "2017-10-02T15:01:23.045123456Z" }] }
La réponse se compose d'un objet Content tel que celui-ci :
{ "scriptId": "scriptId", "files": [{ "name": "index", "type": "HTML", "source": "<html> <header><title>HTML Page</title></header> <body> My HTML </body> </html>", "lastModifyUser": { "name": "Grant", "email": "grant@example.com", }, "createTime": "2017-10-02T15:01:23.045123456Z", "updateTime": "2017-10-02T15:01:23.045123456Z" }, { "name": "My Script", "type": "SERVER_JS", "source": "function hello(){\nconsole.log('Hello world');}", "lastModifyUser": { "name": "Grant", "email": "grant@example.com", }, "createTime": "2017-10-02T15:01:23.045123456Z", "updateTime": "2017-10-02T15:01:23.045123456Z", "functionSet": { "values": [ "name": "helloWorld" ] } }, { "name": "appsscript", "type": "JSON", "source": "{\"timeZone\":\"America/New_York\",\"exceptionLogging\":\"CLOUD\"}", "lastModifyUser": { "name": "Grant", "email": "grant@example.com", }, "createTime": "2017-10-02T15:01:23.045123456Z", "updateTime": "2017-10-02T15:01:23.045123456Z" }] }