Every 15 minutes
Review 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.
- 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: when a new contract appears in my Drive folder, have AI flag risky clauses and create a Notion page with the findings.
First time? Adding ClickRuntime to your assistant takes about two minutes.
Why use it
Why teams use this automation
A small agency signs supplier agreements, client contracts and NDAs every month, and has no in-house lawyer. Contracts get a quick skim before signing, and the auto-renewal clause or the unlimited liability term is found only when it causes a problem.
This automation gives every document a first review. When a new file appears in the Drive folder, its text is read and AI lists the key terms and anything that looks risky, such as renewal traps, payment terms, liability and termination. The findings go into a Notion page so the team can discuss them before anyone signs.
What you get out of it
Nothing gets signed unread
Every document dropped in the folder gets a review, even in a busy week. Risky terms are flagged before signing, not after.
Know where to look
The review points to the clauses that matter, so a lawyer or manager can focus their time. A short targeted check costs far less than a full review.
A record of every agreement
Each document gets a Notion page with its key dates and terms. Finding a renewal date or notice period takes seconds.
Works for invoices and finance documents too
The same review can check invoices against agreed rates or flag unusual payment terms. You choose what the review looks for.
How it works
What happens, step by step
Every 15 minutes, ClickRuntime checks your contracts folder in Google Drive for files added since the last check.
It reads the text of each new document.
AI lists the key terms and flags clauses that look risky or unusual.
A Notion page is created for each document with the findings and a link to the file.
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 clickruntime import on_trigger, credentials, http, state, ai, report_fetched
FOLDER_ID, DB_ID = "your-drive-folder-id", "your-notion-database-id"
DRIVE = "https://www.googleapis.com/drive/v3/files"
@on_trigger
def run(event):
g = {"Authorization": f"Bearer {credentials.connection('google', 'work')}"}
since = state.get("since") or "2026-01-01T00:00:00Z"
files = http.get(DRIVE, headers=g, params={"q": f"'{FOLDER_ID}' in parents and createdTime > '{since}' and trashed = false",
"fields": "files(id,name,createdTime,webViewLink)", "orderBy": "createdTime"}).json()["files"]
report_fetched(len(files))
if not files:
return {"new": 0}
n = {"Authorization": f"Bearer {credentials.connection('notion', 'work')}", "Notion-Version": "2022-06-28"}
for f in files:
text = http.get(f"{DRIVE}/{f['id']}/export", headers=g, params={"mimeType": "text/plain"}).text[:60000]
try:
review = ai.generate(text, system="Review this contract: parties, key dates, renewal/notice, payment, liability, termination; then list risky clauses.", max_output_tokens=1200).text
except ai.AIError:
review = "AI review unavailable; please review manually."
paras = [{"object": "block", "type": "paragraph", "paragraph": {"rich_text": [{"text": {"content": review[i:i + 1900]}}]}} for i in range(0, len(review), 1900)]
http.post("https://api.notion.com/v1/pages", headers=n, json={"parent": {"database_id": DB_ID},
"properties": {"Name": {"title": [{"text": {"content": f["name"], "link": {"url": f["webViewLink"]}}}]}}, "children": paras})
state.set("since", f["createdTime"])
return {"reviewed": len(files)}FAQ
Common questions
Which file types can it read?
What does the review look for?
Does this replace a lawyer?
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 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.
See how it worksScreen 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 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 “Review new contracts in Drive and log the findings in Notion” from your assistant
Copy the prompt above, or connect your assistant first. Free plan, no credit card.