canonical: https://jentic.com/apis/googleapis.com/firebasestorage

# Google Cloud Storage for Firebase API

The Cloud Storage for Firebase API enables programmatic management of Cloud Storage buckets used by Firebase projects. It links existing Google Cloud Storage buckets to a Firebase project, creates default buckets, and removes Firebase access from buckets when needed. This management API complements the client SDKs that perform actual upload and download operations against linked buckets.

## For AI agents

Link, list, and unlink Google Cloud Storage buckets for use in Firebase projects, and provision a default bucket. Designed for project-level configuration of Firebase storage.

## Scope

Does not handle file uploads, downloads, or object-level ACLs - use the Cloud Storage API for object operations and this API only for Firebase project linkage.

## Capabilities

- Link an existing Cloud Storage bucket to a Firebase project with addFirebase
- Provision a default storage bucket for a Firebase project
- List Cloud Storage buckets linked to a given Firebase project
- Retrieve metadata for a single linked bucket
- Remove Firebase access from a Cloud Storage bucket with removeFirebase

## Use cases

### Provision Storage for a New Firebase App

When standing up a new Firebase project, provision the default Cloud Storage bucket so the Firebase client SDKs can upload user content immediately. This API call creates the default bucket binding so mobile and web SDKs can write images, videos, and files without additional setup. The whole step takes a single POST and is typically scripted as part of project bootstrap.

Example prompt: Call POST /v1beta/projects/{project}/defaultBucket on a freshly created Firebase project and confirm the default bucket name in the response.

### Link Additional Buckets to a Firebase Project

Teams often have multiple Cloud Storage buckets for different content classes (user uploads, public assets, backups). Use addFirebase to link any existing bucket to a Firebase project so Firebase Security Rules and client SDKs can access it. The bucket data itself is unchanged; only the Firebase association is added.

Example prompt: Call POST /v1beta/projects/{project}/buckets/{bucket}:addFirebase to link a named GCS bucket to the Firebase project and verify it appears in the buckets list.

### Audit Firebase-Linked Storage

Security and compliance reviews need an inventory of which buckets are linked to which Firebase projects. List buckets per project to produce that inventory and detect drift. The GET buckets endpoint returns every bucket associated with a project, supporting audit workflows without scraping the Firebase console.

Example prompt: Call GET /v1beta/projects/{project}/buckets, paginate through results, and produce a list of bucket names linked to the project.

### Agent-Managed Firebase Storage Configuration

An AI agent triggered by an internal platform request can provision and link Cloud Storage buckets for new Firebase projects through Jentic. The agent searches for the operation, loads its schema, and executes addFirebase or defaultBucket calls without the developer ever holding the underlying OAuth credentials. This converts a multi-step Cloud Console workflow into a single agent invocation.

Example prompt: Use Jentic to search 'link a cloud storage bucket to firebase', load the addFirebase operation schema, and execute it for a target project and bucket pair.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | /v1beta/{+bucket}:addFirebase | Link an existing Cloud Storage bucket to a Firebase project |
| POST | /v1beta/{+bucket}:removeFirebase | Remove Firebase access from a bucket |
| GET | /v1beta/{+parent}/buckets | List buckets linked to a Firebase project |
| GET | /v1beta/{+name} | Get a single linked bucket |
| POST | /v1beta/{+parent}/defaultBucket | Create the default bucket for a Firebase project |

## Key resources

- **buckets** — Cloud Storage buckets linked to a Firebase project; list, get, add, and remove.
- **defaultBucket** — Default Cloud Storage bucket associated with a Firebase project.

## Why Jentic

- **Setup:** Wiring the Cloud Storage for Firebase API by hand means setting up Google OAuth 2.0 with a service account, requesting the cloud-platform scope, and coding the bucket-linkage calls against Google's spec. Through Jentic you install once, import the Cloud Storage for Firebase API from the API Directory, store the service-account credential once, and your agent calls it.
- **Permission scoping:** This API puts the bucket resource in the URL path (/v1beta/{bucket}:addFirebase, /v1beta/{parent}/buckets), so a rule can pin your agent to one bucket and nothing else. You choose the operations it may call, so removeFirebase is not included unless you add them.
- **Credential handling:** Your Google service-account credential is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'link a bucket to Firebase' or 'set a default bucket', and Jentic returns the matching operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **Cloud Storage API** — The underlying Google Cloud Storage API for object upload, download, and bucket administration.
- **Firebase Realtime Database API** — Firebase's realtime JSON datastore, often used alongside Firebase Storage for app data.
- **Firebase Hosting API** — Deploys static assets and dynamic content for Firebase projects.

## FAQ

### What authentication does the Cloud Storage for Firebase API use?

It uses Google OAuth 2.0 with the Cloud Platform scope. Through Jentic, the OAuth credentials are stored encrypted in your Jentic One instance and the agent receives a scoped access token, so raw service account keys never enter the agent context.

### Can I upload files with this API?

No. This API only manages the link between Cloud Storage buckets and Firebase projects. File uploads and downloads happen through the Firebase client SDKs or the underlying Cloud Storage JSON API against the linked bucket.

### What are the rate limits for the Cloud Storage for Firebase API?

Google enforces standard per-project quotas on Firebase management APIs, typically a few hundred requests per minute. These management calls are infrequent compared to runtime traffic, so the limits rarely bind in practice.

### How do I link an existing bucket to Firebase through Jentic?

Search Jentic for 'link a cloud storage bucket to firebase', load the schema for POST /v1beta/{bucket}:addFirebase, and execute it with the project and bucket identifiers. Jentic handles OAuth and returns the linked bucket resource.

### Is the Cloud Storage for Firebase API free?

The management API itself has no charge. Storage and bandwidth on the linked Cloud Storage buckets are billed under Firebase Storage and Google Cloud Storage pricing.

### What happens when I call removeFirebase on a bucket?

The bucket is unlinked from the Firebase project so Firebase Security Rules and client SDKs can no longer access it. The bucket and its objects remain intact in Google Cloud Storage.

### Can I limit what my agent is allowed to do with the Cloud Storage for Firebase API?

Yes. Because you run Jentic One yourself, your own rules decide which operations and credentials the agent may use. This API carries the bucket resource in the URL path (/v1beta/{bucket}:addFirebase and /v1beta/{parent}/buckets), so you can pin the agent to a single bucket and no other. You also choose the operations it may call, so a destructive call like removeFirebase stays out of reach unless you explicitly allow it.
