Release Notes

This page contains release notes for each version of the Google Cloud Storage JSON API.

Current version: v1

Release history

April 30th, 2014

Released v1 of the JSON API

We are pleased to announce version v1 of the JSON API. The JSON API is now generally available and is fully supported by Google. Upgrading is generally as easy as changing references to "v1beta2" to "v1", but you should read our migration guide for details on the differences before upgrading.

Version v1 of the JSON API introduces the ability to use predefined ACLs, like public-read or project-private, when manipulating bucket and object ACLs. It also introduces a new contentEncoding URL parameter that can be used to denote specific content encodings for use when uploading objects without specifying metadata.

Deprecated the v1beta2 JSON API

Version v1beta2 is now deprecated. If you're using v1beta2, you will need to switch to v1 over the next six months. Version v1beta2 will remain available until October 31, 2014.

Version v1beta1 remains deprecated. We have extended its deprecation period to match that of v1beta2. It will also be available until October 31, 2014.

September 9th, 2013

A minor update to address a known issue in storage.objects.patch.

July 22nd, 2013

A minor update to support Object Lifecycle Management: New Buckets resource field lifecycle – configures lifecycle management policies.

May 7th, 2013

Google Cloud Storage JSON API is available for preview!

Released new API Version v1beta2

Version v1beta1 is now deprecated and customers should switch to v1beta2. Version v1beta1 will remain available until November 7th, 2013 October 31st, 2014 (Amended, see April 30th notes). One very important change in v1beta2 is that the data field has been removed. This means you'll no longer be able to create new objects without going through the upload/ path, or retrieve object data in the JSON. The complete changes in v1beta2 include:

  • New resource field etag added to all resources.
  • New Buckets resource fields:
    • logging – configures where logs for this bucket are written.
    • versioning – keeps multiple versions of objects.
    • cors – configures Cross-Origin Resource Sharing (CORS) behavior.
    • storageClass – controls the type of storage used by this bucket.
    • name – name of the bucket. Use this instead of id when creating a bucket.
  • Updated Objects resource fields:
    • media field removed and its contents refactored:
      • contentType field moved to the top level.
      • timeCreated field removed. Was a misnomer anyway: see updated field below.
      • length field moved to the top level and renamed to size.
      • hash field moved to the top level and renamed to md5Hash.
      • algorithm field removed; now the algorithm is part of the field name.
      • link field moved to the top level and renamed mediaLink.
      • data field removed! No more metadata-only uploads; must use the /upload URI. No more data-via-metadata downloads.
    • updated field added – time the object metadata was last changed.
    • generation and metageneration fields added for version control.
    • timeDeleted field added – if the object is deleted (i.e., a historic object), this is the time when it was deleted.
    • crc32c field added – CRC32c checksum.
    • componentCount field added – number of objects in a composite object. See the new storage.objects.compose method below.
  • New methods:
  • Updated methods:
    • storage.buckets.insert – now uses a URI parameter to specify the project, and it can be either the numeric project ID or the globally unique project name.
    • storage.objects.list – now allows you to list all object versions.
  • New collection defaultObjectAccessControls, which like the other access controls collections, allow you to perform line-item ACL edits on the defaultObjectAcl of a bucket.
  • Projection parameters and .list method parameter max-results have been renamed to use camelCase.

To update your application code to v1beta2:

  1. Change all URIs from v1beta1 to v1beta2. For example:
  2. Update your application code to reflect the following changes, if necessary:
    • If you were using storage.buckets.insert, set the name rather than the id, and use the project parameter rather than specifying the project in the resource body.
    • If you were using the field to insert new objects, instead use the Media uploader methods of the Google APIs client (if they exist), or, if using raw HTTP, use the /upload URI. See How to Upload Objects for the available options.
    • If you were using the field to download object data, instead use the Media downloader methods of the Google APIs client (if they exist).
Known Issues
  • Using storage.objects.patch to remove metadata keys by setting the value to null results in an error.

June 30th, 2012

Google Cloud Storage JSON API is available for limited preview!

Known Issues

Send feedback about...

Cloud Storage Documentation