Connect External Tools to Notion via Notis Webhooks

Your AI agents, backend services, or third-party tools can send data to Notis via a simple HTTP webhook. Notis formats and posts that data directly to Notion so you have a single place for all your information.

Trigger

Webhook received

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

Notion logo

Action

Add multiple content blocks (bulk, user-friendly)

Efficiently adds multiple standard content blocks to a notion page in a single api call with automatic markdown parsing. the 'content' field in notionrichtext blocks now automatically detects and parses markdown formatting including headers (# ## ###), bold (**text**), italic (*text*), strikethrough (~~text~~), inline code (`code`), links ([text](url)), and more. ideal for bulk content creation, ai agents, and replacing multiple individual add page content calls. supports automatic text formatting, content splitting, and up to 100 blocks per request.

Why this helps

Founders often have data scattered across multiple tools, APIs, and services. Consolidating that data into one place requires manual work or custom integration code.

  • Aggregate data from multiple external sources
  • No API coding required, just a simple webhook URL
  • Data automatically formatted and posted to Notion
  • Single repository for cross-tool information

Setup

Build it in a few focused steps.

  • 1Connect Notion to Notis via the portal.
  • 2Create an automation: 'Receive data via webhook and post it to my Notion page, formatted as structured content blocks.'
  • 3Notis will generate a unique webhook URL for your automation.
  • 4Configure your external tool or backend to send HTTP POST requests to that webhook URL with your data.
  • 5Test by triggering a webhook call from your external source and confirm the data appears in Notion.

Questions about this workflow

What data format should the webhook payload use?

JSON is standard. Describe your expected data structure in your automation prompt and Notis will parse it correctly.

Can I filter or transform the incoming data?

Yes, describe transformations in your prompt (e.g., 'Only post if the priority is high') and Notis will apply them.

How do I secure the webhook?

Notis generates a secure URL with a token. Only share it with sources you trust.

When this happens · Trigger

Do this · Action

Supported Triggers and Actions

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

Google Sheets logo

Google Sheets triggers

Notion logo

Notion actions

Aggregate Metric Changed

Triggers when an aggregate metric (SUM/COUNT/AVG/MIN/MAX) changes in a Google Sheets spreadsheet. This trigger monitors an aggregate calculation on a target column (optionally filtered by a search column/value) and fires when the calculated result changes.

TriggerPolling

Add multiple content blocks (bulk, user-friendly)

Efficiently adds multiple standard content blocks to a notion page in a single api call with automatic markdown parsing. the 'content' field in notionrichtext blocks now automatically detects and parses markdown formatting including headers (# ## ###), bold (**text**), italic (*text*), strikethrough (~~text~~), inline code (`code`), links ([text](url)), and more. ideal for bulk content creation, ai agents, and replacing multiple individual add page content calls. supports automatic text formatting, content splitting, and up to 100 blocks per request.

ActionInstant

Cell Range Values Changed

Triggers when values in a specified A1 range change in Google Sheets. This trigger monitors a specific cell or range of cells and fires when any values change.

TriggerPolling

Add content to Notion page

Deprecated: appends a single content block to a notion page or a parent block (must be page, toggle, to-do, bulleted/numbered list, callout, or quote); invoke repeatedly to add multiple blocks.

ActionInstant

Conditional Format Rule Changed

Triggers when conditional formatting rules change in a Google Spreadsheet. Detects when rules are added, updated, or removed. Uses snapshot-based diffing to detect changes between polls.

TriggerPolling

Append complex blocks (advanced, full control)

Appends complex blocks with full notion block structure to a parent block or page. use for advanced scenarios requiring precise control: code blocks, tables, embeds, nested children within blocks, or when working with pre-built notion block objects. requires full notion api block schema - use add multiple page content for simpler content creation.

ActionInstant

Data Validation Rule Changed

Triggers when data validation rules change (added/updated/removed) in a Google Spreadsheet. Uses snapshot-based diffing to detect changes between polls.

TriggerPolling

Archive Notion Page

Archives (moves to trash) or unarchives (restores from trash) a specified notion page.

ActionInstant

Developer Metadata Changed

Triggers when developer metadata entries change (new/updated/removed) in a Google Spreadsheet. Uses snapshot-based diffing to detect changes between polls.

TriggerPolling

Create comment

Adds a comment to a notion page (via `parent page id`) or to an existing discussion thread (via `discussion id`); cannot create new discussion threads on specific blocks (inline comments).

ActionInstant

Filtered Range Values Changed

Polling trigger that monitors Google Sheets filtered ranges for value changes. Uses snapshot-based diffing to detect when values matching a data filter change. Emits the matched values when changes are detected.

TriggerPolling

Create Notion Database

Creates a new notion database as a subpage under a specified parent page with a defined properties schema; use this action exclusively for creating new databases.

ActionInstant

New Rows in Google Sheet

Simple polling trigger that monitors Google Sheets for new rows. Detects when new rows are added and returns the complete row data. Perfect for triggering any workflow based on new sheet entries.

TriggerPolling

Create Notion page

Creates a new empty page in a notion workspace.

ActionInstant

New Sheet Added in Google Spreadsheet

Polling trigger that detects when a new sheet is added to a Google Spreadsheet.

TriggerPolling

Delete a block

Archives a notion block, page, or database using its id, which sets its 'archived' property to true (like moving to "trash" in the ui) and allows it to be restored later.

ActionInstant

Connect any two apps with Notis in the middle.

Not just Google Sheets and Notion. Any combination from 985+ integrations.

When this happens · Trigger

Do this · Action

Save your first hour today.

7 days free trial with 20$ free usage included.
No card. Works with personal or business Notion.