In this categoryIntegrations · 69
- How to Get a YouTube Data API Key and OAuth CredentialsStart
- How to Upload a Video to YouTube with Python and the Data API
- How to Generate YouTube Video Scripts with the Claude API
- How to Generate YouTube Titles and Descriptions with ChatGPT's API
- How to Auto-Generate Captions with Whisper and Upload an SRT
- How to Upload Videos to YouTube Automatically with Zapier
- How to Build a Make Scenario That Turns Topics into Draft Scripts
- How to Schedule YouTube Uploads with the publishAt Timestamp
- How to Auto-Draft Replies to YouTube Comments with Claude
- How to Bulk Update Titles and Tags Across Many Videos via API
- How to Build an End-to-End Script-to-Upload Pipeline with Claude and the API
- How to create a Telegram bot with BotFather and get your token
- How to find your Telegram chat ID for sending messages
- How to auto-post to a Telegram channel from a script
- How to make a Telegram bot reply with AI answers
- How to Build a Discord Bot That Auto-Replies With AI
- How to Build a Slack AI Bot With Bolt for Node
- How to add slash commands and a menu to a Telegram bot
- How to Auto-Reply on WhatsApp With AI Using Twilio
- How to switch a Telegram bot from polling to webhooks
- How to Add an /ask Slash Command That Calls AI in Discord
- How to schedule Telegram channel posts with cron
- How to add inline buttons and handle taps in a Telegram bot
- How to send photos, documents, and files with a Telegram bot
- How to Give Your Chat Bot Memory of the Conversation
- How to auto-post your blog RSS feed to a Telegram channel
- How to Make a Slack Command That Summarizes a Thread With AI
- How to build an AI moderator bot for a Telegram group
- How to Connect AI to WhatsApp With the Meta Cloud API
- How to Connect AI to Chat Apps Without Code Using n8n
- How to Build an AI Auto-Reply Viber Bot
- How to Stream AI Replies Live in Discord by Editing Messages
- How to Send an AI Welcome Message When Someone Opens Your Viber Bot
- How to Connect Notion to Claude Using the MCP Connector
- How to connect Gmail to ChatGPT so it drafts replies for you
- How to Add a Gemini AI Formula to Google Sheets With Apps Script
- How to use Gemini inside Gmail to summarize and reply to threads
- How to Create a Notion Internal Integration Token for AI Scripts
- How to connect Google Calendar to ChatGPT to schedule events by chat
- How to Classify Spreadsheet Rows With ChatGPT in Google Sheets
- How to Connect Google Drive to Claude and Search Your Files
- How to Use Gemini in the Google Docs Side Panel to Draft and Edit
- How to connect Outlook to AI with Power Automate to summarize emails
- How to Build a Notion to Google Sheets AI Pipeline With Zapier
- How to give Claude access to your Gmail with an MCP server
- How to Auto-Summarize Notion Meeting Notes With an AI Script
- How to auto-label and prioritize Gmail with AI using Apps Script
- How to Generate a Full Google Doc From an AI Prompt With Apps Script
- How to turn AI meeting notes into Outlook calendar follow-ups
- How to Extract and Summarize a Drive PDF With AI Using Apps Script
- How to build an AI scheduling assistant that books meetings via email
- How to Translate a Google Sheets Column With an AI Custom Function
- How to sync AI-extracted tasks from email to your calendar with n8n
- How to use AI to triage and batch-reply to your inbox each morning
- How to securely give an AI tool access to your email account
- How to Send a Zapier Webhook to OpenAI and Get a Summary Back
- How to Trigger an n8n AI Agent from a Webhook Node
- How to Classify Incoming Webhook Data with Claude in Make
- How to Auto-Draft Email Replies from a Form with Zapier and GPT
- How to Connect a Webhook to Receive Events
- How to Verify Webhook Signatures Before Calling an AI Model
- How to Give a Zapier AI Webhook Simple Conversation Memory
- How to Describe Uploaded Images with a Make Webhook and GPT Vision
- How to Add an Error Handler and Retry to an AI Webhook in Make
- How to Answer a Webhook Instantly While AI Runs in the Background in n8n
- How to Build a Slack Slash Command AI Bot with an n8n Webhook
- How to Cap AI Spend on a Webhook Across Zapier, Make, and n8n
- How to Pin an API Version for a Stable Integration
How to Auto-Summarize Notion Meeting Notes With an AI Script
Pull a meeting page from Notion, send it to Claude for a summary, and write the result back as a new block.
Long meeting notes are useful only if someone reads them. This guide builds a small Node script that fetches a Notion page, sends the text to Claude for a tight summary with action items, and appends the summary back onto the same page. It assumes you already have a Notion token and a Claude API key.
- Node 18 or newer
- A Notion integration token shared with the page
- An Anthropic API key for Claude
- The page id of a meeting notes page
Step 1: Install the SDKs
Use the official clients for both services so you do not hand-roll request signing. Initialize a project first if you do not have one.
Step 2: Read the page text from Notion
Notion stores page content as blocks. List the children of the page and flatten the paragraph and heading text into a single string you can hand to the model.
import { Client } from "@notionhq/client";
import Anthropic from "@anthropic-ai/sdk";
const notion = new Client({ auth: process.env.NOTION_TOKEN });
const claude = new Anthropic({ apiKey: process.env.ANTHROPIC_API_KEY });
const pageId = process.env.NOTION_PAGE_ID;
const { results } = await notion.blocks.children.list({ block_id: pageId });
const text = results
.flatMap((b) => b[b.type]?.rich_text ?? [])
.map((t) => t.plain_text)
.join("\n");Step 3: Ask Claude for a summary
Send the flattened text to the Messages API with a clear instruction. Asking for a fixed shape, such as a short paragraph plus bullet action items, makes the output easy to write back cleanly.
const msg = await claude.messages.create({
model: "claude-sonnet-4-5",
max_tokens: 600,
messages: [
{
role: "user",
content:
"Summarize these meeting notes in 3 sentences, then list action items as bullets:\n\n" +
text,
},
],
});
const summary = msg.content[0].text;Step 4: Write the summary back to Notion
Append a heading and a paragraph block to the same page so the summary lives next to the raw notes. Run the script and the page updates in place.
await notion.blocks.children.append({
block_id: pageId,
children: [
{
heading_2: { rich_text: [{ text: { content: "AI Summary" } }] },
type: "heading_2",
object: "block",
},
{
paragraph: { rich_text: [{ text: { content: summary } }] },
type: "paragraph",
object: "block",
},
],
});
console.log("Summary written to page.");Result: every time you run the script, the chosen page gains a fresh AI Summary section. Schedule it after recurring meetings and your notes stay readable with zero manual effort.
Watch related tutorials
05:00
16:00
45:30
22:10
38:20
24:45New guides in your inbox
Fresh step-by-step how-to guides as we publish them. One email a week, no more.