Story-to-Script Rewriter — Viral Video Scripts avatar

Story-to-Script Rewriter — Viral Video Scripts

Pricing

from $20.00 / 1,000 script rewrittens

Go to Apify Store
Story-to-Script Rewriter — Viral Video Scripts

Story-to-Script Rewriter — Viral Video Scripts

Rewrite any story, article, or Reddit post into a punchy short-form video script — strong 3-second hook, tight retention-optimized narration, your tone and length. Returns the script, title, and alternate hooks. For TikTok, Reels, Shorts, and faceless channels.

Pricing

from $20.00 / 1,000 script rewrittens

Rating

0.0

(0)

Developer

Dami's Studio

Dami's Studio

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

0

Monthly active users

2 days ago

Last modified

Share

Story-to-Script Rewriter

Turns a story, article, or Reddit post into a short-form video script: a hook built to land in the first 3 seconds, narration written in the tone and length you ask for, plus a suggested title and a couple of alternate hooks. Built for people churning out TikTok, Reels, Shorts, and faceless-channel content who don't want to rewrite every source by hand.

How it works

Each source goes through one chat completion that returns structured JSON. The prompt forces a curiosity-gap hook (no greetings), tightens the narration toward your target length (it budgets roughly 150 spoken words per minute), and strips out stage directions, hashtags, and emoji so the text is ready to read aloud.

Input

You can pass a single text, an array of sources, or both. Sources can be plain strings or post objects, in which case it reads selftext, scriptText, body, text, or title in that order, so you can pipe a Reddit scraper's output straight in.

FieldRequiredNotes
textno*The story/article/post to rewrite.
sourcesno*Array of strings or post objects. Batched, one script per item.
tonenodramatic (default), casual, funny, emotional, educational, hype.
platformnotiktok (default), youtube shorts, instagram reels, youtube. Tunes pacing and hook style.
targetSecondsnoApproximate spoken length to aim for. Default 45.
povnokeep (default), first, or third person.
languagenoOutput language. Default English.
openaiApiKeyyes (at runtime)Your OpenAI key. Stored as a secret.
modelnoChat model. Default gpt-4o-mini.
baseUrlnoOpenAI-compatible base URL if you're not using OpenAI directly.

*No field is marked required in the schema, but the run fails unless you provide either text or sources, and an OpenAI key.

Output

One dataset record per source. The fields that matter are title, hook, script (the full narration, hook included), and altHooks (two alternates). Each record also carries wordCount and estSeconds so you can check the length came out close to your target, plus ok and, on failure, an error string.

Example

{
"text": "My neighbor kept parking in my spot. I asked nicely three times. So I had his car towed, and it turned out the car wasn't even his.",
"tone": "dramatic",
"platform": "tiktok",
"targetSeconds": 40,
"pov": "first",
"language": "English",
"openaiApiKey": "sk-..."
}

Pricing

$0.02 per script, pay per result, no subscription. You bring your own OpenAI key, so model usage is billed to your OpenAI account separately.

Notes

A few sources will fail to parse or get refused by the model. Those are written to the dataset with ok: false and an error rather than stopping the whole run, so check that flag before you trust a batch.