LogoOctoclip Docs

    WebDAV / S3 Configuration

    When configuring Cloud Sync, you can choose to store sync data in your own cloud infrastructure (such as self-hosted WebDAV or third-party S3-compatible object storage) for full control over data residency and privacy.

    In this mode, your clips are end-to-end encrypted on-device with a key you hold before they reach your storage, so the bucket/container only ever holds ciphertext. Octoclip's servers never receive your storage credentials, your encryption key, or your clip content. You are solely responsible for the availability, retention, and security of your storage bucket.

    Supported options

    OptionTypical implementationBest for
    WebDAVSelf-hosted WebDAV or third-party WebDAV serviceFast onboarding with lower ops complexity
    S3-compatible storageAmazon S3, MinIO, or other cloud object storageScalable setups with fine-grained IAM policies

    Core fields

    FieldTypeRequiredDescription
    providerstringYesBackend type, such as webdav or s3
    endpointstringYesService endpoint URL
    bucketstringNoTarget bucket/container name (S3 flows)
    usernamestringNoAccount (WebDAV) or Access Key ID (S3)
    passwordstringNoPassword (WebDAV) or Secret Access Key (S3)
    pathPrefixstringNoNamespace prefix for sync objects
    Encryption KeystringYes (in-app)The end-to-end encryption key. You set it in the app (under the "Encryption Key" field); it is stored in your device keychain and is never written to this config file. Every device must use the same value to decrypt.

    Setup flow

    1
    Choose and back up an encryption key

    Pick the end-to-end encryption key you will use, and save it in a password manager. You will need to enter the exact same key on every device; without it, content cannot be decrypted by peer devices.

    2
    Prepare credentials and permissions

    Confirm endpoint reachability and read/write policy readiness. For S3, the access key needs at least s3:PutObject, s3:GetObject, s3:DeleteObject, and s3:ListBucket permissions on the target bucket. For WebDAV, verify the URL responds to a HEAD request.

    3
    Fill parameters in app settings

    In Octoclip's Cloud Sync settings, enter the required parameters based on your provider, along with your local encryption key.

    4
    Run connection test

    Verify test object read/write before enabling production sync. Success: the app reports "Connection Successful" or "Test Passed"; you can then enable sync.

    Example

    The example below contains only the storage fields — the encryption key is set securely in the app and never appears in this file. Replace the angle-bracket values with your own credentials (these are placeholders, not real values).

    storage.config.jsonjson
    {  "provider": "s3",  "endpoint": "https://s3.example.com",  "bucket": "octoclip-sync",  "pathPrefix": "prod/user-a/",  "username": "<your-access-key-id>",  "password": "<your-secret-access-key>"}
    Keep credentials and keys out of repos

    Never commit credential-bearing config files to public repositories, and never paste your encryption key into a shared channel. Enter them directly into the application settings.

    Common issues

    Was this page helpful?