ConnectWyze

Workspace Storage

Configure which cloud storage provider ConnectWyze uses to store your workspace's generated images and assets.


What it is

By default, every workspace stores generated images on ConnectWyze's shared Cloudflare R2 bucket. If you need images in your own cloud account — for compliance, cost control, or CDN integration — you can configure a custom storage provider.

ConnectWyze supports five providers:

Provider Transport When to use
Default R2 S3-compatible Easiest option. No configuration needed. Zero egress fees.
Custom R2 S3-compatible You have your own Cloudflare account and want images in your R2 bucket.
AWS S3 S3-compatible Your team already uses AWS and wants images in an S3 bucket.
GCS (service account) GCS JSON API Google Cloud workspace with a service account. Best for GCS-native workflows.
GCS HMAC S3-compatible Google Cloud workspace using HMAC interoperability keys. Supports presigned URLs.

Credentials are encrypted at rest using AES-256-GCM. ConnectWyze never stores them in plaintext.


When you'd use it

  • Your organization requires generated assets to stay in your own cloud account for data residency.
  • You want to serve images directly from your S3 or GCS bucket behind your own CDN.
  • You are migrating from the default R2 bucket to your own storage after a contract change.
  • You want to separate storage costs per client by giving each workspace its own bucket.

Quick start (user)

Configure a custom provider

  1. Go to Settings → Storage (/dashboard/settings/storage).
  2. Select your provider from the dropdown.
  3. Fill in the credential fields for that provider (see the reference table below).
  4. Click Test connection to verify ConnectWyze can reach your bucket.
  5. Click Save.

All new uploads (generated images, data-source assets) from this point forward go to the configured provider. Existing images already in the default R2 are not moved automatically.

Configure GCS with a service account JSON

  1. In Settings → Storage, select GCS (service account).
  2. Drag and drop your service account JSON file onto the upload zone, or click Browse to select it.
  3. Enter your bucket name.
  4. Optionally enter a path prefix (e.g. connectwyze/images) to namespace files within the bucket.
  5. Click Test connection, then Save.

ConnectWyze constructs the public URL base automatically as storage.googleapis.com/{bucket}.


Settings reference

Provider credential fields

Provider Required fields Optional fields
Default R2 None
Custom R2 Access Key ID, Secret Access Key, Account ID, Bucket Path prefix, Public URL base
S3 Access Key ID, Secret Access Key, Region, Bucket Path prefix, Public URL base
GCS (service account) Service account JSON, Bucket Path prefix
GCS HMAC Access Key ID (HMAC), Secret (HMAC), Bucket Path prefix, Public URL base

Field descriptions

Field Description
Bucket The name of the storage bucket. Must already exist in your cloud account.
Region AWS region only (e.g. us-east-1). Ignored for non-S3 providers.
Path prefix Optional folder namespace prepended to every file path (e.g. images/).
Public URL base The public-facing base URL for stored files. ConnectWyze auto-populates this for GCS. For S3 and custom R2, enter your bucket URL or CDN origin.

Provider comparison

Feature Default R2 Custom R2 S3 GCS (service account) GCS HMAC
Setup required None Yes Yes Yes Yes
Egress cost $0/GB $0/GB ~$0.09/GB $0.12/GB $0.12/GB
Presigned URL support Yes Yes Yes No — falls back to Default R2 Yes
Video upload support Yes Yes Yes No — falls back to Default R2 Yes

GCS egress note: GCS charges $0.12/GB egress worldwide. For generated images served to ad platforms or high-traffic pages, the Default R2 or Custom R2 providers have zero egress fees and are more cost-effective for outbound traffic.


Troubleshooting

Symptom Fix
"Connection failed" on test Check that the credentials are correct and the bucket exists. Verify the bucket name has no typos. For S3, confirm the region matches the bucket's actual region.
Images not appearing after save The connection test passed but uploads may be failing silently. Check that the service account or IAM user has write permissions on the bucket.
GCS presigned URLs not working GCS service accounts cannot generate S3-compatible presigned URLs. Switch to GCS HMAC if you need presigned URLs.
Public URL returns 403 Your bucket's access control does not allow public reads. For GCS, set the bucket ACL to allow allUsers read access, or configure a CDN in front of it.
Changing provider — old images broken Existing images were uploaded to the previous provider. Update your CDN or rewrite the URLs, or re-generate the images to move them to the new provider.
"Only object storage hostnames are allowed" The connection test blocks non-storage URLs to prevent SSRF. Use a valid bucket endpoint.