Extract structured data from any video using AI. Provide a JSON schema or a natural language prompt and receive structured output. This is an async endpoint — it returns a jobId you poll for the result.
POST/v1/video/analysis•5 credits
Pro+ Required
Parameters
Name
Type
Required
Default
Description
url
string
required
—
Video URL to analyze
prompt
string
optional
—
Natural language instruction for extraction. At least one of prompt or schema is required.
schema
object
optional
—
JSON Schema defining the output structure. At least one of prompt or schema is required.
Code Examples
from supacrawlx import Client
import time
client = Client("YOUR_API_KEY")
# Submit job
job = client.video.analyze(
"https://www.youtube.com/watch?v=dQw4w9WgXcQ",
schema={
"type": "object",
"properties": {
"summary": {"type": "string"},
"key_points": {"type": "array", "items": {"type": "string"}}
}
}
)
# Poll for result
while job.status != "completed":
time.sleep(3)
job = client.jobs.get(job.job_id)
print(job.result)
Response
JSON
{
"jobId": "job_abc123xyz",
"status": "queued"
}
// Poll GET /v1/jobs/job_abc123xyz until status = "completed"
{
"jobId": "job_abc123xyz",
"status": "completed",
"result": {
"summary": "The video explains...",
"key_points": ["Point 1", "Point 2"],
"sentiment": "positive"
}
}
Async job polling
This endpoint returns immediately with a jobId. Poll GET /v1/jobs/:jobId every 2–5 seconds until status is completed or failed.