Record a scrolling video of a website
render_videoRecord an MP4 or WebM video of a page, optionally scrolling through it, with the GPU for WebGL and 3D pages. Returns the video URL. Any other Urlbox option (proxies, cookies, headers, user agent and many more) goes in options: look it up with describe_options.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"intent": "<intent>"
},
"name": "render_video"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| gpu | No | Enable GPU acceleration to render 3D scenes and heavy WebGL content. This is a beta feature and requires pre-approval. Please contact support@urlbox.com to enable this feature on your account. Requires the ultra plan or above. | |
| url | No | The URL or domain of the website you want to screenshot. We will automatically prepend http:// if it is missing. | |
| html | No | HTML to render instead of a URL (HTML to PDF, HTML to image). | |
| delay | No | The amount of time to wait before Urlbox captures a render in milliseconds. | |
| width | No | The viewport width of the browser, in pixels. | |
| format | No | Output format: mp4, webm. Defaults to mp4. | |
| height | No | The viewport height of the browser, in pixels. | |
| intent | Yes | Required. In one or two sentences, what you are trying to achieve for the user with this call and why (for example: 'Screenshot the pricing page so the user can compare plans'). Recorded for analytics and audit; do not include secrets. | |
| options | No | Any other Urlbox render option by name, e.g. { "gpu": true }. For an option this tool doesn't list, look it up with describe_options first (it covers every option); don't search the web. Validated by the Urlbox API. | |
| project | No | Project id (proj_…) or exact name to render with. Defaults to your default project. | |
| block_ads | No | Blocks requests from popular advertising networks from loading. | |
| video_fps | No | Frames per second of the output video, from 1 to 60. Defaults to 30 on the latest engine and 60 on stable (see engine_version). Higher frame rates give smoother scrolling and bigger files. | |
| click_accept | No | Similar to the hide_cookie_banners option, but instead of hiding the banners, this option attempts to click on the 'Accept' button, in order to accept cookies. | |
| video_scroll | No | Smoothly scroll down the page while recording, section by section, then scroll back to the top. Scroll speed, easing, pauses and distance are controlled by the options below. | |
| wait_seconds | No | How long to wait for the render before returning. 0 queues it and returns a render id at once. If the wait runs out the render keeps going; fetch it with get_render. | |
| hide_selector | No | Hide specific HTML elements on the page before rendering. This option accepts a comma-delimited string of CSS element selectors that will be hidden by setting their style to visibility: hidden !important; pointer-events: none !important;. This preserves the page layout while making elements invisible. This is particularly useful for: Hiding pop-ups, banners, or cookie notices; Removing advertisements or promotional overlays; Excluding navigation menus or sidebars; Hiding specific content sections; Selector types supported: Element selectors (e.g., h1, div, img) - Hide all elements of that type; Class selectors (e.g., .popup, .banner) - Hide elements with specific CSS classes; ID selectors (e.g., #header, #sidebar) - Hide elements with specific IDs; Complex selectors (e.g., .nav ul li, div.content > p) - Use any valid CSS selector; Multiple selectors - Combine multiple selectors with commas; Tip: To find the selector for any element, open your browser's DevTools, right-click the element in the Elements tab, and select "Copy > Copy selector". | |
| engine_version | No | Sets the version of the urlbox rendering engine to use when rendering the page. This can be useful for testing how a page will render in the latest version of our rendering engine. One of: stable, latest, experimental. | |
| video_scroll_to | No | Scroll to and pause on specific page sections in turn while recording, instead of a constant scroll. Each stop is a CSS selector or a text=... locator, optionally followed by ;wait=... and ;duration=... (over a render link), or given as { selector | text, wait, duration, ease, offset } objects (in a JSON body). See the Recording videos guide. | |
| video_scroll_back | No | Whether to scroll back up to the top after reaching the bottom. | |
| hide_cookie_banners | No | Automatically hides cookie banners from most websites, by setting their style to display: none !important; |