Docs
Video Generation Tasks
Updated 2026-08-20
API Overview
Video generation is an asynchronous operation:
- Call
POST /v1/videos/tasksto submit a task - Save the public task ID from the response
- Call
GET /v1/tasks/{task_id}to query status and results
The Base URL is https://api.rokoapi.com/v1. All requests must include Authorization: Bearer $API_KEY.
Supported Models
| Series | Public Model ID |
|---|---|
| Seedance 2.0 | seedance-2.0, seedance-2.0-pro, seedance-2.0-fast, seedance-2.0-mini |
| Hailuo 3 | hailuo-3 |
| Grok Imagine Video 1.5 | grok-imagine-video-1.5 |
| Gemini Omni | gemini-omni |
| Kling | kling-3.0-turbo, kling-o3 |
| Happy Horse 1.1 | happy-horse-1.1 |
| Wan 2.7 | wan-2.7 |
| Sora 2 | sora-2, sora-2-pro |
Actual availability is subject to /v1/models, console channel configuration, and the key’s assigned group. Users select product models only; RokoAPI automatically selects EvoLink’s text-to-video, image-to-video, reference-to-video, or editing routes based on generation_type and asset fields to automatically select EvoLink text-to-video, image-to-video, reference-to-video, or editing routes.
Text-to-Video
curl https://api.rokoapi.com/v1/videos/tasks \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "seedance-2.0",
"generation_type": "text",
"prompt": "A cinematic sunrise over snow mountains",
"duration": 8,
"quality": "720p",
"aspect_ratio": "16:9",
"generate_audio": true
}'
Image-to-Video and Reference-to-Video
Assets are typically passed via image_urls, video_urls and audio_urls as publicly downloadable URLs:
{
"model": "seedance-2.0",
"generation_type": "reference",
"prompt": "Keep the character identity and create a slow camera orbit",
"image_urls": ["https://example.com/character.png"],
"video_urls": ["https://example.com/motion.mp4"],
"duration": 6,
"quality": "720p",
"aspect_ratio": "16:9"
}
Exception: Wan 2.7 image-to-video uses image_start and optionally image_end; Grok 1.5 automatically selects the mode based on the number of image_urls (0 for text-to-video, 1 for image-to-video, 2–7 for reference-to-video) and does not accept aspect_ratio.
Video Editing
{
"model": "wan-2.7",
"generation_type": "edit",
"prompt": "Change the background to a rainy neon street",
"video_urls": ["https://example.com/input.mp4"],
"image_urls": ["https://example.com/style.png"],
"duration": 0,
"quality": "720p"
}
In Wan 2.7 editing, duration: 0 indicates following the input video. Gemini Omni editing follows the input video; do not send duration or aspect_ratio.
Parameter Limits
| Series | Duration | Quality | Primary Asset Limits |
|---|---|---|---|
| Seedance 2.0 / Mini | 4–15 seconds | Standard 480p–4k; fewer tiers for Fast/Mini | Image-to-video: 1–2 images; Reference-to-video: up to 9 images, 3 videos, 3 audio files |
| MiniMax H3 | 4–15 seconds | 768p, 2k | Reference-to-video: up to 9 images, 3 videos, 3 audio files |
| Grok 1.5 | 1–15 seconds | 480p, 720p, 1080p | Up to 7 images; aspect ratio parameter not supported |
| Gemini Omni | 3–10 seconds or auto | Fixed 720p | Image-to-video/Reference-to-video uses images; editing uses one video |
| Kling 3.0 Turbo / O3 | 3–15 seconds | 720p, 1080p; some O3 routes support 4K | O3 supports model_params custom multi-shot; some routes support image or video references |
| HappyHorse 1.1 | 3–15 seconds | 720p, 1080p | Reference-based generation from 1–9 images |
| Wan 2.7 | Text-to-video/image-to-video: 2–15 seconds; reference/edit: 2–10 seconds | 720p, 1080p | Image-to-video with first and last frames; reference/edit supports video, image, and audio fields |
| Sora 2 | 4, 8, or 12 seconds | Determined by model tier | Up to 1 image; does not send quality |
Additional model parameters in the request are passed through to EvoLink in their original JSON structure, including negative_prompt, generate_audio, content_filter, sound, prompt_extend and model_params. RokoAPI first validates known boundaries such as duration, quality, aspect ratio, asset count, and callback URL. The video endpoint does not support n.
Callbacks and Queries
The optional callback_url must be a public HTTPS URL, up to 2048 characters long, and cannot point to localhost or a private IP. Even with a callback configured, it is recommended to keep polling as a fallback:
curl https://api.rokoapi.com/v1/tasks/task_public_id \
-H "Authorization: Bearer $API_KEY"
Common statuses include queued, in_progress, completed and failed. Result links may have an expiration time; in production, download and store them promptly.
Billing
Models use a unified v2 USD expression for billing, combining output duration, input reference video duration, input image count, audio toggle, resolution, quality, generation method, and token usage in a single formula. A pre-charge is applied at submission based on validated parameters; final settlement occurs after task completion based on actual token usage or output duration.
The following is a fixed price snapshot as of 2026-08-20, including a 10% service fee on EvoLink’s published cost price. All amounts are in USD. Prices do not change in real time with upstream credits; the table and backend expressions are updated only after admin review of upstream price adjustments.
Seedance 2.0 Series
| Model Tier | Mode | 480p | 720p | 1080p | 4K | Billing Unit |
|---|---|---|---|---|---|---|
| Standard / Pro | Text-to-video, image-to-video, or image/audio reference | $0.1012 | $0.2189 | $0.5456 | $1.1132 | Output seconds |
| Standard / Pro | Video reference | $0.0616 | $0.1331 | $0.3322 | $0.6875 | Input and output seconds |
| Fast (Promo) | Text-to-video, image-to-video, or image/audio reference | $0.0616 | $0.1331 | — | — | Output seconds |
| Fast (Promo) | Video reference | $0.0495 | $0.1067 | — | — | Input and output seconds |
| Mini (Promo) | Text-to-video, image-to-video, or image/audio reference | $0.0202 | $0.0436 | — | — | Output seconds |
| Mini (Promo) | Video reference | $0.0123 | $0.0264 | — | — | Input and output seconds |
The promotional prices for Fast and Mini are based on EvoLink’s 2026-08-07 price adjustment. After the promotion ends, RokoAPI prices will not change automatically; the new snapshot approved in the backend will apply.
Other Per-Second Video Models
| Model | Low-Tier Resolution | Price/Second | High-Tier Resolution | Price/Second | Additional Fees |
|---|---|---|---|---|---|
hailuo-3 | 768p | $0.0836 | 2K | $0.1353 | $0.0418 per input image from the 6th onward |
grok-imagine-video-1.5 | 480p | $0.0616 | 720p / 1080p | $0.1078 / $0.1925 | $0.0077 per input image |
kling-3.0-turbo | 720p | $0.1166 | 1080p | $0.1463 | — |
happy-horse-1.1 | 720p | $0.1364 | 1080p | $0.1826 | — |
wan-2.7 | 720p | $0.0957 | 1080p | $0.1595 | — |
Kling O3 is billed by both resolution and audio toggle:
| Resolution | Audio Off | Audio On |
|---|---|---|
| 720p | $0.0880/sec | $0.1166/sec |
| 1080p | $0.1166/sec | $0.1463/sec |
| 4K | $0.4378/sec | $0.4378/sec |
Sora 2 Series
| Model | Resolution | 4 sec | 8 sec | 12 sec |
|---|---|---|---|---|
sora-2 | Fixed tier | $0.3729 | $0.7458 | $1.1187 |
sora-2-pro | 720p | $1.1187 | $2.2363 | $3.3550 |
sora-2-pro | 1080p | $1.8645 | $3.7279 | $5.5924 |
Gemini Omni Token Pricing
| Usage Type | Fixed Price |
|---|---|
| Text, image, audio, or video input | $1.43 / 1M tokens |
| Video output | $16.50 / 1M tokens |
| Thinking and other text output | $8.47 / 1M tokens |
Reference video duration is included in final billing only after the system completes media metadata validation or obtains a trusted usage estimate. For full pricing, see the Pricing page and the current configuration in your dashboard. For upstream pricing sources, refer to the EvoLink model catalog and each model’s developer page.