Every 15 minutes
Turn recordings in Google Drive into summarised notes in Notion
Drop an audio recording in your Drive folder and get a Notion page with its summary and action items.
- Runs
- Every 15 minutes
- Apps
- Google Drive, Notion
- AI
- Yes, uses the built-in AI allowance
- Access
- drive.readonly; Notion insert content
Send this to your assistant
Create a ClickRuntime automation: every 15 minutes, check my Drive 'Recordings' folder for new audio, transcribe and summarise it, and create a Notion page with the summary and action items.
First time? Adding ClickRuntime to your assistant takes about two minutes.
Why use it
Why teams use this automation
A consultant records client calls, site visits and voice memos on their phone, and the files sync to a Drive folder. Listening back takes as long as the recording, so most files are never opened again and the details in them are lost.
Turning each recording into a short written summary with action items makes it useful. The notes land in Notion next to the rest of your client work, where you can search and link them.
What you get out of it
Recordings become something you can read
A one-page summary takes a minute to read, while the recording takes an hour to replay. You actually go back to what was said.
Action items are pulled out
Promises made during a call are listed separately. Follow-ups happen because they are written down, not remembered.
Notes sit with your other work
Summaries go into the Notion database where you keep client and project notes. Everything about a client is in one place.
Just record and forget
There is nothing to do after recording except let the file sync. The notes appear within a quarter of an hour.
How it works
What happens, step by step
Every 15 minutes, ClickRuntime checks your Recordings folder in Google Drive for audio files it has not processed.
If there are none, it stops there until the next check.
Each new recording is sent to your transcription service, and AI writes a summary and list of action items from the transcript.
A Notion page with the summary, action items and a link to the recording is created, and the file is remembered so it is not processed twice.
Before it runs live
- Connect Google Drive
- Connect Notion and share the database you want it to use
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 Slack
- Combine it with other Google Drive and Notion steps into one automation
Under the hood
The code that runs this automation
from google.oauth2.credentials import Credentials
from googleapiclient.discovery import build
from clickruntime import on_trigger, credentials, http, ai, state, report_fetched
FOLDER_ID, NOTION_DB = "your-folder-id", "your-database-id"
STT_URL = "https://api.openai.com/v1/audio/transcriptions"
@on_trigger
def run(event):
token = credentials.connection("google", "work")
drive = build("drive", "v3", credentials=Credentials(token), cache_discovery=False)
done = set(state.get("done") or [])
files = drive.files().list(q=f"'{FOLDER_ID}' in parents and mimeType contains 'audio/' and trashed=false",
fields="files(id,name,webViewLink)").execute().get("files", [])
new = [f for f in files if f["id"] not in done]
report_fetched(len(new))
if not new:
return {"summary": "Nothing new"}
nh = {"Authorization": f"Bearer {credentials.connection('notion', 'work')}", "Notion-Version": "2022-06-28"}
for f in new:
audio = http.get(f"https://www.googleapis.com/drive/v3/files/{f['id']}?alt=media", headers={"Authorization": f"Bearer {token}"}).content
text = http.post(STT_URL, headers={"Authorization": f"Bearer {credentials.secret('OPENAI_API_KEY')}"},
data={"model": "whisper-1"}, files={"file": (f["name"], audio)}, timeout=300).json()["text"]
notes = ai.generate(f"Summarise this recording and list action items:\n{text[:60000]}", max_output_tokens=900).text
http.post("https://api.notion.com/v1/pages", headers=nh, json={"parent": {"database_id": NOTION_DB},
"properties": {"Name": {"title": [{"text": {"content": f["name"]}}]}},
"children": [{"paragraph": {"rich_text": [{"text": {"content": notes[:1900]}}]}},
{"paragraph": {"rich_text": [{"text": {"content": "Recording", "link": {"url": f["webViewLink"]}}}]}}]})
done.add(f["id"])
state.set("done", list(done))
return {"processed": len(new)}FAQ
Common questions
Which audio formats work?
Which transcription service does it use?
Is the full transcript kept?
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
Screen new résumés from Google Drive into Notion
Each new CV dropped into your Drive folder is read, scored against the job, and added as a card on your Notion hiring board.
See how it worksReview new contracts in Drive and log the findings in Notion
When a contract or finance document lands in your Drive folder, AI reviews it for risky terms and the findings are saved as a Notion page.
See how it worksCatalogue new Drive photos in a Notion gallery
Photos added to your Drive portfolio folder are described, tagged and catalogued in your Notion gallery database.
See how it worksKeep exploring
Set up “Turn recordings in Google Drive into summarised notes in Notion” from your assistant
Copy the prompt above, or connect your assistant first. Free plan, no credit card.