Please note that the contents of this offline web site may be out of date. To access the most recent documentation visit the online version .
Note that links that point to online resources are green in color and will open in a new window.
We would love it if you could give us feedback about this material by filling this form (You have to be online to fill it)



Compute Engine Client Libraries

The Google Compute Engine API is built on HTTP and JSON, so any standard HTTP client can send requests to it and parse the responses.

However, instead of creating HTTP requests and parsing responses manually, you may want to use client libraries to do so. Client libraries provide better language integration, improved security, and support for making calls that require user authorization.

You can use the Compute Engine API through a number of Google-provided libraries or through third-party open source libraries that are known to work on Compute Engine. This document describes the Google-provided libraries and also describes some available third-party open source libraries.

Available libraries

Community libraries

Library Language(s) Vendor Website Getting started on Compute Engine

libcloud Python Community Website Documentation jclouds Java, Clojure Community Website Documentation fog.io Ruby Community Website Documentation

Google API client libraries

Library Language(s) Vendor Website Getting started on Compute Engine
Google APIs Java Client Library Java Google Website Documentation
Google APIs .NET Client Library .NET Google Website Documentation
Google APIs Go Client Library Go Google Website Documentation
Google APIs JavaScript Client Library Javascript Google Website Documentation
Google APIs Ruby Client Library Ruby Google Website Documentation
Google APIs Node.js Client Library Node.js Google Website Documentation
Google API Objective C Client Library Objective C Google Website Documentation
Google API PHP Client Library PHP Google Website Documentation
Google API Python Client Library Python Google Website Documentation

libcloud

libcloud is a Python library for interacting with many popular Cloud service providers through a single unified API.

Compute Engine Notes

The Apache libcloud API project has been receiving solid support and updates for Compute Engine since July 2013. It supports a broad set of Compute Engine features including instances, disks, networks/firewalls, and load balancer support. The handy getting-started demo gives a good code example of how to use libcloud and Compute Engine.

jclouds

jclouds is an open source library that allows you to use Java and Clojure across multiple Cloud providers.

Compute Engine Notes

The jclouds cloud API does have Compute Engine support in “labs”. See the jclouds-labs-google repository for work being done to provide Compute Engine support and to elevate the lab into jclouds-core.

fog.io

fog.io fog.io is an open source Ruby library that allows you to interact with multiple Cloud services through one API.

Compute Engine Notes

The fog.io cloud API has had support for Compute Engine since version 1.11.0 in May 2013. Take a look at the fog.io documentation to get started with Compute Engine and fog. It primarily supports instance operations such as create, destroy and bootstrap.

Google APIs Java Client Library

This page contains information about getting started with the Compute Engine API using the Google APIs Client Library for Java. In addition, you may be interested in the following documentation:

Sample

The compute-engine-cmdline-sample may help you get started using the client library.

Add Library to Your Project

Select your build environment (Maven or Gradle) from the following tabs, or download a zip file containing all of the jars you need:

Download

Download the Compute Engine API v1 Client Library for Java .

See the compute/readme.html file for details on:

  • What the zip file contains.
  • Which dependent jars are needed for each application type (web, installed, or Android application).

The libs folder contains all the of the globally-applicable dependencies you might need across all application types.

Google APIs .NET Client Library

This page contains information about getting started with the Compute Engine API using the Google APIs Client Library for .NET. In addition, you may be interested in the following documentation:

Downloading the library

Install a NuGet package from those available at Google.Apis.compute .

Google APIs Go Client Library

This section contains information about getting started with the Compute Engine API using the Google APIs Go client library. In addition, you may be interested in the following documentation:

Downloading and installing the library

To install the library, run the following command:

$ go get code.google.com/p/google-api-go-client/compute/v1

Using the library

Import the library in your code:

package main

  import (
      "code.google.com/p/google-api-go-client/compute/v1"
  )

Google APIs JavaScript Client Library

This section contains information about getting started with the Compute Engine API using the Google APIs JavaScript client library. In addition, you may be interested in the following documentation:

Using the API

To use the API, you must first load the library. In you code, add:

<script src="https://apis.google.com/js/client.js?onload=handleClientLoad"></script>

Google APIs Ruby Client Library

This page contains information about getting started with the Compute Engine API using the Google APIs Client Library for Ruby. In addition, you may be interested in the following documentation:

Installing the google-api-client gem

If you haven't installed the Google APIs Client Library for Ruby before, open a terminal and install using RubyGems :

$ gem install google-api-client

If you already have the gem installed and would simply like to update to the latest version:

$ gem update -y google-api-client

Depending on your system, you may need to prepend these commands with sudo .

Getting started with the Google APIs Client Library for Ruby

Be sure to check our extensive Getting started guide for a quick overview of how to make your first request.

Google APIs Node.js Client Library

This section contains information about getting started with the Compute Engine API using the Google APIs Node.js client library. In addition, you may be interested in the following documentation:

Installing the library

To install the Node.js library, you must use npm :

$ npm install googleapis

Using the library

Use the library to dynamically load your desired APIs:

var googleapis = require('googleapis');

googleapis
    .discover('compute', 'v1')
    .execute(function(err, client) {
  if (err) {
    console.log('Problem during the client discovery.', err);
    return;
  }

Google APIs Objective C Client Library

This section contains information about getting started with the Compute Engine API using the Google APIs Objective C client library. In addition, you may be interested in the following documentation:

Linking to the library

Follow the instructions to add the Google APIs Objective-C Client Library to a Project .

Google APIs PHP Client Library

This section contains information about getting started with the Compute Engine API using the Google APIs PHP client library. In addition, you may be interested in the following documentation:

Downloading the library

The library can be installed by adding it as a dependency to your composer.json.

"require": {
  "google/apiclient": "1.0.*"
}

If you prefer, the library is available on GitHub and can be cloned into a local repository with the git clone method.

git clone https://github.com/google/google-api-php-client.git .

Using the library

The best way to define the location of library files is to add it to the path in the PHP.ini configuration file.

include_path = ".:/usr/local/lib/php:/path/to/google-api-php-client/src"

Alternatively, the same ini directive can be set dynamically in your code.

set_include_path(get_include_path() . PATH_SEPARATOR . '/path/to/google-api-php-client/src');

Google APIs Python Client Library

This page contains information about getting started with the Compute Engine API using the Google APIs Client Library for Python. In addition, you may be interested in the following documentation:

System requirements

Manual Installation

To install the library and all of its dependencies, open a terminal and do one of the following:

Depending on your system, you may need to prepend those commands with sudo .

App Engine

Because Google App Engine requires that all of the source files for a library must be present in your App Engine project, there is a special installation procedure for App Engine. To install the library and all of its dependencies in an App Engine project, download the file named google-api-python-client-gae- N.M .zip from the list of downloads , where N.M is the version number of the latest release. Unzip that file into your project. For example:

$ cd myproject
$ unzip google-api-python-client-gae-1.1.zip

Authentication required

You need to be signed in with Google+ to do that.

Signing you in...

Google Developers needs your permission to do that.