Turn Notion drafts into narrated blog audio and podcast episodes

By General Input

Every hour, we grab ready-to-narrate Notion drafts, rewrite them for listening, and publish an mp3 to Google Drive with your brand voice.

Integrations

  • Cartesia
  • Notion
  • Google Drive

Type

Agentic Task

Categories

  • Marketing

Every hour, on a cron trigger, turn publish-ready Notion drafts into narrated audio for our blog and podcast feed. The anchor here is Cartesia because the mp3 is the deliverable; Notion is the source and Google Drive is where the finished audio lives.

Start with Notion's Query a Database against our content database. Filter for pages where the Status property equals 'Ready for audio' and no audio URL has been written back yet, so we do not re-narrate the same piece. For each matching page, call Notion's Retrieve Page as Markdown to pull the full body.

Rewrite each article for the ear rather than the eye. Use shorter sentences, contractions, a spoken intro that names the piece and the author, and a short outro that thanks the listener. Add Cartesia SSML tags for pacing, breaths, and light emotion so the delivery feels natural. Convert URLs, footnote markers, and any visual-only elements (tables, image captions, code blocks) into spoken references or drop them; nothing should be read out that would sound awkward.

Before the first synthesis in a run, call Cartesia's List Voices once and pick our brand voice by name (or by a saved voice id if we have one). Then feed the rewritten script to Cartesia's Text to Speech (Bytes) using that voice id and request mp3 output. Keep each generated file under about six minutes of audio. If a rewritten script would run longer, split it into logical sections at natural breaks and generate one mp3 per section, named with the article slug plus a part number.

Upload each mp3 to Google Drive using Upload File (Multipart) with a descriptive filename (article slug, and part number if applicable). Then call Create Permission on the uploaded file with type 'anyone' and role 'reader' so anyone with the link can play it. Capture the webViewLink or webContentLink for each part.

Finally, call Notion's Update a Page to write the audio URL into the page's Audio property (or a comma-separated list of URLs for multi-part episodes) and flip Status to 'Narrated'. If any step fails for a given page, leave that page's Status alone and log the error so the next hourly run can retry it cleanly without producing duplicate mp3s.

Related prompts

Explore more prompts
Screen chartered vessels for AIS gaps and sanctions red flagsCompare candidate store locations with drive time trade areasBrowse every competitor ad and build a Notion swipe fileAudience persona studio for brand and product marketersAd creative studio with a pre-approved variant libraryFilter every signed Ironclad contract and brief it on demandArtwork desk for the Notion posts still missing an imageWebinar promo desk: find Zoom sessions missing artworkShare of voice dashboard for your brand and competitorsInfluencer campaign roster board with AI creator briefs