Skip to content

Cloudflare R2

Cloudflare R2 is S3-compatible object storage with zero egress fees. Blober connects via the S3-compatible API.

Path format:

bucket-name/path/to/file.ext
  • ✅ Browse buckets and objects
  • ✅ Upload files (multipart for large files)
  • ✅ Download files
  • ✅ Delete objects
  • ✅ Copy/move objects
  • ✅ S3-compatible API
  • ✅ Zero egress fees
  • A Cloudflare account (create one)
  • R2 enabled on your account
  • At least one R2 bucket
  • API credentials with R2 access

  • Option key: accountId
  • Where to find: Cloudflare dashboard => Overview => right sidebar
  • Format: 32-character hex string
  • Example: a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4

  • Option key: accessKeyId
  • Format: 32 alphanumeric characters
  • Example: abc123def456ghi789jkl012mno345pq

  • Option key: secretAccessKey
  • Format: 64-character string
  • Example: abcdefghijklmnopqrstuvwxyz1234567890ABCDEFGHIJKLMNOP
  1. Go to Cloudflare Dashboard
  2. Select R2 from the sidebar
  3. Click Create bucket
  4. Enter a bucket name (lowercase, unique within your account)
  5. Click Create bucket
  1. In R2 settings, click Manage R2 API Tokens
  2. Click Create API token
  3. Configure the token:
    • Token name: Give it a descriptive name (e.g., blober-access)
    • Permissions: Object Read & Write (or as needed)
    • Bucket scope: Specific bucket or all buckets
  4. Click Create API Token
  5. Copy Access Key ID and Secret Access Key immediately (secret shown only once!)
  1. Go to the Cloudflare dashboard
  2. Click on any domain or go to Overview
  3. The Account ID is in the right sidebar under “API”
  4. Copy the Account ID
  1. In Blober, go to Workflows => New Workflow
  2. Select Cloudflare R2 as source or destination
  3. Enter:
    • Account ID
    • Access Key ID
    • Secret Access Key
  4. Test by browsing your buckets
  • Double-check your Account ID - it’s found in the Cloudflare dashboard sidebar, not in R2 settings
  • Verify your API token has Object Read & Write permissions
  • Ensure the token isn’t scoped to a different bucket than the one you’re accessing
  • The Account ID is a 32-character hex string found on the Cloudflare dashboard overview page
  • Don’t confuse it with Zone ID or API token
  • Your API token may be scoped to a specific bucket - create a token with “All buckets” scope to see all
  • Zero egress fees make R2 ideal as a destination for frequently downloaded data
  • Use R2 for serving assets or as a CDN origin - pair with Cloudflare’s CDN for global delivery
  • Create separate API tokens per application for better security and easy revocation