The workflow JSON
Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →
{
"name": "Notion to GitHub Actions Sync",
"nodes": [
{
"parameters": {
"resource": "workflow",
"owner": {
"mode": "list",
"value": "YOUR_GITHUB_USERNAME"
},
"repository": {
"__rl": true,
"value": "your-repository-name",
"mode": "list",
"cachedResultName": "your-repository-name",
"cachedResultUrl": "https://github.com/YOUR_GITHUB_USERNAME/your-repository-name"
},
"workflowId": {
"__rl": true,
"value": 123456789,
"mode": "list",
"cachedResultName": "Notion Sync Workflow"
},
"ref": {
"__rl": true,
"value": "main",
"mode": "list",
"cachedResultName": "main"
},
"inputs": "={\n \"notion_event\": \"event\",\n \"page_id\": \"{{ $json.id }}\",\n \"database_id\": \"skills\",\n \"updated_at\": \"=now\"\n}"
},
"id": "github-dispatch-1",
"name": "Trigger GitHub Action",
"type": "n8n-nodes-base.github",
"position": [
608,
304
],
"typeVersion": 1.1,
"credentials": {
"githubApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"pollTimes": {
"item": [
{
"mode": "everyHour"
}
]
},
"event": "pagedUpdatedInDatabase",
"databaseId": {
"__rl": true,
"value": "YOUR_NOTION_DATABASE_ID",
"mode": "list",
"cachedResultName": "Your Database Name",
"cachedResultUrl": "https://www.notion.so/YOUR_NOTION_DATABASE_ID"
}
},
"type": "n8n-nodes-base.notionTrigger",
"typeVersion": 1,
"position": [
0,
96
],
"id": "notion-trigger-1",
"name": "Notion Trigger",
"credentials": {
"notionApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"pollTimes": {
"item": [
{
"mode": "everyHour"
}
]
},
"databaseId": {
"__rl": true,
"value": "YOUR_NOTION_DATABASE_ID_2",
"mode": "list",
"cachedResultName": "Your Second Database",
"cachedResultUrl": "https://www.notion.so/YOUR_NOTION_DATABASE_ID_2"
}
},
"type": "n8n-nodes-base.notionTrigger",
"typeVersion": 1,
"position": [
0,
304
],
"id": "notion-trigger-2",
"name": "Notion Trigger 2",
"credentials": {
"notionApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"chatId": "YOUR_TELEGRAM_CHAT_ID",
"text": "=Deployment via GitHub Action successfully triggered!",
"additionalFields": {
"appendAttribution": false
}
},
"id": "telegram-notification-1",
"name": "Send Notification",
"type": "n8n-nodes-base.telegram",
"position": [
880,
304
],
"typeVersion": 1.2,
"credentials": {
"telegramApi": {
"name": "<your credential>"
}
}
}
],
"connections": {
"Notion Trigger": {
"main": [
[
{
"node": "Trigger GitHub Action",
"type": "main",
"index": 0
}
]
]
},
"Notion Trigger 2": {
"main": [
[
{
"node": "Trigger GitHub Action",
"type": "main",
"index": 0
}
]
]
},
"Trigger GitHub Action": {
"main": [
[
{
"node": "Send Notification",
"type": "main",
"index": 0
}
]
]
}
},
"active": false,
"settings": {
"executionOrder": "v1",
"saveDataErrorExecution": "all",
"saveDataSuccessExecution": "all",
"saveManualExecutions": true,
"saveExecutionProgress": true
},
"meta": {
"templateCredsSetupCompleted": false
},
"tags": []
}
Credentials you'll need
Each integration node will prompt for credentials when you import. We strip credential IDs before publishing — you'll add your own.
githubApinotionApitelegramApi
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
Notion to GitHub Actions Sync. Uses github, notionTrigger, telegram. Event-driven trigger; 4 nodes.
Source: https://github.com/maxime-lenne/jekyll-notion-cms/blob/main/docs/templates/n8n-workflow_Notion-database-change-trigger-GitHub-Actions.json — original creator credit. Request a take-down →
Related workflows
Workflows that share integrations, category, or trigger type with this one. All free to copy and import.
Stop the panic attacks. We've all been there - accidentally deleted a workflow that took hours to build, or worse, corrupted your entire automation setup. This workflow is your safety net.
This workflow helps you keep an eye on your GitHub forks, notifying you when they fall behind or pull ahead of their upstream repositories.
Telegramtrigger Workflow. Uses telegramTrigger, noOp, telegram, stickyNote. Event-driven trigger; 13 nodes.
This workflow automates image processing using VLM Run, extracting signed URLs, downloading results, and distributing them via multiple channels (Google Drive & Telegram).
template in store. Uses googleDriveTrigger, googleDrive, errorTrigger, telegram. Event-driven trigger; 13 nodes.