This template takes approved Notion pages and syncs them to a Webflow CMS collection as draft items. It reads pages marked Status = Ready for publish in a specific Notion database/project, merges JSON content stored across page blocks into a single object, then either creates a new CMS item or updates the existing one by name. On success it sets the Notion page to 5. Done; on failure it switches the page to On Hold for review.
Manual Trigger
You start the run with When clicking ‘Execute workflow’.
Get Notion Pages (Notion → Database: Tech Content Tasks)
Pull all pages with Status = Ready for publish scoped to the target Project.
Loop Over Items (Split In Batches)
Process one Notion page at a time.
Code (Pass-through)
Expose page fields (e.g., name, id, url, sector) for downstream nodes.
Get Notion Block (children)
Fetch all blocks under the page id.
Merge Content (Code)
Concatenate code-block fragments, parse them into one mergedContent
JSON, and attach the page metadata.
Get Webflow Items (HTTP GET)
List items in the target Webflow collection to see if an item with the same name already exists.
Update or Create (Switch)
isDraft: true
, mapping all fieldData
(e.g., category titles, meta title, excerpt, hero copy/image, benefits, problem pointers, FAQ, ROI).fieldData
, leave isDraft: true
.Write Back Status (Notion)
Log Submission (Code)
Log a compact object with status, notionPageId, webflowItemId, timestamp, and action.
Wait → Loop
Short pause, then continue with the next page.
Want hands-free publishing? Add a Cron trigger before step 2 to run on a schedule.