Miavo
All models
VertexAI
Google Vertex · video

Veo 3.1 Fast (Vertex)

vertex-veo-3.1-fast

Veo 3.1 Fast on Vertex — enterprise routing, $0.10/s @720p.

Pricing

per second$0.10
Async
Yes — operations polling
Provider
VertexAI
Google Vertex

Capabilities

Chat completions

Multi-turn dialogue, system prompts.

Streaming

SSE chunks for incremental output.

Tool / function calling

Structured arguments via JSON schemas.

Image input

Pass images alongside the prompt.

Video generation

Text and image to short video, async.

JSON mode

Coming soon.

Make your first call.

Drop your sk-maas-… key in and you're done.

video.ts
// Start a generation
const start = await fetch('https://api.miavo.xyz/v1/videos/generations', {
  method: 'POST',
  headers: {
    authorization: `Bearer ${process.env.MACAW_API_KEY}`,
    'content-type': 'application/json',
  },
  body: JSON.stringify({
    model: 'vertex-veo-3.1-fast',
    prompt: 'A close-up of raindrops on a window, soft focus, slow motion.',
    aspect_ratio: '16:9',
    duration_seconds: 8,
  }),
}).then(r => r.json());

// Poll until done — usually 1–3 minutes
let task = start;
while (task.status === 'pending' || task.status === 'running') {
  await new Promise(r => setTimeout(r, 5000));
  task = await fetch(`https://api.miavo.xyz/v1/videos/generations/${start.id}`, {
    headers: { authorization: `Bearer ${process.env.MACAW_API_KEY}` },
  }).then(r => r.json());
}

if (task.status === 'succeeded') {
  // Download the file
  const video = await fetch(`https://api.miavo.xyz${task.video_url}`, {
    headers: { authorization: `Bearer ${process.env.MACAW_API_KEY}` },
  });
  // → pipe video.body to disk or play in a <video> tag
}

More from Google Vertex