Studios

Video

Render video from a prompt or reference images.

Generate a video

POST/api/v1/videos/generationsPer render

Send a prompt and get a finished video back. Add a start frame, reference images, or a reference clip to guide the render. The call waits until the video is done, up to five minutes.

Request body

modelstringrequiredA video model id from the media menu, or clawhunter/smart to let Smart Router pick.
promptstringrequiredThe scene to render.
image_urlstringOne start frame, as an https URL or a data URL. The model animates from it.
input_imagesstring[]Two or more reference images to guide the render, on models with reference_to_video.
video_urlstringOne reference clip as an https URL, on models whose menu entry lists video_reference. It can run up to that entry's max_seconds. Not on clawhunter/smart.
duration_secondsnumberThe length, within the model's range on the menu. Some models take set lengths only. seconds works too.
resolutionstringThe resolution tier, on models that list one. Not on clawhunter/smart.480p · 720p · 1080p · 4k
aspect_ratiostringThe shape, on models that list aspect ratios. It doesn't change the price.
audiobooleanRender a soundtrack, on operations marked audio. Where the menu lists audio_off_price_multiplier, false lowers the price.
qualitystringOn clawhunter/smart only. Picks the routing tier. Defaults to medium.low · medium · high

What you send picks the operation. A prompt alone runs text_to_video. One image runs image_to_video. Several images or a clip run reference_to_video.

Example request

const res = await fetch("https://mystudios.fun/api/v1/videos/generations", {  method: "POST",  headers: {    Authorization: `Bearer ${process.env.CLAWHUNTER_API_KEY}`,    "Content-Type": "application/json",  },  body: JSON.stringify({    model: "clawhunter/smart",    prompt: "A paper boat drifting down a rainy street, tracking shot",  }),});const video = await res.json();

Response

The finished render with a billing block. Each result's urlis a path on mystudios.fun that needs no key. Download the video soon, since the link doesn't last.

Response
{  "status": "succeeded",  "results": [    { "url": "/api/v1/media/artifacts/…/video.mp4" }  ],  "billing": {    "model": "minimax-h3-max-turbo",    "operation": "text_to_video",    "requested_model": "clawhunter/smart",    "jobs": 1,    "usd": 0.06,    "usage_usd": 0.06,    "quote_usd": 0.65,    "note": "routed to MiniMax H3 Max Turbo"  }}

Billing and limits

  • Billed per render at the model's price, listed on Models.
  • Price scales with length. Twice the model's default length costs twice as much.
  • A resolution tier scales the price by its multiplier on the menu.
  • The call reserves the list price for your settings. With credits, you pay what the render cost, never above list.
  • With x402, you pay that reserve as the price.
  • On clawhunter/smart, the routed model uses the settings it supports and drops the rest. You pay for what ran.
  • clawhunter/smart needs an API key.
  • Calls with a key draw on your daily free allowance first.
  • A render that fails or times out is not charged. Neither is a rejected request.