CONTENT CREATION

Blog draft to localized audio narration pack

Turns a Notion blog draft into localized voiceover scripts, generates narrated audio per locale with ElevenLabs, stores the files in S3, and links them back on the Notion page.

CategoryContent Creation
Enginesim
Difficultyintermediate
Triggerevent
Steps6
Setup~15 min

How it runs

The automated pipeline, trigger to output.

  • TriggerNotion post set to ReadyNotionNotion
  • ActionFetch draft bodyNotionNotion
  • ActionGenerate localized narration scriptsOpenAI
  • ActionSynthesize audio per localeElevenLabsElevenLabs
  • ActionUpload audio files to S3AWS S3
  • OutputAttach playback links to Notion pageNotionNotion

What it does

This workflow converts a long-form blog draft into a listenable asset: it writes a tightened narration script per target locale, synthesizes natural-sounding audio for each, stores the audio files in S3, and attaches the playback links to the original Notion post.

When to use it

You want every blog post to ship with an audio version for podcast feeds, accessibility, or social audio clips across the languages you publish in, without manually scripting and recording each one.

How it works

  1. 1A Notion post status set to Ready fires the trigger.
  2. 2The draft body is fetched from Notion.
  3. 3OpenAI rewrites the draft into a spoken-word narration script for each locale, trimming visual-only references.
  4. 4ElevenLabs generates narrated audio from each localized script.
  5. 5The audio files are uploaded to an S3 bucket with public playback links.
  6. 6The links are written back to the Notion page, one per locale.

Set it up

What you configure once, before turning it on.

  1. 1
    Connect NotionPages, databases, comments.
  2. 2
    Connect OpenAIModels, embeddings, files.
  3. 3
    Connect ElevenLabsText-to-speech, voice cloning.
  4. 4
    Connect AWS S3Buckets, objects, signed URLs.
  5. 5
    Set each agent's modelWe leave models unset so you pick the tier — fast + cheap, or top-quality.
  6. 6
    Tune it to your dataEdit the prompts, filters, and field mappings so it matches how your team works.
  7. 7
    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.