URL to Markdown & Video
Convert public URLs to clean, LLM-ready markdown, capture screenshots, or render smooth scrolling MP4s at a controlled speed. Every destination and redirect is validated before fetching.
Try it
Turn a public page into a smooth scrolling video
Submit a URL, capture method, and scroll speed, then receive a seekable MP4 suitable for demos, launch posts, product previews, and automated content pipelines.
Smooth MP4 output
Quality-checked live capture or a deterministic 30 fps static pan, encoded as fast-start H.264.
Controlled scroll speed
Use slow (160 px/s), normal (240), fast (400), or a custom speed from 80–800 px/s.
Asynchronous rendering
Queue a 2–30 second render, poll its status, then stream the result with HTTP Range support.
How it works
- 1Queue. POST a public URL and receive 202 Accepted with a statusUrl.
- 2Poll. Check the status while the job is queued or processing.
- 3Play. When ready, stream or download videoUrl as an H.264 MP4.
Keep SCROLL_VIDEO_API_KEY in your backend or deployment secret manager. Never ship the shared key in browser code. The live Toolbox intentionally does not ask for or expose it.
Use auto unless you need to force live sticky/canvas behavior or a deterministic static_pan. Auto records the method actually used in the ready-job diagnostics.
Server-side examples
Set the environment variable in the calling service, then run the sequence below.
curl --request POST 'https://md.yolopush.com/v1/scroll-videos' \
--header "Authorization: Bearer ${SCROLL_VIDEO_API_KEY}" \
--header 'Content-Type: application/json' \
--data '{
"url": "https://example.com",
"captureMethod": "auto",
"speed": "normal",
"maxDurationSeconds": 20,
"viewport": { "width": 1280, "height": 720 },
"waitAfterLoadMs": 2000
}'curl --header "Authorization: Bearer ${SCROLL_VIDEO_API_KEY}" \
'https://md.yolopush.com/v1/scroll-videos/<job-id>'curl --header "Authorization: Bearer ${SCROLL_VIDEO_API_KEY}" \
--output scroll.mp4 \
'https://md.yolopush.com/v1/scroll-videos/<job-id>/video'Screenshot reliability and caching
Send X-Return-Format: screenshot for a PNG. Reader options are headers; all query parameters belong to the target URL. Screenshots use a fresh browser with its cache disabled, skip the reader cache, and return Cache-Control: no-store and X-Cache: BYPASS. X-No-Cache: true bypasses the one-hour cache for markdown and brand results. Origin/CDN asset caches remain controlled by the destination.
Captures wait for network settling, stylesheets, fonts and visible images within X-Timeout. A successful capture is a 200 image/png response. Failures return non-2xx JSON with success: false, error and errorCode: screenshot_incomplete for missing visual resources or unsupported visible frames, site_protected for an anti-bot page, request_timeout for a timeout, or screenshot_failed for other browser failures. Embedded frames, workers, popups and WebSockets are disabled to keep network validation contained. Documents are limited to 5 MiB and PNGs to 10 MiB. Slow pages may need X-Timeout: 60.
5-Layer Cascade Pipeline
Each layer is tried in order. The first one to return >200 chars of content wins. If a layer fails, the next one kicks in automatically.
Request Headers
X-Return-FormatX-No-CacheAcceptX-Target-SelectorX-Wait-For-SelectorX-Remove-SelectorX-With-Links-SummaryX-With-Images-SummaryX-AI-Image-Description-LanguageX-AI-HTML-HostnameX-AI-PDF-MetadataX-Retain-ImagesX-Token-BudgetX-Md-Link-StyleX-EngineX-Viewport-WidthX-Viewport-HeightX-Set-CookieX-TimeoutExample URLs
Response Headers
X-ProviderWhich extraction layer produced the result (e.g. quick-extract, ai-enhanced, deep-render)X-Duration-MsTime taken to scrape the URL in millisecondsX-Markdown-TokensEstimated token count of the markdown outputcURL Examples
curl "https://md.yolopush.com/https://example.com"
curl -H "Accept: application/json" "https://md.yolopush.com/https://example.com"
curl --fail-with-body -H "X-Return-Format: screenshot" -H "X-No-Cache: true" -H "X-Viewport-Width: 1440" -H "X-Viewport-Height: 900" -o screenshot.png "https://md.yolopush.com/https://example.com"
curl -H "X-Return-Format: html" "https://md.yolopush.com/https://example.com"
curl -H "X-Return-Format: text" "https://md.yolopush.com/https://example.com"
curl -H "X-Remove-Selector: nav, footer, .sidebar" "https://md.yolopush.com/https://example.com"
curl -H "X-With-Links-Summary: dedup" "https://md.yolopush.com/https://example.com"
curl -H "X-AI-PDF-Metadata: false" "https://md.yolopush.com/https://example.com/report.pdf"
curl -H "X-Engine: direct" "https://md.yolopush.com/https://example.com"