Skip to main content

Overview

A scrolling video records a website as it scrolls: Hooked opens the page, scrolls it the way you set, and turns the capture into a video. There is no avatar or voice (background music only if you pass a musicId), which makes it a clean screen recording to use as B-roll, as a product walkthrough, or as the background of another video. Every request needs scrollingVideoSettings.websiteUrl, a public http(s) URL.

Quick Example

With only the URL you get a 30-second vertical (9:16) video that scrolls down every 3 seconds and jumps back to the top when it reaches the bottom. The create call answers with the projectId; poll GET /v1/project/{projectId} or pass a webhook to get the finished video.

Custom Scrolling

Parameters

Scroll Modes

Managed teams pay 13 credits plus 4 per started 30 seconds of targetDuration. Teams in bring-your-own-keys mode are not charged credits for generation, but need their own OpenRouter key in Settings → AI keys. Without it the call answers 402 with code: "missing_credentials" and the missingProviders list, before anything is created or charged. To retry a create call after a timeout or 5xx, send it with an Idempotency-Key: the same key never creates or charges twice.

Tips for Scrolling Videos

Public pages only: the page must load without a login
Match the length to the page: a short landing page suits once with a short targetDuration; a long one suits restart or loop
Slower for reading: a longer scrollInterval gives viewers time to read each section
Pick the shape for where it goes: ratio_9_16 for TikTok, Reels and Shorts, ratio_16_9 for YouTube and websites

Use Cases

  • Product walkthroughs: Show a landing page or pricing page in motion
  • B-roll: A screen recording to use in UGC Studio app demos and other videos
  • Portfolio showcases: Present websites you built
  • App demos: Record a web app’s public pages

Handling the Webhook Response

Webhooks are signed: check the Hooked-Signature header as shown in Webhooks.