API REFERENCE
Analyze Video
On this page
/api/content/analyzeAnalyze a video and answer questions about it. Pass a video URL and a text prompt — for example, "Describe what happens" or "Rate the visual quality 1-10." Returns the generated text.
Authentication
x-api-key in header
bearerAuth bearer
Request
curl --request POST \
--url 'https://api.recoupable.dev/api/content/analyze' \
--header 'x-api-key: YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data '{
"video_url": "string",
"prompt": "string"
}'Request body required
Video analysis parameters
application/json
video_urlstringrequiredPublicly accessible URL of the video to analyze. Supported formats: MP4, MOV, AVI, and other FFmpeg-compatible formats. Maximum duration: 1 hour.
format: uri
promptstringrequiredA text prompt that guides the analysis. Can be instructive, descriptive, or phrased as a question. Examples: "Describe the key moments in this video", "Generate 5 SEO keywords for this video".
maxLength: 2000
temperaturenumberControls the randomness of the text output. Lower values produce more focused results. Defaults to 0.2.
Default: 0.2
minimum: 0 · maximum: 1
max_tokensintegerMaximum number of tokens to generate. If omitted, uses the model default.
minimum: 1 · maximum: 4096
Responses
200Video analyzed successfully+
application/json
textstringrequiredThe generated analysis text based on the video and prompt.
finish_reasonstring · enumnullablestop if the generation completed normally. length if truncated at the token limit.
Values: "stop", "length"
usageobjectnullableProperties for usage
output_tokensintegerNumber of tokens in the generated text.
400Validation failed — invalid or missing request body fields+
application/json
errorstringrequiredError message describing what went wrong
401Unauthorized — invalid or missing API key+
application/json
errorstringrequiredError message describing what went wrong
502Video analysis failed upstream+
application/json
errorstringrequiredError message describing what went wrong
Full specification
Download the OpenAPI file for complete schemas, constraints, and examples.
Download content.jsonView operation source
{
"description": "Analyze a video and answer questions about it. Pass a video URL and a text prompt — for example, \"Describe what happens\" or \"Rate the visual quality 1-10.\" Returns the generated text.",
"security": [
{
"apiKeyAuth": []
},
{
"bearerAuth": []
}
],
"requestBody": {
"description": "Video analysis parameters",
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ContentCreateAnalyzeRequest"
}
}
}
},
"responses": {
"200": {
"description": "Video analyzed successfully",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ContentCreateAnalyzeResponse"
}
}
}
},
"400": {
"description": "Validation failed — invalid or missing request body fields",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ContentErrorResponse"
}
}
}
},
"401": {
"description": "Unauthorized — invalid or missing API key",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ContentErrorResponse"
}
}
}
},
"502": {
"description": "Video analysis failed upstream",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ContentErrorResponse"
}
}
}
}
}
}