Every video model.
One API.
Generate video with our own Vidom model and the best of Kling, Sora, Veo and Grok — through a single endpoint. Lower prices, four-line integration, and hosted output storage on us.
1import Vidom from "vidom";2 3const vidom = new Vidom({ apiKey: process.env.VIDOM_KEY });4 5const video = await vidom.generate({6 model: "kling-2.1",7 prompt: "A neon koi gliding through liquid glass, slow motion",8});9 10console.log(video.url); // hosted URL, live for 60 days5
Providers, one endpoint
up to 40%
Lower cost vs. going direct
60 days
Hosted link TTL — storage on us
4 lines
From install to first video
Five models, one integration
Switch providers by changing a single string — or let Vidom route automatically to the best fit for your budget and spec.
Vidom
vidom-1
Our proprietary model. Tuned for fast, low-cost generation with native HD output.
Kling
kling-2.1
Cinematic motion and strong physical realism for longer shots.
Sora
sora-2
High-fidelity scenes with coherent multi-shot storytelling.
Veo
veo-3
Crisp prompt adherence and reliable text rendering in-frame.
Grok
grok-video-1
Fast, expressive generation with a distinctive stylized look.
The integration layer for AI video
The plumbing — pricing, storage, routing and billing — handled, so you ship the product.
One API, every model
A single endpoint and key reach all five providers. No SDK sprawl, no per-vendor auth.
Our best prices
Volume pricing passed straight to you — up to 40% below provider list rates.
Storage on us
Every output is hosted and returned as a ready-to-share URL. Links live for 60 days.
Ship in four lines
Install, set a key, call generate, read the URL. That's the whole integration.
Smart routing & failover
Skip a model and Vidom picks the cheapest that meets your spec, retrying across providers.
Don't pick a model. Set a budget.
Pass an explicit model, or hand Vidom your constraints and let it route to the cheapest one that fits. The response always comes back with a hosted URL.
- Auto-routing finds the lowest-cost model per request
- expires_at tells you exactly how long the link lives
- Per-second billing across every provider, one invoice
1npm install vidom1// No model? Vidom routes to the cheapest one that fits.2const video = await vidom.generate({3 prompt: "Aerial shot over a misty pine forest at dawn",4 route: { maxCost: 0.4, minResolution: "1080p", maxDuration: 8 },5});6 7console.log(video.model); // e.g. "vidom-1" — picked for you8console.log(video.cost); // 0.311{2 "id": "gen_8fae21c0",3 "model": "kling-2.1",4 "status": "succeeded",5 "url": "https://cdn.vidom.ai/v/8fae21c0.mp4",6 "expires_at": "2026-08-03T12:00:00Z",7 "duration": 5,8 "resolution": "1080p",9 "cost": 0.4210}From zero to first video in minutes
Get your invite
Request access and we'll send an invitation. Copy one API key that works across every model — no per-provider accounts.
Call /v1/videos
Send a prompt with an optional model or budget. We handle queuing, retries and provider failover.
Get a hosted URL
The response includes a CDN link to your video, live for 60 days. Stream it, download it, ship it.
Ship video features your users will actually watch.
Vidom is in private beta, onboarding teams by invitation. Request access, or tell us what you're building.