Skip to content

Importing mail

Bring your existing mail into clacks two ways — live over IMAP, or from a backup file. Both run in the background, are safe to re-run, and never duplicate a message that already exists in the target mailbox (content-hash dedup). Manage them from the webmail's Import tab or the CLI.

From another IMAP server

Point clacks at the old server; it pulls every folder, resumably (a re-run only fetches new mail):

sh
docker compose exec clacks clacks migrate test --host imap.gmail.com --user you@gmail.com
docker compose exec clacks clacks migrate add you@yourdomain.com --host imap.gmail.com --user you@gmail.com
docker compose exec clacks clacks migrate status 1
  • Auth is username + password. For Gmail, Outlook, and iCloud use an app-specific password.
  • CLACKS_SECRET must be set — it encrypts the stored source password. Without it, IMAP import is disabled (file import still works).
  • Flags: --port, --security ssl|starttls, --password (prompted if omitted), --insecure (accept a self-signed source certificate).
  • pause, resume, and remove do what they say; removing a job wipes the stored credentials and keeps the imported mail.

The webmail's Import tab has the same flow with presets for popular providers.

From a backup file

Upload a .zip on the Import tab (or use the CLI), containing any of:

  • .eml files — the folder each file sits in becomes the mailbox (Thunderbird-style exports).
  • .mbox files — one mailbox per file (Gmail Takeout, etc.).
  • A Proton Mail export (<id>.eml + <id>.metadata.json + labels.json) — folders, read/unread, starred, replied state, custom labels, and original dates are all preserved.
sh
docker compose exec clacks clacks migrate import backup.zip you@yourdomain.com

Re-uploading the same backup imports nothing new. Upload size is capped by CLACKS_LIMITS_MAX_UPLOAD_MB (default 2048).

Proton Mail

Proton has no public IMAP, so use their official Export tool, zip the output folder, and upload it — the metadata files carry your folder structure and flags across.

Licensed under AGPL-3.0 · GNU Terry Pratchett