A production REST API that animates any JPEG or PNG into a cinematic 5-second MP4 — one multipart POST, no subscription lock-in. $0.09 per 5-second video (2.8× cheaper than Runway's cheapest API option, ~3× cheaper than Pika's effective per-video cost). Powered by Seedance 1.5 Pro. Submit a photo and a text prompt; get an MP4 back. Starter, Pro, and Scale plans included.
Sign up, copy your key from the dashboard, and POST your image as multipart form data. The endpoint returns a generation_id; poll GET /v1/seedance/{id} every 5–10 seconds until status=completed, then download the MP4 from output_url. Typical generation time: 90–120 seconds.
# Step 1 — Submit image + prompt curl -X POST https://api.pixelapi.dev/v1/seedance/generate \ -H "Authorization: Bearer YOUR_API_KEY" \ -F "prompt=A woman walking through a neon-lit street at night" \ -F "resolution=1080p" \ -F "camera_fixed=false" \ -F "[email protected]" # Response: {"generation_id":"uuid","status":"processing","model":"seedance-1.5","credits_used":90,"estimated_seconds":120} # Step 2 — Poll until completed (~90-120s) curl https://api.pixelapi.dev/v1/seedance/UUID \ -H "Authorization: Bearer YOUR_API_KEY" # Response: {"status":"completed","output_url":"https://cdn.pixelapi.dev/videos/seedance_uuid.mp4"}
pip install pixelapi
---
from pixelapi import PixelAPI
client = PixelAPI(api_key="YOUR_API_KEY")
result = client.image_to_video(
image="portrait.jpg",
prompt="A woman walking through a neon-lit street at night",
resolution="1080p",
camera_fixed=False,
)
result.save("animated.mp4") # 5-second MP4 downloaded automatically
npm install pixelapi
---
import { PixelAPI } from "pixelapi";
const client = new PixelAPI({ apiKey: process.env.PIXELAPI_KEY });
const result = await client.imageToVideo({
image: "./portrait.jpg",
prompt: "A woman walking through a neon-lit street at night",
resolution: "1080p",
cameraFixed: false,
});
await result.save("animated.mp4"); // 5-second MP4
composer require pixelapi/pixelapi
---
<?php
use PixelAPI\Client;
$client = new Client(getenv("PIXELAPI_KEY"));
$result = $client->imageToVideo([
"image" => "portrait.jpg",
"prompt" => "A woman walking through a neon-lit street at night",
"resolution" => "1080p",
"camera_fixed" => false,
]);
file_put_contents("animated.mp4", $result->getBody());
gem install pixelapi
---
require "pixelapi"
client = PixelAPI::Client.new(api_key: ENV["PIXELAPI_KEY"])
result = client.image_to_video(
image: "portrait.jpg",
prompt: "A woman walking through a neon-lit street at night",
resolution: "1080p",
camera_fixed: false
)
File.binwrite("animated.mp4", result.body)
go get github.com/pixelapi/pixelapi-go
---
import "github.com/pixelapi/pixelapi-go"
client := pixelapi.New("YOUR_API_KEY")
result, err := client.ImageToVideo(pixelapi.I2VRequest{
Image: "portrait.jpg",
Prompt: "A woman walking through a neon-lit street at night",
Resolution: "1080p",
CameraFixed: false,
})
if err != nil { panic(err) }
result.Save("animated.mp4")
Every provider below uses a different billing model. PixelAPI charges a flat per-video fee with no subscription required beyond a paid plan. Runway charges per second of generated video via its API. Pika bundles credits into subscriptions with no standalone API tier.
| Provider | API access | Cost per 5-second video | Resolution | Output |
|---|---|---|---|---|
| PixelAPI (Seedance 1.5) | ✓ REST API | $0.09 | 720p · 1080p | MP4 |
| Runway (gen4-turbo) | ✓ REST API | $0.25 ($0.05/sec) | 480p–1080p | MP4 |
| Runway (Gen-4) | ✓ REST API | $0.60 ($0.12/sec) | 720p–1080p | MP4 |
| Pika (Standard plan) | ✗ No standalone API | ~$0.26+ (subscription calc.) | 480p–1080p | MP4 |
| Kaiber | ✗ No public API | see kaiber.ai/pricing | 480p–1080p | MP4 |
Pricing verified from each rival's public pricing page May 2026. Runway API: docs.dev.runwayml.com/guides/pricing — gen4-turbo $0.05/sec, Gen-4 $0.12/sec. Pika Standard plan: $8/month ÷ 700 credits × 24 credits per 720p 5-second video ≈ $0.26/video. Kaiber: subscription tiers only, no developer API endpoint. PixelAPI's flat $0.09 is less than half Runway's cheapest API option.
The API returns a direct CDN URL to an H.264 MP4 file. Ready for social platforms, web players, or further post-processing. No re-encoding required.
Your text prompt steers the motion: walking, zooming, environmental effects (rain, wind, lighting), and camera style. Combine with camera_fixed=true for stable product-shot animations.
Pass resolution=1080p for Instagram Reels, TikTok, and YouTube Shorts-ready output. Use 720p for faster generation in preview or draft pipelines.
If a generation job fails for any reason, credits are automatically returned to your balance. You never pay for a result that didn't complete.
| Parameter | Type | Default | Notes |
|---|---|---|---|
image | file (multipart) | required | JPEG or PNG; RGBA/palette images auto-converted to RGB |
prompt | string | required | 1–2000 chars; describes the motion and scene |
resolution | 720p | 1080p | 1080p | Output video resolution |
duration | integer | 5 | Fixed at 5 seconds in current API version |
camera_fixed | boolean | false | Lock camera for product/portrait shots; false = dynamic motion |
The image-to-video API is the foundation for automated video content pipelines. Sample applications:
Full walkthrough: Python + PixelAPI to produce social-ready MP4s from product photos in under 15 lines of code.
Side-by-side cost analysis of every major i2v provider. Real outputs, real prices, May 2026.
Animate product photography for Instagram Reels and TikTok at scale. One API call per image, $0.09 per clip.
Convert static ad creatives into motion assets. Feed into your existing CMS or scheduler.
Animate catalogue images to show product from multiple angles. Attach directly to Shopify or WooCommerce product listings.
Bring character art and concept illustrations to life with prompt-guided motion for trailers and social clips.
Trigger image-to-video generation from any Zap — no code required.
Drag-and-drop video automation in Make scenarios.
Animate product images on upload via webhook. Auto-attach MP4 to listing media.
CMS-driven video generation for portfolio and product detail pages.
Server-side video generation with polling in Next.js API routes.
Bulk-animate catalogue images on WooCommerce product save events.
Replicate bills per compute-second with unpredictable pricing. PixelAPI charges a flat $0.09 per 5-second video — no cold-start surprises.
Photoroom specialises in still image editing. PixelAPI adds video animation on top of the same image editing primitives (remove background, relight, upscale).
Runway gen4-turbo API costs $0.05/second ($0.25 for 5s). PixelAPI costs $0.09 flat — 2.8× cheaper. Both are REST APIs; PixelAPI also includes 6-language SDKs with automatic retry.
Pika offers no standalone developer API — you pay for a subscription whether you use 10 or 10,000 videos that month. PixelAPI is pure pay-per-video with no monthly minimum beyond your plan tier.
Image-to-video jobs are compute-intensive and are subject to rate limits and plan-level admission control. Key behaviours:
Retry-After header.status=failed, credits are automatically returned. No support ticket needed.Recommended backoff: start at 5s, double on each retry, cap at 60s. The Python and Node SDKs handle this automatically.
# Python SDK auto-retries 429 with backoff from pixelapi import PixelAPI client = PixelAPI(api_key="...", max_retries=4) result = client.image_to_video(image="photo.jpg", prompt="cinematic pan") # Polls and retries on 429 automatically
PixelAPI gives developers a direct REST endpoint at $0.09 per 5-second video with no subscription lock-in. Pika is subscription-based with no standalone API tier — the effective per-video cost on Pika's Standard plan is roughly $0.26+ depending on model and resolution. PixelAPI is ~3× cheaper per video and provides programmatic access via cURL, Python, Node, PHP, Ruby, and Go SDKs.
POST your image (JPEG or PNG) as a multipart form to https://api.pixelapi.dev/v1/seedance/generate with your prompt, resolution, and API key. The endpoint returns a generation_id; poll GET /v1/seedance/{id} until status=completed, then download the MP4 from output_url. See the Quick Start section above for code in 6 languages.
$0.09 per 5-second video (90 credits at $0.001/credit on all paid plans). New accounts receive a trial allowance to test on real images before paying. No credit card required for the trial period.
Resolutions: 720p and 1080p. Duration is 5 seconds per generation. The camera_fixed boolean lets you lock the viewpoint for stable product-shot animations versus dynamic motion with natural camera movement.
The API returns an MP4 video file accessible via a direct CDN URL in output_url. The video is H.264-encoded and ready for immediate playback or download without any re-encoding step.
Typical generation time is 90–120 seconds (1.5–2 minutes). The API immediately returns a generation_id on submission; poll the status endpoint every 5–10 seconds until status=completed. Maximum wait is 5 minutes; timed-out jobs are auto-refunded.
pip install pixelapi. The Python SDK handles multipart upload, polling loop, and retry-on-429 automatically. SDKs are also available for Node.js (npm install pixelapi), PHP (Composer), Ruby (Gem), and Go (go get).
60 requests/minute on the trial tier, 600 requests/minute on paid plans. Exceeding the limit returns HTTP 429 with a Retry-After header. Higher concurrency limits for batch pipelines — email [email protected] with your expected volume.
Yes. Image-to-video is available on Starter ($10/month, 10,000 credits), Pro ($50/month, 60,000 credits), and Scale ($200/month, 300,000 credits) plans. A trial allowance lets you test the endpoint at signup before committing to a plan.
Credits are automatically refunded to your account if a job reaches status=failed. The failure reason appears in the error_message field of the status response. You never pay for a result that didn't complete.
Yes — that's the primary use case. Common pipelines include automating Instagram Reels and TikTok content from product photography at scale, animating marketing thumbnails, and building video-from-image features inside SaaS products or no-code tools via Zapier or Make.
Runway's gen4-turbo API charges $0.05/second ($0.25 for 5 seconds). PixelAPI charges $0.09 for a full 5-second video — 2.8× cheaper overall. PixelAPI also provides a flat per-video price with no per-second variability, SDKs in 6 languages with automatic polling and retry, and automatic credit refunds on failure with no support ticket needed.