ZipDrop uses Cloudflare R2 for secure, fast file storage. This guide walks you through setting up your R2 bucket and obtaining the required credentials.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/theforkproject-dev/zipdrop/llms.txt
Use this file to discover all available pages before exploring further.
Prerequisites
- A Cloudflare account (sign up here)
- Access to R2 storage (available on free and paid plans)
Step 1: Create an R2 Bucket
Navigate to R2
- Log in to your Cloudflare Dashboard
- Click R2 in the left sidebar
- If this is your first time, you may need to enable R2 for your account
Create a new bucket
- Click Create bucket
- Enter a unique bucket name (e.g.,
zipdrop-uploads) - Select a location hint (choose the region closest to you)
- Click Create bucket
Configure bucket for public access (optional)
If you want uploaded files to be publicly accessible:
- Navigate to your bucket’s Settings tab
- Scroll to Public access
- Click Connect domain to set up a custom domain (see Custom Domain Configuration)
Without a custom domain, files will only be accessible via signed URLs or private access.
Step 2: Find Your Account ID
Locate Account ID
Your Account ID is required for ZipDrop to connect to R2.
- In the Cloudflare Dashboard, click on R2 in the sidebar
- On the right side of the page, you’ll see your Account ID displayed
- Click the copy icon to copy it to your clipboard
The Account ID is also visible in the URL:
https://dash.cloudflare.com/<ACCOUNT_ID>/r2Step 3: Generate API Tokens
ZipDrop requires an API token with read and write permissions to your R2 bucket.Create an API token
- In the Cloudflare Dashboard, navigate to R2
- Click Manage R2 API Tokens in the right sidebar
- Click Create API token
Configure token permissions
- Token name: Enter a descriptive name like
ZipDrop Upload Token - Permissions: Select Object Read & Write
- Bucket scope:
- Choose Apply to specific buckets only
- Select the bucket you created earlier
- TTL: Leave as default or set a custom expiration
- Click Create API Token
Step 4: Configure ZipDrop
Once you have your credentials, you need to configure ZipDrop:- Open ZipDrop from the menu bar
- Click the settings icon (gear icon)
- Enter your R2 credentials:
- Access Key ID: Paste the Access Key from Step 3
- Secret Access Key: Paste the Secret Access Key from Step 3
- Bucket Name: Enter your bucket name (e.g.,
zipdrop-uploads) - Account ID: Paste your Account ID from Step 2
- Public URL Base: Your custom domain URL or R2 public URL (see below)
Public URL Configuration
The Public URL Base determines how ZipDrop generates shareable links:For custom domains, see the Custom Domain Setup Guide.
Credential Validation
When you save your configuration, ZipDrop automatically validates your credentials by:- Creating a test connection to your R2 bucket
- Uploading a tiny test file (
.zipdrop-connection-test) - Verifying the upload succeeded
- Deleting the test file
- Your Account ID is correct (endpoint resolves)
- Your API credentials are valid (request is properly signed)
- Your bucket exists and has write permissions
uploader.rs:55-99 for the validation implementation:
Next Steps
After configuring R2:- Learn how credentials are securely stored
- Set up a custom domain for branded upload URLs
- Start uploading files by dragging them to the ZipDrop window
Troubleshooting
”Invalid R2 credentials” error
- Verify your Access Key ID and Secret Access Key are correct
- Ensure the API token has Object Read & Write permissions
- Check that the token is scoped to the correct bucket
”Connection failed” error
- Check your internet connection
- Verify your firewall isn’t blocking Cloudflare R2 (*.r2.cloudflarestorage.com)
- Ensure your Account ID is correct
”Bucket not found” error
- Verify the bucket name matches exactly (case-sensitive)
- Ensure the bucket exists in your Cloudflare account
- Check that the API token has access to this specific bucket