Sync with iCloud CalDAV
2Do's recommended iCloud sync needs no account details at all and carries everything: see Sync with iCloud. The page you are reading covers iCloud CalDAV, the credential-based route that signs in with your Apple Account and an app-specific password. Choose it when non-Apple devices or other CalDAV task apps need to read the same lists.
iCloud CalDAV lets 2Do read and write tasks through iCloud using the CalDAV protocol. Because CalDAV is an open standard, the same task lists are readable by other CalDAV apps, including clients on Android and Windows.
Apple's Reminders app does not sync over CalDAV. Tasks synced through this method do not appear in the Reminders app, and changes made in Reminders do not reach 2Do. If you want your tasks inside Reminders, use the Apple Reminders sync method instead.
Lists and Task Calendars
Every 2Do list you sync through iCloud CalDAV is stored in iCloud as a task calendar, the CalDAV name for a collection that holds tasks rather than events. It is the same container as your list in 2Do; only the name differs. 2Do shows it as a List, and other apps may label the identical collection a task calendar, a task list, or simply a calendar. A calendar app such as BusyCal, for example, shows the same iCloud collection among its task calendars.
Changes travel in both directions:
- Create a list in 2Do and the matching task calendar appears in iCloud; rename the list and iCloud follows. Deleting the list deletes the task calendar too, unless the collection is shared or also holds calendar events. In that case 2Do removes only its tasks and leaves the collection in place.
- A task calendar created in another CalDAV app arrives in 2Do as an ordinary list.
- Only apps that read iCloud over CalDAV can see these collections, which is why the same list turns up in some apps and not others.
What iCloud CalDAV Carries
- Core task fields: title, notes, dates, recurrence, priority, action, location, and sub-tasks.
- Multiple alarms per task sync through iCloud CalDAV as they are.
- One picture and one audio recording per task sync when attachment sync is enabled.
What Stays on This Mac
Some 2Do-only features stay on this Mac and are not carried by iCloud CalDAV sync:
- Smart Lists
- Tag groups
- List groups
- Unused tags
Other apps and devices signed in to this account see your projects and checklists as a flat list of tasks.
For a sync that carries your whole 2Do setup, including Smart Lists, tag groups, and list groups, use iCloud or Dropbox.
App-Specific Password Requirement
Apple requires two-factor authentication for any third-party app accessing iCloud. Your normal Apple Account password does not work here: generate an app-specific password at appleid.apple.com under Sign-In and Security > App-Specific Passwords, and enter that in 2Do.
App-specific passwords can be reused across apps and devices. Save yours somewhere secure, or generate a new one any time.
Best Practices
Keep these points in mind:
- Use your
@icloud.comaddress, not@mac.com. If your Apple Account also has an@mac.comaddress, enter the@icloud.comaddress in 2Do. - Use your primary Apple Account, not an alias. iCloud aliases do not work for CalDAV sign-in, only the primary email address that owns the account.
- Set your Mac's date and time to automatic. Under System Settings > General > Date & Time, turn on Set Automatically. If your Mac's clock is wrong, the app-specific password fails without an obvious reason.
- Resetting your Apple Account password revokes every app-specific password. Generate a new one and enter it in 2Do again.
Setup
- Make sure two-factor authentication is enabled on your Apple Account.
- Generate an app-specific password at appleid.apple.com under Sign-In and Security > App-Specific Passwords. Label it 2Do so you can revoke it later.
- Open 2Do > Settings > Sync.
- Choose iCloud CalDAV from the Account Type pop-up.
- Enter your Apple Account and the App-Specific Password you generated, then click Set Up Sync.
- 2Do connects, discovers your iCloud task calendars, and starts syncing.
- Repeat on each device with the same Apple Account. The first device populates iCloud; the others use Replace Local Data to pull it down.
Close Settings and press ⌘S (or click the Sync toolbar button) to run the first sync. When both sides already hold data, 2Do asks how to combine them; see Merge vs Replace before choosing. You can re-run any of these later from Settings > Sync > Next sync action; it applies once, then returns to Sync Normally.
Daily Sync
iCloud CalDAV syncs continuously while 2Do is running. Press ⌘S to force an immediate sync.
Troubleshooting
"Password is incorrect", or a cryptic -1012 error
Most often this is one of:
- You are using your normal Apple Account password instead of an app-specific password. Generate one at appleid.apple.com and use that.
- The app-specific password was revoked because you reset your Apple Account password. Generate a new one.
- Your Mac's clock is wrong. Make sure System Settings > General > Date & Time > Set Automatically is on.
- You used an alias or an
@mac.comaddress. Use your primary@icloud.comaddress.
If none of those help, remove the account from 2Do and add it again: 2Do > Settings > Sync > Change Account, then set it up with a freshly generated app-specific password.
"Forbidden" error during sync
This usually means the credentials being sent are not accepted at all, typically for one of the reasons above. Generate a fresh app-specific password and enter it again.
Duplicate tasks
If your tasks suddenly appear twice, the same iCloud tasks may be reaching 2Do through two paths. Settle on one method for every device and remove the other from Settings > Sync.
Tasks that live in Reminders do not appear
Reminders stores its lists in Apple's own Reminders system rather than on iCloud CalDAV, so a list that exists only inside Reminders cannot sync through this method. Use the Apple Reminders sync method if you want those lists in 2Do.
Recovery: 2Do creates backups automatically every 24 to 48 hours. Open 2Do > Settings > Backups, restore from a recent backup (a backup's ⋯ menu > Restore…), and choose Replace Server Data for the next sync to push your 2Do data back up.
507 Insufficient Storage Error
Your iCloud account is out of storage. Free up space in iCloud, then sync again.
301 Moved Permanently when syncing using CalDAV
Apple occasionally moves CalDAV endpoints. Update 2Do to the latest version; current builds follow Apple's redirects automatically.
A list you delete reappears after sync
This usually means another device still holds that list and pushes it back up. Delete the list on all devices, then sync.
Adding another device
Install 2Do, configure iCloud CalDAV against the exact same Apple Account (with an app-specific password), and let the first sync pull your data down. See Setting up a new device.
One device showing different tasks
Run a clean sync on the most up-to-date device, then choose Replace Local Data on the ones that are behind. See One of my devices isn't syncing correctly.
Tips
If you rely on Siri to capture tasks into Reminders, remember that this method syncs iCloud CalDAV task lists, not Apple Reminders.
If you want all 2Do features and attachments to sync, iCloud carries them in full and needs no password.