# Google Cloud Storage

> Connect Google Cloud Storage to BucketMate with HMAC keys

Canonical: https://docs.bucketmate.app/macos/providers/connect-google-cloud-storage

BucketMate connects to Google Cloud Storage through its S3-compatible XML API using HMAC keys.

## Prerequisites

- Google Cloud project
- Cloud Storage bucket
- HMAC access key
- HMAC secret
- Bucket location

## Endpoint and region

Use the global endpoint for the best compatibility:

```text
https://storage.googleapis.com
```

Select the bucket location as the region. BucketMate also supports custom regions when your location is not in the preset list.

## Connection steps

1. Open Google Cloud Console.
2. Create or locate an HMAC key for Cloud Storage.
3. Open BucketMate.
4. Choose **Add Connection**.
5. Select **Google Cloud Storage**.
6. Enter `https://storage.googleapis.com`.
7. Enter the HMAC access key as the access key ID.
8. Enter the HMAC secret as the secret access key.
9. Select the bucket location.
10. Use **Test Connection**.
11. Save the connection.

## Common issues and fixes

### HMAC keys are required

BucketMate's S3-compatible connection uses HMAC credentials. Service account JSON keys are not the same credential format. Create HMAC keys for Cloud Storage access.

### Locational endpoints may have limited compatibility

BucketMate warns when a locational endpoint may not support every operation. Use `https://storage.googleapis.com` unless you specifically need a locational endpoint.

### Bucket list permission is restricted

If credentials can access a bucket but cannot list all buckets, turn off **Credentials have permission to list buckets** and enter bucket names manually.

### Direct URLs do not open

Direct copied URLs work only when the object is public or otherwise reachable. Use presigned links for private objects.

## BucketMate tips

- Use manual bucket names when HMAC credentials are scoped to specific buckets.
- Keep the endpoint global unless your storage setup requires a different endpoint.
- Use custom-domain URL copy only after saving a custom domain for the bucket.

## Read More

- [Google Cloud Storage interoperability](https://docs.cloud.google.com/storage/docs/interoperability)
- [Google Cloud Storage HMAC keys](https://docs.cloud.google.com/storage/docs/authentication/hmackeys)
