There are different ways to authenticate to Compute Engine depending on how you access
the API. For more information, see
Authenticate to Compute Engine.
Learn about REST
There are two ways to invoke the API:
If you decide not to use client libraries, you'll need to understand the basics of REST.
REST basics
REST is a style of software architecture that provides a convenient and consistent approach to requesting and modifying data.
The term REST is short for "Representational State Transfer." In the context of Google APIs, it refers to using HTTP verbs to retrieve and modify representations of data stored by Google.
In a RESTful system, resources are stored in a data store; a client sends a request that the server perform a particular action (such as creating, retrieving, updating, or deleting a resource), and the server performs the action and sends a response, often in the form of a representation of the specified resource.
In Google's RESTful APIs, the client specifies an action using an HTTP verb such as POST
, GET
, PUT
, or DELETE
. It specifies a resource by a globally-unique URI of the following form:
https://www.googleapis.com/apiName/apiVersion/resourcePath?parameters
Because all API resources have unique HTTP-accessible URIs, REST enables data caching and is optimized to work with the web's distributed infrastructure.
You may find the method definitions in the HTTP 1.1 standards documentation useful; they include specifications for GET
, POST
, PUT
, and DELETE
.
REST in the Compute Engine API
The Compute Engine API operations map directly to REST HTTP verbs.
The Compute Engine API uses the following format for URIs:
https://www.googleapis.com/compute/API_VERSION/RESOURCE_PATH
The URI contains the following values:
API_VERSION
: the API version that you want to use, which corresponds
to the launch stage of a Compute Engine
resource as follows:
- For resources in GA:
v1
- For resources in Public Preview:
beta
- For resources in Private Preview:
alpha
RESOURCE_PATH
: the path to the specific Compute Engine
resource—for example, projects/example-project/aggregated/instances
. To
see available resources for each API version, see the following:
If you want to include query parameters, then include them in the URI after a question mark
(?
):
https://www.googleapis.com/compute/API_VERSION/RESOURCE_PATH?QUERY_PARAMETERS
In the URI, QUERY_PARAMETERS is a list of query parameters, separated by ampersands
(&
)—for example,
format=json&filter=zone=us-central1-a
.