API Apps Script (trước đây là API Thực thi Tập lệnh Apps) cho phép bạn để thực thi từ xa một hàm trong dự án tập lệnh mà bạn có quyền truy cập. Thông tin ứng dụng có thể gọi một hàm Apps Script nhất định, cung cấp tham số đầu vào cho hàm đó nếu cần thiết và nhận được phản hồi được trả lại.
Các ví dụ trên trang này minh hoạ cách một số thao tác thực thi phổ biến có thể với API. Để biết thêm thông tin, bao gồm yêu cầu uỷ quyền, hãy xem hướng dẫn Thực thi hàm.
Trong các ví dụ này, phần giữ chỗ scriptId dùng để cho biết nơi bạn sẽ cung cấp mã dự án tập lệnh. Làm theo các bước bên dưới để tìm mã tập lệnh:
- Trong dự án Apps Script, ở trên cùng bên trái, hãy nhấp vào Cài đặt dự án .
- Bên cạnh "Script ID" nhấp vào Sao chép.
Thực thi chức năng
Tệp scripts.run sau đây
yêu cầu gọi một hàm Apps Script có tên listFolderContent
, truyền hàm đó
Drive folderId và một số nguyên MAX_SIZE
làm đối số. Chiến lược phát hành đĩa đơn
được thực thi ở chế độ phát triển, nghĩa là hàm được thực thi gần đây nhất
phiên bản lưu của hàm được thực thi, bất kể phiên bản là gì
được triển khai dưới dạng tệp thực thi.
Giao thức yêu cầu được trình bày dưới đây. Chiến lược phát hành đĩa đơn Hướng dẫn về Thực thi hàm cho biết cách triển khai một yêu cầu chạy bằng nhiều ngôn ngữ bằng cách sử dụng Thư viện ứng dụng API.
POST https://script.googleapis.com/v1/scripts/scriptId:run
{ "function": "listFolderContent", "parameters": [ folderId, MAX_SIZE ], "devMode": true }
Phản hồi vào yêu cầu này, sau khi hàm Apps Script được gọi hoàn tất, chứa kết quả thực thi hoặc phản hồi lỗi. Ngang bằng trong ví dụ sau, hàm trả về thành công một mảng tên tệp:
{ "response": { "result": [ "fileTitle1", "fileTitle2", "fileTitle3" ] }, }
Nếu hàm gặp lỗi trong quá trình thực thi Apps Script, phản hồi có thể có dạng như sau:
{ "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 }] }] } } }