Esecuzione delle funzioni di Apps Script

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. La tua 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 è possibile eseguire alcune operazioni di esecuzione comuni 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 fornire l'ID progetto dello script. Segui i passaggi riportati di seguito per trovare l'ID script:

  1. Nel progetto Apps Script, in alto a sinistra, fai clic su Impostazioni progetto .
  2. Accanto a "ID script", fai clic su Copia.

Esegue una funzione

La seguente richiesta scripts.run chiama una funzione Apps Script denominata listFolderContent, trasmettendo il Drive folderId e un numero intero MAX_SIZE come argomenti. La funzione viene eseguita in modalità di sviluppo, il che significa che viene eseguita la versione salvata più di recente della funzione, indipendentemente dalla versione distribuita come eseguibile.

Il protocollo di richiesta è mostrato di seguito. La guida Esecuzione di funzioni mostra come implementare una richiesta di esecuzione in diverse lingue utilizzando le librerie client 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 funzione Apps Script chiamata, 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 avere il seguente aspetto:

{
  "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
        }]
      }]
    }
  }
}