How to Configure S3 Cloud Sync for Cross-Device Clipboard
Clipboard synchronization should be fast, reliable, and secure. While local network sync (Nearby Sync) is ideal when your devices are on the same Wi-Fi, S3-compatible cloud synchronization keeps your clipboard history updated even when you are on different networks (e.g., home and office).
Octoclip supports any S3-compatible object storage provider, such as Cloudflare R2, AWS S3, Aliyun OSS, Tencent Cloud COS, and Bitiful Cloud. This guide walks you through the concepts and step-by-step configuration.
What Is S3 Cloud Sync?
S3 (Simple Storage Service) is a widely used protocol for cloud storage. By configuring S3 cloud sync, Octoclip stores your clipboard history in an encrypted database file within your own private cloud storage bucket.
Whenever you copy something on your phone or computer, the app safely pushes the update to your storage bucket, and your other devices pull the change shortly after.
Why Use S3-compatible Storage?
- Private by design — You own the storage bucket, and Octoclip encrypts your clipboard content locally before it leaves your device. Your clips sit in storage you control, not on someone else's server.
- Cross-network Sync — Seamless clipboard sync between home, office, and mobile cellular networks.
- Cost-effective — Most S3-compatible services offer generous free tiers (e.g., Cloudflare R2's free tier includes 10 GB of stored data per month) which is more than enough for years of clipboard text and image sync.
Step-by-Step Configuration (Using Bitiful Cloud as an Example)
Create an account and a private bucket
- Visit Bitiful Cloud (or your preferred S3 provider console) and sign in.
- Navigate to Object Storage -> Bucket List and click Create Bucket.
- Enter a unique bucket name (e.g.,
octoclip-sync-yourname) and set the permissions to Private. - Save your bucket name and region.
Storage bucket names must be globally unique across the cloud service provider. Once created, a bucket name cannot be modified.
Generate restricted access keys
To allow Octoclip to read and write to your bucket securely, generate API access keys:
- Navigate to AccessKey or API Keys in your S3 provider's console.
- We highly recommend creating a Sub-User (IAM User) with access restricted only to the bucket you created, rather than using your main account root keys.
- Generate a new key pair and copy down the Access Key (ID) and Secret Key (Secret).
- Ensure the user or access key has full Read and Write permissions for the designated bucket.
Your Access Key and Secret Key grant read/write access to the bucket. Don't share them, paste them into chats, commit them to a repo, or include them in screenshots or support logs. Prefer a least-privilege sub-user scoped to this one bucket, and rotate or revoke the key if it's ever exposed.
Enter the credentials in the Octoclip client
Open Octoclip on any device (macOS, iOS, Windows, or Android):
- Go to Settings -> Cloud Sync.
- Select S3 as your sync type.
- Fill in the connection parameters:
- Access Key: The API access key ID you copied.
- Secret Key: The API secret key.
- Endpoint: The S3 endpoint URL (e.g.,
s3.bitiful.comorhttps://<account_id>.r2.cloudflarestorage.comfor Cloudflare). - Bucket: The exact name of your bucket.
- Region: The region code (e.g.,
cn-east-1orauto).
- Click Test Connection. Once successful, tap Save and Enable.
Now configure S3 sync on your other devices using the exact same parameters to link your clip histories.
Encrypted Clipboard Sync: What Actually Leaves Your Device
A clipboard regularly holds passwords, addresses, and private messages, so it matters what an encrypted clipboard sync actually does:
- You set the encryption key. When you configure Cloud Sync, you provide an encryption key. Octoclip encrypts each clip on your device with that key before upload, so what lands in your bucket is ciphertext, not readable text. Your storage credentials and the key are kept in your device's system keychain (or the platform's equivalent secure store) — not on an Octoclip server.
- The other device needs the same setup. To read and decrypt the synced history, each of your devices must be configured with the same storage settings and the same encryption key. Without the key, the data in the bucket can't be decrypted by anyone — including Octoclip.
- The bucket is yours. You created it, you hold its access keys, and you can revoke Octoclip's access or delete the data at any time.
- End-to-end between your own devices. When one device uploads, Octoclip sends a lightweight, anonymous notification to your other devices on the same Cloud Sync account so they know new data is ready. That notification only carries a "go fetch" signal — the encrypted clip itself travels through your own S3/WebDAV storage, and Octoclip never sees your clip content or your key.
This is the practical difference between syncing through storage you own and routing your clipboard through a vendor's cloud. If you'd rather skip the cloud entirely, Nearby Sync moves clips over your local network instead.
Frequently Asked Questions
Is S3 sync free?
Octoclip does not charge extra for S3 sync features. Any fees would come from your S3 storage provider. However, since clipboard sync databases are typically under 50 MB, you will remain well within the free tiers of providers like Cloudflare R2 or Backblaze B2 indefinitely.
Does S3 sync support images and files?
Yes. Octoclip syncs text, URLs, and image clips. To save bandwidth and storage, you can configure maximum size limits for image sync in the settings. Large files (like videos) are not synced to prevent performance lags.
How often does the sync run?
Octoclip runs a lightweight sync merge immediately after it detects a new copy event, and periodically pulls updates from the cloud when the app is active, delivering near-instant updates across devices.
Can I self-host my clipboard sync?
Yes. Octoclip talks to any S3-compatible endpoint, which includes self-hosted object storage such as MinIO running on your own server or NAS — point the Endpoint field at your instance and the same steps apply. Octoclip also supports WebDAV as an alternative Cloud Sync backend.
Troubleshooting
Connection failed or timed out?
Verify your Endpoint and Region fields. Ensure you include https:// in the endpoint if required by your provider. Check if your local network is blocking the S3 provider domain.
Permission Denied (403 Forbidden)?
Double check your Access Key and Secret Key. Ensure the sub-user has policies attached allowing s3:GetObject, s3:PutObject, and s3:ListBucket operations on the designated bucket.
Need Extra Assistance?
If your cloud sync fails to initialize, reach out to us at support@octoclip.app or join the discussion in our Community Forum. Please provide:
- The S3 provider name (e.g., Cloudflare, Bitiful, Aliyun)
- Your device OS versions
- Any connection error messages displayed by the app