Notion Setup
Mirror WordPress form submissions into a Notion database with SheetLink Forms. Free, no add-on required - each submission becomes a database page.
Overview
The Notion destination mirrors each form submission into a Notion database, per sync rule, alongside your primary destination - every submission becomes a new page (row). It is free and built into the core plugin - no add-on required. Delivery goes straight from your WordPress server to the Notion API and runs after the primary delivery, on the same retry pipeline as the core sheet write.
You need two things from Notion: an internal integration token and the database ID.
Step 1: Create an internal integration
- Open notion.so/my-integrations and click New integration
- Give it a name (e.g. "SheetLink Forms") and select the workspace that holds your database
- Copy the Internal Integration Secret - this is the token SheetLink needs
Step 2: Share the database with the integration
- Open the target database as a full page in Notion
- Click the ... menu (top right) -> Connections -> add your integration
- Copy the database ID from the URL:
notion.so/workspace/32-character-id?v=...- the 32-character string before?v=
This sharing step is the one everyone misses. An integration can only see databases explicitly connected to it - a correct token with an unshared database returns a 404.
Step 3: Configure SheetLink
- In WordPress go to SheetLink -> Destinations -> Notion
- Pick the sync rule to mirror and check Enabled
- Paste the integration token and database ID
- Map form fields to your database's property names. SheetLink writes native Notion property types - Email, Phone, URL, Number, Select, Date, and Checkbox properties are detected from the database schema and filled with correctly typed values, not plain text
- Save, then Test - a page should appear in the database within seconds
Troubleshooting
- 401: the integration token is wrong or was revoked
- 404: almost always the sharing step - connect the integration to the database (Step 2), or the database ID is wrong
- 400 validation errors: a mapped property name does not exist in the database, or its type cannot accept the value (e.g. text into a Number property)
- Mirror deliveries appear in the Delivery Log and retry automatically on transient failures
Ready to Get Started?
Install SheetLink Forms and connect your first form in under 10 minutes.