Interfejs Apps Script API (dawniej Apps Script Execution API) umożliwia zdalne wykonywanie funkcji w projekcie skryptu, do którego masz dostęp. Aplikacja może wywołać daną funkcję Apps Script, podając w razie potrzeby parametry wejściowe, a potem otrzymać zwróconą odpowiedź.
Przykłady na tej stronie pokazują, jak za pomocą interfejsu API można wykonywać niektóre typowe operacje wykonawcze. Więcej informacji o specjalnych wymaganiach dotyczących autoryzacji znajdziesz w przewodniku Wykonywanie funkcji.
W tych przykładach do wskazywania miejsca podania identyfikatora projektu skryptu służą obiekty zastępcze scriptId. Aby znaleźć identyfikator skryptu:
- W lewym górnym rogu projektu Apps Script kliknij Project Settings (Ustawienia projektu) .
- Obok „Identyfikator skryptu” kliknij Kopiuj.
Wykonaj funkcję
Podane niżej żądanie scripts.run wywołuje funkcję Apps Script o nazwie listFolderContent
, przekazując jako argumenty folderId Dysku oraz liczbę całkowitą MAX_SIZE
. Funkcja jest wykonywana w trybie deweloperskim, co oznacza, że wykonywana jest najnowsza zapisana wersja funkcji niezależnie od tego, która wersja jest wdrożona jako wykonywalna.
Protokół żądania jest pokazany poniżej. Z przewodnika po wykonywaniu funkcji dowiesz się, jak wdrożyć żądanie uruchomienia w różnych językach za pomocą bibliotek klienta interfejsu API Google.
POST https://script.googleapis.com/v1/scripts/scriptId:run
{ "function": "listFolderContent", "parameters": [ folderId, MAX_SIZE ], "devMode": true }
Odpowiedź na to żądanie po zakończeniu wywoływania funkcji Apps Script zawiera wyniki wykonania lub odpowiedź o błędzie. W tym przykładzie funkcja zwraca tablicę nazw plików:
{ "response": { "result": [ "fileTitle1", "fileTitle2", "fileTitle3" ] }, }
Jeśli podczas wykonywania skryptu Apps Script wystąpił błąd, odpowiedź może wyglądać tak:
{ "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 }] }] } } }