Sync Cap recordings to a Notion library

Every hour, your team's new Cap screen recordings show up in one searchable Notion database with names, durations, and share links.

Deterministic Code
CapNotionOperationsProductData SyncResearch & Monitoring
PromptCreate

Build me a code workflow that runs every hour on a cron and syncs new Cap screen recordings into a Notion "Recording Library" database. The goal is one searchable team-wide home for every Cap recording, with no duplicates across re-runs.

Trigger: cron, every hour. Cap does not have a first-class poll trigger, so cron plus List Videos is the right pattern.

Step 1, pull recordings from Cap. Call Cap List Videos with limit 100 ordered by createdAt descending. For each row, call Cap Get Video to fetch the full metadata (id, name, duration, transcriptionStatus, createdAt, externalUserId).

Step 2, dedupe against Notion. For each Cap video, call Notion Query a Data Source against the Recording Library database filtered on the recording id property equal to the Cap id. If a matching page already exists, skip it. Treat the Cap id as the unique key so re-runs never create duplicates.

Step 3, write new recordings to Notion. For each recording that did not already exist, call Notion Create a Page in the Recording Library database with these properties populated: Recording ID (the Cap id, the unique key), Name, Duration, Transcription Status, Created At, External User ID (creator), and Share URL built as https://cap.so/s/{id}.

Configuration the user should set at setup time: their Cap credential, their Notion credential, and the Notion data source id for their Recording Library database. The workflow should be fully deterministic with no branching and no AI steps.

What does this prompt do?

  • Watches your Cap account every hour for newly created screen recordings.
  • Adds each new recording as a row in your Notion Recording Library database with name, duration, share link, and creator.
  • Checks the database first so re-runs never create duplicate rows.
  • Gives your team one searchable home for every screen capture instead of scattering links across chat and email.

What do I need to use this?

  • A Cap account with a developer Secret Key (created in Cap's Developers dashboard).
  • A Notion workspace with a database set up for recordings, with properties for the recording id, name, duration, transcription status, created date, creator, and share link.
  • The Notion database shared with your General Input connection so the workflow can read from it and add new rows.

How can I customize it?

  • Change how often the sync runs, for example every 15 minutes or once a day.
  • Filter to only sync recordings from specific people on your team by external user id.
  • Add or remove the recording details that get saved to Notion (thumbnails, tags, project, etc.).

FAQs

How does it avoid duplicates when it runs every hour?
Before adding a recording, the workflow looks up the Cap recording id in your Notion database. If a row with that id already exists, it skips it. The Cap id acts as the unique key, so re-runs are always safe.
Can I point this at an existing Notion database?
Yes. Use any database that has properties for the recording details you want to track. At a minimum you want a unique id property, a title, a duration, and a URL property for the share link.
Will it backfill recordings that were created before I set this up?
On its first run it will sync up to the most recent 100 recordings in your Cap app. After that it only adds new recordings going forward. If you want a deeper backfill, you can run it more times against an empty database.
Does this cover recordings made by every member of my team?
Yes, as long as the recordings live under the same Cap developer app. The workflow uses your Cap Secret Key to see every recording that app has access to, regardless of who recorded it.
Do I need to write any code to use this?
No. Connect Cap and Notion, point the workflow at your Recording Library database, and it runs on its own every hour.

Related templates

Weekly voice-of-customer report from surveys and support

Every Monday, last week's survey answers and support conversations become one themed report in Notion, with the top five themes posted to Slack.

Typeform
Intercom
Notion
+2
Agentic Task
Turn 5 star Yotpo reviews into a weekly marketing content queue

Every Tuesday we pull your best new reviews, draft social captions, email testimonials and product page quotes, then stage them in Notion for approval.

Yotpo
Notion
Slack
Agentic Task
Draft incident postmortems from Statuspage every morning

Each weekday morning, turn yesterday's major incidents into ready-to-review postmortem drafts in Statuspage, Notion, and Jira.

Statuspage
Notion
Jira
Agentic Task
Plain-English security review of Tailscale access changes

Every time someone edits your Tailscale access rules, get a readable summary of what changed, who changed it, and whether it made you less safe.

Tailscale
Slack Bot
Notion
Agentic Task
Monthly Vimeo performance review in Notion and Slack

On the first of each month, your video library becomes a written review of what worked, what flopped, and three things to change next month.

Vimeo
Notion
Slack Bot
Agentic Task
Push your approved Notion content calendar into Sprout Social

Every morning, the posts you approved in Notion land in Sprout Social as scheduled drafts, with captions, images and publish times already filled in.

Sprout Social
Notion
Deterministic Code

Stop losing track of screen recordings.

Connect Cap and Notion once, and Geni keeps your team's recording library up to date every hour.