Video Generation API
FastRouter.ai supports text-to-video and image-to-video generation using the pollo
provider. This powerful API enables you to generate creative video clips from natural language prompts and optionally from image inputs — ideal for storytelling, video prototyping, explainer content, and more. For the full list of supported video models via Pollo, refer to our model catalog.
Sample Video
Endpoints
For Generation:
POST /api/v1/chat/completions
For Retrieval:
POST /api/v1/getVideoResponse
Supported Models and Parameters
To better understand which parameters are required and supported, we've broken this down into two tables: one for Image-to-Video and another for Text-to-Video. You can also refer to the model catalog for the supported parameters. For the values these parameters accept, please refer to the tables below.
Parameter Reference Table
prompt
string
Natural language description of the video scene
"A robot walking on Mars"
image
string
URL of an input image (JPG/PNG); base64 is not supported; aspect ratio must be 1:4 to 4:1
https://example.com/image.jpg
length
enum
Duration of the video in seconds
4, 5, 6, 8, 10
resolution
enum
Output video resolution
480p, 720p, 1080p
aspectRatio
enum
Width-to-height ratio of the video frame
16:9, 9:16, 4:3, 3:4, 1:1, 5:3, 3:5
mode
enum
Generation style/mode (if supported by the model)
std, pro
seed
number
Random seed for deterministic output (optional; useful for reproducibility)
42, 12345
generateAudio
boolean
Generate audio
true, false
Image-to-Video Models
Runway: Runway Gen-3 Turbo runway/runway-gen-3-turbo
image
prompt
, length
(5, 10), aspectRatio
(5:3, 3:5), seed
Runway: Runway Gen-4 Turbo runway/runway-gen-4-turbo
image
prompt
, length
(5, 10), aspectRatio
(16:9), seed
ByteDance: Seedance 1.0 Lite bytedance/seedance
image
, resolution
(480p, 720p, 1080p)
prompt
, length
(5, 10), seed
ByteDance: Seedance 1.0 Pro bytedance/seedance-pro
image
, resolution
(480p, 1080p)
prompt
, length
(5, 10), seed
Google: Google Veo 3 google/veo3
image
prompt
, length
(8), resolution
(720p), aspectRatio
(16:9), seed
, generateAudio
(false)
Note: For all models requiring the image
parameter, only image URLs are accepted; base64 is not supported. Supported formats include JPG, PNG, and JPEG. The image aspect ratio must be between 1:4 and 4:1.
Text-to-Video Models
Pollo: Pollo V1.6 pollo/pollo-v1-6
prompt
, resolution
(480p, 720p, 1080p)
length
(5, 10), aspectRatio
(16:9, 9:16, 4:3, 3:4, 1:1), seed
ByteDance: Seedance 1.0 Lite bytedance/seedance
prompt
, resolution
(480p, 720p, 1080p)
length
(5, 10), seed
ByteDance: Seedance 1.0 Pro bytedance/seedance-pro
prompt
, resolution
(480p, 1080p)
length
(5, 10), seed
Google: Google Veo 3 google/veo3
prompt
length
(8), resolution
(720p), aspectRatio
(16:9), seed
, generateAudio
(false)
Request Example
curl --location 'https://go.fastrouter.ai/api/v1/chat/completions' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer API-KEY' \
--data '{
"model": "google/veo3",
"length": 8,
"prompt": "A casual street interview on a busy Bengaluru IT park sidewalk in the afternoon. The interviewer holds a plain, unbranded microphone and asks: [Have you heard about FastRouter. It is super cool.] Person replies: [Yeah I saw it, it'\''s also available with new Grok models and they also support Google Veo3. It'\''s crazy good.]",
"generateAudio": true
}'
Sample Initial Response
You will receive a response indicating the task has been queued. The taskId
is used to poll for video completion.
{
"chat_id": "fr_123",
"model": "google/veo3",
"code": "SUCCESS",
"message": "success",
"data": {
"taskId": "taskabc123",
"status": "waiting"
},
"usage": {
"chat_id": "fr_123",
"prompt_tokens": 0,
"completion_tokens": 0,
"total_tokens": 0,
"user_key_credits_used": 6,
"credits_used": 6,
"provider": "pollo"
}
}
Retrieving the Video Output
Video generation is asynchronous. Use the taskId
from the initial response to check generation status.
Polling for the Video
curl --location 'https://go.fastrouter.ai/api/v1/getVideoResponse' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer API-KEY' \
--data '{
"taskId": "taskabc123",
"model": "google/veo3"
}'
Sample Completion Response
Once ready, the response will include a downloadable video URL:
{
"code": "SUCCESS",
"message": "success",
"data": {
"taskId": "taskabc123",
"generations": [
{
"id": "taskabc123",
"createdDate": "2025-07-15T08:02:27.000Z",
"updatedDate": "2025-07-15T08:04:34.000Z",
"status": "succeed",
"failMsg": "",
"url": "https://example.com/filename.mp4",
"mediaType": "video"
}
]
}
}
Billing & Usage
Credits used: Refer to
user_key_credits_used
in the response.Billed based on: video duration, resolution, and model used.
Transparent pricing: No hidden fees.
Last updated