Skip to main content

Overview

PDF to Video extracts the text of a PDF, turns it into a narration split into scenes, reads it with a voice and puts a visual under each scene. PDF to Brainrot does the same over a gameplay clip. Send the PDF as a public https:// link in pdfUrl (up to 20 MB; Hooked downloads it) or as the file itself in pdfBase64 (up to 10 MB). The PDF needs a text layer: a scanned or image-only PDF answers 400 before anything is charged. summaryType, targetDuration and customPrompt work as in Article to Video.
The create call downloads the PDF and checks its text, then answers in a few seconds with the projectId and status processing. The scenes are written after that, then the video is generated and rendered. If the scenes cannot be written, the project becomes failed (the reason is in message), the credits come back and your webhook gets the failure.

From a file on disk

Files over 10 MB go through pdfUrl: put the file somewhere public (a signed link of your own storage works) and send the link.

Study notes over gameplay

When the PDF is refused

Nothing is charged for any of these.

Getting the video

Wait for the webhook or poll GET /v1/project/{projectId} until video.status is COMPLETED, then download video.url.
Send an Idempotency-Key header to retry safely: if a request times out or answers 5xx, sending it again with the same key and body returns the first answer instead of creating (and charging) the project twice.
Teams in bring-your-own-keys mode are not charged credits, but need OpenRouter and ElevenLabs in Settings → AI keys (and Gemini for the Omni Flash model). No Firecrawl key is needed: Hooked reads the PDF itself. A missing key answers 402 missing_credentials with the list in missingProviders, before anything is created.
See the PDF to Video and PDF to Brainrot references for every field and error.