Enabling APIs SOP
✅ Fresh -- Updated March 2026 from official Google Cloud documentation.
Purpose
Enable, disable, list, and batch-manage Google Cloud APIs for a project.
Prerequisites
- A Google Cloud project
gcloudCLI installed and initializedserviceusage.services.enableIAM permission (usually viaroles/serviceusage.serviceUsageAdminorroles/owner)
Procedure
Step 1: List Available APIs
View all APIs you can enable:
bash
gcloud services list --availableFilter by name:
bash
gcloud services list --available --filter="name:compute"Step 2: Enable a Single API
bash
gcloud services enable compute.googleapis.comCommon API service names:
| Service | Service Name |
|---|---|
| Cloud Storage | storage.googleapis.com |
| BigQuery | bigquery.googleapis.com |
| Pub/Sub | pubsub.googleapis.com |
| Cloud Run | run.googleapis.com |
| Cloud Functions | cloudfunctions.googleapis.com |
| Vertex AI | aiplatform.googleapis.com |
| Cloud SQL | sqladmin.googleapis.com |
| Cloud Logging | logging.googleapis.com |
| Cloud Monitoring | monitoring.googleapis.com |
| IAM | iam.googleapis.com |
| Cloud KMS | cloudkms.googleapis.com |
| Kubernetes Engine | container.googleapis.com |
Step 3: Batch Enable Multiple APIs
bash
gcloud services enable \
storage.googleapis.com \
pubsub.googleapis.com \
bigquery.googleapis.com \
logging.googleapis.com \
monitoring.googleapis.comStep 4: List Enabled APIs
bash
gcloud services list --enabledFormat as a table:
bash
gcloud services list --enabled --format="table(name, title)"Step 5: Check if a Specific API is Enabled
bash
gcloud services list --enabled --filter="name:storage.googleapis.com"Returns output if enabled, empty if not.
Step 6: Disable an API
bash
gcloud services disable translate.googleapis.comWARNING
Disabling an API may break applications that depend on it. Use --force only if you are certain no active workloads use it.
Force disable (skip dependency check):
bash
gcloud services disable translate.googleapis.com --forceStep 7: Enable APIs via REST
bash
curl -X POST \
"https://serviceusage.googleapis.com/v1/projects/PROJECT_NUMBER/services/storage.googleapis.com:enable" \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json"Step 8: Enable APIs via Terraform
hcl
resource "google_project_service" "storage" {
project = "my-project"
service = "storage.googleapis.com"
disable_dependent_services = false
disable_on_destroy = false
}API Enablement Flow
Verification Checklist
- [ ]
gcloud services list --enabledshows the target API - [ ] A test API call to the enabled service returns 200 (not 403 "API not enabled")
- [ ] Billing is linked if the API requires it
- [ ] IAM roles are configured for the calling identity
See Also
- Getting Started SOP -- Full setup walkthrough
- Authentication SOP -- Set up credentials after enabling
- API Catalog -- Complete list of GCP API categories