Accédez à la publication de scripts et aux déclencheurs, et manipulez-les. Cette classe permet aux utilisateurs de créer des scripts les déclencheurs et contrôler la publication du script en tant que service.
Propriétés
Propriété | Type | Description |
---|---|---|
AuthMode | AuthMode | Énumération identifiant les catégories de services autorisés qu'Apps Script peut accéder s'exécuter via une fonction déclenchée. |
AuthorizationStatus | AuthorizationStatus | Énumération indiquant l'état d'autorisation d'un script. |
EventType | EventType | Énumération indiquant le type d'événement déclenché. |
InstallationSource | InstallationSource | Énumération indiquant comment le script a été installé pour l'utilisateur en tant que module complémentaire. |
TriggerSource | TriggerSource | Énumération indiquant la source de l'événement qui déclenche l'activation du déclencheur. |
WeekDay | Weekday | Énumération représentant les jours de la semaine. |
Méthodes
Méthode | Type renvoyé | Brève description |
---|---|---|
deleteTrigger(trigger) | void | Supprime le déclencheur donné afin qu'il ne s'exécute plus. |
getAuthorizationInfo(authMode) | AuthorizationInfo | Récupère un objet utilisé pour déterminer si l'utilisateur doit autoriser ce script à utiliser une ou plus de services et fournir l'URL d'une boîte de dialogue d'autorisation. |
getIdentityToken() | String | Récupère un jeton d'identité OpenID Connect pour le
utilisateur effectif, si le niveau d'accès openid a été accordé. |
getInstallationSource() | InstallationSource | Renvoie une valeur d'énumération qui indique comment le script a été installé en tant que module complémentaire pour utilisateur actuel (par exemple, si l'utilisateur l'a installé personnellement via le navigateur Web de Chrome ou si un administrateur du domaine l'a installée pour tous les utilisateurs). |
getOAuthToken() | String | Récupère l'accès OAuth 2.0 jeton pour l'utilisateur effectif. |
getProjectTriggers() | Trigger[] | Récupère tous les déclencheurs installables associés au projet et à l'utilisateur actuels. |
getScriptId() | String | Récupère l'identifiant unique du projet de script. |
getService() | Service | Récupère un objet permettant de contrôler la publication du script en tant qu'application Web. |
getUserTriggers(document) | Trigger[] | Récupère tous les déclencheurs installables appartenant à cet utilisateur dans le document donné, pour ce script ou ou un module complémentaire. |
getUserTriggers(form) | Trigger[] | Récupère tous les déclencheurs installables appartenant à cet utilisateur sous la forme donnée, pour ce script ou ce module complémentaire. uniquement. |
getUserTriggers(spreadsheet) | Trigger[] | Récupère tous les déclencheurs installables appartenant à cet utilisateur dans la feuille de calcul donnée, pour ce script ou ou un module complémentaire. |
invalidateAuth() | void | Invalide l'autorisation dont dispose l'utilisateur effectif pour exécuter le script actuel. |
newStateToken() | StateTokenBuilder | Crée un compilateur pour un jeton d'état pouvant être utilisé dans une API de rappel (comme un flux OAuth). |
newTrigger(functionName) | TriggerBuilder | Démarre le processus de création d'un déclencheur installable qui, lorsqu'il est exécuté, appelle une fonction donnée. |
Documentation détaillée
deleteTrigger(trigger)
Supprime le déclencheur donné afin qu'il ne s'exécute plus.
// Deletes all triggers in the current project. var triggers = ScriptApp.getProjectTriggers(); for (var i = 0; i < triggers.length; i++) { ScriptApp.deleteTrigger(triggers[i]); }
Paramètres
Nom | Type | Description |
---|---|---|
trigger | Trigger | Déclencheur à supprimer. |
Autorisation
Les scripts qui utilisent cette méthode nécessitent une autorisation avec un ou plusieurs des champs d'application suivants:
-
https://www.googleapis.com/auth/script.scriptapp
getAuthorizationInfo(authMode)
Récupère un objet utilisé pour déterminer si l'utilisateur doit autoriser ce script à utiliser une ou plus de services et fournir l'URL d'une boîte de dialogue d'autorisation. Si le script est publié en tant que module complémentaire qui utilise des déclencheurs installables, ces informations peuvent être utilisé pour contrôler l'accès aux sections de code pour lesquelles l'utilisateur ne dispose pas des une autorisation. Le module complémentaire peut également demander à l'utilisateur d'ouvrir l'URL de l'autorisation pour résoudre le problème.
var authInfo = ScriptApp.getAuthorizationInfo(ScriptApp.AuthMode.FULL); status = authInfo.getAuthorizationStatus(); url = authInfo.getAuthorizationUrl();
Paramètres
Nom | Type | Description |
---|---|---|
authMode | AuthMode | le mode d'autorisation pour lequel les informations d'autorisation sont demandées ; dans
dans la plupart des cas, la valeur de authMode doit être ScriptApp.getAuthorizationInfo(ScriptApp.AuthMode.FULL) , car aucun autre mode d'autorisation
nécessite que les utilisateurs accordent une autorisation |
Renvois
AuthorizationInfo
: objet pouvant fournir des informations sur l'état d'autorisation de l'utilisateur
getIdentityToken()
Récupère un jeton d'identité OpenID Connect pour le
utilisateur effectif, si le niveau d'accès openid
a été accordé. Ce champ d'application n'est pas inclus
par défaut, et vous devez l'ajouter en tant que champ d'application explicite dans le fichier manifeste
pour le demander. Incluez les champs d'application https://www.googleapis.com/auth/userinfo.email
ou https://www.googleapis.com/auth/userinfo.profile
pour renvoyer
les informations sur l'utilisateur dans le jeton.
Le jeton d'ID renvoyé est un jeton Web JSON (JWT) encodé. il doit être décodé pour en extraire des informations. Les exemples suivants montrent comment décoder le jeton et extraire l'ID de profil Google de l'utilisateur effectif.
var idToken = ScriptApp.getIdentityToken(); var body = idToken.split('.')[1]; var decoded = Utilities.newBlob(Utilities.base64Decode(body)).getDataAsString(); var payload = JSON.parse(decoded); var profileId = payload.sub; Logger.log('Profile ID: ' + profileId);Reportez-vous à la documentation OpenID Connect documentation pour obtenir la liste complète des champs (revendications) renvoyés.
Renvois
String
: jeton d'identité, s'il est disponible sinon null
.
getInstallationSource()
Renvoie une valeur d'énumération qui indique comment le script a été installé en tant que module complémentaire pour utilisateur actuel (par exemple, si l'utilisateur l'a installé personnellement via le navigateur Web de Chrome ou si un administrateur du domaine l'a installée pour tous les utilisateurs).
Renvois
InstallationSource
: source d'installation.
getOAuthToken()
Récupère l'accès OAuth 2.0 jeton pour l'utilisateur effectif. Si les champs d'application OAuth du script sont suffisants pour autoriser une autre API Google qui requiert normalement son propre flux OAuth (comme Google Picker), les scripts peuvent contourner une deuxième invite d'autorisation en transmettant ce jeton à la place. Le jeton expire après un certain temps (une quelques minutes au minimum) ; doivent gérer les échecs d'autorisation et appeler cette méthode pour obtenir un nouveau jeton si nécessaire.
Le jeton renvoyé par cette méthode n'inclut que les champs d'application dont le script a actuellement besoin. Les niveaux d'accès précédemment autorisés, mais qui ne sont plus utilisés par le script, ne sont pas inclus dans le jeton renvoyé. Si des champs d'application OAuth supplémentaires sont nécessaires en plus de ceux du script lui-même exige, elles peuvent être spécifiées dans le fichier fichier manifeste.
Renvois
String
: représentation sous forme de chaîne du jeton OAuth 2.0.
getProjectTriggers()
Récupère tous les déclencheurs installables associés au projet et à l'utilisateur actuels.
Logger.log('Current project has ' + ScriptApp.getProjectTriggers().length + ' triggers.');
Renvois
Trigger[]
: tableau des déclencheurs de l'utilisateur actuel associés à ce projet.
Autorisation
Les scripts qui utilisent cette méthode nécessitent une autorisation avec un ou plusieurs des champs d'application suivants:
-
https://www.googleapis.com/auth/script.scriptapp
getScriptId()
Récupère l'identifiant unique du projet de script. Il s'agit de la méthode privilégiée pour obtenir l'identifiant unique
pour le projet de script, et non
. Cet identifiant peut être utilisé partout
où la clé du projet a déjà été fournie.getProjectKey()
Renvois
String
: ID du projet de script.
getService()
Récupère un objet permettant de contrôler la publication du script en tant qu'application Web.
// Get the URL of the published web app. var url = ScriptApp.getService().getUrl();
Renvois
Service
: objet permettant d'observer et de contrôler la publication du script en tant qu'application Web.
getUserTriggers(document)
Récupère tous les déclencheurs installables appartenant à cet utilisateur dans le document donné, pour ce script ou ou un module complémentaire. Cette méthode ne permet pas d'afficher les déclencheurs associés à d'autres scripts.
var doc = DocumentApp.getActiveDocument(); var triggers = ScriptApp.getUserTriggers(doc); // Log the handler function for the first trigger in the array. Logger.log(triggers[0].getHandlerFunction());
Paramètres
Nom | Type | Description |
---|---|---|
document | Document | Fichier Google Docs pouvant contenir des déclencheurs installables. |
Renvois
Trigger[]
: tableau des déclencheurs appartenant à cet utilisateur dans le document donné.
Autorisation
Les scripts qui utilisent cette méthode nécessitent une autorisation avec un ou plusieurs des champs d'application suivants:
-
https://www.googleapis.com/auth/script.scriptapp
getUserTriggers(form)
Récupère tous les déclencheurs installables appartenant à cet utilisateur sous la forme donnée, pour ce script ou ce module complémentaire. uniquement. Cette méthode ne permet pas d'afficher les déclencheurs associés à d'autres scripts.
var form = FormApp.getActiveForm(); var triggers = ScriptApp.getUserTriggers(form); // Log the trigger source for the first trigger in the array. Logger.log(triggers[0].getTriggerSource());
Paramètres
Nom | Type | Description |
---|---|---|
form | Form | Fichier Google Forms pouvant contenir des déclencheurs installables. |
Renvois
Trigger[]
: tableau des déclencheurs appartenant à cet utilisateur sous la forme donnée.
Autorisation
Les scripts qui utilisent cette méthode nécessitent une autorisation avec un ou plusieurs des champs d'application suivants:
-
https://www.googleapis.com/auth/script.scriptapp
getUserTriggers(spreadsheet)
Récupère tous les déclencheurs installables appartenant à cet utilisateur dans la feuille de calcul donnée, pour ce script ou ou un module complémentaire. Cette méthode ne permet pas d'afficher les déclencheurs associés à d'autres scripts.
var ss = SpreadsheetApp.getActiveSpreadsheet(); var triggers = ScriptApp.getUserTriggers(ss); // Log the event type for the first trigger in the array. Logger.log(triggers[0].getEventType());
Paramètres
Nom | Type | Description |
---|---|---|
spreadsheet | Spreadsheet | Fichier Google Sheets pouvant contenir des déclencheurs installables. |
Renvois
Trigger[]
: tableau des déclencheurs appartenant à cet utilisateur dans la feuille de calcul donnée.
Autorisation
Les scripts qui utilisent cette méthode nécessitent une autorisation avec un ou plusieurs des champs d'application suivants:
-
https://www.googleapis.com/auth/script.scriptapp
invalidateAuth()
Invalide l'autorisation dont dispose l'utilisateur effectif pour exécuter le script actuel. D'habitude pour invalider toutes les autorisations pour le script actuel. Cela est particulièrement utile pour les fonctions étiquetées en tant qu'autorisation "one-shot". Étant donné que les fonctions d'autorisation one-shot ne peuvent être appelées une première exécution après que le script a obtenu l'autorisation, si vous souhaitez effectuer une action par la suite, vous devez révoquer toutes les autorisations accordées au script, afin que l'utilisateur puisse voir dans la boîte de dialogue d'autorisation.
ScriptApp.invalidateAuth();
Génère
Error
: en cas d'échec de l'invalidation
newStateToken()
Crée un compilateur pour un jeton d'état pouvant être utilisé dans une API de rappel (comme un flux OAuth).
// Generate a callback URL, given the name of a callback function. The script does not need to // be published as a web app; the /usercallback URL suffix replaces /edit in any script's URL. function getCallbackURL(callbackFunction) { // IMPORTANT: Replace string below with the URL from your script, minus the /edit at the end. var scriptUrl = 'https://script.google.com/macros/d/1234567890abcdefghijklmonpqrstuvwxyz'; var urlSuffix = '/usercallback?state='; var stateToken = ScriptApp.newStateToken() .withMethod(callbackFunction) .withTimeout(120) .createToken(); return scriptUrl + urlSuffix + stateToken; }
Dans la plupart des flux OAuth2, le jeton state
est transmis au point de terminaison d'autorisation
(pas dans l'URL de rappel), et le point de terminaison de l'autorisation la transmet
de l'URL de rappel.
Exemple :
- Le script redirige l'utilisateur vers l'URL d'autorisation OAuth2:
https://accounts.google.com/o/oauth2/auth?state=token_generated_with_this_method&callback_uri=https://script.google.com/macros/d/1234567890abcdefghijklmonpqrstuvwxyz/usercallback&other_oauth2_parameters
. - L'utilisateur clique sur "Autoriser", puis la page d'autorisation OAuth2 le redirige vers
https://script.google.com/macros/d/1234567890abcdefghijklmonpqrstuvwxyz/usercallback?state=token_generated_with_this_method&other_params_that_include_tokens_or_grants
- La redirection ci-dessus (revenant à
http://script.google.com/...
) provoque le navigateur à/usercallback
, qui appelle la méthode spécifiée parStateTokenBuilder.withMethod(method)
.
Renvois
StateTokenBuilder
: objet permettant de poursuivre le processus de création des jetons d'état.
newTrigger(functionName)
Démarre le processus de création d'un déclencheur installable qui, lorsqu'il est exécuté, appelle une fonction donnée.
// Creates an edit trigger for a spreadsheet identified by ID. ScriptApp.newTrigger('myFunction') .forSpreadsheet('1234567890abcdefghijklmnopqrstuvwxyz_a1b2c3') .onEdit() .create();
Paramètres
Nom | Type | Description |
---|---|---|
functionName | String | Fonction à appeler lorsque le déclencheur est exécuté. Vous pouvez utiliser des fonctions
des bibliothèques incluses, telles que Library.libFunction1 . |
Renvois
TriggerBuilder
: objet utilisé pour poursuivre le processus de création du déclencheur.
Autorisation
Les scripts qui utilisent cette méthode nécessitent une autorisation avec un ou plusieurs des champs d'application suivants:
-
https://www.googleapis.com/auth/script.scriptapp