Business process automation and API integrations with Google Apps Script
Business process automation here means software, not machinery: a script or an API integration that moves data between systems, fills a spreadsheet or sends an email for you. webrocks builds it in Google Apps Script or as custom JavaScript and Node.js code, depending on which is easier to maintain for the process in question.
This text was written with the help of artificial intelligence. Statements about platforms are based on the official documentation linked in the article. Tomáš Hanus is responsible for the content, webrocks.cz@gmail.com.
- Who it is for
- For businesses and freelancers who keep copying data by hand between spreadsheets, emails and other tools and want it done reliably and automatically.
- What you get
- A working script or API integration running under your own account, scheduled runs with error alerts and a short description of how it works and how to change it.
- Price
-
- Automation: Scope-based
Indicative, based on the pricing. The price depends on scope; webrocks prepares a specific offer based on your brief.
What business process automation is and when it makes sense
Business process automation is software that does repetitive data work for you: it moves data between systems, writes it to a spreadsheet, checks it or sends an email. Not industrial automation, but the office routine someone now does by copy and paste.
Typical tasks include:
- API integrations: an API is the interface two programs use to exchange data, such as a shop, CRM or invoicing tool and a spreadsheet,
- spreadsheet import and export: regular downloads, merging sources, converting to the format an accountant or another system needs,
- automated emails from a spreadsheet and alerts when something changes or is missing,
- Google Apps Script, Google’s tool for JavaScript scripts that work with Sheets, Gmail, Calendar and other Google Workspace services.
A real example runs on this website. The contact form on webrocks.cz sends enquiries to Google Apps Script, which writes them to a Google Sheet, sends a notification and sends the sender a confirmation. No extra server, nothing copied by hand.
It makes sense where a task repeats, has clear rules and manual mistakes cost money.
Who automation is for and who it is not for
It is a good fit if:
- you do the same data work every week or every day,
- the data already sits in systems with an API or in Google Sheets,
- you know what the correct result looks like and can describe it.
It is not a good fit if:
- the procedure changes every time and needs human judgement,
- the task comes up once a year and takes a few minutes by hand,
- you need an application with its own interface, users and permissions. That is a custom web application, not a script.
A browser helper on a website you cannot change calls for a custom Chrome extension.
Apps Script, Make/Zapier/n8n or custom code?
There are usually three ways to solve the same task. It depends on where the data lives, how complex the rules are and who will maintain it.
A ready-made tool with connectors (Make, Zapier, n8n) builds the task from ready-made connections to individual apps (Make apps, Zapier Zaps, n8n workflows). It is faster for common services that already have a connector and simple logic, such as “new row in the sheet, send a message”. You can often edit it yourself in the service’s editor, but you depend on its terms and connectors.
Google Apps Script pays off when the data lives in Google Workspace: Sheets, Gmail, Forms, Calendar, Drive. According to the Apps Script overview, it runs on Google’s servers, needs no installation and has built-in libraries for Sheets, Gmail and other Google apps, so it needs no hosting. It suits forms, reports, emails from a spreadsheet and smaller API integrations.
Custom Node.js code fits large data volumes, long processing, precise control over errors and retries, or systems with no connector. It needs somewhere to run and someone to maintain it.
Start with the simplest option that handles the task reliably and move to custom code only when it is not enough.
How the automation process works
- Describing the process. What is done by hand today, where the data comes from and goes to, and what the correct result looks like. Sample data and a list of exceptions help.
- Choosing the tool. Apps Script, custom code or a ready-made tool, as above. For an API, its options and limits are checked.
- Building on a copy. The script is built and tried on a copy, not live data.
- Deployment. Triggers (schedule, form submission, sheet change) and failure alerts are set up.
- Handover. You get a description of what the script does, where it runs and how to adjust it.
What you get
- working Apps Script or Node.js code under your account or in your repository,
- scheduled runs and error handling, so a failed run does not go unnoticed,
- API keys stored outside the code and outside the spreadsheet,
- a short description: what it does, its data sources, its limits and how to switch it off.
Google Apps Script limits
Apps Script has fixed quotas. According to the Apps Script quotas documentation, as of October 2026:
| Limit | Standard Google account (Gmail) | Google Workspace |
|---|---|---|
| Single script run | max. 6 minutes | max. 6 minutes |
| Email recipients per day | 100 | 1,500 |
| Total trigger runtime per day | 90 minutes | 6 hours |
Above a quota, the script stops with an error, and according to the quotas documentation Google can change quotas at any time without notice, so do not run right at the limit: split large data into batches, avoid bulk mailings from a standard Gmail account and consider custom code for long processing.
What to watch out for
- The other side’s API changes. Formats, versions and limits change, so an integration needs occasional maintenance and an alert when it breaks.
- Limits of external APIs. For example, the Google Sheets API limits requests per minute and returns error 429 above it. A well-written script waits and retries with a growing delay.
- A silent failure is worse than no automation. A script that stops unnoticed means missing data. Failure alerts are basic.
- The account it runs under. According to the Apps Script documentation, installable triggers always run under the account of the person who created them, so a script under an employee’s personal account may stop when they leave. A company account is safer; send sensitive data only where needed.
- Paid services in the background. Apps Script itself does not require a paid Workspace plan, but Google Cloud services have their own pricing. For the Sheets API, Google’s limits documentation mentions plans to charge for exceeding quotas later in 2026, so check whether the project has billing enabled.
How much automation costs
The webrocks price list states Automation: depending on scope, covering API integrations, data import and export, emails and alerts, scripts and Apps Script. The indicative hourly rate in the price list is from 500 CZK/hr. The price depends on the scope and complexity of the project.
It rises with more connected systems, poorly documented APIs, many exceptions, large data volumes and the need for a server. It falls when the data is already in Google Sheets, the procedure is clearly described with sample data and there is one well-documented API.
Describe what you do by hand today and in which systems using the contact form. You will get a reply within 24 hours.
Frequently asked questions
When is it worth automating a process?
When it repeats regularly, say weekly, follows clear rules and manual work takes time or causes mistakes. One-off or highly variable tasks rarely pay off.
What if the other side changes its API?
The integration may break or return different data, so it needs error alerts and documentation for adjustments. Plan for this maintenance in advance.
Who has access to the data?
The recommendation is to run it under your company account, with the spreadsheets, scripts and API keys belonging to you. The developer only needs temporary access, which you remove after handover.
Does Google Apps Script have limits?
Yes, according to the quotas documentation: 6 minutes per run even on paid Workspace, and daily email quotas of 100 recipients on Gmail, 1,500 on Workspace. Quotas may change.
Is Google Apps Script free?
It does not require a paid Workspace plan; according to the product page, a Gmail account is enough. The services the script calls, such as some Google Cloud services with their own pricing or external APIs, may still be paid.
Sources
- Google for Developers: Google Apps Script overview
- Make Apps Documentation: Introduction to Make apps
- Zapier Help Center: Create Zaps
- n8n Docs: Understand workflows
- Google for Developers: Apps Script installable triggers
- Google for Developers: Quotas for Google Services (Apps Script)
- Google for Developers: Google Sheets API usage limits
- Google Workspace: Apps Script
- Google Cloud: Pricing overview