This topic shows how to send a few simple requests to the Cloud Billing API.
For a full list of methods, see the REST or RPC reference documentation.
Before you begin
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project : Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
- Create a project
: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles .
-
Verify that billing is enabled for your Google Cloud project .
-
Enable the Cloud Billing API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles . -
Create a service account:
- Ensure that you have the Create Service Accounts IAM role
(
roles/iam.serviceAccountCreator) and the Project IAM Admin role (roles/resourcemanager.projectIamAdmin). Learn how to grant roles . -
In the Google Cloud console, go to the Create service account page.
Go to Create service account - Select your project.
-
In the Service account name field, enter a name. The Google Cloud console fills in the Service account ID field based on this name.
In the Service account description field, enter a description. For example,
Service account for quickstart. - Click Create and continue .
-
Grant the Project > Owner role to the service account.
To grant the role, find the Select a role list, then select Project > Owner .
- Click Continue .
-
Click Done to finish creating the service account.
Do not close your browser window. You will use it in the next step.
- Ensure that you have the Create Service Accounts IAM role
(
-
Create a service account key:
- In the Google Cloud console, click the email address for the service account that you created.
- Click Keys .
- Click Add key , and then click Create new key .
- Click Create . A JSON key file is downloaded to your computer.
- Click Close .
-
Set the environment variable
GOOGLE_APPLICATION_CREDENTIALSto the path of the JSON file that contains your credentials. This variable applies only to your current shell session, so if you open a new session, set the variable again. -
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project : Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
- Create a project
: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles .
-
Verify that billing is enabled for your Google Cloud project .
-
Enable the Cloud Billing API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles . -
Create a service account:
- Ensure that you have the Create Service Accounts IAM role
(
roles/iam.serviceAccountCreator) and the Project IAM Admin role (roles/resourcemanager.projectIamAdmin). Learn how to grant roles . -
In the Google Cloud console, go to the Create service account page.
Go to Create service account - Select your project.
-
In the Service account name field, enter a name. The Google Cloud console fills in the Service account ID field based on this name.
In the Service account description field, enter a description. For example,
Service account for quickstart. - Click Create and continue .
-
Grant the Project > Owner role to the service account.
To grant the role, find the Select a role list, then select Project > Owner .
- Click Continue .
-
Click Done to finish creating the service account.
Do not close your browser window. You will use it in the next step.
- Ensure that you have the Create Service Accounts IAM role
(
-
Create a service account key:
- In the Google Cloud console, click the email address for the service account that you created.
- Click Keys .
- Click Add key , and then click Create new key .
- Click Create . A JSON key file is downloaded to your computer.
- Click Close .
-
Set the environment variable
GOOGLE_APPLICATION_CREDENTIALSto the path of the JSON file that contains your credentials. This variable applies only to your current shell session, so if you open a new session, set the variable again.
Get a list of Cloud Billing Accounts
The API method to list all Cloud 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 Cloud 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 Cloud Billing on a Google Cloud project
To enable Cloud Billing on a Google Cloud project, you need to call the Cloud Billing API to
associate the Google Cloud project with an existing Cloud Billing Account
( REST
, RPC
).
The following sample code associates Google Cloud project tokyo-rain-123
with
Cloud Billing Account 012345-567890-ABCDEF
. Incidentally, the same API
method can be used to disable Cloud Billing on a Google Cloud 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
- In the Google Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete .
- In the dialog, type the project ID, and then click Shut down to delete the project.

