Google Storage claims they support interoperability in their solution with Amazon AWS S3 and Eucalyptus Systems APIs.

source: https://cloud.google.com/storage/docs/interoperability

Can the aws-sdk for Java, or Node.js, or Python, be used to store and retrieve objects with the Google Storage APIs?

2 Answers 2


Yes, you can use the AWS SDK to store objects within google storage.

From Simple migration:

In a simple migration from Amazon S3 to Google Cloud Storage, you can use your existing tools and libraries for generating authenticated REST requests to Amazon S3, to also send authenticated requests to Google Cloud Storage. The changes you need to make to your existing tools and libraries are described in this section.

To get set up for a simple migration do the following:

  • Set a default Google project.
  • Get a developer key.
  • In your existing tools or libraries, make the following changes:
    • Change the request endpoint to use the Cloud Storage request endpoint.
    • Replace the Amazon Web Services (AWS) access and secret key with the corresponding Cloud Storage access key and secret key (collectively called your Google developer key).

That's it! At this point you can start using your existing tools and libraries to send keyed-hash message authentication code (HMAC) requests to Google Cloud Storage.

When you use the Cloud Storage XML API in a simple migration scenario, specifying the AWS signature identifier in the Authorization header lets Cloud Storage know to expect x-amz-* headers and Amazon S3 ACL XML syntax in your request.

Note: A simple migration from Amazon S3 is an easy and quick way to get started using Google Cloud Storage, with a minimal investment in time and changes to your existing code. After you have some experience with a simple migration, you can fully transition to Google Cloud Storage to take advantage of all its features. For more information, see Full Migration.


Most of the AWS SDKs mentioned support constructing a custom endpoint, for example as described here for Node.JS.

Setting the endpoint to storage.googleapis.com and using your GCP access credentials should enable you to operate the Google storage backend service "like S3".

  • 1
    Is this just in theory, or does this actually work? Commented Mar 1, 2017 at 11:11

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.