eudennis3k downloadsSimple plugin to sync with Todoist. Fork from Ultimate Todoist Sync plugin.
Create, edit, and delete tasks from within Obsidian.md to your Todoist.
[!CAUTION] In early April 2025, this plugin was no longer working due to changes on the Todoist API. Check this comment for more details. Feel free to open bug reports.
[!WARNING] This is a fork from the Ultimate Todoist Sync plugin for Obsidian. I consider this as a beta, but I have been using for quite some time without issues. Feel free to contribute opening bug reports if you find anything.
Some features works only Todoist -> Obsidian, others by-directional. Find more details on the feature table below.

| Feature | from Obsidian to Todoist | from Todoist to Obsidian |
|---|---|---|
| Add task | ✅ | 🔜 |
| Delete task | ✅ | 🔜 |
| Modify task content | ✅ | ✅ |
| Modify task due date | ✅ | ✅ |
| Modify task due time | ✅ | 🔜 |
| Modify task description | 🔜 | 🔜 |
| Modify task labels/tags | ✅ | 🔜 |
| Mark task as completed | ✅ | ✅ |
| Mark task as uncompleted | ✅ | ✅ |
| Modify project | 🔜 | 🔜 |
| Modify section | 🔜 | 🔜 |
| Modify priority [1] | ✅ | 🔜 |
| Add reminder | ✅ | ✅ |
| Add duration | ✅ | 🔜 |
| Move tasks between files | 🔜 | 🔜 |
| Added-at date | 🔜 | 🔜 |
| Completed-at date | 🔜 | 🔜 |
| Task notes [2] | 🔜 | ✅ |
| Optional app link | ✅ | ✅ |
| Assign project to task | ✅ | 🔜 |
| Manage Deadline Date | ✅ | 🔜 |
[!WARNING] The plugin will require the Todoist API token, which can be found on your
Settings > Integrations > Developer(direct link here). Note that some features will work for Todoist paid users.
Community plugins tab, within the Settings windowBrowse and search for Another Todoist Sync PluginCommunity plugins, find the Installed Plugins section and activate the Another Todoist Sync Plugin[!NOTE] You can update the plugin following the same procedure, clicking Update instead of Install
Settings windowCommunity plugins tab on the leftInstalled plugins, click the gear icon next to the Another Simple Todoist Sync plugin#tdsync, but you can change to #todoist| Syntax | Description | Example |
|---|---|---|
| #tdsync | Tasks marked with #tdsync[4] will be added to Todoist. If you have enabled Full Vault Sync, #tdsync will be added automatically. |
- [ ] task #tdsync |
| 📅YYYY-MM-DD | The date format is 📅YYYY-MM-DD, indicating the due date of a task. | - [ ] task content 📅2025-02-05 #todoist [1] |
| #tag | Note that all tags without a project of the same name are treated as normal tags | - [ ] task #tagA #tagB #tagC #todoist |
!!<number> |
The priority of the task between 1 and 4. [2] | - [ ] task !!1 #todoist |
| ⏰HH:MM | This sets the time of the task. If none is given, the default is 08:00 | - [ ] task ⏰23:59[3] |
| ⏳MMmin | This sets the duration of the task | - [ ] task ⏳30min[[5]] |
| /// | This adds the task to a section with | - [ ] task ///section_name[7] |
| #project #tag | First hashtag assign to a project with the same name | -[ ] task #project #tag1 #tag2 [8] |
| %%[p::ProjectName]%% | Assign task to project with hidden field | %%[p::ProjectName]%% [9] |
| {{YYYY-MM-DD}} | Assign a deadline date to a task | {{YYYY-MM-DD}} [10] |
#todoist, but on this fork was changed to avoid conflicts.The default project in the setting applies to all files. You can set a separate default project for each file using the comand Set default project for Todoist task in the current file from the command menu.
You can list all synchronized tasks from your Obsidian Vault using the Obsidian DataView plugin. If you create a view using the following code:
```dataview
task
where !completed and contains(tags, "#tdsync")
```
If you have the Obsidian DataView plugin you will be able to see the task ID on your tasks within Obsidian.
This plugin is for learning purposes only. The author and contributors makes no representations or warranties of any kind, express or implied, about the accuracy, completeness, or usefulness of this plugin and shall not be liable for any losses or damages resulting from the use of this plugin.
The author shall not be responsible for any loss or damage, including but not limited to data loss, system crashes, computer damage, or any other form of loss arising from software problems or errors. Users assume all risks and are solely responsible for any consequences resulting from the use of this product.
By using this plugin, you agree to be bound by all the terms of this disclaimer. If you have any questions, please contact the author.
Contributions are welcome! If you'd like to contribute to the plugin, please feel free to submit a pull request.
This plugin is released under the GNU GPLv3 License.