Every 10 minutes
Save important Slack messages to Notion
React to a message with 🔖 and it's saved to a Notion database, tagged so you can find it later.
- Runs
- Every 10 minutes
- Apps
- Notion, Slack
- AI
- Yes, uses the built-in AI allowance
- Access
- Slack reactions:read, channels:history; Notion insert
Send this to your assistant
Create a ClickRuntime automation: every 10 minutes, find Slack messages with a 🔖 reaction, save each one to my Saved Messages database in Notion with a link and a few tags, and skip ones already saved.
First time? Adding ClickRuntime to your assistant takes about two minutes.
Why use it
Why teams use this automation
The most useful messages in Slack are the ones nobody can find later: a customer's glowing feedback, a decision explained clearly, a bug report with reproduction steps. Teams bookmark them or promise to copy them somewhere, but bookmarks are personal and copying is a chore. Marketing needs testimonials for the website, product needs examples of real feedback, and both end up searching chat history for a sentence somebody half remembers.
Every ten minutes ClickRuntime looks for messages that someone marked with a reaction such as a star or a heart, skips ones it has already saved, fetches the text and permalink, and uses its built-in AI to add tags and a sentiment. It then creates a page for each in a Notion database that the whole team can search.
Customer-facing teams use it to build a living collection of testimonials and feedback.
What you get out of it
Good feedback is kept, not lost
A reaction takes one second and turns a message into a permanent record. Marketing finds the praise a customer posted in March when it needs a quote for the new landing page.
Tags make the pile searchable
AI-assigned topics let you filter for pricing feedback or onboarding complaints. A product manager can see every mention of a feature in one view. A product manager can then see every mention of one feature across months of feedback in a single view.
Sentiment shows the mood over time
Positive, neutral and negative labels give a rough read of how customers feel. A rising count of negative items about one area points to a problem to look at. Labels give a rough read of mood, and a rising count of negative items about one area points to something to examine.
Everyone can contribute without extra tools
Anybody in Slack can save a message with a reaction. The knowledge base grows from many colleagues rather than from the one person who maintains it. Anybody in Slack can save a message with a single reaction, so the library does not hang on one maintainer.
The source is always one click away
Each page stores a link back to the original message. People can read the surrounding conversation to understand context before using a quote. People can read the surrounding conversation to understand the context before they quote someone, which prevents misuse.
How it works
What happens, step by step
Every 10 minutes, ClickRuntime looks for Slack messages you have reacted to with the 🔖 bookmark, skipping any it has already saved.
It gets each message's text and a link back to it in Slack.
AI reads the message and picks a few tags for it.
The message is saved as a page in your Notion Saved Messages database with its tags and link.
Before it runs live
- Connect Notion and share the database you want it to use
- Connect Slack, then invite the app to the channel (type /invite @ClickRuntime there)
What you get
Build your own
Need it to work differently?
Your own rules
Conditions, thresholds, filters and exceptions, written the way you'd explain them to a colleague.
Any number of apps
One automation can read from one app and update several others. Over 248 apps are ready, and anything with an API works too.
AI where it helps
Summaries, classification, extraction and drafts use ClickRuntime's built-in AI, with no extra key.
On a schedule or on each event
Runs as often as every 5 minutes, or the moment an app sends an event, and keeps track of what it already handled.
Changes you can ask for
- Act only on the items that match your own rules, and skip the rest
- Change what the AI looks for, or how it writes the result
- Add another app, for example also send it to Google Sheets
- Combine it with other Notion and Slack steps into one automation
Under the hood
The code that runs this automation
from slack_sdk import WebClient
from clickruntime import on_trigger, credentials, http, state, ai, report_fetched
DATABASE_ID = "your-saved-messages-database-id"
@on_trigger
def run(event):
slack = WebClient(token=credentials.connection("slack", "work"))
saved = set(state.get("saved") or [])
items = slack.reactions_list(full=True, limit=100)["items"]
new = [i for i in items if i["type"] == "message"
and any(r["name"] == "bookmark" for r in i["message"].get("reactions", []))
and f"{i['channel']}:{i['message']['ts']}" not in saved]
report_fetched(len(new))
if not new:
return {"new": 0}
for i in new:
text = i["message"]["text"]
link = slack.chat_getPermalink(channel=i["channel"], message_ts=i["message"]["ts"])["permalink"]
tags = ai.generate(text[:2000], max_output_tokens=30, system="Give 1-3 short topic tags, comma separated.").text
http.post("https://api.notion.com/v1/pages",
headers={"Authorization": f"Bearer {credentials.secret('NOTION_TOKEN')}", "Notion-Version": "2022-06-28"},
json={"parent": {"database_id": DATABASE_ID}, "properties": {
"Name": {"title": [{"text": {"content": text[:100]}}]},
"Link": {"url": link},
"Tags": {"multi_select": [{"name": t.strip()[:50]} for t in tags.split(",") if t.strip()]}}})
saved.add(f"{i['channel']}:{i['message']['ts']}")
state.set("saved", sorted(saved)[-1000:])
return {"saved": len(new)}FAQ
Common questions
Which reaction saves a message?
Does it save replies in threads?
Can I review the AI tags?
What permissions does it need?
Does it need AI?
How many runs does it use?
Can I change how it works?
Related
You might also like
Turn Slack requests into Notion tickets
Requests posted in Slack become Notion tickets with a type and priority, and urgent ones are flagged straight away.
See how it worksCollect ideas from Slack in Notion
Ideas posted in a Slack channel become short, tidy pages in your Notion ideas database, with a link back in the thread.
See how it worksTurn meeting recordings into Notion notes
After each call, a summary with action items is saved to Notion and the highlights are posted to Slack.
See how it worksKeep exploring
Set up “Save important Slack messages to Notion” from your assistant
Copy the prompt above, or connect your assistant first. Free plan, no credit card.