Turn new Google Drive contracts into Notion risk briefs with Gemini
Every 30 minutes, Gemini reads new vendor and customer PDFs from Google Drive, files a structured risk brief in Notion, and pings legal in Slack for the risky ones.
Build me an agent workflow that reviews new vendor and customer contract PDFs dropped into a specific Google Drive folder and turns each one into a structured risk brief in Notion. Trigger: cron, every 30 minutes.
On each tick, use Google Drive List Files against a designated Contracts Inbox folder to find PDFs added since the last run. Filter on mimeType = application/pdf and modifiedTime newer than the last successful run. Dedupe by Google Drive file id so the same PDF is never re-reviewed, even if the folder is re-scanned or a file is renamed.
For every new file, use Google Drive Download File Content to pull the binary, then pass the PDF bytes to Google Gemini Generate Content using gemini-2.5-pro for its long context window. The Gemini prompt should extract a stable, structured schema so downstream Notion rollups keep working: counterparty name, contract type (vendor or customer), effective date, end date, total contract value and currency, payment terms, auto-renewal window and notice period, liability cap, indemnity summary, IP and data-processing terms, termination for convenience clause, and governing law. It should also flag any clause that departs from our standard playbook and assign an overall risk rating of low, medium, or high with a one-sentence rationale, plus a short list of the top two or three flagged clauses.
Use Notion Create a Page to log a row in a Contract Reviews database with all of those fields plus a link back to the original Drive file. Keep the field names and shape stable across runs so Notion rollup formulas and saved views do not break.
Then use Slack Bot Send a Message to post to a legal review channel, but only for contracts rated medium or high risk. Keep the Slack message compact and left-aligned so legal can triage on mobile: counterparty, risk rating, top two flagged clauses inline, and a link to the Notion page. Skip Slack entirely for low risk contracts.
Ask me for the Drive folder id, the Notion database id, and the Slack channel when you set this up. If anything fails, log the error against the Notion row so we can retry the file manually rather than silently dropping it.
Additional information
What does this prompt do?
- Watches a designated Google Drive contracts inbox folder every 30 minutes and picks up any new PDF that has not been reviewed yet.
- Uses Google Gemini to read the full document and pull out counterparty, dates, contract value, payment terms, auto-renewal, liability caps, indemnity, IP, data protection, termination, and governing law.
- Files each contract as a new row in a Notion Contract Reviews database with a link back to the original file, a list of flagged clauses, and an overall low, medium, or high risk rating.
- Posts a short Slack alert to your legal channel only when a contract lands as medium or high risk, so the team can triage on mobile without noise.
What do I need to use this?
- A Google Drive account with a folder set aside as your contracts inbox where new PDFs get dropped.
- A Google Gemini account for reading and analyzing the contract PDFs.
- A Notion workspace with a Contract Reviews database ready to receive the structured summaries.
- A Slack workspace and a channel where your legal or ops reviewers get pinged for risky contracts.
How can I customize it?
- Change the review cadence, for example every 15 minutes for busy legal teams or once an hour for lighter volume.
- Adjust the risk rules so the Slack alert fires only for high risk contracts, or expand it to include specific clauses like data protection or IP.
- Edit the extraction checklist to match your own playbook, adding fields like insurance minimums, jurisdiction preferences, or SLA credits.
- Point it at a different Notion database or Slack channel for vendor versus customer contracts if you want separate pipelines.
Frequently asked questions
Will the same contract get reviewed twice if it sits in the folder?
Does this work for long, multi-page contracts?
What if I only want to be notified about high risk contracts?
Can I use this for customer contracts, not just vendor contracts?
Do the Notion fields stay consistent across contracts?
Related templates
Stop reading every contract line by line.
Connect Google Drive, Gemini, Notion, and Slack once, and Geni turns every new contract into a Notion risk brief every 30 minutes.