DOCUMENT OPS

Extract clauses from contracts emailed to a shared inbox into Notion

Monitors a shared Gmail inbox for emails with signed-contract PDF attachments, extracts the key clauses, and files a structured summary page plus per-obligation rows in Notion.

CategoryDocument Ops
Enginesim
Difficultyintermediate
Triggerevent
Steps6
Setup~15 min

How it runs

The automated pipeline, trigger to output.

  • TriggerNew email with PDF attachment in shared Gmail inboxGmailGmail
  • ActionPull attachment and extract PDF textGmailGmail
  • ActionSummarize contract and extract obligations with an LLMOpenAI
  • LogicSkip attachments that are not contracts
  • ActionCreate Notion summary page with obligation rowsNotionNotion
  • OutputReturn Notion page URL

What it does

Watches a shared Gmail inbox for incoming contracts sent as PDF attachments, pulls each attachment, extracts the core commercial clauses and obligations with an LLM, and creates a Notion summary page for the contract with linked obligation rows. It removes the manual step of someone downloading email attachments and re-keying terms.

When to use it

Use this when counterparties or your sales team email signed contracts to a central address rather than dropping them in a folder, and you want those terms captured in Notion automatically on arrival.

How it works

  1. 1A new email with a PDF attachment lands in the watched Gmail inbox and triggers the run.
  2. 2The PDF attachment is pulled from the message and its text extracted.
  3. 3An LLM produces a contract summary plus a structured list of obligations.
  4. 4A filter ignores attachments that do not parse as contracts to avoid noise.
  5. 5A Notion summary page is created and one obligation row is added per extracted commitment.
  6. 6The Notion page URL is returned as the output.

Set it up

What you configure once, before turning it on.

  1. 1
    Connect GmailRead, draft, send, label.
  2. 2
    Connect OpenAIModels, embeddings, files.
  3. 3
    Connect NotionPages, databases, comments.
  4. 4
    Set each agent's modelWe leave models unset so you pick the tier — fast + cheap, or top-quality.
  5. 5
    Tune it to your dataEdit the prompts, filters, and field mappings so it matches how your team works.
  6. 6
    Test, then turn it onRun once against a sample, confirm the output, then enable the trigger.

Run this workflow in your colony.

14-day trial. No DevOps. No Sales call. Provisioned in under a minute.