Quick overview This workflow runs daily to normalize and backfill properties in a Notion database, standardizing Status values, deriving a Key slug and Created week stamp, updating only changed pages, and appending a run recap to a Notion log page. How it works Runs every day at 3am on a schedule. Fetches all pages (rows) from a selected Notion database with full property data. Applies normalization rules to backfill missing Status values, canonicalize known Status variants, and optionally derive a Key slug from the title and a Created week value from the page creation time. Updates only the Notion pages where one or more of these derived values differs, and stamps a Last normalized date on each updated page. Appends a one-line recap of the run (scanned vs. updated counts and what changed) to a specified Notion page or block. Setup Add a Notion API credential and share both the target database and the log page with your Notion integration. Select the Notion database to process in the database ID field used to fetch all database pages. Update the rules in the code configuration (property names, DEFAULT_STATUS, and the CANONICAL_STATUS mapping) to match your database.
Tags
Related workflows
See all Notion→Report number of weekly created records in an app
This template shows how you can create reports on data in an app and share a summary in another app. Specifically, this example checks a Notion database for new submissions, filters for submissions with a specific tag, and then sends a Slack message with the number created this week. Setup instructions are located inside the workflow template.
Check To Do on Notion and send message on Slack
This workflow allows you to check the To-Do list on Notion and send a message on Slack. Prerequisites Create a Notion page similar to this page. Create credentials for Notion by following the instructions mentioned in the documentation. Follow the steps mentioned in the documentation to create credentials for Slack. Cron node: This node triggers the workflow every day. Notion node: This node fetches all the tasks from Notion. IF node: This node checks if the task is assigned to a particular user. Create a Direct Message: This node will create a direct message channel with the user. Send a Direct Message: This node will send the to-do lists in the direct message. NoOp: This node is connected to the false output of the IF node. If the condition is false, no further action will be taken.
Add articles to a Notion list by accessing a Discord slash command
This workflow allows you to add articles to a Notion reading list by accessing a Discord slash command. Prerequisites A Notion account and credentials, and a reading list similar to this template. A Discord account and credentials, and Discord Slash Command connected to n8n. Nodes Webhook node triggers the workflow whenever the Discord Slash command is issued. IF node checks the type returned by Discord. If the type is not equal to 1, it will return true, otherwise false. HTTP Request node makes an HTTP call to the link and gets the HTML of the webpage. HTML Extract node extracts the title from the HTML which we will use in the next node. Notion node adds the link to your Notion reading list. Set nodes set the reply values for Discord and register the Interaction Endpoint URL.