- Shares the same media fields and mutual-exclusion rules as H3 video generation
- Token-based billing; typically completes in 20~40 seconds
- Use alone, or as step 1 of the 768P preview → 2K regeneration workflow
Full 2K Workflow (optional): ① Context-IR enhances the prompt → ② MiniMax-H3 with 768P for a preview → ③ Regeneration upscales to 2K. Combined unit prices match direct 2K, with cheaper retries. You can also call this endpoint alone.
Request example
curl --request POST \
--url https://api.openveer.com/v1/videos/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "MiniMax-H3-Context-IR",
"prompt": "Epic space-opera trailer: a female captain alone before a huge viewport as the last fleet gathers and jumps away.",
"duration": 5,
"aspect_ratio": "16:9"
}'import requests
url = "https://api.openveer.com/v1/videos/generations"
payload = {
"model": "MiniMax-H3-Context-IR",
"prompt": "Epic space-opera trailer: a female captain alone before a huge viewport as the last fleet gathers and jumps away.",
"duration": 5,
"aspect_ratio": "16:9",
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json",
}
response = requests.post(url, json=payload, headers=headers)
print(response.json())const url = "https://api.openveer.com/v1/videos/generations";
const payload = {
model: "MiniMax-H3-Context-IR",
prompt: "Epic space-opera trailer: a female captain alone before a huge viewport as the last fleet gathers and jumps away.",
duration: 5,
aspect_ratio: "16:9",
};
const headers = {
Authorization: "Bearer <token>",
"Content-Type": "application/json",
};
fetch(url, {
method: "POST",
headers: headers,
body: JSON.stringify(payload),
})
.then((response) => response.json())
.then((data) => console.log(data))
.catch((error) => console.error("Error:", error));Response example
{
"code": 200,
"data": [
{
"status": "submitted",
"task_id": "task_01J9HA7JPQ9A0Z6JZ3V8M9W6PZ"
}
]
}{
"error": {
"code": 400,
"message": "Invalid request parameters",
"type": "invalid_request_error"
}
}{
"error": {
"code": 401,
"message": "Authentication failed, please check your API key",
"type": "authentication_error"
}
}{
"error": {
"code": 402,
"message": "Insufficient account balance, please top up and try again",
"type": "payment_required"
}
}Authorization
Authorization stringBearer Token auth. Get a key from the API Key Management Page.
Authorization: Bearer YOUR_API_KEYOverview
Send your idea plus optional media for multimodal understanding; receive a structured, richer prompt.
- No video is produced. Result is in
result.prompt(notresult.videos) - Media fields use the same validation rules as video generation (frame vs reference mutual exclusion; audio cannot be alone) so the same inputs can go to generation next
Completed task query example:
{
"code": 200,
"data": {
"actual_time": 28,
"completed": 1700000128,
"cost": 0.011204,
"created": 1700000100,
"credits_cost": 0.11204,
"estimated_time": 100,
"id": "task_01J9HA7J*************",
"progress": 100,
"result": {
"prompt": "integrated_multimodal_description: [Shot 1] Cinematic, close-up shot. The camera slowly pushes in on a lone adult astronaut standing in a dimly lit, metallic corridor. The astronaut wears a weathered, white and silver extravehicular spacesuit heavily scuffed with grey dust, featuring a completely opaque, gold-tinted helmet visor. The astronaut slowly pushes open a rusted, thick steel airlock door on the right side of the frame. As the heavy metal door shifts, a sudden, intense beam of vibrant green light spills across the dark frame, illuminating the intricate fabric folds of the suit. The curved golden visor vividly reflects a dense, tangled mass of luminescent green leaves and vines. [Shot 2] At 00:02.500, the camera cuts to a wide shot from directly behind the astronaut from Shot 1, smoothly pedestaling up to reveal the interior of the abandoned orbital station. The vast, hexagonal titanium room is completely overrun by a lush, zero-gravity living garden. Giant, emerald-green vines spiral tightly around cracked, grey ceiling support beams, while thick patches of bioluminescent cyan moss emit a soft glow from the rusted floor grid. Several large, perfectly spherical water droplets float weightlessly in the midground, refracting the ambient green light. The astronaut lowers their heavy, white-gloved hands to their sides, standing perfectly motionless before the massive canopy of overgrown flora.\noverall_soundscape: A loud, grinding metallic creak dominates the foreground as the heavy steel door shifts, instantly followed by a pronounced, high-pitched hiss of escaping pressurized air. A continuous, low-frequency mechanical hum rumbles in the background, establishing the station's deadened room tone. As the space opens, the distinct, crisp rustle of thick foliage is clearly heard, accompanied by soft, resonant liquid plops as unseen water drops collide in the metallic chamber.\nnon_diegetic_music: Ambient electronic score, slow tempo, featuring a deep, sustained synthesizer drone heavily overlaid with delicate, shimmering glockenspiel notes and a solitary, reverberating cello."
},
"status": "completed",
"usage": {
"input_tokens": 5512,
"output_tokens": 2388,
"total_tokens": 7900
}
}
}Pass result.prompt as-is to MiniMax-H3 as prompt.
Request Parameters
model stringFixed value: MiniMax-H3-Context-IR
nsfw_check booleanWhether to run content moderation before submitting the Context-IR task.
true: useomni-moderation-latestto review prompts and input imagesfalseor omitted: do not send a moderation request, adding no moderation cost or latency (default)
prompt stringOriginal idea text, ≤ 7000 characters
duration integerTarget video duration (seconds), 4\~15, default 5. Affects pacing language in the enhanced prompt.
aspect_ratio stringTarget aspect ratio. Required for text-only input, and cannot be adaptive.
Common values: 16:9, 9:16, 1:1, 4:3, 3:4, 21:9, etc.
first_frame_image stringFirst-frame image URL
last_frame_image stringLast-frame image URL
image_urls string[]Reference images (always treated as references), ≤ 9
image_with_roles object[]Role-tagged images: first_frame / last_frame / reference_image
video_urls string[]Reference videos, ≤ 3; each 2\~15s, total ≤ 15s
audio_urls string[]Reference audio, ≤ 3; cannot be used alone — pair with image or video
Billing
Token-based (only H3-family model billed by tokens):
| Item | Price |
|---|---|
| Input tokens | \$0.87 / million |
| Output tokens | \$3.45 / million |
A typical call (\~5.6k input + \~3.4k output tokens) is about \$0.0167.
A fixed deposit is pre-charged on submit, then settled against real prompt_tokens / completion_tokens (refund excess / charge shortfall). Multimodal inputs significantly increase input tokens.
Notes
- Usually 20\~40 seconds; poll task status every 3\~5 seconds.
- Bad params → sync 400 (no task, no charge); runtime failures go to
failedwith auto refund. - Full workflow notes are on the Regeneration page.
Response
code integerStatus code; 200 on success
data arraystatus / task_id
status stringInitially submitted
task_id stringTask ID
This documentation is built and hosted on Mintlify, a developer documentation platform.