L'API Apps Script (e in precedenza l'API Apps Script Execution) ti consente di eseguire da remoto una funzione in un progetto di script a cui hai accesso. L'app può chiamare una determinata funzione Apps Script, fornendo i parametri di input, se necessario, e ricevere una risposta restituita.
Gli esempi in questa pagina illustrano come alcune operazioni di esecuzione comuni possono essere eseguite con l'API. Per ulteriori informazioni inclusi i requisiti di autorizzazione speciali, consulta la guida Esecuzione di una funzione.
In questi esempi, i segnaposto scriptId vengono utilizzati per indicare dove forniresti l'ID progetto di script. Per trovare l'ID script:
- Nel progetto Apps Script, fai clic su Impostazioni progetto in alto a sinistra.
- Accanto a "ID script", fai clic su Copia.
Esegue una funzione
La seguente richiesta scripts.run chiama una funzione Apps Script denominata listFolderContent
, trasmettendola come argomenti di Drive folderId e un numero intero MAX_SIZE
. La funzione viene eseguita in modalità di sviluppo, il che significa che viene eseguita la versione salvata più recente della funzione, indipendentemente dalla versione di cui è stato eseguito il deployment come eseguibile.
Il protocollo di richiesta è mostrato di seguito. La guida relativa all'esecuzione delle funzioni mostra come implementare una richiesta di esecuzione in linguaggi diversi utilizzando le librerie client dell'API di Google.
POST https://script.googleapis.com/v1/scripts/scriptId:run
{ "function": "listFolderContent", "parameters": [ folderId, MAX_SIZE ], "devMode": true }
La risposta a questa richiesta, una volta completata la chiamata della funzione Apps Script, contiene i risultati dell'esecuzione o una risposta di errore. In questo esempio, la funzione restituisce correttamente un array di nomi di file:
{ "response": { "result": [ "fileTitle1", "fileTitle2", "fileTitle3" ] }, }
Se la funzione ha riscontrato un errore durante l'esecuzione di Apps Script, la risposta potrebbe essere la seguente:
{ "response": { "error": { "code": 3, "message": "ScriptError", "details": [{ "@type": "type.googleapis.com/google.apps.script.v1.ExecutionError", "errorMessage": "The script enountered an exeception it could not resolve.", "errorType": "ScriptError", "scriptStackTraceElements": [{ "function": "listFolderContent", "lineNumber": 14 }] }] } } }