Skip to main content

Analyze Video

POST /v1/videos/:id/analyze

Start an asynchronous analysis job that generates subtitles, detects key events, and extracts metadata from the video.

Path parameters

ParameterTypeRequiredDescription
idstringYesVideo ID

Request body

ParameterTypeRequiredDescription
videoContextstringNoContext about the video content
companyContextstringNoCompany or brand context
languagestringNoLanguage code (e.g. en, de)
tonestringNoDesired tone or style

Example

curl -X POST https://api.vidocu.ai/v1/videos/vid_.../analyze \
-H "Authorization: Bearer vdo_live_your_key_here" \
-H "Content-Type: application/json" \
-d '{
"videoContext": "Product demo for new dashboard",
"language": "en",
"tone": "professional"
}'

Response 202 Accepted

{
"jobId": "analysis_1708300000000_abc1234",
"status": "pending"
}

If an analysis is already running for this video, the existing job is returned instead:

Response 200 OK (existing job)

{
"jobId": "analysis_1708300000000_abc1234",
"status": "processing",
"message": "Analysis already in progress"
}

Polling for completion

Use the Jobs endpoint to poll for progress:

curl https://api.vidocu.ai/v1/jobs/analysis_1708300000000_abc1234 \
-H "Authorization: Bearer vdo_live_your_key_here"

Or set up webhooks to receive a video.analyzed event when the job completes.

Errors

StatusCodeCause
400validation_errorInvalid request body
401authentication_errorInvalid or missing API key
404not_foundVideo not found

Next steps

Once analysis completes: