📝 Notion Plugin
The Notion plugin enables distribution of curated content to a Notion database, automatically creating database rows with your curated content and metadata.
🔧 Setup Guide
-
Create a Notion integration:
- Go to Notion Integrations
- Click "New integration"
- Name your integration (e.g., "Curate.fun Integration")
- Select the workspace where you'll use the integration
- Click "Submit" to create the integration
- Copy the "Internal Integration Token" - this will be your
token
in the configuration
-
Create a database in Notion:
- Create a new page in Notion
- Type
/database
and select "Table - Full page" - Add the following properties to your database (matching TwitterSubmission type):
- tweetId (Text)
- userId (Text)
- username (Text)
- curatorId (Text)
- curatorUsername (Text)
- content (Text)
- curatorNotes (Text)
- curatorTweetId (Text)
- createdAt (Date)
- submittedAt (Date)
- status (Select with options: pending, approved, rejected)
-
Share the database with your integration:
- Open your database as a full page
- Click the "..." menu in the top right
- Click "Add connections"
- Find and select your integration
-
Get your database ID:
-
Open your database as a full page in your browser
-
Copy the URL, which will look like:
https://www.notion.so/<long_hash_1>?v=<long_hash_2>
-
The
<long_hash_1>
portion is your database ID
-
-
Modify your
curate.config.json
to include the Notion configuration:{
"outputs": {
"stream": {
"enabled": true,
"distribute": [
{
"plugin": "@curatedotfun/notion",
"config": {
"token": "your_integration_token",
"databaseId": "your_database_id"
}
}
]
}
}
}You need to specify:
token
: Notion Internal Integration TokendatabaseId
: Your database ID extracted from the URL
cautionKeep your integration token secure and never commit it to version control. Consider using environment variables for sensitive values.
-
Enable the stream by setting
"enabled": true
if not already enabled.Once configured, your approved submissions will start flowing to the configured Notion database as new rows.
tipIf your stream had been disabled and you have existing, approved submissions, call
/api/feeds/:feedId/process
to process them.
📝 Configuration Reference
Full configuration options for the Notion plugin:
{
"plugin": "@curatedotfun/notion",
"config": {
"token": "secret_...", // Your Notion integration token
"databaseId": "..." // Your Notion database ID
}
}