| Apps Script | |
|---|---|
| Developer | |
| Initial release | August 19, 2009; 16 years ago (2009-08-19)[1] |
| Written in | JavaScript |
| Type | Web application framework, scripting framework |
| Website | script |
Google Apps Script is ascripting platform developed byGoogle for light-weight application development in theGoogle Workspace platform. Google Apps Script was initially developed by Mike Harm as a side project while working as a developer onGoogle Sheets.[2]
The primary function of Google Apps Script is to facilitate the creation of custom tools for organizations, primarily focusing on automating tasks and simplifying system administration processes. It supports a community-based model for user support.
Google Apps Script was first publicly announced in May 2009 when a beta testing program was announced by Jonathan Rochelle, then Product Manager forGoogle Docs.[3] In August 2009, Google Apps Script was subsequently made available to all Google Apps Premier and Education Edition customers.[4]
Until 2020, Google Apps Script was based onMozilla's RhinoJavaScript (JS) interpreter, which limited its JS language support to version 1.6, with a subset of theECMAScript 5 API.[5] In March 2020, Google announced the introduction of theV8 JS runtime, bringing with it full support of modernECMAScript except for JS modules.[6]
The development environment for Google Apps Script is hosted in the cloud, with anIDE with adebugger for developing scripts directly within a web browser. The infrastructure provided by Google serves as the execution environment for Apps Script projects. This platform enables the automation of tasks across Google services and integration with third-party applications.[7] Additionally, Google Apps Script facilitates the development of add-ons for Google Docs, Sheets, and Slides, enhancing their functionality.[8]
This sectionmay be too technical for most readers to understand. Pleasehelp improve it tomake it understandable to non-experts, without removing the technical details.(March 2024) (Learn how and when to remove this message) |
Google Apps Script has a number of different limitations. As a cloud-based service, Apps Script limits the time that a user's script may run, as well as limiting access to Google services.[9] Currently, Google Apps Script does not allow direct connections to internal databases, which is key to building business apps. However, this can be overcome via the use of theJDBC service if connections are allowed from Google servers to the internal database server.[10] Additionally, due to the cloud nature of Apps Script, functions related to date and time will produce results that seem to be incorrect due to the data crossingtime zones. Using Date/Time objects and functions without precise declaration and thorough testing may result in inaccurate results.[11]
Alongside this Apps Script can be difficult to work with when multiple people are working on a single project. As App Script development is done through an online IDE it can be difficult to integrate App Script projects with traditionalVersion control systems likeGit.[12] One alternative to this would be to use a tool like Clasp which allows developers to work on their Apps Script projects locally instead of through a web browser.[13]
In March 2014, Google introduced add-ons forDocs andSheets (soon followed by Forms). The add-on stores let users add extra features to Google editors, such as mail-merging, workflows, and diagram builders. All add-ons are either 100% built with Apps Script or simply use Apps Script to display a UI in the Google editors while relying on an external back-end to perform some tasks. For example, MailChimp, a mail-merging tool, has an add-on for Google Docs that communicates with MailChimp platform to send emails.
Before add-ons, it was possible to publish scripts for Google Sheets in the Script Gallery. When users installed scripts through this gallery, a copy of the Apps Script code was installed on the user's Sheet. With add-ons, the source code is not visible to the end user, and everyone is using the latest version published by the developer. This new approach makes it easier to support existing code and helped convince several companies, such asMailChimp orLucidchart to invest in Apps Script.
As part of the add-ons release, Google also introduced a UI Style Guide[14] and CSS package to help developers build add-ons that integrate into the editors. Each add-on is also reviewed by Google before its publication, and developers can benefit from advice from Googlers to provide a better user experience. It is not possible to embed ads in add-ons but it is possible to monetize them.[15]