Documentation Index
Fetch the complete documentation index at: https://docs.tryvinci.com/llms.txt
Use this file to discover all available pages before exploring further.
Create high-quality videos from text descriptions or transform static images into dynamic video content.
Related
Pricing
Video generation costs $0.05 per second of generated video.
Tip
Check your balance before generating videos to ensure you have sufficient credits.
Text-to-Video
POST /api/v1/generate/text-to-video
Authorization: Bearer sk-your-api-key-here
Request body
| Parameter | Type | Description | Default |
|---|
| prompt | string | Text description of the video to generate | Required |
| duration_seconds | integer | Video duration in seconds (1–10) | 5 |
| aspect_ratio | string | One of “16:9”, “9:16”, “1:1" | "16:9” |
| seed | integer | Random seed for reproducible results | -1 (random) |
Response
{
"request_id": "req_abc123...",
"status": "pending",
"estimated_cost_usd": 0.25,
"estimated_duration_seconds": 5
}
Code examples
curl -X POST "https://tryvinci.com/api/v1/generate/text-to-video" \
-H "Authorization: Bearer sk-your-api-key-here" \
-H "Content-Type: application/json" \
-d '{
"prompt": "A majestic eagle soaring through mountain peaks at sunset",
"duration_seconds": 8,
"aspect_ratio": "16:9"
}'
Image-to-Video
POST /api/v1/generate/image-to-video
Authorization: Bearer sk-your-api-key-here
Request body (multipart form)
| Parameter | Type | Description | Default |
|---|
| image | file | Input image (JPEG/PNG) | Required |
| prompt | string | Text describing motion | Required |
| duration_seconds | integer | Video duration in seconds (1–10) | 5 |
Response
{
"request_id": "req_abc123...",
"status": "pending",
"estimated_cost_usd": 0.25,
"estimated_duration_seconds": 5
}
Code examples
curl -X POST "https://tryvinci.com/api/v1/generate/image-to-video" \
-H "Authorization: Bearer sk-your-api-key-here" \
-F "image=@portrait.jpg" \
-F "prompt=The person starts smiling and waves at the camera" \
-F "duration_seconds=6"
Status Checking
GET /api/v1/status/{request_id}
Authorization: Bearer sk-your-api-key-here
Status responses
{
"request_id": "req_abc123...",
"status": "pending",
"estimated_cost_usd": 0.25
}
{
"request_id": "req_abc123...",
"status": "processing",
"estimated_cost_usd": 0.25,
"progress": 45
}
{
"request_id": "req_abc123...",
"status": "completed",
"video_url": "https://storage.googleapis.com/vinci-dev/videos/generated_video.mp4",
"duration_seconds": 5.2,
"cost_usd": 0.26
}
{
"request_id": "req_abc123...",
"status": "failed",
"error": "Invalid prompt format"
}
Errors
| Status | Meaning | Action |
|---|
| 401 | Invalid API key | Verify Authorization header |
| 402 | Insufficient balance | Add credits |
| 413 | File too large | Reduce image file size |
| 429 | Rate limit exceeded | Backoff and retry |
| 500 | Server error | Retry with backoff |
Warning
Always implement error handling and retry logic for production workloads.