# Cosmos 3 Super Image to Video API

> Ina-animate ang first-frame larawan bilang video, na may optional na prompt expansion at agentic refinement loop

Ginagamit ang `image_url` bilang opening frame at isang `prompt` na hanggang 4096 character. Umaabot sa 189 ang `num_frames` at mula 4 hanggang 60 ang `frames_per_second`. Bilang default, naka-on ang prompt expansion, at ang `enable_agentic_generation` ay nagpapatakbo ng iterative candidate na may critique. Mayroon ding `negative_prompt`, `guidance_scale` at `num_inference_steps` hanggang 50.

- Model id: `nvidia/cosmos-3-super/image-to-video`
- Made by: NVIDIA
- Category: Image to Video
- Output: video
- Price per second of your output video: from $0.05 / second of output video (cheapest run $0.05 (50 API credits))
- Run: `POST https://api.doitong.ru/v1/run/nvidia/cosmos-3-super/image-to-video`
- Quote: `POST https://api.doitong.ru/v1/quote/nvidia/cosmos-3-super/image-to-video`
- Docs page: https://doitong.com/fil/developers/models/nvidia/cosmos-3-super/image-to-video

## Pricing

Price: **from $0.05 / second of output video** (the lowest tier; the quote prices your exact input). Price per second of your output video: the input files are measured before the run (length, resolution, frame rate). The quote measures the same files and is exactly what the run charges.

The full example input below costs $0.40 = 400 API credits (8 s output video × $0.05).

Prices are the upstream price in USD, paid from the API balance in API credits (1000 API credits = 1 USD). `POST https://api.doitong.ru/v1/quote/nvidia/cosmos-3-super/image-to-video` with the same JSON body returns the exact price for that input; the quote is exactly what a run charges. Invalid input is never charged and failed or canceled requests are refunded automatically.

## Input parameters

Send either the canonical name or the native field name (not both). Canonical names are the same across models.

| Parameter | Canonical name | Type | Required | Default | Allowed values / range | Description |
|---|---|---|---|---|---|---|
| `prompt` |  | string | yes |  | 1 – 4096 characters | Mga tagubilin sa pagbuo ng video sa anyong teksto: tukuyin kung ano ang nasa eksena at kung anong galaw ang dapat nitong ipakita. |
| `image_url` | `image` | string (image URL) | yes |  |  | URL ng larawan na ginagamit upang i-condition ang unang frame ng video. |
| `negative_prompt` |  | string | no | `The video captures a series of frames showing macroblocking artifacts, chromatic aberration, high-frequency noise, and rolling shutter distortion. It includes static with no motion, motion blur, over-saturation, shaky footage, low resolution, grainy texture, pixelated images, poorly lit areas, underexposed and overexposed scenes, poor color balance, washed out colors, choppy sequences, jerky movements, low frame rate, bit-depth compression artifacts, color banding, unnatural transitions, outdated special effects, fake elements, unconvincing visuals, poorly edited content, jump cuts, hard cut, visual noise, and flickering. It features moiré patterns, edge halos, and temporal aliasing. Furthermore, the content defies common sense, generating illogical scenarios, nonsensical entities, absurd character behaviors, and conceptual paradoxes that violate basic human reasoning and everyday reality. The video looks like a surreal or glitchy hallucination. Overall, the video is of poor quality.` | ≤ 2048 characters | Negative prompt para pigilan ang content gaya ng hindi gustong galaw o artifact. Kapag hindi isinama, ginagamit ang inirerekomendang negative prompt ng NVIDIA para sa i2v, habang hindi pinapagana ng walang laman na string ang negative guidance. |
| `enable_prompt_expansion` |  | boolean | no | `true` |  | Prompt expansion na, kapag true, gumagamit ng Cosmos3-Nano Reasoner upang gumawa ng dense-caption format na ginamit sa pag-train ng Cosmos3; sinusuri ng VLM na ito ang unang frame. Tinutukoy ng COSMOS_PROMPT_UPSAMPLER_BASE_URL ang naka-configure na Reasoner service; kung wala, lokal na naglulunsad ang app ng isa. Kapag nabigo ang expansion, ginagamit ang hindi binagong prompt. |
| `enable_agentic_generation` |  | boolean | no | `false` |  | Paulit-ulit na pagbuo gamit ang Cosmos agent, na mas mabagal at mas magastos kaysa sa isang beses na pagbuo dahil nangangailangan ng buong pag-render ang bawat kandidato. Pinapalawak ng loop ang prompt, bumubuo ng mga kandidatong video, gumagamit ng VLM para suriin ang mga napiling frame, at muling isinusulat ang prompt. |
| `agentic_max_iterations` |  | integer | no | `2` | 1 – 3 | Pinakamataas na limitasyon ng mga yugto ng prompt kapag pinagana ang agentic pagbuo. |
| `agentic_samples_per_iteration` |  | integer | no | `2` | 1 – 3 | Bilang ng candidate na video sa bawat iteration para sa agentic loop, na tumutukoy kung ilang video ang maglalaban sa pagsusuri bago magpatuloy ang pinakamahusay sa muling pagsulat ng prompt. |
| `agentic_early_stop` |  | boolean | no | `true` |  | Kontrol sa maagang paghinto na itinuturing na sapat ang critic score na mas mataas sa mahigpit na quality threshold upang tapusin ang agentic loop. |
| `image_size` |  | object {width, height} \| enum (string) | no | `{"height":480,"width":832}` | `square_hd`, `square`, `portrait_4_3`, `portrait_16_9`, `landscape_4_3`, `landscape_16_9` | Mga dimensyon ng video na hinihingi bago ang awtomatikong pag-aangkop. Para makakuha ng suportadong sukat, nililimitahan ng system ang kahilingan at pinipili ang pinakamalapit na NVIDIA tier—256p, 480p, o 720p—at suportadong aspect ratio. |
| `num_frames` |  | integer | no | `189` | 5 – 189 | Bilang ng frame para sa pagbuo; kapag tinaasan ito, mas mahaba ang nagiging video. |
| `frames_per_second` |  | integer | no | `24` | 4 – 60 | Output video frame rate, na sinusukat sa frame bawat segundo. |
| `num_inference_steps` |  | integer | no | `28` | 1 – 50 | Bilang ng denoising step; mas matagal ang processing ngunit mas maganda ang kalidad kapag mas mataas ang bilang. |
| `guidance_scale` |  | number | no | `6` | 0 – 20 | Lakas ng classifier-free guidance. |
| `seed` |  | integer \| null | no |  |  | Seed na kumokontrol sa repeatability: ang magkaparehong prompt at seed ay gumagawa ng magkaparehong video kapag hindi nagbago ang bersyon ng modelo. |
| `enable_safety_checker` |  | boolean | no | `true` |  | Kontrol sa moderation para sa ibinigay na larawan at prompt, na maaari lamang i-disable ng mga awtorisadong account. Sumasailalim sa pagsusuri ang mga kahilingang walang authorization anuman ang setting. |

File parameters (`image`) take a public `https://` URL, a `data:` URI up to 10 MB, or the `file_url` of an upload from `POST /files`.

## Example input

Required parameters only:

```json
{
  "prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field",
  "image": "https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg"
}
```

A fuller example:

```json
{
  "prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field",
  "image_url": "https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg"
}
```

## Run it

Set `DOITONG_API_KEY` to a key from https://doitong.com/developers/dashboard#keys. `?wait=20` returns the finished request in the same call when it is ready within 20 seconds; otherwise poll `GET /requests/{id}` (it also accepts `?wait=`), or pass `webhook_url`.

### curl

```bash
# Run the model; wait up to 20 s for the finished result in the same call
curl -X POST "https://api.doitong.ru/v1/run/nvidia/cosmos-3-super/image-to-video?wait=20" \
  -H "Authorization: Bearer $DOITONG_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field",
    "image_url": "https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg"
  }'

# Still "queued" or "running"? Poll with the id from the response:
curl "https://api.doitong.ru/v1/requests/REQUEST_ID?wait=20" \
  -H "Authorization: Bearer $DOITONG_API_KEY"
```

### JavaScript

```javascript
const API = "https://api.doitong.ru/v1";
const headers = {
  "Authorization": "Bearer " + process.env.DOITONG_API_KEY,
  "Content-Type": "application/json",
};

// Run the model; wait up to 20 s for the finished result in the same call
let res = await fetch(API + "/run/nvidia/cosmos-3-super/image-to-video?wait=20", {
  method: "POST",
  headers,
  body: JSON.stringify({
    "prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field",
    "image_url": "https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg"
  }),
});
let request = await res.json();
if (!res.ok) throw new Error(request.error.code + ": " + request.error.message);

// Not finished yet: long-poll until it is
while (request.status === "queued" || request.status === "running") {
  res = await fetch(API + "/requests/" + request.id + "?wait=20", { headers });
  request = await res.json();
}
if (request.status !== "succeeded") throw new Error(JSON.stringify(request.error));
console.log(request.outputs.map((o) => o.url), request.cost.credits + " API credits ($" + request.cost.usd + ")");
```

### Python

```python
import os
import requests

API = "https://api.doitong.ru/v1"
headers = {"Authorization": "Bearer " + os.environ["DOITONG_API_KEY"]}

payload = {
    "prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field",
    "image_url": "https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg",
}

# Run the model; wait up to 20 s for the finished result in the same call
r = requests.post(API + "/run/nvidia/cosmos-3-super/image-to-video", params={"wait": 20}, json=payload, headers=headers)
request = r.json()
if not r.ok:
    raise RuntimeError(request["error"]["code"] + ": " + request["error"]["message"])

# Not finished yet: long-poll until it is
while request["status"] in ("queued", "running"):
    request = requests.get(API + "/requests/" + request["id"], params={"wait": 20}, headers=headers).json()
if request["status"] != "succeeded":
    raise RuntimeError(request["error"])
print([o["url"] for o in request["outputs"]], request["cost"]["credits"], "API credits", "$" + request["cost"]["usd"])
```

### MCP

The MCP server at `https://api.doitong.ru/v1/mcp` exposes the tools `search_models`, `get_model`, `quote`, `run`, `get_request`, `cancel_request`, `list_requests`, `create_upload` and `get_account`. A `run` call for this model:

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "run",
    "arguments": {
      "model_id": "nvidia/cosmos-3-super/image-to-video",
      "input": {
        "prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field",
        "image_url": "https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg"
      },
      "wait_seconds": 20
    }
  }
}
```

## Response

Every call returns a request object. `status` is one of `queued`, `running`, `succeeded`, `failed`, `canceled`. `outputs` lists the generated files with URLs on our storage (kept forever, or 7 days with `?storage=temporary`; `storage` says which); `output` is the model's own result object with the same URLs.

```json
{
  "id": "req_8k2m4q7x1z9c3v5b6n0p2r4t",
  "object": "request",
  "model": "nvidia/cosmos-3-super/image-to-video",
  "status": "succeeded",
  "created_at": "2026-10-20T12:00:00Z",
  "started_at": "2026-10-20T12:00:02Z",
  "completed_at": "2026-10-20T12:00:09Z",
  "queue_position": null,
  "cost": {
    "credits": 400,
    "usd": "0.40",
    "charged": 400,
    "refunded": 0
  },
  "input": {
    "prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field",
    "image_url": "https://content.doitong.com/images/showcase/v3/gen_fox_cartoon.jpg"
  },
  "output": {
    "video": {
      "url": "https://content.doitong.com/dev-api/2026/10/20/req_8k2m4q7x1z9c3v5b6n0p2r4t/0-output.mp4",
      "content_type": "video/mp4",
      "file_name": "0-output.mp4",
      "file_size": 1843200,
      "width": 1024,
      "height": 768,
      "fps": 1.0,
      "duration": 5,
      "num_frames": 1
    },
    "seed": 42
  },
  "outputs": [
    {
      "type": "video",
      "url": "https://content.doitong.com/dev-api/2026/10/20/req_8k2m4q7x1z9c3v5b6n0p2r4t/0-output.mp4",
      "content_type": "video/mp4",
      "file_size": 1843200,
      "width": 1280,
      "height": 720,
      "duration": 5,
      "stored": true
    }
  ],
  "error": null,
  "metrics": {
    "inference_seconds": 6.8
  },
  "urls": {
    "self": "https://api.doitong.ru/v1/requests/req_8k2m4q7x1z9c3v5b6n0p2r4t",
    "cancel": "https://api.doitong.ru/v1/requests/req_8k2m4q7x1z9c3v5b6n0p2r4t/cancel"
  }
}
```

### Output fields (`output`)

| Field | Type | Description |
|---|---|---|
| `video` | object {url, content_type, file_name, file_size, width, height, fps, duration, num_frames} | Videong ginawa ng modelo. |
| `seed` | integer | Seed value na inilapat sa pagbuo. |

## Related models

- [Cosmos 3 Super](https://doitong.com/developers/models/nvidia/cosmos-3-super/text-to-image.md) (`nvidia/cosmos-3-super/text-to-image`): from $0.04 / run of output image
- [FLUX 3 Max Image to Video](https://doitong.com/developers/models/blackforestlabs/flux-3-max/image-to-video.md) (`blackforestlabs/flux-3-max/image-to-video`): from $0.0425 / second of output video
- [Grok Imagine Video 1.5 Image to Video](https://doitong.com/developers/models/xai/grok-imagine-video/v1.5/image-to-video.md) (`xai/grok-imagine-video/v1.5/image-to-video`): from $0.082 / second
- [Kling 3.0 Pro Image to Video](https://doitong.com/developers/models/kling-video/v3/pro/image-to-video.md) (`kling-video/v3/pro/image-to-video`): from $0.112 / second
- [LTX 2.5 Pro Image to Video](https://doitong.com/developers/models/lightricks/ltx-2.5/image-to-video/pro.md) (`lightricks/ltx-2.5/image-to-video/pro`): from $0.12 / second
- [MiniMax H3 Image to Video](https://doitong.com/developers/models/minimax/h3/image-to-video.md) (`minimax/h3/image-to-video`): from $0.05 / second
- [Seedance 2.0 Fast Image to Video](https://doitong.com/developers/models/bytedance/seedance-2.0/fast/image-to-video.md) (`bytedance/seedance-2.0/fast/image-to-video`): from $0.113 / second
- [Seedance 2.0 Image to Video](https://doitong.com/developers/models/bytedance/seedance-2.0/image-to-video.md) (`bytedance/seedance-2.0/image-to-video`): from $0.141 / second

## Links

- HTML page: https://doitong.com/developers/models/nvidia/cosmos-3-super/image-to-video
- All models and guides for AI agents: https://doitong.com/developers/llms.txt
- OpenAPI 3.1 with this model's typed request body: https://doitong.com/developers/openapi.json?model=nvidia/cosmos-3-super/image-to-video
- Errors: https://doitong.com/developers/docs/errors
- Model details as JSON: https://api.doitong.ru/v1/models/nvidia/cosmos-3-super/image-to-video
