Sunday, November 15, 2026SubscribeMastheadAbout
Cali ReporterCalifornia · National · West Coast · Good News

Advertisement

Technology

Google Cloud Introduces Date-Stamped API Versioning for Compute Engine

Google Cloud has rolled out a new approach to API versioning for its Compute Engine service, allowing users to select specific, date-stamped versions of the API. This change is part of a broader effort to improve…

Portrait of Benjamin Boyce
Artificial Intelligence & Technology · November 15, 2026
Share

AI-generated editorial illustration from an imagined camera angle.
AI-generated editorial illustration from an imagined camera angle. Source image: © 2006 C4Media.

Google Cloud has made multi-versioning of the Compute Engine API generally available, introducing immutable, date-stamped API versions alongside the long-lived /v1 surface (InfoQ, 2026). Stable versions are named with a YYYY-MM-DD format and are released quarterly, starting with 2026-09-01. Preview versions include a -preview suffix and are valid for one year. Callers can select a specific version using the X-Goog-Api-Version header or the $apiVersion query parameter on the unchanged /compute/v1/ path. Requests that do not specify a version continue to use /v1, which has no end-of-life date. [1]

According to software engineer Michael Murstein, the need for multi-versioning arose from the challenges of maintaining a single, mutable production surface for the /v1 API. Changes to defaults or error formats risked breaking existing scripts or required lengthy migrations. Google's new approach, called interface-based versioning, aligns with its own AIP-185, which mandates that stable versions be date-stamped and preview versions be time-bound. Each stable version is a locked snapshot of all generally available features and defaults at the time of release, with no breaking changes made after publication. [1]

Some notable differences for callers include the default behavior of the AggregatedList operation, which now returns partial results by default in date-based versions, unlike /v1. The error body is also structured as google.rpc.ErrorInfo, including reason, domain, and metadata. Additionally, new versions allow Compute Engine to refine legacy IAM permission checks and introduce safer configuration defaults. Most callers will encounter the change through updated client libraries, which now bind to date-based versions while maintaining existing import paths and namespaces. [1]

Google Cloud has made multi-versioning of the Compute Engine API generally available, adding immutable, date-stamped API versions beside the long-lived /v1 surface (InfoQ, 2026). Stable versions are named YYYY-MM-DD and released quarterly, starting with 2026-09-01; preview versions carry a -preview suffix and a one-year lifespan. A caller selects one with the X-Goog-Api-Version header or the $apiVersion query parameter on the unchanged /compute/v1/ path, and a request that names no version keeps getting /v1, which has no end-of-life date. [1]

Advertisement

Software engineer Michael Murstein writes that the problem was the shape of /v1 itself. Because it "was a single, mutable production surface shared by every customer worldwide," any behavioral improvement, "even changing a counter-intuitive default or modernizing an error format," risked breaking existing scripts or required a multi-year migration. Google calls the replacement interface-based versioning, aligned with its own AIP-185, which requires stable versions to be dates and previews to be time-bound. [1]

Each stable version is a locked snapshot of all generally available features and defaults at that date, and no breaking change is made to it after publication. The blog post names three differences a caller will notice: A default: /v1 returns partial results from AggregatedList only when the request sets returnPartialSuccess, and the date-based versions turn it on, so one failing zone no longer fails a fleet-wide query. [1]

Google Cloud has made multi-versioning of the Compute Engine API generally available, adding immutable, date-stamped API versions beside the long-lived /v1 surface (InfoQ, 2026). Stable versions are named using YYYY-MM-DD format and are released quarterly, starting with 2026-09-01. Preview versions include a -preview suffix and have a one-year lifespan. A caller can select a version using the X-Goog-Api-Version header or the $apiVersion query parameter on the unchanged /compute/v1/ path. If no version is specified, the request defaults to /v1, which has no end-of-life date. [1]

Software engineer Michael Murstein explains that the problem with the existing /v1 API was its mutable nature, which made it challenging to introduce behavioral improvements without risking breaking changes for existing users. Google's new approach, called interface-based versioning, aligns with AIP-185, requiring stable versions to be date-stamped and previews to be time-bound. Each stable version is a locked snapshot of all generally available features and defaults at the time of release, with no breaking changes made after publication. [1]

Advertisement

The blog post highlights three key differences for API callers: the default behavior of the AggregatedList operation, which now returns partial results by default in date-based versions, unlike /v1. Error bodies are now structured as google.rpc.ErrorInfo with reason, domain, and metadata, and a request for a non-existent version lists available versions in the metadata. Additionally, new versions allow Compute Engine to refine legacy IAM permission checks and introduce safer configuration defaults, while automation pinned to /v1 remains unaffected. [1]

Sources

InfoQ

Prepared with AI assistance from the cited sources.

The Cali Reporter newsletter

The stories worth your time.

California, the country, and what comes next. Join our free newsletter for reporting that keeps you informed.

By joining, you agree to receive the Cali Reporter newsletter. Unsubscribe at any time. Privacy policy.

More in Technology

Advertisement