#google workspace
- Triaging Gmail with Claude Subagents
A writeup of a small agentic system I built to triage my Gmail inbox, using Claude subagents to organize and assess messages.
- PostgreSQL from Google Apps Script
Connect Apps Script to PostgreSQL via JDBC, including connection strings, JSONB and UUID workarounds, transactions, and PostGIS.
- Building a MCP Client in Google Apps Script
Learn how to communicate with Model Context Protocol (MCP) servers using Apps Script and UrlFetchApp. Incorporate the MCP client into Vertex AI tool calling.
- Using Gemini in Apps Script
Use Apps Script's Vertex AI advanced service to call Gemini for text, images, structured output, search grounding, and multi-turn chat.
- Currentonly Scopes in Google Apps Script
How Apps Script currentonly scopes limit access to an active file, and why Advanced Services, direct API calls, and openById need full scopes.
- Resolve Chat User IDs to Emails: Least Privilege
Securely resolve Google Chat User IDs to emails without Domain-Wide Delegation. Use Service Account Impersonation and custom Admin roles.
- Apps Script CacheService Limits
Unofficial Apps Script CacheService findings: key and value limits, FIFO batch eviction, edge cases, and practical cache patterns.
- UrlFetchApp: The Unofficial Documentation
The unofficial guide to Google Apps Script UrlFetchApp. Master authentication, fetchAll for parallelism, web scraping, and debugging "Address Unavailable".
- Secure Secrets in Google Apps Script
Avoid hardcoded Apps Script secrets by using PropertiesService for configuration and Google Cloud Secret Manager for sensitive values.
- Google Workspace Developer Tools MCP Server
Announcing the new MCP server for Google Workspace Developer Tools, providing AI agents with access to official documentation and API snippets.
- React Wrapper for Google Drive Picker
Announcing the new React component for the Google Drive Picker, wrapping usage of the web component for easier integration.
- Google Workspace Developer Tools VS Code Extension
Announcing the new Google Workspace Developer Tools extension for VS Code, working with Antigravity and providing OAuth2 scope linting and MCP support.
- Google Drive Picker TypeScript - Types Updated
A DefinitelyTyped update that replaced community Google Drive Picker types with autogenerated types from the official reference source.
- Google Forms - title vs name vs documentTitle
Recently I had to clarify some confusion around the title and name of a Google Form. Here is a quick explanation of the difference between the two.
- Convert docx to Google Docs with Apps Script
Programmatically convert, open, and edit Microsoft Word .docx files in Google Apps Script using the Drive API and DocumentApp.
- Google Workspace Developer Summits 2024
Save the date for the 2024 Google Workspace Developer Summits in Boston on September 12 and Berlin on September 17.
- Allow Sheets IMPORT and IMAGE URLs
Use the Sheets API to allow external URL access for IMPORT and IMAGE functions without requiring each spreadsheet user to grant consent.
- Apps Script and WebAssembly - A comprehensive guide
You can use WebAssembly with Google Apps Script! This post will cover how to do that and provide a comprehensive guide on how to get started.
- google.script.run vs. doGet/doPost
Compare google.script.run vs doGet/doPost endpoints for Apps Script web apps. Choose the best method for simple apps or complex frameworks like React/Vue.
- Drive File Get Blob and Scopes in Google Apps Script
Compare DriveApp, the Drive Advanced Service, and UrlFetchApp for retrieving Drive file blobs in Apps Script while minimizing OAuth scopes.
- Apps Script Storage Benchmarks
Benchmarks comparing CacheService, PropertiesService, and Firestore in Apps Script, including speed measurements and when each storage option fits.
- Google Cloud Region Latency in Google Apps Script
Ping results to Google Cloud regions and short code snippet demonstrating how to measure latency from Google Apps Script.
- Apps Script V8 Runtime Limitations
A comparison of the WinterCG minimum common web APIs and Apps Script's V8 runtime, including UrlFetchApp and sleep workarounds.
- Rust, Python, and WASM in Apps Script
A Google Next 2024 lightning talk on extending Apps Script with Rust, Python, and WebAssembly, with a build demonstration.
- Promises, async and await in Google Apps Script
Understand async/await and Promises in Google Apps Script. Learn why most APIs remain synchronous and how WebAssembly is the exception.
- Google Calendar - Usage Limits Exceeded
Understand why Google Calendar reports "usage limits exceeded" for external attendees and notifications, plus practical alternatives.
- Embed images from Google Drive in your website
Google Drive broke the ability to embed images with the /uc path. Here's how to embed images from Google Drive in your website.
- Using Firestore in Apps Script
Use the Firestore REST API from Google Apps Script when CacheService, PropertiesService, or Sheets cannot meet your storage requirements.
- Apps Script Service Account Impersonation
Avoid downloading service-account keys: use impersonation in Apps Script to mint access tokens for Google Cloud APIs.
- Generating Text with Gemini Pro in Apps Script
A short Apps Script example that calls the Gemini Pro REST API to generate text, then reads the response candidate text.
- Memoization in Apps Script
A generic Apps Script memoization helper that hashes a function and arguments, stores results in CacheService, and explains its limits.
- Using Vertex AI in Apps Script
How to use the Vertex AI API in Apps Script to make predictions on your data or use it in any of your other Google Workspace processes.
- Combining Google Workspace Add-ons and Editor Add-ons
Both Add-on types have their own strengths and weaknesses. Combining them could be a powerful way to build Add-ons for Google Workspace but with some caveats.
- Archiving Dependabot Emails with Apps Script
Archive Dependabot and Semantic Release emails automatically using Google Apps Script cron jobs to declutter your inbox.
- Automate Email Bankruptcy using Apps Script
An Apps Script that archives Gmail threads older than 30 days, respects Gmail's 100-thread batch limit, and runs hourly on a trigger.