Apps Script API (dan sebelumnya Apps Script Execution API) memungkinkan Anda menjalankan fungsi dari jarak jauh dalam project skrip yang aksesnya Anda miliki. Aplikasi Anda dapat memanggil fungsi Apps Script tertentu, dengan 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 informasi selengkapnya termasuk persyaratan otorisasi khusus, lihat panduan Menjalankan fungsi.
Dalam contoh ini, placeholder 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
, yang meneruskan Drive folderId dan bilangan bulat MAX_SIZE
sebagai argumen. Fungsi ini
dijalankan dalam mode pengembangan, yang berarti versi fungsi yang
terbaru disimpan akan dieksekusi, terlepas dari versi apa yang
di-deploy sebagai file yang dapat dieksekusi.
Protokol permintaan ditampilkan di bawah. Panduan Menjalankan fungsi menunjukkan cara menerapkan permintaan run 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 untuk 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 }] }] } } }