AI Video Generator — online text & image to video API
Create short AI-generated videos from text prompts and optional starting images with Quotaflow's OpenAI-compatible video task API. Use veo-3.1-fast-generate-001 when you want a fast default for product clips, social concepts, landing-page motion, and creative iteration.

What is Quotaflow video generation?
Quotaflow video generation is an async API for turning a prompt into a video task. Your app creates a task, stores the returned id, and polls until the task succeeds or fails. This avoids keeping one HTTP request open while a media model renders the output.
| Property | Value |
|---|---|
| Model id | veo-3.1-fast-generate-001 |
| Endpoint | POST https://api.quotaflow.ai/openai/v1/videos |
| Status endpoint | GET https://api.quotaflow.ai/openai/v1/videos/{task_id} |
| Flow | Create task, show pending state, poll result |
| Best for | Short product, social, concept, and landing-page videos |
Why use Quotaflow video generation?
Video workloads are slower and more expensive than text calls, so they need better product plumbing: scoped keys, retry-safe task ids, customer-visible status, and model discovery. Quotaflow keeps the public API under your Quotaflow account while letting your application use a simple task lifecycle.
Curated models
| Model | Speed profile | Recommended use |
|---|---|---|
veo-3.1-fast-generate-001 | Fast default | First choice for new video integrations and rapid iteration. |
veo-3.0-generate-001 | Compatibility | Keep for workflows already validated on the older id. |
Call /models with your production key before launch. Video access is key-enabled, so a key without video access should not show video models.
Key features
- Async job contract: create a task immediately and poll for completion.
- Text-to-video prompts: describe scene, camera motion, subject, style, and duration expectations.
- Optional image inputs: use first-frame,
image_urls, orreference_imageswhen enabled for your key and selected model. - Person and product reference workflows: send stable HTTPS image URLs for face, identity, product, or style consistency. Quotaflow normalizes
image_urlto array-style reference fields and prepares reference media automatically when needed. - Stable model contract: client requests continue to use
veo-3.1-fast-generate-001; Quotaflow normalizes compatible video capacity into the same task lifecycle and public response shape. - Production UI friendly: show queued, running, succeeded, and failed states instead of blocking a request.
- Quotaflow URLs: keep customer integrations pointed at Quotaflow endpoints.
How to generate AI videos
Create a video task:
curl https://api.quotaflow.ai/openai/v1/videos \
-H "Authorization: Bearer $QUOTAFLOW_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "veo-3.1-fast-generate-001",
"prompt": "A 6 second cinematic shot of a teal AI dashboard materializing over a dark workspace, smooth camera push-in.",
"durationSeconds": 6,
"resolution": "1080p",
"aspectRatio": "16:9",
"generate_audio": true
}'
Reference-image example
curl https://api.quotaflow.ai/openai/v1/videos \
-H "Authorization: Bearer $QUOTAFLOW_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "veo-3.1-fast-generate-001",
"prompt": "Create a natural short product lifestyle clip from this reference image, keep the product shape and color consistent.",
"reference_images": [{ "url": "https://example.com/product-reference.png" }],
"durationSeconds": 4,
"resolution": "720p",
"aspectRatio": "16:9"
}'
Use arrays for reference images even when there is only one image. This keeps your client ready for models that support richer reference media and avoids ambiguity around single-image fields.
Poll the task:
curl https://api.quotaflow.ai/openai/v1/videos/$TASK_ID \
-H "Authorization: Bearer $QUOTAFLOW_API_KEY"
Use a polling interval that fits your user experience. A common product pattern is to poll quickly for the first few seconds, then back off while showing a preview skeleton.
Pricing
Video tasks consume more capacity than text and image calls. Confirm your package, enabled duration, supported resolutions, and monthly usage policy before exposing video generation to end users.
Use cases
| Use case | Prompt pattern |
|---|---|
| Product teaser | Describe the product, background, camera move, lighting, and duration. |
| Social concept | Specify vertical or square aspect ratio, subject motion, and visual style. |
| Landing-page background | Ask for subtle motion, no readable text, and loop-friendly composition. |
| Storyboard exploration | Generate several short variants from narrower prompts and review before final production. |
FAQ
How long does video generation take?
Video generation can take much longer than chat or image calls. Treat the create endpoint as task creation, not as a long blocking render call.
Can I use the generated videos commercially?
Usage rights depend on your Quotaflow agreement, your plan, and your own content policy. Review generated media before publishing customer-facing or commercial assets.
What video formats are supported?
The task result returns the media fields enabled for your key and model. Store the returned URL or bytes according to your own retention and CDN policy.
Do all models support image-to-video?
No. Check /models and the selected model reference before sending image inputs. When image input is enabled, prefer image_urls or reference_images arrays. If image input is not enabled, use text-to-video prompts only.
How is this different from the Models page?
The Models page helps you choose a model. This page explains the operational contract for creating, polling, and shipping video tasks.
Next steps
- Browse all supported models.
- Configure the OpenAI-compatible base URL.
- Read the Videos endpoint guide.