Cosmos 3 Super API - AI Image & Video Generation APIs: Pricing, Documentation
by NVIDIA
Cosmos 3 Super API delivers a unified, high-performance integration layer designed to streamline complex data workflows and accelerate digital transformation across enterprise ecosystems. This robust solution offers developers seamless connectivity, exceptional uptime, and low-latency processing to handle demanding workloads without compromising on speed or reliability. With its intuitive architecture and advanced security protocols, the platform simplifies API management, automates routine tasks, and scales effortlessly to meet growing business demands. By eliminating operational bottlenecks and ensuring data consistency across various internal endpoints, it empowers organizations to optimize their software architecture and unlock maximum technical efficiency.

Models Version
Get $5 Free Credit on First Payment
No strings attached — add funds and get $5 bonus instantly
Cosmos 3 Super API Documentation
https://gateway.pixazo.ai/cosmos-3-super-text-to-image/v1/cosmos-3-super-text-to-image-request
Authentication
All requests require an API key passed via header.
| Header | Type | Required | Description |
|---|---|---|---|
| Ocp-Apim-Subscription-Key | string | Yes | Your API subscription key |
Cosmos 3 Super Text to Image generate request
Request Code
POST https://gateway.pixazo.ai/cosmos-3-super-text-to-image/v1/cosmos-3-super-text-to-image-request
Content-Type: application/json
Cache-Control: no-cache
Ocp-Apim-Subscription-Key: YOUR_API_KEY
{
"prompt": "A futuristic mountain observatory under a star-filled sky, cinematic lighting, photorealistic",
"negative_prompt": "",
"image_size": "square_hd",
"num_inference_steps": 28,
"guidance_scale": 4,
"num_images": 1,
"output_format": "jpeg",
"enable_prompt_expansion": false,
"enable_safety_checker": true,
"sync_mode": false
}
import requests
url = "https://gateway.pixazo.ai/cosmos-3-super-text-to-image/v1/cosmos-3-super-text-to-image-request"
headers = {
"Content-Type": "application/json",
"Cache-Control": "no-cache",
"Ocp-Apim-Subscription-Key": "YOUR_API_KEY"
}
data = {
"prompt": "A futuristic mountain observatory under a star-filled sky, cinematic lighting, photorealistic",
"negative_prompt": "",
"image_size": "square_hd",
"num_inference_steps": 28,
"guidance_scale": 4,
"num_images": 1,
"output_format": "jpeg",
"enable_prompt_expansion": false,
"enable_safety_checker": true,
"sync_mode": false
}
response = requests.post(url, json=data, headers=headers)
print(response.json())
const url = "https://gateway.pixazo.ai/cosmos-3-super-text-to-image/v1/cosmos-3-super-text-to-image-request";
const headers = {
"Content-Type": "application/json",
"Cache-Control": "no-cache",
"Ocp-Apim-Subscription-Key": "YOUR_API_KEY"
};
const data = {
"prompt": "A futuristic mountain observatory under a star-filled sky, cinematic lighting, photorealistic",
"negative_prompt": "",
"image_size": "square_hd",
"num_inference_steps": 28,
"guidance_scale": 4,
"num_images": 1,
"output_format": "jpeg",
"enable_prompt_expansion": false,
"enable_safety_checker": true,
"sync_mode": false
};
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(data)
})
.then(response => response.json())
.then(data => console.log(data));
curl -X POST "https://gateway.pixazo.ai/cosmos-3-super-text-to-image/v1/cosmos-3-super-text-to-image-request" \
-H "Content-Type: application/json" \
-H "Cache-Control: no-cache" \
-H "Ocp-Apim-Subscription-Key: YOUR_API_KEY" \
--data-raw '{
"prompt": "A futuristic mountain observatory under a star-filled sky, cinematic lighting, photorealistic",
"negative_prompt": "",
"image_size": "square_hd",
"num_inference_steps": 28,
"guidance_scale": 4,
"num_images": 1,
"output_format": "jpeg",
"enable_prompt_expansion": false,
"enable_safety_checker": true,
"sync_mode": false
}'
Output
{
"request_id": "cosmos-3-super-text-to-image_019dxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"status": "QUEUED",
"polling_url": "https://gateway.pixazo.ai/v2/requests/status/cosmos-3-super-text-to-image_019dxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
}
Webhook (Optional)
Add the X-Webhook-URL header to your generate request to receive a POST callback instead of polling.
X-Webhook-URL: https://your-server.com/webhook/callback
Request Parameters - Cosmos 3 Super Text to Image generate request
| Parameter | Required | Type | Default | Allowed values / range | Description |
|---|---|---|---|---|---|
| prompt | Yes | string | — | 1–4096 characters | Text prompt for image generation (1-4096 characters). |
| negative_prompt | No | string | "" | ≤ 1024 characters | Content to steer away from during generation (max 1024 characters). |
| enable_prompt_expansion | No | boolean | false | — | Rewrites your prompt into the dense, structured format the model was trained on before generation, which usually improves detail and prompt adherence. If expansion fails, your raw prompt is used. |
| enable_agentic_generation | No | boolean | false | — | Enable iterative generation and comparison of multiple candidate images. Each candidate is billed separately. |
| agentic_max_iterations | No | integer | 2 | 1–3 | Maximum refinement rounds (1-3). Only applies if enable_agentic_generation is true. |
| agentic_samples_per_iteration | No | integer | 2 | 1–3 | Number of candidate images generated per iteration (1-3). Only applies if enable_agentic_generation is true. |
| agentic_early_stop | No | boolean | true | — | Stop refinement early if a candidate is deemed a strong match. Only applies if enable_agentic_generation is true. |
| image_size | No | string or object | "square_hd" | "square_hd", "square", "portrait_4_3", "portrait_16_9", "landscape_4_3", "landscape_16_9", or {width: integer, height: integer} with each edge 512–1280 px in multiples of 16 | Size of the generated image. Use a preset (square_hd, square, portrait_4_3, portrait_16_9, landscape_4_3, landscape_16_9) or a custom object such as {"width": 1024, "height": 1024}. Each edge is clamped to 512-1280 px and snapped to a multiple of 16. |
| num_inference_steps | No | integer | 28 | 1–50 | Number of refinement steps the model runs while generating. Higher values refine detail and quality but increase processing time; lower values are faster. |
| guidance_scale | No | float | 4 | 0–20 | Controls how closely the output follows your prompt (prompt adherence). Higher values stick more strictly to the prompt; lower values allow more creative variation. |
| num_images | No | integer | 1 | 1–4 | Number of images to generate (1-4). Each generated image is billed separately. |
| output_format | No | string | "jpeg" | "jpeg", "png" | Output image format. Allowed: jpeg, png. |
| enable_safety_checker | No | boolean | true | — | Turns on content moderation for the input prompt and the generated images. Leave enabled unless you have a specific reason to disable it. |
| seed | No | integer | — | — | Random seed that controls the generation's randomness. Reuse the same seed with identical settings to reproduce the same result; leave it empty for a different output each time. |
| sync_mode | No | boolean | false | — | If on, the finished file is sent back directly instead of as a download link. Handy for quick tests; for normal use, leave it off to get a download link. |
Example Request
{
"prompt": "A futuristic mountain observatory under a star-filled sky, cinematic lighting, photorealistic",
"negative_prompt": "",
"image_size": "square_hd",
"num_inference_steps": 28,
"guidance_scale": 4,
"num_images": 1,
"output_format": "jpeg",
"enable_prompt_expansion": false,
"enable_safety_checker": true,
"sync_mode": false
}
Response
{
"request_id": "cosmos-3-super-text-to-image_019dxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"status": "QUEUED",
"polling_url": "https://gateway.pixazo.ai/v2/requests/status/cosmos-3-super-text-to-image_019dxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
}
Request Headers
| Header | Value |
|---|---|
| Content-Type | application/json |
| Cache-Control | no-cache |
| Ocp-Apim-Subscription-Key | YOUR_API_KEY |
Response Handling
Common status codes.
| Code | Meaning |
|---|---|
| 202 | Accepted — Request queued |
| 400 | Bad Request |
| 401 | Unauthorized |
| 402 | Insufficient Balance |
| 403 | Forbidden |
| 429 | Too Many Requests |
| 500 | Internal Server Error |
Error Responses
Queue system errors and model validation errors.
Queue System Errors
// 402 — Insufficient balance
{
"error": "Insufficient Balance",
"message": "Your wallet does not have enough balance."
}
// 400 — Model not found
{
"error": "Model not found",
"message": "Model 'cosmos-3-super-text-to-image' not found or is disabled"
}
Error via Status/Webhook
{
"request_id": "cosmos-3-super-text-to-image_019dxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"status": "ERROR",
"model_id": "cosmos-3-super-text-to-image",
"error": "Description of the error",
"output": null
}
Retrieving Results
Poll the universal status endpoint to check progress and retrieve results.
Endpoint
GET https://gateway.pixazo.ai/v2/requests/status/{request_id}
Ocp-Apim-Subscription-Key: YOUR_API_KEY
cURL Example
curl -H "Ocp-Apim-Subscription-Key: YOUR_API_KEY" \
"https://gateway.pixazo.ai/v2/requests/status/cosmos-3-super-text-to-image_019dxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
Response (Completed)
{
"request_id": "cosmos-3-super-text-to-image_019dxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"status": "COMPLETED",
"model_id": "cosmos-3-super-text-to-image",
"error": null,
"output": {
"media_url": ["https://pub-582b7213209642b9b995c96c95a30381.r2.dev/v1/cosmos-3-super-text-to-image_019dxxxx/output.jpg"],
"media_type": "image/jpeg"
},
"created_at": "2026-03-31T10:00:00.000Z",
"updated_at": "2026-03-31T10:00:15.000Z",
"completed_at": "2026-03-31T10:00:15.000Z"
}
Response Fields
| Field | Type | Description |
|---|---|---|
| request_id | string | Unique request identifier |
| status | string | QUEUED, PROCESSING, COMPLETED, FAILED, or ERROR |
| model_id | string | Model that processed the request |
| error | string|null | Error message if failed |
| output.media_url | array | URLs to generated media (R2 CDN) |
| output.media_type | string | MIME type of the output |
| created_at | string | When request was created |
| completed_at | string | When request completed |
| polling_url | string | Status URL (initial response only) |
Status Values
| Status | Description |
|---|---|
| QUEUED | Request accepted, waiting to be processed |
| PROCESSING | Being processed by the model |
| COMPLETED | Done — output contains the result |
| FAILED | Failed — check error field |
| ERROR | System error — not charged |
Status Flow
QUEUED → PROCESSING → COMPLETED
→ FAILED
→ ERROR
Typical Workflow
- Send a generate request to the API endpoint
- Save the
request_idfrom the response - Poll every 5-10 seconds:
GET /v2/requests/status/{request_id} - When
statusis"COMPLETED", download fromoutput.media_url
Tip: Use X-Webhook-URL header to get a callback instead of polling.
Cosmos 3 Super API Pricing
| Usage | Price (USD) |
|---|---|
| Per image | $0.04 |
| Prompt expansion (per request) | $0.02 |
Cosmos 3 Super API Documentation
https://gateway.pixazo.ai/cosmos-3-super-image-to-video/v1/cosmos-3-super-image-to-video-request
Authentication
All requests require an API key passed via header.
| Header | Type | Required | Description |
|---|---|---|---|
| Ocp-Apim-Subscription-Key | string | Yes | Your API subscription key |
Cosmos 3 Super Image to Video generate request
Request Code
POST https://gateway.pixazo.ai/cosmos-3-super-image-to-video/v1/cosmos-3-super-image-to-video-request
Content-Type: application/json
Cache-Control: no-cache
Ocp-Apim-Subscription-Key: YOUR_API_KEY
{
"prompt": "Cinematic slow camera push-in; the subject animates naturally",
"image_url": "https://pub-582b7213209642b9b995c96c95a30381.r2.dev/Image.jpeg",
"num_frames": 189,
"frames_per_second": 24,
"num_inference_steps": 28,
"guidance_scale": 6,
"enable_prompt_expansion": true,
"enable_safety_checker": true,
"sync_mode": false
}
import requests
url = "https://gateway.pixazo.ai/cosmos-3-super-image-to-video/v1/cosmos-3-super-image-to-video-request"
headers = {
"Content-Type": "application/json",
"Cache-Control": "no-cache",
"Ocp-Apim-Subscription-Key": "YOUR_API_KEY"
}
data = {
"prompt": "Cinematic slow camera push-in; the subject animates naturally",
"image_url": "https://pub-582b7213209642b9b995c96c95a30381.r2.dev/Image.jpeg",
"num_frames": 189,
"frames_per_second": 24,
"num_inference_steps": 28,
"guidance_scale": 6,
"enable_prompt_expansion": true,
"enable_safety_checker": true,
"sync_mode": false
}
response = requests.post(url, json=data, headers=headers)
print(response.json())
const url = "https://gateway.pixazo.ai/cosmos-3-super-image-to-video/v1/cosmos-3-super-image-to-video-request";
const headers = {
"Content-Type": "application/json",
"Cache-Control": "no-cache",
"Ocp-Apim-Subscription-Key": "YOUR_API_KEY"
};
const data = {
"prompt": "Cinematic slow camera push-in; the subject animates naturally",
"image_url": "https://pub-582b7213209642b9b995c96c95a30381.r2.dev/Image.jpeg",
"num_frames": 189,
"frames_per_second": 24,
"num_inference_steps": 28,
"guidance_scale": 6,
"enable_prompt_expansion": true,
"enable_safety_checker": true,
"sync_mode": false
};
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(data)
})
.then(response => response.json())
.then(data => console.log(data));
curl -X POST "https://gateway.pixazo.ai/cosmos-3-super-image-to-video/v1/cosmos-3-super-image-to-video-request" \
-H "Content-Type: application/json" \
-H "Cache-Control: no-cache" \
-H "Ocp-Apim-Subscription-Key: YOUR_API_KEY" \
--data-raw '{
"prompt": "Cinematic slow camera push-in; the subject animates naturally",
"image_url": "https://pub-582b7213209642b9b995c96c95a30381.r2.dev/Image.jpeg",
"num_frames": 189,
"frames_per_second": 24,
"num_inference_steps": 28,
"guidance_scale": 6,
"enable_prompt_expansion": true,
"enable_safety_checker": true,
"sync_mode": false
}'
Output
{
"request_id": "cosmos-3-super-image-to-video_019dxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"status": "QUEUED",
"polling_url": "https://gateway.pixazo.ai/v2/requests/status/cosmos-3-super-image-to-video_019dxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
}
Webhook (Optional)
Add the X-Webhook-URL header to your generate request to receive a POST callback instead of polling.
X-Webhook-URL: https://your-server.com/webhook/callback
Request Parameters - Cosmos 3 Super Image to Video generate request
| Parameter | Required | Type | Default | Allowed values / range | Description |
|---|---|---|---|---|---|
| prompt | Yes | string | — | non-empty; ≤ 4096 chars | Text describing motion and scene (max 4096 characters). Must describe dynamic elements such as camera movement, object motion, or environmental changes. |
| image_url | Yes | string | — | — | URL of the conditioning first-frame image. Must be publicly accessible. |
| negative_prompt | No | string | NVIDIA's recommended i2v negative prompt (long; see description) | ≤ 2048 chars | Content to steer the generation away from (artifacts, unwanted motion). If you omit it, NVIDIA's long recommended image-to-video negative prompt (covering compression artifacts, noise, shaky footage, colour banding, unnatural motion, etc.) is applied automatically. Pass an empty string ("") to disable it, or your own text to override it. Max 2048 characters. |
| enable_prompt_expansion | No | boolean | true | — | Rewrites your prompt into the dense caption the model was trained on, using a reasoner that also looks at the first frame. Usually improves motion and prompt adherence; if expansion fails, your raw prompt is used. |
| enable_agentic_generation | No | boolean | false | — | Enables an iterative refinement loop (prompt upsampling, candidate videos, automatic critique, prompt rewrite). Each candidate is a full render, so this is substantially slower and costlier than a single generation. |
| agentic_max_iterations | No | integer | 2 | 1–3 | Maximum number of agentic refinement stages (1-3). Only applies if enable_agentic_generation is true. |
| agentic_samples_per_iteration | No | integer | 2 | 1–3 | Number of candidate videos generated and judged per agentic iteration (1-3); the best one advances to the next round. Only applies if enable_agentic_generation is true. |
| agentic_early_stop | No | boolean | true | — | Stop the agentic loop early once a candidate clears the quality threshold. Only applies if enable_agentic_generation is true. |
| image_size | No | string or object | {"width":832,"height":480} | "square_hd", "square", "portrait_4_3", "portrait_16_9", "landscape_4_3", "landscape_16_9", or {width: integer, height: integer} | Size of the generated video. Use a preset (square_hd, square, portrait_4_3, portrait_16_9, landscape_4_3, landscape_16_9) or a custom object such as {"width": 832, "height": 480}. The request is clamped and snapped to the nearest supported tier (256p / 480p / 720p) and aspect ratio. |
| num_frames | No | integer | 189 | 5–189 | Number of frames to generate. More frames yield a longer video: duration ≈ num_frames ÷ frames_per_second (189 frames at 24 fps ≈ 7.9 seconds). |
| frames_per_second | No | integer | 24 | 4–60 | Frame rate of the output video. Together with num_frames this sets the video duration. |
| num_inference_steps | No | integer | 28 | 1–50 | Number of refinement steps the model runs while generating. Higher values refine detail and quality but increase processing time; lower values are faster. |
| guidance_scale | No | float | 6 | 0–20 | Controls how closely the output follows your prompt (prompt adherence). Higher values stick more strictly to the prompt; lower values allow more creative variation. |
| enable_safety_checker | No | boolean | true | — | Turns on content moderation for the input prompt and the input image. Leave enabled unless you have a specific reason to disable it. |
| seed | No | integer | — | — | Random seed that controls the generation's randomness. Reuse the same seed with identical settings to reproduce the same result; leave it empty for a different output each time. |
| sync_mode | No | boolean | false | — | If on, the finished file is sent back directly instead of as a download link. Handy for quick tests; for normal use, leave it off to get a download link. |
Content Item Types & Limits
| Type | Max | Format / Size | Description |
|---|---|---|---|
| image | 1 | JPG, PNG, WEBP | Input image to animate. |
Example Request
{
"prompt": "Cinematic slow camera push-in; the subject animates naturally",
"image_url": "https://pub-582b7213209642b9b995c96c95a30381.r2.dev/Image.jpeg",
"num_frames": 189,
"frames_per_second": 24,
"num_inference_steps": 28,
"guidance_scale": 6,
"enable_prompt_expansion": true,
"enable_safety_checker": true,
"sync_mode": false
}
Response
{
"request_id": "cosmos-3-super-image-to-video_019dxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"status": "QUEUED",
"polling_url": "https://gateway.pixazo.ai/v2/requests/status/cosmos-3-super-image-to-video_019dxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
}
Request Headers
| Header | Value |
|---|---|
| Content-Type | application/json |
| Cache-Control | no-cache |
| Ocp-Apim-Subscription-Key | YOUR_API_KEY |
Response Handling
Common status codes.
| Code | Meaning |
|---|---|
| 202 | Accepted — Request queued |
| 400 | Bad Request |
| 401 | Unauthorized |
| 402 | Insufficient Balance |
| 403 | Forbidden |
| 429 | Too Many Requests |
| 500 | Internal Server Error |
Error Responses
Queue system errors and model validation errors.
Queue System Errors
// 402 — Insufficient balance
{
"error": "Insufficient Balance",
"message": "Your wallet does not have enough balance."
}
// 400 — Model not found
{
"error": "Model not found",
"message": "Model 'cosmos-3-super-image-to-video' not found or is disabled"
}
Error via Status/Webhook
{
"request_id": "cosmos-3-super-image-to-video_019dxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"status": "ERROR",
"model_id": "cosmos-3-super-image-to-video",
"error": "Description of the error",
"output": null
}
Retrieving Results
Poll the universal status endpoint to check progress and retrieve results.
Endpoint
GET https://gateway.pixazo.ai/v2/requests/status/{request_id}
Ocp-Apim-Subscription-Key: YOUR_API_KEY
cURL Example
curl -H "Ocp-Apim-Subscription-Key: YOUR_API_KEY" \
"https://gateway.pixazo.ai/v2/requests/status/cosmos-3-super-image-to-video_019dxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
Response (Completed)
{
"request_id": "cosmos-3-super-image-to-video_019dxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"status": "COMPLETED",
"model_id": "cosmos-3-super-image-to-video",
"error": null,
"output": {
"media_url": ["https://pub-582b7213209642b9b995c96c95a30381.r2.dev/v1/cosmos-3-super-image-to-video_019dxxxx/output.mp4"],
"media_type": "video/mp4"
},
"created_at": "2026-03-31T10:00:00.000Z",
"updated_at": "2026-03-31T10:00:15.000Z",
"completed_at": "2026-03-31T10:00:15.000Z"
}
Response Fields
| Field | Type | Description |
|---|---|---|
| request_id | string | Unique request identifier |
| status | string | QUEUED, PROCESSING, COMPLETED, FAILED, or ERROR |
| model_id | string | Model that processed the request |
| error | string|null | Error message if failed |
| output.media_url | array | URLs to generated media (R2 CDN) |
| output.media_type | string | MIME type of the output |
| created_at | string | When request was created |
| completed_at | string | When request completed |
| polling_url | string | Status URL (initial response only) |
Status Values
| Status | Description |
|---|---|
| QUEUED | Request accepted, waiting to be processed |
| PROCESSING | Being processed by the model |
| COMPLETED | Done — output contains the result |
| FAILED | Failed — check error field |
| ERROR | System error — not charged |
Status Flow
QUEUED → PROCESSING → COMPLETED
→ FAILED
→ ERROR
Typical Workflow
- Send a generate request to the API endpoint
- Save the
request_idfrom the response - Poll every 5-10 seconds:
GET /v2/requests/status/{request_id} - When
statusis"COMPLETED", download fromoutput.media_url
Tip: Use X-Webhook-URL header to get a callback instead of polling.
Cosmos 3 Super API Pricing
⚡ Performance
Live usage measured on Pixazo's gateway, split by model version. Generation time is how long a generation takes end-to-end (lower is better). Success rate is the percent of generations that complete (higher is better).
〰 Uptime
Percent of generations that succeeded over the selected period, per model version.