Send Requests

This topic shows how to send a few simple requests to the Google Cloud Billing API.

For a full list of methods, see the REST or RPC reference documentation.

Before you begin

  1. Sign in to your Google Account.

    If you don't already have one, sign up for a new account.

  2. Select or create a GCP project.

    Go to the Manage resources page

  3. Make sure that billing is enabled for your project.

    Learn how to enable billing

  4. Enable the Cloud Billing API.

    Enable the API

  5. Set up authentication:
    1. In the GCP Console, go to the Create service account key page.

      Go to the Create Service Account Key page
    2. From the Service account drop-down list, select New service account.
    3. In the Service account name field, enter a name .
    4. From the Role drop-down list, select Project > Owner.

      Note: The Role field authorizes your service account to access resources. You can view and change this field later by using GCP Console. If you are developing a production app, specify more granular permissions than Project > Owner. For more information, see granting roles to service accounts.
    5. Click Create. A JSON file that contains your key downloads to your computer.
  6. Set the environment variable GOOGLE_APPLICATION_CREDENTIALS to the file path of the JSON file that contains your service account key. This variable only applies to your current shell session, so if you open a new session, set the variable again.

Get a list of billing accounts

The API method to list all billing accounts (REST, RPC) is the simpest method in the API, as it has no required parameters, so it's a good place to start. The method simply returns all billing accounts that you have permission to view.

Protocol

GET https://cloudbilling.googleapis.com/v1/billingAccounts

Java

    ListBillingAccountsResponse result = service.billingAccounts().list().execute();

Retrieve a particular billing account

To retrieve a particular billing account (REST, RPC), you'll need to know the billing account ID. This example uses the sample ID 012345-567890-ABCDEF.

Protocol

GET https://cloudbilling.googleapis.com/v1/billingAccounts/012345-567890-ABCDEF

Java

    BillingAccount result = service.billingAccounts()
        .get("billingAccounts/00C5EA-61187E-D842F2").execute();

Enable billing on a project

To enable billing on a project, you need to call the API to associate the project with an existing billing account (REST, RPC). The following sample code associates project tokyo-rain-123 with billing account 012345-567890-ABCDEF. Incidentally, the same API method can be used to disable billing on a project, by setting billingAccountName to empty.

Protocol

PUT https://cloudbilling.googleapis.com/v1/projects/tokyo-rain-123/billingInfo

{
  "billingAccountName": "billingAccounts/012345-567890-ABCDEF"
}

Java

    service.projects().updateBillingInfo(
            "projects/tokyo-rain-123",
            new ProjectBillingInfo().setBillingAccountName("billingAccounts/012345-567890-ABCDEF"))
        .execute();

Clean up

  1. In the GCP Console, go to the Projects page.

    Go to the Projects page

  2. In the project list, select the project you want to delete and click Delete project. After selecting the checkbox next to the project name, click
      Delete project
  3. In the dialog, type the project ID, and then click Shut down to delete the project.
Was this page helpful? Let us know how we did: