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 | — | Automatically rewrites and enriches your prompt with extra detail before generation to improve results. |
| 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} | Preset aspect ratios: square_hd, square, portrait_4_3, portrait_16_9, landscape_4_3, landscape_16_9. Alternatively, provide a custom object: {"width": integer, "height": integer}. |
| 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 image is billed at $0.04. |
| output_format | No | string | "jpeg" | "jpeg", "png" | Output image format. Allowed: jpeg, png. |
| enable_safety_checker | No | boolean | true | — | Turns on automatic filtering of unsafe or explicit (NSFW) content. 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 | "blurry, low quality, distorted, unnatural motion, flickering, stuttering, deformed limbs, extra limbs, bad anatomy" | ≤ 2048 chars | Content to steer away from during generation (max 2048 characters). |
| enable_prompt_expansion | No | boolean | true | — | Automatically rewrites and enriches your prompt with extra detail before generation to improve results. |
| enable_agentic_generation | No | boolean | false | — | Enable iterative agentic refinement loop for improved motion quality. |
| agentic_max_iterations | No | integer | 2 | 1, 2, 3 | Maximum number of agentic refinement stages. |
| agentic_samples_per_iteration | No | integer | 2 | 1, 2, 3 | Number of candidate videos generated per agentic iteration. |
| agentic_early_stop | No | boolean | true | — | Stop agentic loop early when the critic score exceeds the threshold. |
| 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 | Preset aspect ratio or custom dimensions. Custom object must include width and height as integers. |
| num_frames | No | integer | 189 | 5–189 | Number of frames in output video. |
| frames_per_second | No | integer | 24 | 4–60 | Output frame rate. |
| 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 automatic filtering of unsafe or explicit (NSFW) content. 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.