Skip to content

Ask any video. Get answers with proof.

Paste a YouTube, TikTok or Instagram link and ask what you need: the sponsor and its code, every brand mentioned, an ad’s hook, or your own list of fields. Each answer comes back as data, with the words it came from and a link to the second they were said. Or get the clean transcript.

100 free credits, no card. Or ask from Claude or ChatGPT.

Ask the video

You ask

Who sponsors this video, and what is the deal?

and name the fields to fill: brandproductoffercodelink

POST /v1/extract
{
  "url": "youtu.be/jwnez8HdN7E",
  "prompt": "Who sponsors this video, and what is the deal?",
  "schema": { brand, product, offer, code, link }
}

You get

brand
CodeRabbit
product
AI copilot for code reviews
offer
One month free for your team
code
FIRESHIP
link
bit.ly/41rLUxm
  1. ¹Said at 3:43And an awesome tool that can help you review all that code is CodeRabbit, the sponsor of today's video, an AI copilot for code reviews that gives you instant feedback on every pull request.
  2. ²Said at 4:10It's 100% free for open-source projects, but you can get one month free for your team using the code FIRESHIP with the link below.
  3. ³in the descriptionSign up for CodeRabbit using FIRESHIP code, and get free CodeRabbit for 1-month https://bit.ly/41rLUxm

You ask

Every brand and product it mentions, and how it speaks of each.

with a ready-made set of fields: preset: mentions

POST /v1/extract
{
  "url": "youtu.be/jwnez8HdN7E",
  "preset": "mentions"
}

You get

  • Microsoftcompany · mixed0:02
  • Majorana 1product · mixed0:02
  • The Code Reportbrand · neutral0:55
  • Windowsproduct · negative0:59
  • Linuxproduct · positive1:06
  • Googlecompany · neutral1:21
  • Willowproduct · neutral1:21
  • IBMcompany · neutral3:26
  • Microsoft Kinproduct · negative3:34
  • CodeRabbitproduct · positive3:43
  • Discordapp · neutralin the description
  • Atom One Darkproduct · neutralin the description

and 3 more from the description, with the sponsor and its code.

You ask

When will the chip be ready to use?

in plain words.

POST /v1/extract
{
  "url": "youtu.be/jwnez8HdN7E",
  "prompt": "When will the chip be ready to use?"
}

You get

The post doesn't give a date for when the chip will be ready to use. It says the chip is currently useless for practical purposes, but could help lead to quantum computers in years, not decades.

  1. As of the post, the chip is described as useless for practical purposes.¹

  2. The speaker says it could get us to quantum computers in years, not decades.²

  1. ¹Said at 1:09…as of today, it's utterly useless for all practical purposes.
  2. ²Said at 1:17However, it could be a significant breakthrough that gets us to quantum computers in years, not decades.

You ask

How much does the chip cost?

in plain words.

POST /v1/extract
{
  "url": "youtu.be/jwnez8HdN7E",
  "prompt": "How much does the chip cost?"
}

You get

"answer": null

The video never says what the chip costs, so the answer comes back empty. Every answer comes from what the video says, or it doesn’t come at all.

You ask

Everything it says.

Misheard words corrected, in paragraphs and sections, each with its time.

GET /v1/transcript?url=youtu.be/jwnez8HdN7E

You get

AI code review and conclusion

3:43And an awesome tool that can help you review all that code is CodeRabbit, the sponsor of today's video, an AI copilot for code reviews that gives you instant feedback on every pull request. Unlike basic linters, it understands your entire codebase, so it can catch more subtle issues like bad code style or missing test coverage. Then it will suggest simple one-click fixes to help you get things cleaned up quickly. CodeRabbit keeps learning from your PRs over time, so the more you use it, the smarter it gets.

4:10It's 100% free for open-source projects, but you can get one month free for your team using the code FIRESHIP with the link below. This has been The Code Report. Thanks for watching, and I will see you in the next one.

Real answers for Microsoft’s new chip looks like science fiction… by Fireship, trimmed to fit.

Use it where you work.

Ask from your code, from a no-code automation or straight from your AI chat. The answers and their proof are the same everywhere.

In your code

Watch a channel: list its latest videos, then ask each one for its sponsors. SDKs for Python and TypeScript; n8n, Make and Zapier call it over HTTP.

# pip install cleanscript-ai
from cleanscript_ai import CleanScript

client = CleanScript()  # CLEANSCRIPT_API_KEY
channel = "youtube.com/@Fireship"
for post in client.posts(channel, limit=3).posts:
    r = client.extract(post.url, preset="mentions")
    for s in r.data["sponsors"]:
        print(s["brand"], s["code"] or "")
Output, 6 Oct 2026
Namespace
Fastino Labs FIRESHIPFIVE
OpenAPPA
Quickstart

In your ad research

Take any ad apart: its hook, angle, audience and call to action, each with the moment it was said.

Samsung Bespoke AI Laundry Combo@samsung on TikTok · 20K views
Hook
One thing I always think about when buying a new appliance is whether or not it's gonna be able to last.said at 0:00
Angle
The Samsung Bespoke AI Laundry Combo is presented as a durable, tech-updated all-in-one that can wash and dry quickly.said at 0:06
Audience
People buying a new appliance, especially those considering an all-in-one washer and dryer.said at 0:00
Call to action
Consider the Samsung Bespoke AI Laundry Combo if you are in the market for an all-in-one washer and dryer.said at 0:27
Break down an ad

In your chat

Add CleanScript to Claude, ChatGPT or your coding agent, then ask about any video in your own words. Answers link to the moment.

Who sponsors youtu.be/jwnez8HdN7E, and what’s the deal?

CodeRabbit, an AI copilot for code reviews. Your team gets one month free with the code FIRESHIP.3:434:10

Any other brands in it?

Microsoft’s Majorana 1 chip, Windows and Linux in an aside, then Google’s Willow and IBM.0:020:591:061:213:26

Connect your assistant

Three ways to ask.

Each answer comes back as JSON your code can use, with the quote it came from and a link to the second it was said. If the video doesn’t say it, you get null.

Show how to ask with

Ask a question.

Write it the way you’d ask a colleague who watched the video. You get the answer and the points it rests on, each with its quotes.

  • “What does it say about pricing?”
  • “Which features does it compare?”
  • “Does the host recommend it?”

3 credits per 10 minutes of video, the transcript included.

Read the guide
curl https://api.cleanscript.ai/v1/extract \
  -H "Authorization: Bearer $CLEANSCRIPT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url": "https://youtu.be/jwnez8HdN7E",
       "prompt": "When will the chip be ready to use?"}'
Response, trimmed
{  "data": {    "answer": "The post doesn't give a date for when the chip will be ready to use. It says the chip is currently useless for practical purposes, but could help lead to quantum computers in years, not decades.",    "points": [      "As of the post, the chip is described as useless for practical purposes.",      "The speaker says it could get us to quantum computers in years, not decades."    ]  },  "citations": {    "points[0]": [{      "quote": "Today, my PTSD was triggered when I saw that Microsoft was hyping up this new quantum chip because, as of today, it's utterly useless for all practical purposes.",      "source": "speech", "start": 69.33, "end": 77.25,      "url": "https://youtu.be/jwnez8HdN7E?t=69"    }],    …  }}

Name the fields you want.

List the fields, their types and a few words on each, as a JSON Schema. The answer has exactly that shape, so it drops straight into your database, sheet or app.

  • sponsor, offer, code
  • product, price, verdict
  • speaker, claim, figure

3 credits per 10 minutes of video, the transcript included.

Read the guide
result = client.extract(
    "https://youtu.be/jwnez8HdN7E",
    prompt="Who sponsors this video, and what is the deal?",
    schema={"type": "object", "properties": {"sponsor": {
        "type": "object",
        "description": "The paid sponsor of the video, if any.",
        "properties": {
            "brand": {"type": "string"},
            "product": {"type": "string", "description": "What the brand sells, in a few words"},
            "offer": {"type": "string", "description": "The deal offered to viewers; not the product"},
            "code": {"type": "string", "description": "Promo code, as written"},
            "link": {"type": "string", "description": "The sponsor link, if given"},
        },
    }}},
)
print(result.data["sponsor"]["code"])  # FIRESHIP
Response, trimmed
{  "data": {    "sponsor": {      "brand": "CodeRabbit",      "product": "AI copilot for code reviews",      "offer": "One month free for your team",      "code": "FIRESHIP",      "link": "https://bit.ly/41rLUxm"    }  },  "citations": {    "sponsor.code": [{      "quote": "It's 100% free for open-source projects, but you can get one month free for your team using the code FIRESHIP with the link below.",      "source": "speech", "start": 250.06, "end": 255.81,      "url": "https://youtu.be/jwnez8HdN7E?t=250"    }, {      "quote": "Sign up for CodeRabbit using FIRESHIP code, and get free CodeRabbit for 1-month https://bit.ly/41rLUxm",      "source": "description"    }],    …  }}

Or pick a ready-made set.

Four sets of fields written for the jobs people do most, the same for every video, so results line up across thousands of posts.

  • Summary: what it says, its points and best lines
  • Mentions: brands, products and sponsors, with offers and codes
  • Ad breakdown: hook, audience, promise, proof and call to action
  • Claims: what it asserts, who says it and every figure as stated

3 credits per 10 minutes of video, the transcript included.

Read the guide
curl https://api.cleanscript.ai/v1/extract \
  -H "Authorization: Bearer $CLEANSCRIPT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url": "https://youtu.be/jwnez8HdN7E", "preset": "mentions"}'
Response, trimmed
{  "data": {    "sponsors": [{ "brand": "CodeRabbit", "code": "FIRESHIP", … }],    "mentions": [      { "name": "Microsoft", "type": "company", "sentiment": "mixed" },      { "name": "Windows", "type": "product", "sentiment": "negative" },      { "name": "Linux", "type": "product", "sentiment": "positive" },      …    ],    "recommendations": [      "Sign up for CodeRabbit using code FIRESHIP for one month free for your team.",      …    ]  },  "citations": {    "mentions[2]": [{      "quote": "One of the worst things that ever happened to me in my entire life was when I upgraded from Windows XP to Windows Vista in 2007.",      "source": "speech", "start": 59.6, …    }],    …  }}

Every word, too.

When you need the whole text, get the transcript. Automatic captions mishear names, brands and jargon, so CleanScript corrects them from the words around them and the post’s own title and description. Captions a creator wrote come back as written. No captions at all: the audio is transcribed.

  • Paragraphs in sections, each with its start time and a link to that moment.
  • Caption-sized lines for subtitles, and the text shown on screen.
  • In the language spoken, or translated into yours.
  • 1 credit per 10 minutes of video. Read the guide
curl -G https://api.cleanscript.ai/v1/transcript \
  -H "Authorization: Bearer $CLEANSCRIPT_API_KEY" \
  --data-urlencode "url=https://youtu.be/jwnez8HdN7E"

Ask a 10-minute video for 3 credits.

  • 100 free credits, no card. Enough to ask 33 ten-minute videos, or for 100 transcripts.
  • Then packs from $10. One-time payments, no subscription.
  • Failures are free, and so is asking for the same thing again within 6 hours.

Get your API keySee pricing

ExampleTranscriptWith answers
A 45-second TikTok or Reel, with or without captions1 credit3 credits
A 10-minute YouTube video1 credit3 credits
A 15-minute video without captions15 credits19 credits
A 1-hour podcast6 credits18 credits
Text shown on screen, added to a transcript+1 credit+1 credit
A creator’s recent posts, per call1 credit–

Questions

Something else? Write to mohamed@messaad.dev. A person answers.

What can I ask?

Anything the post says: who sponsors it, what it claims, which products it compares, what an ad promises. Answers come from the speech, the title and the description (and the text on screen when a post has no speech), not from images, music or sounds.

How do I know an answer is right?

Every value comes with the words it was taken from, where they are (speech, title, description or on screen) and, for speech, a link that opens the video at that second. Each value is checked against the post before it is returned; one without a supporting quote is removed, and the response lists it.

What if the video doesn’t say?

Then the answer is empty: null for a value, an empty list for a list. Nothing is filled in from outside the post.

What is a credit?

A credit costs 0.6¢ to 1¢, by pack. Asking a 10-minute video costs 3 credits, the transcript included; its transcript alone, 1 credit. A post without captions is transcribed from its audio for 1 credit per minute instead, and a translation the platform doesn’t provide adds 1 per 10 minutes. Every started 10 minutes counts: an 11-minute video is 2 credits. Listing a creator’s recent posts costs 1.

Which links work?

Any YouTube video or Short, TikTok post or Instagram post or Reel, in any link form, or a bare YouTube video ID. Instagram and TikTok are in beta, held to the same quality bar as YouTube.

What if a video has no captions?

We transcribe and correct it, up to 15 minutes long, for 1 credit per started minute: a 45-second Reel is 1 credit. A post with no speech returns the text shown on screen instead.

How precise are the times?

A line starts and ends when its caption does, so times are exact to the line, not the word. Every paragraph and every quote links to its moment in the video.

Which languages?

Transcripts come in the language spoken. Ask for another with language= and you get the post’s own captions in that language when they exist, otherwise a translation, marked as one. A translation the platform doesn’t provide adds 1 credit per 10 minutes of video.

Do I pay when something fails?

No. Failed requests are free, and asking again for the same thing within 6 hours is free, so a retry never pays twice.

Can my AI agent use it?

Yes. Add the MCP server at https://api.cleanscript.ai/mcp to Claude, ChatGPT, Claude Code, Cursor or Codex, or point a coding agent at cleanscript.ai/llms.txt.

Ask your first video.

No question gets you the transcript. You’ll see the request first; running your own link needs a free account (100 free credits, no card).