Apps Script API (dan sebelumnya Apps Script Execution API) memungkinkan Anda mengeksekusi fungsi dari jarak jauh dalam project skrip yang dapat Anda akses. Aplikasi Anda dapat memanggil fungsi Apps Script tertentu, memberikan parameter input jika diperlukan, dan menerima respons yang ditampilkan.
Contoh di halaman ini menggambarkan cara beberapa operasi eksekusi umum dapat dicapai dengan API. Untuk mengetahui informasi selengkapnya termasuk persyaratan otorisasi khusus, lihat panduan Mengeksekusi fungsi.
Dalam contoh ini, penampung scriptId digunakan untuk menunjukkan tempat Anda akan memberikan project ID skrip. Ikuti langkah-langkah di bawah untuk menemukan ID skrip:
- Di project Apps Script, di kiri atas, klik Project Settings .
- Di samping "ID Skrip", klik Salin.
Jalankan fungsi
Permintaan scripts.run berikut memanggil fungsi Apps Script bernama listFolderContent
, meneruskan
folderId Drive dan bilangan bulat MAX_SIZE
sebagai argumen. Fungsi
dieksekusi dalam mode pengembangan, yang berarti versi fungsi yang
disimpan terbaru akan dieksekusi, terlepas dari versi yang
di-deploy sebagai yang dapat dieksekusi.
Protokol permintaan ditampilkan di bawah. Panduan Menjalankan fungsi menunjukkan cara menerapkan permintaan eksekusi dalam berbagai bahasa menggunakan library klien Google API.
POST https://script.googleapis.com/v1/scripts/scriptId:run
{ "function": "listFolderContent", "parameters": [ folderId, MAX_SIZE ], "devMode": true }
Respons terhadap permintaan ini, setelah fungsi Apps Script yang dipanggil selesai, berisi hasil eksekusi atau respons error. Dalam contoh ini, fungsi berhasil menampilkan array nama file:
{ "response": { "result": [ "fileTitle1", "fileTitle2", "fileTitle3" ] }, }
Jika fungsi mengalami error selama eksekusi Apps Script, responsnya dapat terlihat seperti ini:
{ "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 }] }] } } }