# Backblaze B2

> Connect Backblaze B2 buckets to BucketMate with the S3-compatible API

Canonical: https://docs.bucketmate.app/macos/providers/connect-backblaze-b2

BucketMate connects to Backblaze B2 through its S3-compatible endpoint.

## Prerequisites

- Backblaze account
- B2 bucket
- Application Key ID
- Application Key
- Bucket region

## Endpoint and region

Use the endpoint for your B2 region:

```text
https://s3.<region>.backblazeb2.com
```

Examples:

| Region | Endpoint |
| --- | --- |
| `us-west-000` | `https://s3.us-west-000.backblazeb2.com` |
| `us-west-001` | `https://s3.us-west-001.backblazeb2.com` |
| `us-west-002` | `https://s3.us-west-002.backblazeb2.com` |
| `us-east-005` | `https://s3.us-east-005.backblazeb2.com` |
| `eu-central-003` | `https://s3.eu-central-003.backblazeb2.com` |

## Connection steps

1. Open the Backblaze dashboard.
2. Create or copy an application key for the target bucket.
3. Open BucketMate.
4. Choose **Add Connection**.
5. Select **Backblaze B2**.
6. Enter the endpoint for the bucket region.
7. Enter the application key ID as the access key ID.
8. Enter the application key as the secret access key.
9. Select the matching region.
10. Use **Test Connection**.
11. Save the connection.

## Common issues and fixes

### Bucket naming rules differ

Backblaze naming rules differ from AWS S3. Fix by following Backblaze naming rules before creating or connecting buckets.

### ACL support is limited

Only `private` and `public-read` ACLs are supported. Fix by using those values only and avoid object-level ACL calls.

### Object tagging is not supported

Object tagging APIs are not implemented. Fix by storing tags in object metadata or your application database.

### Website configuration is not supported

Website configuration APIs are not implemented. Fix by serving static sites through another host or CDN.

### Browser-based POST uploads are not supported

Browser POST uploads are not implemented. Fix by using presigned PUT or multipart uploads instead.

### Bucket list permission is restricted

If the application key is limited to one bucket, turn off **Credentials have permission to list buckets** and enter that bucket name manually.

### Public URLs do not work

Private B2 buckets need presigned links. Direct copied object URLs work only for objects that are publicly reachable.

## BucketMate tips

- Use a bucket-scoped application key for safer day-to-day access.
- Use presigned links for private file sharing.
- If a bucket operation is unsupported by B2's S3-compatible API, use the Backblaze dashboard for that setting.
