Skip to content
Notis

Your Notion Structure Becomes Your Website Navigation

Build a page hierarchy in Notion and send a webhook to sync it to your CMS sitemap. Visitors see navigation that matches your organization.

Trigger

Webhook received

Notis starts this workflow when an external tool or custom backend sends an HTTP request.

Action

Get Sitemap Flat

Tool to retrieve the flat sitemap as a mapping of page paths to sitemap items. use when you need page routing logic after knowing locale and channel.

Why this helps

Your Notion workspace is beautifully organized but your website navigation is a flat list that doesn't reflect how you actually organize content.

  • Site navigation matches Notion organization
  • Visitors find content more intuitively
  • One source of truth for structure

Setup

Build it in a few focused steps.

  • 11. Connect Notion and Agility cms to Notis.
  • 22. Create a webhook automation: 'When this webhook fires, fetch the Notion page structure and update the CMS sitemap.'
  • 33. Copy your webhook URL.
  • 44. Send a test webhook request and verify your site's sitemap and routing update to match Notion.

Questions about this workflow

What happens to existing site pages when the sitemap updates?

Notis updates routing and navigation without touching page content. Your pages stay intact, just in new locations.

Can I control which parts of Notion map to which parts of the site?

Yes. Tell Notis which Notion parent pages map to which site sections. Fine-grained control over structure sync.

When this happens · Trigger

Do this · Action

Supported Triggers and Actions

Notis builds workflows that link Notion to Agility cms. A trigger fires from one place; an action lands in another.

Notion triggers

Agility cms actions

Recurring trigger

Notis starts this workflow on a schedule, such as daily, weekly, or during business hours.

TriggerScheduled

Get Authors

Tool to retrieve all authors from an agility cms instance. use when you need the full list of authors for display or processing.

ActionInstant

Webhook trigger

Notis starts this workflow when an external tool or custom backend sends an HTTP request.

TriggerInstant

Get Categories

Tool to get all categories. use when you need to list every category in a given locale.

ActionInstant

All Page Events

Triggers when any Notion page is created or updated across the workspace.

TriggerPolling

Get Content Item

Tool to fetch details of a content item by content id. use when you need item fields and metadata from agility cms.

ActionInstant

Comment Created

Triggers when a new comment is created in Notion. Optional `page_id` filter scopes to comments on a specific page. When omitted, fires for any new comment in the workspace the integration has access to. Requires the 'Read comments' capability on the Notion integration. If a connection was authorized before that capability was enabled, the user must re-authorize the connection for comment events to flow.

TriggerInstant

Get Content List

Tool to retrieve a list of content items by reference name. use when you need to fetch and page through content list data with optional filtering, sorting, and link expansions.

ActionInstant

New Comment

Triggers when a new comment is added to a specified Notion block or page.

TriggerPolling

Get Content Models

Tool to retrieve content models and page modules. use when you need schema definitions to dynamically build content structures.

ActionInstant

Database Created

Triggers when a new Notion database (the container) is created. A database is the post-2025-09-03 container that holds one or more data sources. This trigger fires for the container's creation event (`database.created`), distinct from `NOTION_DATASOURCE_CREATED` which fires when a new data source is added to an existing database. Most customers calling Notion's `POST /v1/databases` (the legacy API) or creating a database via the Notion UI will see this event. Adding a new data source to an existing database fires `data_source.created` instead — use `NOTION_DATASOURCE_CREATED` for that. Notion's payload puts `entity.type: "block"` (the container is a `child_database` block in the content tree) and `entity.id` is the database id.

TriggerInstant

Get Logs

Tool to retrieve sync items (logs) from agility cms. use after initial full sync to fetch updates.

ActionInstant

Data Source Created

Triggers when a new Notion data source is created. Fires workspace-wide. The payload's `data.parent` carries the data source's tree parent (typically the teamspace) for downstream filtering. A single template-based database creation can fire multiple `data_source.created` events at once — one per data source the template instantiates.

TriggerInstant

Get Page

Tool to retrieve details of a page, including metadata, content zones, and components. use after you know the page id to fetch.

ActionInstant

Data Source Schema Updated

Triggers when a Notion data source's schema is updated. Fires on column add / remove / rename. Payload includes `data.updated_properties: [{id, name, action}]` so consumers can discriminate the kind of change downstream. Optional `data_source_id` filter scopes to schema changes on a single data source. When omitted, fires for any schema change in the workspace the integration has access to. Note: adding a column also fires `page.properties_updated` once per existing row in the data source. Customers wanting a single structural-change signal should use this trigger.

TriggerInstant

Get Page Modules

Tool to retrieve all page modules defined in the agility instance. use when you need only modular definitions without content models.

ActionInstant

Connect any two apps with Notis in the middle.

Notion and Agility cms, or any other combination from 1,000+ integrations.

When this happens · Trigger

Do this · Action

Save your first hour today.

7-day trial of any paid plan, with 20$ of usage included.
No card. Works with personal or business Agility cms.