Skip to main content

Todoist to Notion

A Cloudflare Worker that receives Todoist webhook events and creates or updates pages in a Notion database. When a task is added, updated, completed, or deleted in Todoist, this worker reflects the change in Notion in real time.

How It Works

Todoist Webhook Event
--> POST to this worker
--> Parse event type and task data
--> Search Notion for existing page by Todoist ID
--> Create new page or update existing page

Supported Events

EventAction
item:addedCreate a new page in Notion
item:updatedUpdate the existing Notion page
item:completedMark the Notion page as complete
item:deletedRemove the Notion page

Priority Mapping

Todoist and Notion use inverted priority scales. The worker maps between them:

Todoist PriorityNotion Label
1 (normal)P4
2P3
3P2
4 (urgent)P1

Tech Stack

ComponentTechnology
RuntimeCloudflare Workers
DestinationNotion API (v2025-09-03)
LanguageTypeScript