Create a MiniMax H3 or H3-Max video from text, reference media, or first and last frames. Store the returned id to poll the task and download the completed video.POST /v1/videos uses multipart/form-data. Send controls as form fields and repeat each reference field once per media input.
Both models use the fields below. Set model to the model ID that you selected.
Goal
Required fields
Optional fields
Text-to-video
model, prompt
seconds, size
Reference images
model, prompt, one or more input_reference URLs or files
seconds, size
Reference video URL, data URI, or file
model, prompt, one or more reference_videos fields
seconds, size
Reference audio with an image
model, prompt, input_reference, one or more reference_audios fields
seconds, size
First and last frame URLs
model, prompt, first_frame
last_frame, seconds, size
Uploaded first and last frames
model, prompt, first_frame file
last_frame file, seconds, size
The H3-Max request samples include text-to-video at both resolution tiers, reference images, combined image/video/audio references, and first and last frames.
Send reference images through input_reference as publicly accessible HTTPS URLs or uploaded files. For multiple images, repeat the field in image order, with one URL or file per field.Use all URLs or all files within this field. Send each URL separately rather than combining URLs into a comma-separated value.You can send up to nine PNG or JPEG reference images, whether you use URLs or uploaded files. Keep each uploaded image at or below 20 MiB.In the prompt, describe the visual details that the generated video should preserve.
Send reference_videos and reference_audios as multipart text values or uploaded files, using the formats below.
Repeat each field once per input, using only text values or only files within that field. Do not combine inputs into a comma-separated value.Different fields can use different input types, such as an image URL with an uploaded audio file.
To combine image, video, and audio references, send input_reference, reference_videos, and reference_audios in the same request.
Field
Input
Format
reference_videos
A direct, publicly accessible HTTPS MP4 URL or an uploaded MP4 file
MP4 with H.264 video; an AAC audio track is optional
reference_videos
A complete Base64 data URI in a text field
data:video/mp4;base64,<BASE64_MP4>
reference_audios
A direct, publicly accessible HTTPS MP3 URL or an uploaded MP3 file
MP3
Send at most 12 reference inputs in total, including no more than three videos and three audio clips.
Each video or audio clip must be 2–15 seconds. The combined video duration and combined audio duration must each be at or below 15 seconds.Pair reference audio with at least one image through input_reference.
Describe the motion, timing, or sound that the generated video should follow.Keep each uploaded MP4 at or below 50 MiB and each uploaded MP3 at or below 15 MiB. One MiB is 1024 × 1024 bytes.The request samples at the top of this page show MP4 URLs, MP4 data URIs, and MP3 URLs paired with an image.
Send first_frame for the opening image and optionally one last_frame for the ending image.
Each field accepts one direct, publicly accessible HTTPS PNG URL or one uploaded PNG file. Keep each uploaded PNG at or below 20 MiB (20 × 1024 × 1024 bytes).Do not combine frame fields with reference image, video, or audio fields. Use a separate request for frame-based generation.With frame inputs, size selects the resolution tier. The service can normalize the final output dimensions based on the supplied frames.
Continue to send size in WxH form.
Store the returned id. Poll the task until status is completed or
failed. When the task is completed, download the video content.
For both models, set seconds to an integer from 5 through 15. The default is 5 seconds.Choose a resolution and aspect ratio from the table for your model, then send the corresponding Request size value as size in WxH form.
For text and reference-media requests, size selects the resolution tier and framing aspect ratio.
The service can normalize the final output dimensions based on the requested size and supplied reference media.
Requested size in WxH form. For text and reference-media requests, size selects the resolution tier and framing aspect ratio. With first or last frames, size selects the resolution tier. Use the matching model table: minimax-h3 uses 768P or 2K; minimax-h3-max uses 480P or 768P. For example, use 1344x768 for H3 at 768P, 864x480 for H3-Max at 480P, or 1360x768 for H3-Max at 768P. The service can normalize the final output dimensions.
PNG or JPEG reference images. Repeat input_reference with one publicly accessible HTTPS image URL or uploaded image file per field. Send up to nine reference images, whether you use URLs or uploaded files. Use all URLs or all files within this field. Do not combine URLs into a comma-separated value. Keep each uploaded image at or below 20 MiB. Do not combine this field with first_frame or last_frame. Across images, videos, and audio, send at most 12 reference inputs. Each reference video or audio clip must be 2–15 seconds; keep the combined video duration and combined audio duration at or below 15 seconds each. Submit images in the order you want to reference them in the prompt.
Reference video inputs. Repeat reference_videos with a direct publicly accessible HTTPS MP4 URL or an uploaded MP4 file. Use only text values or only files within this field. Each uploaded file can be up to 50 MiB. Send no more than three video inputs. A complete data:video/mp4;base64,... URI is also accepted as a text value. Use MP4 with H.264 video; an AAC audio track is optional. Do not combine this field with first_frame or last_frame. Across images, videos, and audio, send at most 12 reference inputs. Each reference video or audio clip must be 2–15 seconds; keep the combined video duration and combined audio duration at or below 15 seconds each.
Reference audio inputs. Repeat reference_audios with a direct publicly accessible HTTPS MP3 URL or an uploaded MP3 file. Use only text values or only files within this field. Each uploaded file can be up to 15 MiB. Send no more than three audio inputs. Pair reference audio with at least one reference image. Do not combine this field with first_frame or last_frame. Across images, videos, and audio, send at most 12 reference inputs. Each reference video or audio clip must be 2–15 seconds; keep the combined video duration and combined audio duration at or below 15 seconds each.
Opening frame input as one direct publicly accessible HTTPS PNG URL or one uploaded PNG file at or below 20 MiB (20 x 1024 x 1024 bytes). Do not combine frame fields with reference media fields.
Optional ending frame input, used with first_frame, as one direct publicly accessible HTTPS PNG URL or one uploaded PNG file at or below 20 MiB (20 x 1024 x 1024 bytes). Do not combine frame fields with reference media fields.
Pattern: ^https://
Example:
"https://your-image-host/last-frame.png"
Response
200 - application/json
Task created. Store the returned id and use it in retrieve and content requests.
{"docsConfig":{"theme":"luma","$schema":"https://mintlify.com/docs.json","name":"CometAPI Documentation","description":"CometAPI developer documentation for unified API access to GPT, Claude, Gemini, Grok, Llama, DeepSeek, Mistral, Qwen, and more, including API reference, quickstart guides, and integration tutorials.","colors":{"primary":"#00ACE2","light":"#00ACE2","dark":"#0274C3"},"logo":{"light":"https://mintcdn.com/cometapi/cmhWX83dzrkf2F-2/logo/comet-light.svg?fit=max\u0026auto=format\u0026n=cmhWX83dzrkf2F-2\u0026q=85\u0026s=7ae2fde0df7785d111912bce23157ef2","dark":"https://mintcdn.com/cometapi/cmhWX83dzrkf2F-2/logo/comet-dark.svg?fit=max\u0026auto=format\u0026n=cmhWX83dzrkf2F-2\u0026q=85\u0026s=2d25d0a1c0376b7a3b5b2b06c4149fbc"},"favicon":"https://mintcdn.com/cometapi/cmhWX83dzrkf2F-2/logo/comet.svg?fit=max\u0026auto=format\u0026n=cmhWX83dzrkf2F-2\u0026q=85\u0026s=bd1150b78a8058af98088b06cbe67cdc","api":{"playground":{"display":"interactive","proxy":true},"examples":{"defaults":"required","prefill":true}},"navbar":{"links":[{"href":"https://www.cometapi.com/models/","label":"Models"}],"primary":{"type":"button","label":"Dashboard","href":"https://www.cometapi.com/console"}},"footer":{},"seo":{"metatags":{"og:site_name":"CometAPI Docs","og:type":"website","twitter:card":"summary_large_image","canonical":"https://apidoc.cometapi.com","author":"CometAPI","copyright":"Copyright 2026 CometAPI","category":"Technology","distribution":"global","coverage":"Worldwide"},"indexing":"navigable"},"integrations":{"posthog":{"apiKey":"phc_y3KwBz46V9TGDjqPtDrpuSahVg3bDky6eyzGsD8vuCYS","sessionRecording":false}},"contextual":{"options":["copy","view","chatgpt","claude","perplexity"],"display":"header"},"interaction":{"drilldown":false},"metadata":{"timestamp":true},"styling":{"latex":false},"navigation":{"languages":[{"language":"en","href":""},{"language":"zh-Hans","href":"zh-Hans"},{"language":"zh-Hant","href":"zh-Hant"},{"language":"ja","href":"ja"},{"language":"ko","href":"ko"},{"language":"fr","href":"fr"},{"language":"de","href":"de"},{"language":"es","href":"es"},{"language":"it","href":"it"},{"language":"pt","href":"pt"},{"language":"ru","href":"ru"},{"language":"ar","href":"ar"},{"language":"vi","href":"vi"},{"language":"id","href":"id"},{"language":"tr","href":"tr"},{"language":"pl","href":"pl"},{"language":"nl","href":"nl"},{"language":"no","href":"no"},{"language":"uk","href":"uk"}]}},"deployment":{"deploymentMetadataValue":{"subdomain":"cometapi","hasAudioNarration":false,"actualSubdomain":"cometapi","customDomains":["apidoc.cometapi.com"],"gitSource":{"type":"github","owner":"cometapi-dev","repo":"cometapi-docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ae2ec350f3a19b455e9452e","collectionId":"ac249683-b28e-4ebb-9061-39e00c026722","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ae2ec350f3a19b455e9452e"},"entitlements":{},"buildId":"6ae2ec350f3a19b455e9452e","clientVersion":"0.0.4067","searchFilterCounts":[{"language":"en","tag":"API","count":109},{"language":"en","tag":"Video Models","count":66},{"language":"en","tag":"Integrations","count":53},{"language":"en","tag":"Docs","count":35},{"language":"en","tag":"Kling","count":33},{"language":"en","tag":"Image Models","count":28},{"language":"en","tag":"AI chat clients","count":14},{"language":"en","tag":"Runway","count":13},{"language":"en","tag":"Midjourney","count":10},{"language":"en","tag":"AI coding agents","count":10}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":"img[src*=\"cloudfront.net/flags/\"]{display:none!important}div.relative:has(>img[src*=\"cloudfront.net/flags/\"]){display:none!important}#localization-select-item-zh-Hans{display:none!important}nav a.link[class~=\"bg-gray-950/[0.03]\"]{background-color:rgb(var(--primary) / 0.12);box-shadow:inset 0 0 0 1px rgb(var(--primary) / 0.38), 0 1px 2px rgb(var(--primary) / 0.08);color:rgb(var(--primary))}nav a.link[class~=\"bg-gray-950/[0.03]\"]:hover,nav a.link[class~=\"bg-gray-950/[0.03]\"]:focus-visible{background-color:rgb(var(--primary) / 0.18);box-shadow:inset 0 0 0 1px rgb(var(--primary) / 0.58), 0 1px 2px rgb(var(--primary) / 0.1);color:rgb(var(--primary))}nav a.link[class~=\"bg-gray-950/[0.03]\"]:focus-visible{outline:2px solid rgb(var(--primary) / 0.45);outline-offset:2px}.dark nav a.link[class~=\"bg-gray-950/[0.03]\"]{background-color:rgb(var(--primary-light) / 0.2);box-shadow:inset 0 0 0 1px rgb(var(--primary-light) / 0.55), 0 1px 2px rgb(var(--primary-light) / 0.16);color:rgb(var(--primary-light))}.dark nav a.link[class~=\"bg-gray-950/[0.03]\"]:hover,.dark nav a.link[class~=\"bg-gray-950/[0.03]\"]:focus-visible{background-color:rgb(var(--primary-light) / 0.28);box-shadow:inset 0 0 0 1px rgb(var(--primary-light) / 0.7), 0 1px 2px rgb(var(--primary-light) / 0.18);color:rgb(var(--primary-light))}.integration-logo-grid{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:12px;margin:16px 0 28px}.integration-logo-card{align-items:center;background:rgba(127, 127, 127, 0.04);border:1px solid rgba(127, 127, 127, 0.22);border-radius:8px;color:inherit;display:flex;gap:14px;min-height:72px;padding:14px 16px;text-decoration:none!important;transition:background 160ms ease, border-color 160ms ease, transform 160ms ease}.integration-logo-card:hover,.integration-logo-card:focus-visible{background:rgba(0, 172, 226, 0.08);border-color:rgba(0, 172, 226, 0.55);transform:translateY(-1px)}.integration-logo-card:focus-visible{outline:2px solid rgba(0, 172, 226, 0.45);outline-offset:2px}.integration-logo-mark{align-items:center;background:#fff;background-position:center;background-repeat:no-repeat;background-size:28px 28px;border:1px solid rgba(127, 127, 127, 0.18);border-radius:8px;display:flex;flex:0 0 38px;height:38px;justify-content:center;overflow:hidden;width:38px}.integration-logo-body{display:flex;flex-direction:column;gap:2px;min-width:0}.integration-logo-title{font-size:0.95rem;font-weight:600;line-height:1.3}.integration-logo-subtitle{color:rgba(90, 90, 90, 0.92);font-size:0.78rem;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.integration-card-arrow{color:rgba(90, 90, 90, 0.7);flex:0 0 16px;font-size:0.9rem;margin-left:auto;text-align:right}.integration-card-arrow::before{content:\"\\2197\"}.integration-logo-ai-sdk{background-image:url(\"/images/integrations/logos/ai-sdk.png\")}.integration-logo-agno{background-image:url(\"/images/integrations/logos/agno.png\")}.integration-logo-claude-code{background-image:url(\"/images/integrations/logos/claude-code.png\")}.integration-logo-claude-desktop{background-image:url(\"/images/integrations/logos/claude-desktop.png\")}.integration-logo-codex{background-image:url(\"/images/integrations/logos/codex.png\")}.integration-logo-dify{background-image:url(\"/images/integrations/logos/dify.png\")}.integration-logo-gemini-cli{background-image:url(\"/images/integrations/logos/gemini-cli.png\")}.integration-logo-hermes-agent{background-image:url(\"/images/integrations/logos/hermes-agent.png\");background-size:34px 34px}.integration-logo-langchain{background-image:url(\"/images/integrations/logos/langchain.png\")}.integration-logo-langflow{background-image:url(\"/images/integrations/logos/langflow.png\")}.integration-logo-langfuse{background-image:url(\"/images/integrations/logos/langfuse.png\")}.integration-logo-litellm{background-image:url(\"/images/integrations/logos/litellm.png\")}.integration-logo-llamaindex{background-image:url(\"/images/integrations/logos/llamaindex.png\")}.integration-logo-lobe-chat{background-image:url(\"/images/integrations/logos/lobe-chat.jpg\")}.integration-logo-make{background-image:url(\"/images/integrations/logos/make.jpg\")}.integration-logo-n8n{background-image:url(\"/images/integrations/logos/n8n.png\")}.integration-logo-open-webui{background-image:url(\"/images/integrations/logos/open-webui.png\")}.integration-logo-workbuddy-ai{background-image:url(\"/images/integrations/logos/workbuddy-ai.svg\")}.integration-logo-openclaw{background-image:url(\"/images/integrations/logos/openclaw.svg\")}.integration-logo-opencode{background-image:url(\"/images/integrations/logos/opencode.png\")}.integration-logo-pi{background-image:url(\"/images/integrations/logos/pi.svg\")}.integration-logo-promptfoo{background-image:url(\"/images/integrations/logos/promptfoo.png\")}.dark .integration-logo-card{background:rgba(255, 255, 255, 0.035);border-color:rgba(255, 255, 255, 0.14)}.dark .integration-logo-card:hover,.dark .integration-logo-card:focus-visible{background:rgba(0, 172, 226, 0.14);border-color:rgba(0, 172, 226, 0.65)}.dark .integration-logo-mark{background-color:rgba(255, 255, 255, 0.96)}.dark .integration-logo-subtitle{color:rgba(255, 255, 255, 0.66)}.dark .integration-card-arrow{color:rgba(255, 255, 255, 0.64)}@media (max-width: 1024px){.integration-logo-grid{grid-template-columns:repeat(2, minmax(0, 1fr))}}@media (max-width: 640px){.integration-logo-grid{grid-template-columns:1fr}.integration-logo-card{min-height:68px}}"}],"page":{"pagePath":"api/video/minimax-h3/create","slug":"/api/video/minimax-h3/create","pageMetadata":{"title":"Create a MiniMax H3 video","sidebarTitle":"Create a MiniMax H3 video","openapi":"api/openapi/video/minimax-h3/post-create.openapi.json POST /v1/videos","description":"Create a MiniMax H3 or H3-Max video task with text, reference media, or first and last frames through CometAPI","keywords":["CometAPI","MiniMax H3","minimax-h3","video generation API","POST /v1/videos","text to video","reference image video"],"href":"/api/video/minimax-h3/create"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Create a MiniMax H3 or H3-Max video task with text, reference media, or first and last frames through CometAPI\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,p:`p`,pre:`pre`,span:`span`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,..._provideComponents(),...props.components},{CodeBlock,Heading,Note,Step,Steps,Table}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Note)_missingMdxReference(`Note`,true);if(!Step)_missingMdxReference(`Step`,true);if(!Steps)_missingMdxReference(`Steps`,true);if(!Table)_missingMdxReference(`Table`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`Create a MiniMax H3 or H3-Max video from text, reference media, or first and last frames. Store the returned `,_jsx(_components.code,{children:`id`}),` to poll the task and download the completed video.`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.code,{children:`POST /v1/videos`}),` uses `,_jsx(_components.code,{children:`multipart/form-data`}),`. Send controls as form fields and repeat each reference field once per media input.`]}),`\n`,_jsx(Heading,{level:`2`,id:`choose-a-model`,children:`Choose a model`}),`\n`,_jsxs(_components.p,{children:[`Set `,_jsx(_components.code,{children:`model`}),` to one of the following model IDs. Choose a request size from the matching model table in `,_jsx(_components.a,{href:`#set-duration-and-size`,children:`Set duration and size`}),`.`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Model ID`}),_jsx(_components.th,{children:`Resolution tiers`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`minimax-h3`})}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`768P`}),`, `,_jsx(_components.code,{children:`2K`})]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`minimax-h3-max`})}),_jsxs(_components.td,{\"data-numeric\":`true`,children:[_jsx(_components.code,{children:`480P`}),`, `,_jsx(_components.code,{children:`768P`})]})]})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`choose-an-input-mode`,children:`Choose an input mode`}),`\n`,_jsxs(_components.p,{children:[`Both models use the fields below. Set `,_jsx(_components.code,{children:`model`}),` to the model ID that you selected.`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Goal`}),_jsx(_components.th,{children:`Required fields`}),_jsx(_components.th,{children:`Optional fields`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Text-to-video`}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`model`}),`, `,_jsx(_components.code,{children:`prompt`})]}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`seconds`}),`, `,_jsx(_components.code,{children:`size`})]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Reference images`}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`model`}),`, `,_jsx(_components.code,{children:`prompt`}),`, one or more `,_jsx(_components.code,{children:`input_reference`}),` URLs or files`]}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`seconds`}),`, `,_jsx(_components.code,{children:`size`})]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Reference video URL, data URI, or file`}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`model`}),`, `,_jsx(_components.code,{children:`prompt`}),`, one or more `,_jsx(_components.code,{children:`reference_videos`}),` fields`]}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`seconds`}),`, `,_jsx(_components.code,{children:`size`})]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Reference audio with an image`}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`model`}),`, `,_jsx(_components.code,{children:`prompt`}),`, `,_jsx(_components.code,{children:`input_reference`}),`, one or more `,_jsx(_components.code,{children:`reference_audios`}),` fields`]}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`seconds`}),`, `,_jsx(_components.code,{children:`size`})]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`First and last frame URLs`}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`model`}),`, `,_jsx(_components.code,{children:`prompt`}),`, `,_jsx(_components.code,{children:`first_frame`})]}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`last_frame`}),`, `,_jsx(_components.code,{children:`seconds`}),`, `,_jsx(_components.code,{children:`size`})]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Uploaded first and last frames`}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`model`}),`, `,_jsx(_components.code,{children:`prompt`}),`, `,_jsx(_components.code,{children:`first_frame`}),` file`]}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`last_frame`}),` file, `,_jsx(_components.code,{children:`seconds`}),`, `,_jsx(_components.code,{children:`size`})]})]})]})]}),`\n`,_jsx(_components.p,{children:`The H3-Max request samples include text-to-video at both resolution tiers, reference images, combined image/video/audio references, and first and last frames.`}),`\n`,_jsx(Heading,{level:`2`,id:`use-reference-images`,children:`Use reference images`}),`\n`,_jsxs(_components.p,{children:[`Send reference images through `,_jsx(_components.code,{children:`input_reference`}),` as publicly accessible HTTPS URLs or uploaded files. For multiple images, repeat the field in image order, with one URL or file per field.`]}),`\n`,_jsx(_components.p,{children:`Use all URLs or all files within this field. Send each URL separately rather than combining URLs into a comma-separated value.`}),`\n`,_jsx(_components.p,{children:`You can send up to nine PNG or JPEG reference images, whether you use URLs or uploaded files. Keep each uploaded image at or below 20 MiB.`}),`\n`,_jsx(_components.p,{children:`In the prompt, describe the visual details that the generated video should preserve.`}),`\n`,_jsx(Heading,{level:`2`,id:`use-reference-video-and-audio`,children:`Use reference video and audio`}),`\n`,_jsxs(_components.p,{children:[`Send `,_jsx(_components.code,{children:`reference_videos`}),` and `,_jsx(_components.code,{children:`reference_audios`}),` as multipart text values or uploaded files, using the formats below.\nRepeat each field once per input, using only text values or only files within that field. Do not combine inputs into a comma-separated value.`]}),`\n`,_jsxs(_components.p,{children:[`Different fields can use different input types, such as an image URL with an uploaded audio file.\nTo combine image, video, and audio references, send `,_jsx(_components.code,{children:`input_reference`}),`, `,_jsx(_components.code,{children:`reference_videos`}),`, and `,_jsx(_components.code,{children:`reference_audios`}),` in the same request.`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Field`}),_jsx(_components.th,{children:`Input`}),_jsx(_components.th,{children:`Format`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`reference_videos`})}),_jsx(_components.td,{children:`A direct, publicly accessible HTTPS MP4 URL or an uploaded MP4 file`}),_jsx(_components.td,{children:`MP4 with H.264 video; an AAC audio track is optional`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`reference_videos`})}),_jsx(_components.td,{children:`A complete Base64 data URI in a text field`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`data:video/mp4;base64,\u003cBASE64_MP4>`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`reference_audios`})}),_jsx(_components.td,{children:`A direct, publicly accessible HTTPS MP3 URL or an uploaded MP3 file`}),_jsx(_components.td,{children:`MP3`})]})]})]}),`\n`,_jsx(_components.p,{children:`Send at most 12 reference inputs in total, including no more than three videos and three audio clips.\nEach video or audio clip must be 2–15 seconds. The combined video duration and combined audio duration must each be at or below 15 seconds.`}),`\n`,_jsxs(_components.p,{children:[`Pair reference audio with at least one image through `,_jsx(_components.code,{children:`input_reference`}),`.\nDescribe the motion, timing, or sound that the generated video should follow.`]}),`\n`,_jsx(_components.p,{children:`Keep each uploaded MP4 at or below 50 MiB and each uploaded MP3 at or below 15 MiB. One MiB is 1024 × 1024 bytes.`}),`\n`,_jsx(_components.p,{children:`The request samples at the top of this page show MP4 URLs, MP4 data URIs, and MP3 URLs paired with an image.`}),`\n`,_jsx(Heading,{level:`3`,id:`upload-a-reference-video`,children:`Upload a reference video`}),`\n`,_jsx(_components.p,{children:`Upload an MP4 file to guide the shot structure and motion:`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`8`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`8`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`curl`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` https://api.cometapi.com/v1/videos`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -H`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"Authorization: Bearer `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`$COMETAPI_KEY`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --form-string`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'model=minimax-h3'`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --form-string`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'prompt=Follow the uploaded reference video shot structure and motion. No text.'`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --form-string`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'seconds=5'`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --form-string`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'size=1344x768'`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --form`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'reference_videos=@/path/to/reference.mp4;type=video/mp4'`})]}),`\n`]})})}),`\n`,_jsx(Heading,{level:`3`,id:`upload-reference-audio-with-an-image`,children:`Upload reference audio with an image`}),`\n`,_jsx(_components.p,{children:`Pair a reference image URL with an uploaded MP3 file:`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`9`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`9`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`curl`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` https://api.cometapi.com/v1/videos`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -H`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"Authorization: Bearer `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`$COMETAPI_KEY`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --form-string`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'model=minimax-h3'`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --form-string`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'prompt=Animate the reference image and synchronize the motion with the uploaded reference audio. No text.'`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --form-string`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'seconds=5'`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --form-string`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'size=1344x768'`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --form-string`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'input_reference=https://your-image-host/reference.png'`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --form`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 'reference_audios=@/path/to/reference.mp3;type=audio/mpeg'`})]}),`\n`]})})}),`\n`,_jsx(Heading,{level:`2`,id:`set-the-first-and-last-frames`,children:`Set the first and last frames`}),`\n`,_jsxs(_components.p,{children:[`Send `,_jsx(_components.code,{children:`first_frame`}),` for the opening image and optionally one `,_jsx(_components.code,{children:`last_frame`}),` for the ending image.\nEach field accepts one direct, publicly accessible HTTPS PNG URL or one uploaded PNG file. Keep each uploaded PNG at or below 20 MiB (20 × 1024 × 1024 bytes).`]}),`\n`,_jsx(_components.p,{children:`Do not combine frame fields with reference image, video, or audio fields. Use a separate request for frame-based generation.`}),`\n`,_jsxs(_components.p,{children:[`With frame inputs, `,_jsx(_components.code,{children:`size`}),` selects the resolution tier. The service can normalize the final output dimensions based on the supplied frames.\nContinue to send `,_jsx(_components.code,{children:`size`}),` in `,_jsx(_components.code,{children:`WxH`}),` form.`]}),`\n`,_jsx(Note,{children:_jsxs(_components.p,{children:[`Store the returned `,_jsx(_components.code,{children:`id`}),`. Poll the task until `,_jsx(_components.code,{children:`status`}),` is `,_jsx(_components.code,{children:`completed`}),` or\n`,_jsx(_components.code,{children:`failed`}),`. When the task is completed, download the video content.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`set-duration-and-size`,children:`Set duration and size`}),`\n`,_jsxs(_components.p,{children:[`For both models, set `,_jsx(_components.code,{children:`seconds`}),` to an integer from `,_jsx(_components.code,{children:`5`}),` through `,_jsx(_components.code,{children:`15`}),`. The default is `,_jsx(_components.code,{children:`5`}),` seconds.`]}),`\n`,_jsxs(_components.p,{children:[`Choose a resolution and aspect ratio from the table for your model, then send the corresponding `,_jsx(_components.strong,{children:`Request size`}),` value as `,_jsx(_components.code,{children:`size`}),` in `,_jsx(_components.code,{children:`WxH`}),` form.\nFor text and reference-media requests, `,_jsx(_components.code,{children:`size`}),` selects the resolution tier and framing aspect ratio.\nThe service can normalize the final output dimensions based on the requested size and supplied reference media.`]}),`\n`,_jsxs(Heading,{level:`3`,id:`sizes-for-minimax-h3`,children:[`Sizes for `,_jsx(_components.code,{children:`minimax-h3`})]}),`\n`,_jsxs(_components.p,{children:[`Use these request sizes with `,_jsx(_components.code,{children:`model=minimax-h3`}),`:`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Resolution`}),_jsx(_components.th,{children:`Aspect ratio`}),_jsx(_components.th,{children:`Request size`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`768P`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`21:9`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`1536x672`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`768P`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`16:9`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`1344x768`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`768P`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`4:3`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`1024x768`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`768P`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`1:1`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`768x768`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`768P`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`3:4`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`768x1024`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`768P`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`9:16`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`768x1344`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`2K`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`21:9`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`2912x1280`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`2K`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`16:9`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`2544x1456`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`2K`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`4:3`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`1920x1440`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`2K`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`1:1`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`1440x1440`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`2K`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`3:4`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`1440x1920`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`2K`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`9:16`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`1440x2560`})})]})]})]}),`\n`,_jsxs(Heading,{level:`3`,id:`sizes-for-minimax-h3-max`,children:[`Sizes for `,_jsx(_components.code,{children:`minimax-h3-max`})]}),`\n`,_jsxs(_components.p,{children:[`Use these request sizes with `,_jsx(_components.code,{children:`model=minimax-h3-max`}),`:`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Resolution`}),_jsx(_components.th,{children:`Aspect ratio`}),_jsx(_components.th,{children:`Request size`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`480P`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`21:9`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`1120x480`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`480P`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`16:9`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`864x480`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`480P`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`4:3`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`640x480`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`480P`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`1:1`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`480x480`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`480P`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`3:4`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`480x640`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`480P`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`9:16`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`480x864`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`768P`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`21:9`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`1792x768`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`768P`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`16:9`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`1360x768`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`768P`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`4:3`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`1024x768`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`768P`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`1:1`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`768x768`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`768P`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`3:4`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`768x1024`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`768P`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`9:16`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`768x1360`})})]})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`task-flow`,children:`Task flow`}),`\n`,_jsxs(Steps,{children:[_jsx(Step,{title:`Create the task`,children:_jsxs(_components.p,{children:[`Send the multipart form request and store the returned `,_jsx(_components.code,{children:`id`}),`.`]})}),_jsx(Step,{title:`Poll the task`,children:_jsxs(_components.p,{children:[`Call `,_jsx(_components.a,{href:`/api/video/minimax-h3/retrieve`,children:`Retrieve a MiniMax H3 video`}),` until `,_jsx(_components.code,{children:`status`}),` is `,_jsx(_components.code,{children:`completed`}),` or `,_jsx(_components.code,{children:`failed`}),`.`]})}),_jsx(Step,{title:`Download the result`,children:_jsxs(_components.p,{children:[`When the task is `,_jsx(_components.code,{children:`completed`}),`, call `,_jsx(_components.a,{href:`/api/video/minimax-h3/retrieve-content`,children:`Download MiniMax H3 video content`}),` to save the MP4 file.`]})})]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Create a MiniMax H3 video","sidebarTitle":"Create a MiniMax H3 video","openapi":"api/openapi/video/minimax-h3/post-create.openapi.json POST /v1/videos","description":"Create a MiniMax H3 or H3-Max video task with text, reference media, or first and last frames through CometAPI","keywords":["CometAPI","MiniMax H3","minimax-h3","video generation API","POST /v1/videos","text to video","reference image video"],"href":"/api/video/minimax-h3/create"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Choose a model","slug":"choose-a-model","depth":2,"children":[]},{"title":"Choose an input mode","slug":"choose-an-input-mode","depth":2,"children":[]},{"title":"Use reference images","slug":"use-reference-images","depth":2,"children":[]},{"title":"Use reference video and audio","slug":"use-reference-video-and-audio","depth":2,"children":[{"title":"Upload a reference video","slug":"upload-a-reference-video","depth":3,"children":[]},{"title":"Upload reference audio with an image","slug":"upload-reference-audio-with-an-image","depth":3,"children":[]}]},{"title":"Set the first and last frames","slug":"set-the-first-and-last-frames","depth":2,"children":[]},{"title":"Set duration and size","slug":"set-duration-and-size","depth":2,"children":[{"title":"Sizes for minimax-h3","slug":"sizes-for-minimax-h3","depth":3,"children":[]},{"title":"Sizes for minimax-h3-max","slug":"sizes-for-minimax-h3-max","depth":3,"children":[]}]},{"title":"Task flow","slug":"task-flow","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":["/_mintlify/custom/cometapi/430a303ac1007180/analytics.js"],"openApiReferenceData":{"operation":{"summary":"Create a MiniMax H3 video task","operationId":"minimax_h3_create_video","description":"Create a MiniMax H3 or H3-Max video task with text, reference media, or first and last frames through CometAPI","requestBody":"baab3397-7c52-4feb-97f2-966516b75760","responses":{"200":"bc91e2f3-adf2-42fd-ad89-36672bf19aa9"},"security":["60e09eff-3c70-4be9-a809-7fb264920b56"],"x-codeSamples":[{"lang":"Shell","label":"Text-to-video at 2544x1456","source":"curl \\\n https://api.cometapi.com/v1/videos \\\n -H \"Authorization: Bearer $COMETAPI_KEY\" \\\n --form-string 'model=minimax-h3' \\\n --form-string 'prompt=A paper boat glides across a still pond, daylight, locked camera, no text.' \\\n --form-string 'seconds=5' \\\n --form-string 'size=2544x1456'"},{"lang":"Python","label":"Text-to-video at 2544x1456","source":"import os\n\nimport requests\n\nfields = [\n (\"model\", (None, \"minimax-h3\")),\n (\n \"prompt\",\n (\n None,\n \"A paper boat glides across a still pond, daylight, \"\n \"locked camera, no text.\",\n ),\n ),\n (\"seconds\", (None, \"5\")),\n (\"size\", (None, \"2544x1456\")),\n]\n\nresponse = requests.post(\n \"https://api.cometapi.com/v1/videos\",\n headers={\n \"Authorization\": \"Bearer \" + os.environ[\"COMETAPI_KEY\"]\n },\n files=fields,\n timeout=120,\n)\nresponse.raise_for_status()\nprint(response.json())\n"},{"lang":"JavaScript","label":"Text-to-video at 2544x1456","source":"const form = new FormData();\nform.append(\"model\", \"minimax-h3\");\nform.append(\n \"prompt\",\n \"A paper boat glides across a still pond, daylight, \" +\n \"locked camera, no text.\",\n);\nform.append(\"seconds\", \"5\");\nform.append(\"size\", \"2544x1456\");\n\nconst response = await fetch(\"https://api.cometapi.com/v1/videos\", {\n method: \"POST\",\n headers: { Authorization: `Bearer ${process.env.COMETAPI_KEY}` },\n body: form,\n});\n\nif (!response.ok) {\n throw new Error(await response.text());\n}\n\nconsole.log(await response.json());\n"},{"lang":"Shell","label":"Text-to-video at 1344x768","source":"curl \\\n https://api.cometapi.com/v1/videos \\\n -H \"Authorization: Bearer $COMETAPI_KEY\" \\\n --form-string 'model=minimax-h3' \\\n --form-string 'prompt=A cinematic view of clouds moving over green mountains, locked camera, no text.' \\\n --form-string 'seconds=5' \\\n --form-string 'size=1344x768'"},{"lang":"Python","label":"Text-to-video at 1344x768","source":"import os\n\nimport requests\n\nfields = [\n (\"model\", (None, \"minimax-h3\")),\n (\n \"prompt\",\n (\n None,\n \"A cinematic view of clouds moving over green mountains, \"\n \"locked camera, no text.\",\n ),\n ),\n (\"seconds\", (None, \"5\")),\n (\"size\", (None, \"1344x768\")),\n]\n\nresponse = requests.post(\n \"https://api.cometapi.com/v1/videos\",\n headers={\n \"Authorization\": \"Bearer \" + os.environ[\"COMETAPI_KEY\"]\n },\n files=fields,\n timeout=120,\n)\nresponse.raise_for_status()\nprint(response.json())\n"},{"lang":"JavaScript","label":"Text-to-video at 1344x768","source":"const form = new FormData();\nform.append(\"model\", \"minimax-h3\");\nform.append(\n \"prompt\",\n \"A cinematic view of clouds moving over green mountains, \" +\n \"locked camera, no text.\",\n);\nform.append(\"seconds\", \"5\");\nform.append(\"size\", \"1344x768\");\n\nconst response = await fetch(\"https://api.cometapi.com/v1/videos\", {\n method: \"POST\",\n headers: { Authorization: `Bearer ${process.env.COMETAPI_KEY}` },\n body: form,\n});\n\nif (!response.ok) {\n throw new Error(await response.text());\n}\n\nconsole.log(await response.json());\n"},{"lang":"Shell","label":"HTTPS reference images at 1344x768","source":"curl \\\n https://api.cometapi.com/v1/videos \\\n -H \"Authorization: Bearer $COMETAPI_KEY\" \\\n --form-string model=minimax-h3 \\\n --form-string 'prompt=The referenced characters walk together through a city street. Preserve their appearance and use natural motion. No text.' \\\n --form-string seconds=5 \\\n --form-string size=1344x768 \\\n --form-string input_reference=https://your-image-host/reference-1.png \\\n --form-string input_reference=https://your-image-host/reference-2.jpg\n"},{"lang":"Python","label":"HTTPS reference images at 1344x768","source":"import os\n\nimport requests\n\nfields = [\n (\"model\", (None, \"minimax-h3\")),\n (\n \"prompt\",\n (\n None,\n \"The referenced characters walk together through a city street. \"\n \"Preserve their appearance and use natural motion. No text.\"\n ),\n ),\n (\"seconds\", (None, \"5\")),\n (\"size\", (None, \"1344x768\")),\n (\"input_reference\", (None, \"https://your-image-host/reference-1.png\")),\n (\"input_reference\", (None, \"https://your-image-host/reference-2.jpg\")),\n]\n\nresponse = requests.post(\n \"https://api.cometapi.com/v1/videos\",\n headers={\n \"Authorization\": \"Bearer \" + os.environ[\"COMETAPI_KEY\"]\n },\n files=fields,\n timeout=120,\n)\n\nresponse.raise_for_status()\nprint(response.json())\n"},{"lang":"JavaScript","label":"HTTPS reference images at 1344x768","source":"const form = new FormData();\nform.append(\"model\", \"minimax-h3\");\nform.append(\n \"prompt\",\n \"The referenced characters walk together through a city street. \" +\n \"Preserve their appearance and use natural motion. No text.\",\n);\nform.append(\"seconds\", \"5\");\nform.append(\"size\", \"1344x768\");\nform.append(\"input_reference\", \"https://your-image-host/reference-1.png\");\nform.append(\"input_reference\", \"https://your-image-host/reference-2.jpg\");\n\nconst response = await fetch(\"https://api.cometapi.com/v1/videos\", {\n method: \"POST\",\n headers: { Authorization: `Bearer ${process.env.COMETAPI_KEY}` },\n body: form,\n});\n\nif (!response.ok) {\n throw new Error(await response.text());\n}\n\nconsole.log(await response.json());\n"},{"lang":"Shell","label":"Uploaded reference images","source":"curl \\\n https://api.cometapi.com/v1/videos \\\n -H \"Authorization: Bearer $COMETAPI_KEY\" \\\n --form-string 'model=minimax-h3' \\\n --form-string 'prompt=The uploaded reference characters walk together through a city street. Preserve their appearance and use natural motion. No text.' \\\n --form-string 'seconds=5' \\\n --form-string 'size=2544x1456' \\\n --form 'input_reference=@/path/to/reference-1.png;type=image/png' \\\n --form 'input_reference=@/path/to/reference-2.jpg;type=image/jpeg'"},{"lang":"Python","label":"Uploaded reference images","source":"import os\nfrom contextlib import ExitStack\n\nimport requests\n\nprompt = (\n \"The uploaded reference characters walk together through a city street. \"\n \"Preserve their appearance and use natural motion. No text.\"\n)\n\nwith ExitStack() as stack:\n files = [\n (\n \"input_reference\",\n (\n \"reference-1.png\",\n stack.enter_context(\n open(\"/path/to/reference-1.png\", \"rb\")\n ),\n \"image/png\",\n ),\n ),\n (\n \"input_reference\",\n (\n \"reference-2.jpg\",\n stack.enter_context(\n open(\"/path/to/reference-2.jpg\", \"rb\")\n ),\n \"image/jpeg\",\n ),\n ),\n ]\n response = requests.post(\n \"https://api.cometapi.com/v1/videos\",\n headers={\n \"Authorization\": \"Bearer \"\n + os.environ[\"COMETAPI_KEY\"]\n },\n data={\n \"model\": \"minimax-h3\",\n \"prompt\": prompt,\n \"seconds\": \"5\",\n \"size\": \"2544x1456\",\n },\n files=files,\n timeout=120,\n )\n\nresponse.raise_for_status()\nprint(response.json())\n"},{"lang":"JavaScript","label":"Uploaded reference images","source":"import { readFile } from \"node:fs/promises\";\n\nconst firstReference = await readFile(\"/path/to/reference-1.png\");\nconst secondReference = await readFile(\"/path/to/reference-2.jpg\");\n\nconst form = new FormData();\nform.append(\"model\", \"minimax-h3\");\nform.append(\n \"prompt\",\n \"The uploaded reference characters walk together through a city street. \" +\n \"Preserve their appearance and use natural motion. No text.\",\n);\nform.append(\"seconds\", \"5\");\nform.append(\"size\", \"2544x1456\");\nform.append(\n \"input_reference\",\n new Blob([firstReference], { type: \"image/png\" }),\n \"reference-1.png\",\n);\nform.append(\n \"input_reference\",\n new Blob([secondReference], { type: \"image/jpeg\" }),\n \"reference-2.jpg\",\n);\n\nconst response = await fetch(\"https://api.cometapi.com/v1/videos\", {\n method: \"POST\",\n headers: { Authorization: `Bearer ${process.env.COMETAPI_KEY}` },\n body: form,\n});\n\nif (!response.ok) {\n throw new Error(await response.text());\n}\n\nconsole.log(await response.json());\n"},{"lang":"Shell","label":"HTTPS MP4 reference video","source":"curl \\\n https://api.cometapi.com/v1/videos \\\n -H \"Authorization: Bearer $COMETAPI_KEY\" \\\n --form-string 'model=minimax-h3' \\\n --form-string 'prompt=Follow the reference clip shot structure and motion. No text.' \\\n --form-string 'seconds=5' \\\n --form-string 'size=1344x768' \\\n --form-string 'reference_videos=https://your-media-host/reference.mp4'"},{"lang":"Python","label":"HTTPS MP4 reference video","source":"import os\n\nimport requests\n\nfields = [\n (\"model\", (None, \"minimax-h3\")),\n (\n \"prompt\",\n (\n None,\n \"Follow the reference clip shot structure and motion. \"\n \"No text.\",\n ),\n ),\n (\"seconds\", (None, \"5\")),\n (\"size\", (None, \"1344x768\")),\n (\n \"reference_videos\",\n (None, \"https://your-media-host/reference.mp4\"),\n ),\n]\n\nresponse = requests.post(\n \"https://api.cometapi.com/v1/videos\",\n headers={\n \"Authorization\": \"Bearer \" + os.environ[\"COMETAPI_KEY\"]\n },\n files=fields,\n timeout=120,\n)\nresponse.raise_for_status()\nprint(response.json())\n"},{"lang":"JavaScript","label":"HTTPS MP4 reference video","source":"const form = new FormData();\nform.append(\"model\", \"minimax-h3\");\nform.append(\n \"prompt\",\n \"Follow the reference clip shot structure and motion. No text.\",\n);\nform.append(\"seconds\", \"5\");\nform.append(\"size\", \"1344x768\");\nform.append(\n \"reference_videos\",\n \"https://your-media-host/reference.mp4\",\n);\n\nconst response = await fetch(\"https://api.cometapi.com/v1/videos\", {\n method: \"POST\",\n headers: { Authorization: `Bearer ${process.env.COMETAPI_KEY}` },\n body: form,\n});\n\nif (!response.ok) {\n throw new Error(await response.text());\n}\n\nconsole.log(await response.json());\n"},{"lang":"Shell","label":"MP4 reference video data URI","source":"curl \\\n https://api.cometapi.com/v1/videos \\\n -H \"Authorization: Bearer $COMETAPI_KEY\" \\\n --form-string 'model=minimax-h3' \\\n --form-string 'prompt=Follow the reference clip shot structure and motion. No text.' \\\n --form-string 'seconds=5' \\\n --form-string 'size=1344x768' \\\n --form 'reference_videos=\u003c-;type=text/plain' \\\n \u003c \u003c(printf 'data:video/mp4;base64,'; openssl base64 -A -in /path/to/reference.mp4)"},{"lang":"Python","label":"MP4 reference video data URI","source":"import base64\nimport os\nfrom pathlib import Path\n\nimport requests\n\nvideo_base64 = base64.b64encode(\n Path(\"/path/to/reference.mp4\").read_bytes()\n).decode(\"ascii\")\nfields = [\n (\"model\", (None, \"minimax-h3\")),\n (\n \"prompt\",\n (\n None,\n \"Follow the reference clip shot structure and motion. \"\n \"No text.\",\n ),\n ),\n (\"seconds\", (None, \"5\")),\n (\"size\", (None, \"1344x768\")),\n (\n \"reference_videos\",\n (None, \"data:video/mp4;base64,\" + video_base64),\n ),\n]\n\nresponse = requests.post(\n \"https://api.cometapi.com/v1/videos\",\n headers={\n \"Authorization\": \"Bearer \" + os.environ[\"COMETAPI_KEY\"]\n },\n files=fields,\n timeout=120,\n)\nresponse.raise_for_status()\nprint(response.json())\n"},{"lang":"JavaScript","label":"MP4 reference video data URI","source":"import { readFile } from \"node:fs/promises\";\n\nconst videoBase64 = (\n await readFile(\"/path/to/reference.mp4\")\n).toString(\"base64\");\n\nconst form = new FormData();\nform.append(\"model\", \"minimax-h3\");\nform.append(\n \"prompt\",\n \"Follow the reference clip shot structure and motion. No text.\",\n);\nform.append(\"seconds\", \"5\");\nform.append(\"size\", \"1344x768\");\nform.append(\n \"reference_videos\",\n `data:video/mp4;base64,${videoBase64}`,\n);\n\nconst response = await fetch(\"https://api.cometapi.com/v1/videos\", {\n method: \"POST\",\n headers: { Authorization: `Bearer ${process.env.COMETAPI_KEY}` },\n body: form,\n});\n\nif (!response.ok) {\n throw new Error(await response.text());\n}\n\nconsole.log(await response.json());\n"},{"lang":"Shell","label":"HTTPS MP3 reference audio with an image","source":"curl \\\n https://api.cometapi.com/v1/videos \\\n -H \"Authorization: Bearer $COMETAPI_KEY\" \\\n --form-string model=minimax-h3 \\\n --form-string 'prompt=Animate the reference image and synchronize the motion with the reference audio. No text.' \\\n --form-string seconds=5 \\\n --form-string size=1344x768 \\\n --form-string reference_audios=https://your-media-host/reference.mp3 \\\n --form-string input_reference=https://your-image-host/reference.png\n"},{"lang":"Python","label":"HTTPS MP3 reference audio with an image","source":"import os\n\nimport requests\n\nfields = [\n (\"model\", (None, \"minimax-h3\")),\n (\n \"prompt\",\n (\n None,\n \"Animate the reference image and synchronize the motion with the \"\n \"reference audio. No text.\"\n ),\n ),\n (\"seconds\", (None, \"5\")),\n (\"size\", (None, \"1344x768\")),\n (\"reference_audios\", (None, \"https://your-media-host/reference.mp3\")),\n (\"input_reference\", (None, \"https://your-image-host/reference.png\")),\n]\n\nresponse = requests.post(\n \"https://api.cometapi.com/v1/videos\",\n headers={\n \"Authorization\": \"Bearer \" + os.environ[\"COMETAPI_KEY\"]\n },\n files=fields,\n timeout=120,\n)\n\nresponse.raise_for_status()\nprint(response.json())\n"},{"lang":"JavaScript","label":"HTTPS MP3 reference audio with an image","source":"const form = new FormData();\nform.append(\"model\", \"minimax-h3\");\nform.append(\n \"prompt\",\n \"Animate the reference image and synchronize the motion with the \" +\n \"reference audio. No text.\",\n);\nform.append(\"seconds\", \"5\");\nform.append(\"size\", \"1344x768\");\nform.append(\"reference_audios\", \"https://your-media-host/reference.mp3\");\nform.append(\"input_reference\", \"https://your-image-host/reference.png\");\n\nconst response = await fetch(\"https://api.cometapi.com/v1/videos\", {\n method: \"POST\",\n headers: { Authorization: `Bearer ${process.env.COMETAPI_KEY}` },\n body: form,\n});\n\nif (!response.ok) {\n throw new Error(await response.text());\n}\n\nconsole.log(await response.json());\n"},{"lang":"Shell","label":"HTTPS first and last frames","source":"curl \\\n https://api.cometapi.com/v1/videos \\\n -H \"Authorization: Bearer $COMETAPI_KEY\" \\\n --form-string 'model=minimax-h3' \\\n --form-string 'prompt=Move naturally from the opening frame to the ending frame. No text.' \\\n --form-string 'seconds=5' \\\n --form-string 'size=1344x768' \\\n --form-string 'first_frame=https://your-image-host/first-frame.png' \\\n --form-string 'last_frame=https://your-image-host/last-frame.png'"},{"lang":"Python","label":"HTTPS first and last frames","source":"import os\n\nimport requests\n\nfields = [\n (\"model\", (None, \"minimax-h3\")),\n (\n \"prompt\",\n (\n None,\n \"Move naturally from the opening frame to the ending \"\n \"frame. No text.\",\n ),\n ),\n (\"seconds\", (None, \"5\")),\n (\"size\", (None, \"1344x768\")),\n (\n \"first_frame\",\n (None, \"https://your-image-host/first-frame.png\"),\n ),\n (\n \"last_frame\",\n (None, \"https://your-image-host/last-frame.png\"),\n ),\n]\n\nresponse = requests.post(\n \"https://api.cometapi.com/v1/videos\",\n headers={\n \"Authorization\": \"Bearer \" + os.environ[\"COMETAPI_KEY\"]\n },\n files=fields,\n timeout=120,\n)\nresponse.raise_for_status()\nprint(response.json())\n"},{"lang":"JavaScript","label":"HTTPS first and last frames","source":"const form = new FormData();\nform.append(\"model\", \"minimax-h3\");\nform.append(\n \"prompt\",\n \"Move naturally from the opening frame to the ending frame. No text.\",\n);\nform.append(\"seconds\", \"5\");\nform.append(\"size\", \"1344x768\");\nform.append(\n \"first_frame\",\n \"https://your-image-host/first-frame.png\",\n);\nform.append(\n \"last_frame\",\n \"https://your-image-host/last-frame.png\",\n);\n\nconst response = await fetch(\"https://api.cometapi.com/v1/videos\", {\n method: \"POST\",\n headers: { Authorization: `Bearer ${process.env.COMETAPI_KEY}` },\n body: form,\n});\n\nif (!response.ok) {\n throw new Error(await response.text());\n}\n\nconsole.log(await response.json());\n"},{"lang":"Shell","label":"Uploaded first and last frames","source":"curl \\\n https://api.cometapi.com/v1/videos \\\n -H \"Authorization: Bearer $COMETAPI_KEY\" \\\n --form-string 'model=minimax-h3' \\\n --form-string 'prompt=Move naturally from the uploaded opening frame to the uploaded ending frame. No text.' \\\n --form-string 'seconds=5' \\\n --form-string 'size=1344x768' \\\n --form 'first_frame=@/path/to/first-frame.png;type=image/png' \\\n --form 'last_frame=@/path/to/last-frame.png;type=image/png'"},{"lang":"Python","label":"Uploaded first and last frames","source":"import os\nfrom contextlib import ExitStack\n\nimport requests\n\nprompt = (\n \"Move naturally from the uploaded opening frame to the uploaded \"\n \"ending frame. No text.\"\n)\n\nwith ExitStack() as stack:\n files = {\n \"first_frame\": (\n \"first-frame.png\",\n stack.enter_context(\n open(\"/path/to/first-frame.png\", \"rb\")\n ),\n \"image/png\",\n ),\n \"last_frame\": (\n \"last-frame.png\",\n stack.enter_context(\n open(\"/path/to/last-frame.png\", \"rb\")\n ),\n \"image/png\",\n ),\n }\n response = requests.post(\n \"https://api.cometapi.com/v1/videos\",\n headers={\n \"Authorization\": \"Bearer \"\n + os.environ[\"COMETAPI_KEY\"]\n },\n data={\n \"model\": \"minimax-h3\",\n \"prompt\": prompt,\n \"seconds\": \"5\",\n \"size\": \"1344x768\",\n },\n files=files,\n timeout=120,\n )\n\nresponse.raise_for_status()\nprint(response.json())\n"},{"lang":"JavaScript","label":"Uploaded first and last frames","source":"import { readFile } from \"node:fs/promises\";\n\nconst firstFrame = await readFile(\"/path/to/first-frame.png\");\nconst lastFrame = await readFile(\"/path/to/last-frame.png\");\n\nconst form = new FormData();\nform.append(\"model\", \"minimax-h3\");\nform.append(\n \"prompt\",\n \"Move naturally from the uploaded opening frame to the uploaded \" +\n \"ending frame. No text.\",\n);\nform.append(\"seconds\", \"5\");\nform.append(\"size\", \"1344x768\");\nform.append(\n \"first_frame\",\n new Blob([firstFrame], { type: \"image/png\" }),\n \"first-frame.png\",\n);\nform.append(\n \"last_frame\",\n new Blob([lastFrame], { type: \"image/png\" }),\n \"last-frame.png\",\n);\n\nconst response = await fetch(\"https://api.cometapi.com/v1/videos\", {\n method: \"POST\",\n headers: { Authorization: `Bearer ${process.env.COMETAPI_KEY}` },\n body: form,\n});\n\nif (!response.ok) {\n throw new Error(await response.text());\n}\n\nconsole.log(await response.json());\n"},{"lang":"Shell","label":"Uploaded MP4 reference video","source":"curl \\\n https://api.cometapi.com/v1/videos \\\n -H \"Authorization: Bearer $COMETAPI_KEY\" \\\n --form-string 'model=minimax-h3' \\\n --form-string 'prompt=Follow the uploaded reference video shot structure and motion. No text.' \\\n --form-string 'seconds=5' \\\n --form-string 'size=1344x768' \\\n --form 'reference_videos=@/path/to/reference.mp4;type=video/mp4'\n"},{"lang":"Python","label":"Uploaded MP4 reference video","source":"import os\nfrom contextlib import ExitStack\n\nimport requests\n\nprompt = (\n \"Follow the uploaded reference video shot structure and motion. No \"\n \"text.\"\n)\n\nwith ExitStack() as stack:\n fields = [\n (\"model\", (None, \"minimax-h3\")),\n (\"prompt\", (None, prompt)),\n (\"seconds\", (None, \"5\")),\n (\"size\", (None, \"1344x768\")),\n (\n \"reference_videos\",\n (\n \"reference.mp4\",\n stack.enter_context(\n open(\"/path/to/reference.mp4\", \"rb\")\n ),\n \"video/mp4\",\n ),\n ),\n ]\n\n response = requests.post(\n \"https://api.cometapi.com/v1/videos\",\n headers={\n \"Authorization\": \"Bearer \" + os.environ[\"COMETAPI_KEY\"]\n },\n files=fields,\n timeout=120,\n )\n\nresponse.raise_for_status()\nprint(response.json())\n"},{"lang":"JavaScript","label":"Uploaded MP4 reference video","source":"import { readFile } from \"node:fs/promises\";\n\nconst form = new FormData();\nform.append(\"model\", \"minimax-h3\");\nform.append(\n \"prompt\",\n \"Follow the uploaded reference video shot structure and motion. No \" +\n \"text.\",\n);\nform.append(\"seconds\", \"5\");\nform.append(\"size\", \"1344x768\");\nform.append(\n \"reference_videos\",\n new Blob([await readFile(\"/path/to/reference.mp4\")], {\n type: \"video/mp4\",\n }),\n \"reference.mp4\",\n);\n\nconst response = await fetch(\"https://api.cometapi.com/v1/videos\", {\n method: \"POST\",\n headers: { Authorization: `Bearer ${process.env.COMETAPI_KEY}` },\n body: form,\n});\n\nif (!response.ok) {\n throw new Error(await response.text());\n}\n\nconsole.log(await response.json());\n"},{"lang":"Shell","label":"Uploaded MP3 reference audio with an image","source":"curl \\\n https://api.cometapi.com/v1/videos \\\n -H \"Authorization: Bearer $COMETAPI_KEY\" \\\n --form-string model=minimax-h3 \\\n --form-string 'prompt=Animate the reference image and synchronize the motion with the uploaded reference audio. No text.' \\\n --form-string seconds=5 \\\n --form-string size=1344x768 \\\n --form 'reference_audios=@/path/to/reference.mp3;type=audio/mpeg' \\\n --form-string input_reference=https://your-image-host/reference.png\n"},{"lang":"Python","label":"Uploaded MP3 reference audio with an image","source":"import os\nfrom contextlib import ExitStack\n\nimport requests\n\nwith ExitStack() as stack:\n fields = [\n (\"model\", (None, \"minimax-h3\")),\n (\n \"prompt\",\n (\n None,\n \"Animate the reference image and synchronize the motion with \"\n \"the uploaded reference audio. No text.\"\n ),\n ),\n (\"seconds\", (None, \"5\")),\n (\"size\", (None, \"1344x768\")),\n (\n \"reference_audios\",\n (\n \"reference.mp3\",\n stack.enter_context(open(\"/path/to/reference.mp3\", \"rb\")),\n \"audio/mpeg\",\n ),\n ),\n (\"input_reference\", (None, \"https://your-image-host/reference.png\")),\n ]\n\n response = requests.post(\n \"https://api.cometapi.com/v1/videos\",\n headers={\n \"Authorization\": \"Bearer \" + os.environ[\"COMETAPI_KEY\"]\n },\n files=fields,\n timeout=120,\n )\n\nresponse.raise_for_status()\nprint(response.json())\n"},{"lang":"JavaScript","label":"Uploaded MP3 reference audio with an image","source":"import { readFile } from \"node:fs/promises\";\n\nconst form = new FormData();\nform.append(\"model\", \"minimax-h3\");\nform.append(\n \"prompt\",\n \"Animate the reference image and synchronize the motion with the \" +\n \"uploaded reference audio. No text.\",\n);\nform.append(\"seconds\", \"5\");\nform.append(\"size\", \"1344x768\");\nform.append(\n \"reference_audios\",\n new Blob([await readFile(\"/path/to/reference.mp3\")], {\n type: \"audio/mpeg\",\n }),\n \"reference.mp3\",\n);\nform.append(\"input_reference\", \"https://your-image-host/reference.png\");\n\nconst response = await fetch(\"https://api.cometapi.com/v1/videos\", {\n method: \"POST\",\n headers: { Authorization: `Bearer ${process.env.COMETAPI_KEY}` },\n body: form,\n});\n\nif (!response.ok) {\n throw new Error(await response.text());\n}\n\nconsole.log(await response.json());\n"},{"lang":"Shell","label":"H3-Max: text-to-video at 480P","source":"PROMPT='A paper boat crosses a pond. Fixed camera. No '\nPROMPT=\"$PROMPT\"'text.'\n\ncurl \\\n https://api.cometapi.com/v1/videos \\\n -H \"Authorization: Bearer $COMETAPI_KEY\" \\\n --form-string 'model=minimax-h3-max' \\\n --form-string \"prompt=$PROMPT\" \\\n --form-string 'seconds=5' \\\n --form-string 'size=864x480'\n"},{"lang":"Python","label":"H3-Max: text-to-video at 480P","source":"import os\n\nimport requests\n\nfields = [\n (\"model\", (None, \"minimax-h3-max\")),\n (\"prompt\", (None, \"A paper boat crosses a pond. Fixed camera. No text.\")),\n (\"seconds\", (None, \"5\")),\n (\"size\", (None, \"864x480\")),\n]\n\nresponse = requests.post(\n \"https://api.cometapi.com/v1/videos\",\n headers={\n \"Authorization\": \"Bearer \" + os.environ[\"COMETAPI_KEY\"]\n },\n files=fields,\n timeout=120,\n)\nresponse.raise_for_status()\nprint(response.json())\n"},{"lang":"JavaScript","label":"H3-Max: text-to-video at 480P","source":"const form = new FormData();\nform.append(\"model\", \"minimax-h3-max\");\nform.append(\"prompt\", \"A paper boat crosses a pond. Fixed camera. No text.\");\nform.append(\"seconds\", \"5\");\nform.append(\"size\", \"864x480\");\n\nconst response = await fetch(\n \"https://api.cometapi.com/v1/videos\",\n {\n method: \"POST\",\n headers: { Authorization: `Bearer ${process.env.COMETAPI_KEY}` },\n body: form,\n },\n);\n\nif (!response.ok) {\n throw new Error(await response.text());\n}\n\nconsole.log(await response.json());\n"},{"lang":"Shell","label":"H3-Max: text-to-video at 768P","source":"PROMPT='A paper boat crosses a pond. Fixed camera. No '\nPROMPT=\"$PROMPT\"'text.'\n\ncurl \\\n https://api.cometapi.com/v1/videos \\\n -H \"Authorization: Bearer $COMETAPI_KEY\" \\\n --form-string 'model=minimax-h3-max' \\\n --form-string \"prompt=$PROMPT\" \\\n --form-string 'seconds=5' \\\n --form-string 'size=1360x768'\n"},{"lang":"Python","label":"H3-Max: text-to-video at 768P","source":"import os\n\nimport requests\n\nfields = [\n (\"model\", (None, \"minimax-h3-max\")),\n (\"prompt\", (None, \"A paper boat crosses a pond. Fixed camera. No text.\")),\n (\"seconds\", (None, \"5\")),\n (\"size\", (None, \"1360x768\")),\n]\n\nresponse = requests.post(\n \"https://api.cometapi.com/v1/videos\",\n headers={\n \"Authorization\": \"Bearer \" + os.environ[\"COMETAPI_KEY\"]\n },\n files=fields,\n timeout=120,\n)\nresponse.raise_for_status()\nprint(response.json())\n"},{"lang":"JavaScript","label":"H3-Max: text-to-video at 768P","source":"const form = new FormData();\nform.append(\"model\", \"minimax-h3-max\");\nform.append(\"prompt\", \"A paper boat crosses a pond. Fixed camera. No text.\");\nform.append(\"seconds\", \"5\");\nform.append(\"size\", \"1360x768\");\n\nconst response = await fetch(\n \"https://api.cometapi.com/v1/videos\",\n {\n method: \"POST\",\n headers: { Authorization: `Bearer ${process.env.COMETAPI_KEY}` },\n body: form,\n },\n);\n\nif (!response.ok) {\n throw new Error(await response.text());\n}\n\nconsole.log(await response.json());\n"},{"lang":"Shell","label":"H3-Max: HTTPS reference images","source":"PROMPT='The two reference characters walk through a '\nPROMPT=\"$PROMPT\"'park. No text.'\nIMAGE_URL_1=\"https://your-image-host/reference-1.png\"\nIMAGE_URL_2=\"https://your-image-host/reference-2.jpg\"\n\ncurl \\\n https://api.cometapi.com/v1/videos \\\n -H \"Authorization: Bearer $COMETAPI_KEY\" \\\n --form-string 'model=minimax-h3-max' \\\n --form-string \"prompt=$PROMPT\" \\\n --form-string 'seconds=5' \\\n --form-string 'size=1360x768' \\\n --form-string \"input_reference=$IMAGE_URL_1\" \\\n --form-string \"input_reference=$IMAGE_URL_2\"\n"},{"lang":"Python","label":"H3-Max: HTTPS reference images","source":"import os\n\nimport requests\n\nfields = [\n (\"model\", (None, \"minimax-h3-max\")),\n (\n \"prompt\",\n (\n None,\n \"The two reference characters walk through a park. No text.\"\n ),\n ),\n (\"seconds\", (None, \"5\")),\n (\"size\", (None, \"1360x768\")),\n (\"input_reference\", (None, \"https://your-image-host/reference-1.png\")),\n (\"input_reference\", (None, \"https://your-image-host/reference-2.jpg\")),\n]\n\nresponse = requests.post(\n \"https://api.cometapi.com/v1/videos\",\n headers={\n \"Authorization\": \"Bearer \" + os.environ[\"COMETAPI_KEY\"]\n },\n files=fields,\n timeout=120,\n)\nresponse.raise_for_status()\nprint(response.json())\n"},{"lang":"JavaScript","label":"H3-Max: HTTPS reference images","source":"const form = new FormData();\nform.append(\"model\", \"minimax-h3-max\");\nform.append(\n \"prompt\",\n \"The two reference characters walk through a park. No text.\",\n);\nform.append(\"seconds\", \"5\");\nform.append(\"size\", \"1360x768\");\nform.append(\"input_reference\", \"https://your-image-host/reference-1.png\");\nform.append(\"input_reference\", \"https://your-image-host/reference-2.jpg\");\n\nconst response = await fetch(\n \"https://api.cometapi.com/v1/videos\",\n {\n method: \"POST\",\n headers: { Authorization: `Bearer ${process.env.COMETAPI_KEY}` },\n body: form,\n },\n);\n\nif (!response.ok) {\n throw new Error(await response.text());\n}\n\nconsole.log(await response.json());\n"},{"lang":"Shell","label":"H3-Max: image, video, and audio references","source":"PROMPT='Use the image for the subject, video for motion, '\nPROMPT=\"$PROMPT\"'and audio for sound.'\nIMAGE_URL=\"https://your-image-host/reference.png\"\nVIDEO_URL=\"https://your-media-host/reference.mp4\"\nAUDIO_URL=\"https://your-media-host/reference.mp3\"\n\ncurl \\\n https://api.cometapi.com/v1/videos \\\n -H \"Authorization: Bearer $COMETAPI_KEY\" \\\n --form-string 'model=minimax-h3-max' \\\n --form-string \"prompt=$PROMPT\" \\\n --form-string 'seconds=5' \\\n --form-string 'size=1360x768' \\\n --form-string \"input_reference=$IMAGE_URL\" \\\n --form-string \"reference_videos=$VIDEO_URL\" \\\n --form-string \"reference_audios=$AUDIO_URL\"\n"},{"lang":"Python","label":"H3-Max: image, video, and audio references","source":"import os\n\nimport requests\n\nfields = [\n (\"model\", (None, \"minimax-h3-max\")),\n (\n \"prompt\",\n (\n None,\n \"Use the image for the subject, video for motion, and audio \"\n \"for sound.\"\n ),\n ),\n (\"seconds\", (None, \"5\")),\n (\"size\", (None, \"1360x768\")),\n (\"input_reference\", (None, \"https://your-image-host/reference.png\")),\n (\"reference_videos\", (None, \"https://your-media-host/reference.mp4\")),\n (\"reference_audios\", (None, \"https://your-media-host/reference.mp3\")),\n]\n\nresponse = requests.post(\n \"https://api.cometapi.com/v1/videos\",\n headers={\n \"Authorization\": \"Bearer \" + os.environ[\"COMETAPI_KEY\"]\n },\n files=fields,\n timeout=120,\n)\nresponse.raise_for_status()\nprint(response.json())\n"},{"lang":"JavaScript","label":"H3-Max: image, video, and audio references","source":"const form = new FormData();\nform.append(\"model\", \"minimax-h3-max\");\nform.append(\n \"prompt\",\n \"Use the image for the subject, video for motion, and audio for sound.\",\n);\nform.append(\"seconds\", \"5\");\nform.append(\"size\", \"1360x768\");\nform.append(\"input_reference\", \"https://your-image-host/reference.png\");\nform.append(\"reference_videos\", \"https://your-media-host/reference.mp4\");\nform.append(\"reference_audios\", \"https://your-media-host/reference.mp3\");\n\nconst response = await fetch(\n \"https://api.cometapi.com/v1/videos\",\n {\n method: \"POST\",\n headers: { Authorization: `Bearer ${process.env.COMETAPI_KEY}` },\n body: form,\n },\n);\n\nif (!response.ok) {\n throw new Error(await response.text());\n}\n\nconsole.log(await response.json());\n"},{"lang":"Shell","label":"H3-Max: first and last frames","source":"PROMPT='Move from the opening frame to the ending frame. '\nPROMPT=\"$PROMPT\"'No text.'\nFIRST_FRAME_URL=\"https://your-image-host/first-frame.png\"\nLAST_FRAME_URL=\"https://your-image-host/last-frame.png\"\n\ncurl \\\n https://api.cometapi.com/v1/videos \\\n -H \"Authorization: Bearer $COMETAPI_KEY\" \\\n --form-string 'model=minimax-h3-max' \\\n --form-string \"prompt=$PROMPT\" \\\n --form-string 'seconds=5' \\\n --form-string 'size=1360x768' \\\n --form-string \"first_frame=$FIRST_FRAME_URL\" \\\n --form-string \"last_frame=$LAST_FRAME_URL\"\n"},{"lang":"Python","label":"H3-Max: first and last frames","source":"import os\n\nimport requests\n\nfields = [\n (\"model\", (None, \"minimax-h3-max\")),\n (\n \"prompt\",\n (\n None,\n \"Move from the opening frame to the ending frame. No text.\"\n ),\n ),\n (\"seconds\", (None, \"5\")),\n (\"size\", (None, \"1360x768\")),\n (\"first_frame\", (None, \"https://your-image-host/first-frame.png\")),\n (\"last_frame\", (None, \"https://your-image-host/last-frame.png\")),\n]\n\nresponse = requests.post(\n \"https://api.cometapi.com/v1/videos\",\n headers={\n \"Authorization\": \"Bearer \" + os.environ[\"COMETAPI_KEY\"]\n },\n files=fields,\n timeout=120,\n)\nresponse.raise_for_status()\nprint(response.json())\n"},{"lang":"JavaScript","label":"H3-Max: first and last frames","source":"const form = new FormData();\nform.append(\"model\", \"minimax-h3-max\");\nform.append(\n \"prompt\",\n \"Move from the opening frame to the ending frame. No text.\",\n);\nform.append(\"seconds\", \"5\");\nform.append(\"size\", \"1360x768\");\nform.append(\"first_frame\", \"https://your-image-host/first-frame.png\");\nform.append(\"last_frame\", \"https://your-image-host/last-frame.png\");\n\nconst response = await fetch(\n \"https://api.cometapi.com/v1/videos\",\n {\n method: \"POST\",\n headers: { Authorization: `Bearer ${process.env.COMETAPI_KEY}` },\n body: form,\n },\n);\n\nif (!response.ok) {\n throw new Error(await response.text());\n}\n\nconsole.log(await response.json());\n"}],"method":"post","type":"path","servers":["3788f4d3-05af-4d2f-8c0a-4ae23c511ee9"],"path":"/v1/videos","baseUrlOptions":["https://api.cometapi.com"],"title":"Create a MiniMax H3 video task","codeSamples":[{"label":"Text-to-video at 2544x1456","lang":"Shell","source":"curl \\\n https://api.cometapi.com/v1/videos \\\n -H \"Authorization: Bearer $COMETAPI_KEY\" \\\n --form-string 'model=minimax-h3' \\\n --form-string 'prompt=A paper boat glides across a still pond, daylight, locked camera, no text.' \\\n --form-string 'seconds=5' \\\n --form-string 'size=2544x1456'"},{"label":"Text-to-video at 2544x1456","lang":"Python","source":"import os\n\nimport requests\n\nfields = [\n (\"model\", (None, \"minimax-h3\")),\n (\n \"prompt\",\n (\n None,\n \"A paper boat glides across a still pond, daylight, \"\n \"locked camera, no text.\",\n ),\n ),\n (\"seconds\", (None, \"5\")),\n (\"size\", (None, \"2544x1456\")),\n]\n\nresponse = requests.post(\n \"https://api.cometapi.com/v1/videos\",\n headers={\n \"Authorization\": \"Bearer \" + os.environ[\"COMETAPI_KEY\"]\n },\n files=fields,\n timeout=120,\n)\nresponse.raise_for_status()\nprint(response.json())\n"},{"label":"Text-to-video at 2544x1456","lang":"JavaScript","source":"const form = new FormData();\nform.append(\"model\", \"minimax-h3\");\nform.append(\n \"prompt\",\n \"A paper boat glides across a still pond, daylight, \" +\n \"locked camera, no text.\",\n);\nform.append(\"seconds\", \"5\");\nform.append(\"size\", \"2544x1456\");\n\nconst response = await fetch(\"https://api.cometapi.com/v1/videos\", {\n method: \"POST\",\n headers: { Authorization: `Bearer ${process.env.COMETAPI_KEY}` },\n body: form,\n});\n\nif (!response.ok) {\n throw new Error(await response.text());\n}\n\nconsole.log(await response.json());\n"},{"label":"Text-to-video at 1344x768","lang":"Shell","source":"curl \\\n https://api.cometapi.com/v1/videos \\\n -H \"Authorization: Bearer $COMETAPI_KEY\" \\\n --form-string 'model=minimax-h3' \\\n --form-string 'prompt=A cinematic view of clouds moving over green mountains, locked camera, no text.' \\\n --form-string 'seconds=5' \\\n --form-string 'size=1344x768'"},{"label":"Text-to-video at 1344x768","lang":"Python","source":"import os\n\nimport requests\n\nfields = [\n (\"model\", (None, \"minimax-h3\")),\n (\n \"prompt\",\n (\n None,\n \"A cinematic view of clouds moving over green mountains, \"\n \"locked camera, no text.\",\n ),\n ),\n (\"seconds\", (None, \"5\")),\n (\"size\", (None, \"1344x768\")),\n]\n\nresponse = requests.post(\n \"https://api.cometapi.com/v1/videos\",\n headers={\n \"Authorization\": \"Bearer \" + os.environ[\"COMETAPI_KEY\"]\n },\n files=fields,\n timeout=120,\n)\nresponse.raise_for_status()\nprint(response.json())\n"},{"label":"Text-to-video at 1344x768","lang":"JavaScript","source":"const form = new FormData();\nform.append(\"model\", \"minimax-h3\");\nform.append(\n \"prompt\",\n \"A cinematic view of clouds moving over green mountains, \" +\n \"locked camera, no text.\",\n);\nform.append(\"seconds\", \"5\");\nform.append(\"size\", \"1344x768\");\n\nconst response = await fetch(\"https://api.cometapi.com/v1/videos\", {\n method: \"POST\",\n headers: { Authorization: `Bearer ${process.env.COMETAPI_KEY}` },\n body: form,\n});\n\nif (!response.ok) {\n throw new Error(await response.text());\n}\n\nconsole.log(await response.json());\n"},{"label":"HTTPS reference images at 1344x768","lang":"Shell","source":"curl \\\n https://api.cometapi.com/v1/videos \\\n -H \"Authorization: Bearer $COMETAPI_KEY\" \\\n --form-string model=minimax-h3 \\\n --form-string 'prompt=The referenced characters walk together through a city street. Preserve their appearance and use natural motion. No text.' \\\n --form-string seconds=5 \\\n --form-string size=1344x768 \\\n --form-string input_reference=https://your-image-host/reference-1.png \\\n --form-string input_reference=https://your-image-host/reference-2.jpg\n"},{"label":"HTTPS reference images at 1344x768","lang":"Python","source":"import os\n\nimport requests\n\nfields = [\n (\"model\", (None, \"minimax-h3\")),\n (\n \"prompt\",\n (\n None,\n \"The referenced characters walk together through a city street. \"\n \"Preserve their appearance and use natural motion. No text.\"\n ),\n ),\n (\"seconds\", (None, \"5\")),\n (\"size\", (None, \"1344x768\")),\n (\"input_reference\", (None, \"https://your-image-host/reference-1.png\")),\n (\"input_reference\", (None, \"https://your-image-host/reference-2.jpg\")),\n]\n\nresponse = requests.post(\n \"https://api.cometapi.com/v1/videos\",\n headers={\n \"Authorization\": \"Bearer \" + os.environ[\"COMETAPI_KEY\"]\n },\n files=fields,\n timeout=120,\n)\n\nresponse.raise_for_status()\nprint(response.json())\n"},{"label":"HTTPS reference images at 1344x768","lang":"JavaScript","source":"const form = new FormData();\nform.append(\"model\", \"minimax-h3\");\nform.append(\n \"prompt\",\n \"The referenced characters walk together through a city street. \" +\n \"Preserve their appearance and use natural motion. No text.\",\n);\nform.append(\"seconds\", \"5\");\nform.append(\"size\", \"1344x768\");\nform.append(\"input_reference\", \"https://your-image-host/reference-1.png\");\nform.append(\"input_reference\", \"https://your-image-host/reference-2.jpg\");\n\nconst response = await fetch(\"https://api.cometapi.com/v1/videos\", {\n method: \"POST\",\n headers: { Authorization: `Bearer ${process.env.COMETAPI_KEY}` },\n body: form,\n});\n\nif (!response.ok) {\n throw new Error(await response.text());\n}\n\nconsole.log(await response.json());\n"},{"label":"Uploaded reference images","lang":"Shell","source":"curl \\\n https://api.cometapi.com/v1/videos \\\n -H \"Authorization: Bearer $COMETAPI_KEY\" \\\n --form-string 'model=minimax-h3' \\\n --form-string 'prompt=The uploaded reference characters walk together through a city street. Preserve their appearance and use natural motion. No text.' \\\n --form-string 'seconds=5' \\\n --form-string 'size=2544x1456' \\\n --form 'input_reference=@/path/to/reference-1.png;type=image/png' \\\n --form 'input_reference=@/path/to/reference-2.jpg;type=image/jpeg'"},{"label":"Uploaded reference images","lang":"Python","source":"import os\nfrom contextlib import ExitStack\n\nimport requests\n\nprompt = (\n \"The uploaded reference characters walk together through a city street. \"\n \"Preserve their appearance and use natural motion. No text.\"\n)\n\nwith ExitStack() as stack:\n files = [\n (\n \"input_reference\",\n (\n \"reference-1.png\",\n stack.enter_context(\n open(\"/path/to/reference-1.png\", \"rb\")\n ),\n \"image/png\",\n ),\n ),\n (\n \"input_reference\",\n (\n \"reference-2.jpg\",\n stack.enter_context(\n open(\"/path/to/reference-2.jpg\", \"rb\")\n ),\n \"image/jpeg\",\n ),\n ),\n ]\n response = requests.post(\n \"https://api.cometapi.com/v1/videos\",\n headers={\n \"Authorization\": \"Bearer \"\n + os.environ[\"COMETAPI_KEY\"]\n },\n data={\n \"model\": \"minimax-h3\",\n \"prompt\": prompt,\n \"seconds\": \"5\",\n \"size\": \"2544x1456\",\n },\n files=files,\n timeout=120,\n )\n\nresponse.raise_for_status()\nprint(response.json())\n"},{"label":"Uploaded reference images","lang":"JavaScript","source":"import { readFile } from \"node:fs/promises\";\n\nconst firstReference = await readFile(\"/path/to/reference-1.png\");\nconst secondReference = await readFile(\"/path/to/reference-2.jpg\");\n\nconst form = new FormData();\nform.append(\"model\", \"minimax-h3\");\nform.append(\n \"prompt\",\n \"The uploaded reference characters walk together through a city street. \" +\n \"Preserve their appearance and use natural motion. No text.\",\n);\nform.append(\"seconds\", \"5\");\nform.append(\"size\", \"2544x1456\");\nform.append(\n \"input_reference\",\n new Blob([firstReference], { type: \"image/png\" }),\n \"reference-1.png\",\n);\nform.append(\n \"input_reference\",\n new Blob([secondReference], { type: \"image/jpeg\" }),\n \"reference-2.jpg\",\n);\n\nconst response = await fetch(\"https://api.cometapi.com/v1/videos\", {\n method: \"POST\",\n headers: { Authorization: `Bearer ${process.env.COMETAPI_KEY}` },\n body: form,\n});\n\nif (!response.ok) {\n throw new Error(await response.text());\n}\n\nconsole.log(await response.json());\n"},{"label":"HTTPS MP4 reference video","lang":"Shell","source":"curl \\\n https://api.cometapi.com/v1/videos \\\n -H \"Authorization: Bearer $COMETAPI_KEY\" \\\n --form-string 'model=minimax-h3' \\\n --form-string 'prompt=Follow the reference clip shot structure and motion. No text.' \\\n --form-string 'seconds=5' \\\n --form-string 'size=1344x768' \\\n --form-string 'reference_videos=https://your-media-host/reference.mp4'"},{"label":"HTTPS MP4 reference video","lang":"Python","source":"import os\n\nimport requests\n\nfields = [\n (\"model\", (None, \"minimax-h3\")),\n (\n \"prompt\",\n (\n None,\n \"Follow the reference clip shot structure and motion. \"\n \"No text.\",\n ),\n ),\n (\"seconds\", (None, \"5\")),\n (\"size\", (None, \"1344x768\")),\n (\n \"reference_videos\",\n (None, \"https://your-media-host/reference.mp4\"),\n ),\n]\n\nresponse = requests.post(\n \"https://api.cometapi.com/v1/videos\",\n headers={\n \"Authorization\": \"Bearer \" + os.environ[\"COMETAPI_KEY\"]\n },\n files=fields,\n timeout=120,\n)\nresponse.raise_for_status()\nprint(response.json())\n"},{"label":"HTTPS MP4 reference video","lang":"JavaScript","source":"const form = new FormData();\nform.append(\"model\", \"minimax-h3\");\nform.append(\n \"prompt\",\n \"Follow the reference clip shot structure and motion. No text.\",\n);\nform.append(\"seconds\", \"5\");\nform.append(\"size\", \"1344x768\");\nform.append(\n \"reference_videos\",\n \"https://your-media-host/reference.mp4\",\n);\n\nconst response = await fetch(\"https://api.cometapi.com/v1/videos\", {\n method: \"POST\",\n headers: { Authorization: `Bearer ${process.env.COMETAPI_KEY}` },\n body: form,\n});\n\nif (!response.ok) {\n throw new Error(await response.text());\n}\n\nconsole.log(await response.json());\n"},{"label":"MP4 reference video data URI","lang":"Shell","source":"curl \\\n https://api.cometapi.com/v1/videos \\\n -H \"Authorization: Bearer $COMETAPI_KEY\" \\\n --form-string 'model=minimax-h3' \\\n --form-string 'prompt=Follow the reference clip shot structure and motion. No text.' \\\n --form-string 'seconds=5' \\\n --form-string 'size=1344x768' \\\n --form 'reference_videos=\u003c-;type=text/plain' \\\n \u003c \u003c(printf 'data:video/mp4;base64,'; openssl base64 -A -in /path/to/reference.mp4)"},{"label":"MP4 reference video data URI","lang":"Python","source":"import base64\nimport os\nfrom pathlib import Path\n\nimport requests\n\nvideo_base64 = base64.b64encode(\n Path(\"/path/to/reference.mp4\").read_bytes()\n).decode(\"ascii\")\nfields = [\n (\"model\", (None, \"minimax-h3\")),\n (\n \"prompt\",\n (\n None,\n \"Follow the reference clip shot structure and motion. \"\n \"No text.\",\n ),\n ),\n (\"seconds\", (None, \"5\")),\n (\"size\", (None, \"1344x768\")),\n (\n \"reference_videos\",\n (None, \"data:video/mp4;base64,\" + video_base64),\n ),\n]\n\nresponse = requests.post(\n \"https://api.cometapi.com/v1/videos\",\n headers={\n \"Authorization\": \"Bearer \" + os.environ[\"COMETAPI_KEY\"]\n },\n files=fields,\n timeout=120,\n)\nresponse.raise_for_status()\nprint(response.json())\n"},{"label":"MP4 reference video data URI","lang":"JavaScript","source":"import { readFile } from \"node:fs/promises\";\n\nconst videoBase64 = (\n await readFile(\"/path/to/reference.mp4\")\n).toString(\"base64\");\n\nconst form = new FormData();\nform.append(\"model\", \"minimax-h3\");\nform.append(\n \"prompt\",\n \"Follow the reference clip shot structure and motion. No text.\",\n);\nform.append(\"seconds\", \"5\");\nform.append(\"size\", \"1344x768\");\nform.append(\n \"reference_videos\",\n `data:video/mp4;base64,${videoBase64}`,\n);\n\nconst response = await fetch(\"https://api.cometapi.com/v1/videos\", {\n method: \"POST\",\n headers: { Authorization: `Bearer ${process.env.COMETAPI_KEY}` },\n body: form,\n});\n\nif (!response.ok) {\n throw new Error(await response.text());\n}\n\nconsole.log(await response.json());\n"},{"label":"HTTPS MP3 reference audio with an image","lang":"Shell","source":"curl \\\n https://api.cometapi.com/v1/videos \\\n -H \"Authorization: Bearer $COMETAPI_KEY\" \\\n --form-string model=minimax-h3 \\\n --form-string 'prompt=Animate the reference image and synchronize the motion with the reference audio. No text.' \\\n --form-string seconds=5 \\\n --form-string size=1344x768 \\\n --form-string reference_audios=https://your-media-host/reference.mp3 \\\n --form-string input_reference=https://your-image-host/reference.png\n"},{"label":"HTTPS MP3 reference audio with an image","lang":"Python","source":"import os\n\nimport requests\n\nfields = [\n (\"model\", (None, \"minimax-h3\")),\n (\n \"prompt\",\n (\n None,\n \"Animate the reference image and synchronize the motion with the \"\n \"reference audio. No text.\"\n ),\n ),\n (\"seconds\", (None, \"5\")),\n (\"size\", (None, \"1344x768\")),\n (\"reference_audios\", (None, \"https://your-media-host/reference.mp3\")),\n (\"input_reference\", (None, \"https://your-image-host/reference.png\")),\n]\n\nresponse = requests.post(\n \"https://api.cometapi.com/v1/videos\",\n headers={\n \"Authorization\": \"Bearer \" + os.environ[\"COMETAPI_KEY\"]\n },\n files=fields,\n timeout=120,\n)\n\nresponse.raise_for_status()\nprint(response.json())\n"},{"label":"HTTPS MP3 reference audio with an image","lang":"JavaScript","source":"const form = new FormData();\nform.append(\"model\", \"minimax-h3\");\nform.append(\n \"prompt\",\n \"Animate the reference image and synchronize the motion with the \" +\n \"reference audio. No text.\",\n);\nform.append(\"seconds\", \"5\");\nform.append(\"size\", \"1344x768\");\nform.append(\"reference_audios\", \"https://your-media-host/reference.mp3\");\nform.append(\"input_reference\", \"https://your-image-host/reference.png\");\n\nconst response = await fetch(\"https://api.cometapi.com/v1/videos\", {\n method: \"POST\",\n headers: { Authorization: `Bearer ${process.env.COMETAPI_KEY}` },\n body: form,\n});\n\nif (!response.ok) {\n throw new Error(await response.text());\n}\n\nconsole.log(await response.json());\n"},{"label":"HTTPS first and last frames","lang":"Shell","source":"curl \\\n https://api.cometapi.com/v1/videos \\\n -H \"Authorization: Bearer $COMETAPI_KEY\" \\\n --form-string 'model=minimax-h3' \\\n --form-string 'prompt=Move naturally from the opening frame to the ending frame. No text.' \\\n --form-string 'seconds=5' \\\n --form-string 'size=1344x768' \\\n --form-string 'first_frame=https://your-image-host/first-frame.png' \\\n --form-string 'last_frame=https://your-image-host/last-frame.png'"},{"label":"HTTPS first and last frames","lang":"Python","source":"import os\n\nimport requests\n\nfields = [\n (\"model\", (None, \"minimax-h3\")),\n (\n \"prompt\",\n (\n None,\n \"Move naturally from the opening frame to the ending \"\n \"frame. No text.\",\n ),\n ),\n (\"seconds\", (None, \"5\")),\n (\"size\", (None, \"1344x768\")),\n (\n \"first_frame\",\n (None, \"https://your-image-host/first-frame.png\"),\n ),\n (\n \"last_frame\",\n (None, \"https://your-image-host/last-frame.png\"),\n ),\n]\n\nresponse = requests.post(\n \"https://api.cometapi.com/v1/videos\",\n headers={\n \"Authorization\": \"Bearer \" + os.environ[\"COMETAPI_KEY\"]\n },\n files=fields,\n timeout=120,\n)\nresponse.raise_for_status()\nprint(response.json())\n"},{"label":"HTTPS first and last frames","lang":"JavaScript","source":"const form = new FormData();\nform.append(\"model\", \"minimax-h3\");\nform.append(\n \"prompt\",\n \"Move naturally from the opening frame to the ending frame. No text.\",\n);\nform.append(\"seconds\", \"5\");\nform.append(\"size\", \"1344x768\");\nform.append(\n \"first_frame\",\n \"https://your-image-host/first-frame.png\",\n);\nform.append(\n \"last_frame\",\n \"https://your-image-host/last-frame.png\",\n);\n\nconst response = await fetch(\"https://api.cometapi.com/v1/videos\", {\n method: \"POST\",\n headers: { Authorization: `Bearer ${process.env.COMETAPI_KEY}` },\n body: form,\n});\n\nif (!response.ok) {\n throw new Error(await response.text());\n}\n\nconsole.log(await response.json());\n"},{"label":"Uploaded first and last frames","lang":"Shell","source":"curl \\\n https://api.cometapi.com/v1/videos \\\n -H \"Authorization: Bearer $COMETAPI_KEY\" \\\n --form-string 'model=minimax-h3' \\\n --form-string 'prompt=Move naturally from the uploaded opening frame to the uploaded ending frame. No text.' \\\n --form-string 'seconds=5' \\\n --form-string 'size=1344x768' \\\n --form 'first_frame=@/path/to/first-frame.png;type=image/png' \\\n --form 'last_frame=@/path/to/last-frame.png;type=image/png'"},{"label":"Uploaded first and last frames","lang":"Python","source":"import os\nfrom contextlib import ExitStack\n\nimport requests\n\nprompt = (\n \"Move naturally from the uploaded opening frame to the uploaded \"\n \"ending frame. No text.\"\n)\n\nwith ExitStack() as stack:\n files = {\n \"first_frame\": (\n \"first-frame.png\",\n stack.enter_context(\n open(\"/path/to/first-frame.png\", \"rb\")\n ),\n \"image/png\",\n ),\n \"last_frame\": (\n \"last-frame.png\",\n stack.enter_context(\n open(\"/path/to/last-frame.png\", \"rb\")\n ),\n \"image/png\",\n ),\n }\n response = requests.post(\n \"https://api.cometapi.com/v1/videos\",\n headers={\n \"Authorization\": \"Bearer \"\n + os.environ[\"COMETAPI_KEY\"]\n },\n data={\n \"model\": \"minimax-h3\",\n \"prompt\": prompt,\n \"seconds\": \"5\",\n \"size\": \"1344x768\",\n },\n files=files,\n timeout=120,\n )\n\nresponse.raise_for_status()\nprint(response.json())\n"},{"label":"Uploaded first and last frames","lang":"JavaScript","source":"import { readFile } from \"node:fs/promises\";\n\nconst firstFrame = await readFile(\"/path/to/first-frame.png\");\nconst lastFrame = await readFile(\"/path/to/last-frame.png\");\n\nconst form = new FormData();\nform.append(\"model\", \"minimax-h3\");\nform.append(\n \"prompt\",\n \"Move naturally from the uploaded opening frame to the uploaded \" +\n \"ending frame. No text.\",\n);\nform.append(\"seconds\", \"5\");\nform.append(\"size\", \"1344x768\");\nform.append(\n \"first_frame\",\n new Blob([firstFrame], { type: \"image/png\" }),\n \"first-frame.png\",\n);\nform.append(\n \"last_frame\",\n new Blob([lastFrame], { type: \"image/png\" }),\n \"last-frame.png\",\n);\n\nconst response = await fetch(\"https://api.cometapi.com/v1/videos\", {\n method: \"POST\",\n headers: { Authorization: `Bearer ${process.env.COMETAPI_KEY}` },\n body: form,\n});\n\nif (!response.ok) {\n throw new Error(await response.text());\n}\n\nconsole.log(await response.json());\n"},{"label":"Uploaded MP4 reference video","lang":"Shell","source":"curl \\\n https://api.cometapi.com/v1/videos \\\n -H \"Authorization: Bearer $COMETAPI_KEY\" \\\n --form-string 'model=minimax-h3' \\\n --form-string 'prompt=Follow the uploaded reference video shot structure and motion. No text.' \\\n --form-string 'seconds=5' \\\n --form-string 'size=1344x768' \\\n --form 'reference_videos=@/path/to/reference.mp4;type=video/mp4'\n"},{"label":"Uploaded MP4 reference video","lang":"Python","source":"import os\nfrom contextlib import ExitStack\n\nimport requests\n\nprompt = (\n \"Follow the uploaded reference video shot structure and motion. No \"\n \"text.\"\n)\n\nwith ExitStack() as stack:\n fields = [\n (\"model\", (None, \"minimax-h3\")),\n (\"prompt\", (None, prompt)),\n (\"seconds\", (None, \"5\")),\n (\"size\", (None, \"1344x768\")),\n (\n \"reference_videos\",\n (\n \"reference.mp4\",\n stack.enter_context(\n open(\"/path/to/reference.mp4\", \"rb\")\n ),\n \"video/mp4\",\n ),\n ),\n ]\n\n response = requests.post(\n \"https://api.cometapi.com/v1/videos\",\n headers={\n \"Authorization\": \"Bearer \" + os.environ[\"COMETAPI_KEY\"]\n },\n files=fields,\n timeout=120,\n )\n\nresponse.raise_for_status()\nprint(response.json())\n"},{"label":"Uploaded MP4 reference video","lang":"JavaScript","source":"import { readFile } from \"node:fs/promises\";\n\nconst form = new FormData();\nform.append(\"model\", \"minimax-h3\");\nform.append(\n \"prompt\",\n \"Follow the uploaded reference video shot structure and motion. No \" +\n \"text.\",\n);\nform.append(\"seconds\", \"5\");\nform.append(\"size\", \"1344x768\");\nform.append(\n \"reference_videos\",\n new Blob([await readFile(\"/path/to/reference.mp4\")], {\n type: \"video/mp4\",\n }),\n \"reference.mp4\",\n);\n\nconst response = await fetch(\"https://api.cometapi.com/v1/videos\", {\n method: \"POST\",\n headers: { Authorization: `Bearer ${process.env.COMETAPI_KEY}` },\n body: form,\n});\n\nif (!response.ok) {\n throw new Error(await response.text());\n}\n\nconsole.log(await response.json());\n"},{"label":"Uploaded MP3 reference audio with an image","lang":"Shell","source":"curl \\\n https://api.cometapi.com/v1/videos \\\n -H \"Authorization: Bearer $COMETAPI_KEY\" \\\n --form-string model=minimax-h3 \\\n --form-string 'prompt=Animate the reference image and synchronize the motion with the uploaded reference audio. No text.' \\\n --form-string seconds=5 \\\n --form-string size=1344x768 \\\n --form 'reference_audios=@/path/to/reference.mp3;type=audio/mpeg' \\\n --form-string input_reference=https://your-image-host/reference.png\n"},{"label":"Uploaded MP3 reference audio with an image","lang":"Python","source":"import os\nfrom contextlib import ExitStack\n\nimport requests\n\nwith ExitStack() as stack:\n fields = [\n (\"model\", (None, \"minimax-h3\")),\n (\n \"prompt\",\n (\n None,\n \"Animate the reference image and synchronize the motion with \"\n \"the uploaded reference audio. No text.\"\n ),\n ),\n (\"seconds\", (None, \"5\")),\n (\"size\", (None, \"1344x768\")),\n (\n \"reference_audios\",\n (\n \"reference.mp3\",\n stack.enter_context(open(\"/path/to/reference.mp3\", \"rb\")),\n \"audio/mpeg\",\n ),\n ),\n (\"input_reference\", (None, \"https://your-image-host/reference.png\")),\n ]\n\n response = requests.post(\n \"https://api.cometapi.com/v1/videos\",\n headers={\n \"Authorization\": \"Bearer \" + os.environ[\"COMETAPI_KEY\"]\n },\n files=fields,\n timeout=120,\n )\n\nresponse.raise_for_status()\nprint(response.json())\n"},{"label":"Uploaded MP3 reference audio with an image","lang":"JavaScript","source":"import { readFile } from \"node:fs/promises\";\n\nconst form = new FormData();\nform.append(\"model\", \"minimax-h3\");\nform.append(\n \"prompt\",\n \"Animate the reference image and synchronize the motion with the \" +\n \"uploaded reference audio. No text.\",\n);\nform.append(\"seconds\", \"5\");\nform.append(\"size\", \"1344x768\");\nform.append(\n \"reference_audios\",\n new Blob([await readFile(\"/path/to/reference.mp3\")], {\n type: \"audio/mpeg\",\n }),\n \"reference.mp3\",\n);\nform.append(\"input_reference\", \"https://your-image-host/reference.png\");\n\nconst response = await fetch(\"https://api.cometapi.com/v1/videos\", {\n method: \"POST\",\n headers: { Authorization: `Bearer ${process.env.COMETAPI_KEY}` },\n body: form,\n});\n\nif (!response.ok) {\n throw new Error(await response.text());\n}\n\nconsole.log(await response.json());\n"},{"label":"H3-Max: text-to-video at 480P","lang":"Shell","source":"PROMPT='A paper boat crosses a pond. Fixed camera. No '\nPROMPT=\"$PROMPT\"'text.'\n\ncurl \\\n https://api.cometapi.com/v1/videos \\\n -H \"Authorization: Bearer $COMETAPI_KEY\" \\\n --form-string 'model=minimax-h3-max' \\\n --form-string \"prompt=$PROMPT\" \\\n --form-string 'seconds=5' \\\n --form-string 'size=864x480'\n"},{"label":"H3-Max: text-to-video at 480P","lang":"Python","source":"import os\n\nimport requests\n\nfields = [\n (\"model\", (None, \"minimax-h3-max\")),\n (\"prompt\", (None, \"A paper boat crosses a pond. Fixed camera. No text.\")),\n (\"seconds\", (None, \"5\")),\n (\"size\", (None, \"864x480\")),\n]\n\nresponse = requests.post(\n \"https://api.cometapi.com/v1/videos\",\n headers={\n \"Authorization\": \"Bearer \" + os.environ[\"COMETAPI_KEY\"]\n },\n files=fields,\n timeout=120,\n)\nresponse.raise_for_status()\nprint(response.json())\n"},{"label":"H3-Max: text-to-video at 480P","lang":"JavaScript","source":"const form = new FormData();\nform.append(\"model\", \"minimax-h3-max\");\nform.append(\"prompt\", \"A paper boat crosses a pond. Fixed camera. No text.\");\nform.append(\"seconds\", \"5\");\nform.append(\"size\", \"864x480\");\n\nconst response = await fetch(\n \"https://api.cometapi.com/v1/videos\",\n {\n method: \"POST\",\n headers: { Authorization: `Bearer ${process.env.COMETAPI_KEY}` },\n body: form,\n },\n);\n\nif (!response.ok) {\n throw new Error(await response.text());\n}\n\nconsole.log(await response.json());\n"},{"label":"H3-Max: text-to-video at 768P","lang":"Shell","source":"PROMPT='A paper boat crosses a pond. Fixed camera. No '\nPROMPT=\"$PROMPT\"'text.'\n\ncurl \\\n https://api.cometapi.com/v1/videos \\\n -H \"Authorization: Bearer $COMETAPI_KEY\" \\\n --form-string 'model=minimax-h3-max' \\\n --form-string \"prompt=$PROMPT\" \\\n --form-string 'seconds=5' \\\n --form-string 'size=1360x768'\n"},{"label":"H3-Max: text-to-video at 768P","lang":"Python","source":"import os\n\nimport requests\n\nfields = [\n (\"model\", (None, \"minimax-h3-max\")),\n (\"prompt\", (None, \"A paper boat crosses a pond. Fixed camera. No text.\")),\n (\"seconds\", (None, \"5\")),\n (\"size\", (None, \"1360x768\")),\n]\n\nresponse = requests.post(\n \"https://api.cometapi.com/v1/videos\",\n headers={\n \"Authorization\": \"Bearer \" + os.environ[\"COMETAPI_KEY\"]\n },\n files=fields,\n timeout=120,\n)\nresponse.raise_for_status()\nprint(response.json())\n"},{"label":"H3-Max: text-to-video at 768P","lang":"JavaScript","source":"const form = new FormData();\nform.append(\"model\", \"minimax-h3-max\");\nform.append(\"prompt\", \"A paper boat crosses a pond. Fixed camera. No text.\");\nform.append(\"seconds\", \"5\");\nform.append(\"size\", \"1360x768\");\n\nconst response = await fetch(\n \"https://api.cometapi.com/v1/videos\",\n {\n method: \"POST\",\n headers: { Authorization: `Bearer ${process.env.COMETAPI_KEY}` },\n body: form,\n },\n);\n\nif (!response.ok) {\n throw new Error(await response.text());\n}\n\nconsole.log(await response.json());\n"},{"label":"H3-Max: HTTPS reference images","lang":"Shell","source":"PROMPT='The two reference characters walk through a '\nPROMPT=\"$PROMPT\"'park. No text.'\nIMAGE_URL_1=\"https://your-image-host/reference-1.png\"\nIMAGE_URL_2=\"https://your-image-host/reference-2.jpg\"\n\ncurl \\\n https://api.cometapi.com/v1/videos \\\n -H \"Authorization: Bearer $COMETAPI_KEY\" \\\n --form-string 'model=minimax-h3-max' \\\n --form-string \"prompt=$PROMPT\" \\\n --form-string 'seconds=5' \\\n --form-string 'size=1360x768' \\\n --form-string \"input_reference=$IMAGE_URL_1\" \\\n --form-string \"input_reference=$IMAGE_URL_2\"\n"},{"label":"H3-Max: HTTPS reference images","lang":"Python","source":"import os\n\nimport requests\n\nfields = [\n (\"model\", (None, \"minimax-h3-max\")),\n (\n \"prompt\",\n (\n None,\n \"The two reference characters walk through a park. No text.\"\n ),\n ),\n (\"seconds\", (None, \"5\")),\n (\"size\", (None, \"1360x768\")),\n (\"input_reference\", (None, \"https://your-image-host/reference-1.png\")),\n (\"input_reference\", (None, \"https://your-image-host/reference-2.jpg\")),\n]\n\nresponse = requests.post(\n \"https://api.cometapi.com/v1/videos\",\n headers={\n \"Authorization\": \"Bearer \" + os.environ[\"COMETAPI_KEY\"]\n },\n files=fields,\n timeout=120,\n)\nresponse.raise_for_status()\nprint(response.json())\n"},{"label":"H3-Max: HTTPS reference images","lang":"JavaScript","source":"const form = new FormData();\nform.append(\"model\", \"minimax-h3-max\");\nform.append(\n \"prompt\",\n \"The two reference characters walk through a park. No text.\",\n);\nform.append(\"seconds\", \"5\");\nform.append(\"size\", \"1360x768\");\nform.append(\"input_reference\", \"https://your-image-host/reference-1.png\");\nform.append(\"input_reference\", \"https://your-image-host/reference-2.jpg\");\n\nconst response = await fetch(\n \"https://api.cometapi.com/v1/videos\",\n {\n method: \"POST\",\n headers: { Authorization: `Bearer ${process.env.COMETAPI_KEY}` },\n body: form,\n },\n);\n\nif (!response.ok) {\n throw new Error(await response.text());\n}\n\nconsole.log(await response.json());\n"},{"label":"H3-Max: image, video, and audio references","lang":"Shell","source":"PROMPT='Use the image for the subject, video for motion, '\nPROMPT=\"$PROMPT\"'and audio for sound.'\nIMAGE_URL=\"https://your-image-host/reference.png\"\nVIDEO_URL=\"https://your-media-host/reference.mp4\"\nAUDIO_URL=\"https://your-media-host/reference.mp3\"\n\ncurl \\\n https://api.cometapi.com/v1/videos \\\n -H \"Authorization: Bearer $COMETAPI_KEY\" \\\n --form-string 'model=minimax-h3-max' \\\n --form-string \"prompt=$PROMPT\" \\\n --form-string 'seconds=5' \\\n --form-string 'size=1360x768' \\\n --form-string \"input_reference=$IMAGE_URL\" \\\n --form-string \"reference_videos=$VIDEO_URL\" \\\n --form-string \"reference_audios=$AUDIO_URL\"\n"},{"label":"H3-Max: image, video, and audio references","lang":"Python","source":"import os\n\nimport requests\n\nfields = [\n (\"model\", (None, \"minimax-h3-max\")),\n (\n \"prompt\",\n (\n None,\n \"Use the image for the subject, video for motion, and audio \"\n \"for sound.\"\n ),\n ),\n (\"seconds\", (None, \"5\")),\n (\"size\", (None, \"1360x768\")),\n (\"input_reference\", (None, \"https://your-image-host/reference.png\")),\n (\"reference_videos\", (None, \"https://your-media-host/reference.mp4\")),\n (\"reference_audios\", (None, \"https://your-media-host/reference.mp3\")),\n]\n\nresponse = requests.post(\n \"https://api.cometapi.com/v1/videos\",\n headers={\n \"Authorization\": \"Bearer \" + os.environ[\"COMETAPI_KEY\"]\n },\n files=fields,\n timeout=120,\n)\nresponse.raise_for_status()\nprint(response.json())\n"},{"label":"H3-Max: image, video, and audio references","lang":"JavaScript","source":"const form = new FormData();\nform.append(\"model\", \"minimax-h3-max\");\nform.append(\n \"prompt\",\n \"Use the image for the subject, video for motion, and audio for sound.\",\n);\nform.append(\"seconds\", \"5\");\nform.append(\"size\", \"1360x768\");\nform.append(\"input_reference\", \"https://your-image-host/reference.png\");\nform.append(\"reference_videos\", \"https://your-media-host/reference.mp4\");\nform.append(\"reference_audios\", \"https://your-media-host/reference.mp3\");\n\nconst response = await fetch(\n \"https://api.cometapi.com/v1/videos\",\n {\n method: \"POST\",\n headers: { Authorization: `Bearer ${process.env.COMETAPI_KEY}` },\n body: form,\n },\n);\n\nif (!response.ok) {\n throw new Error(await response.text());\n}\n\nconsole.log(await response.json());\n"},{"label":"H3-Max: first and last frames","lang":"Shell","source":"PROMPT='Move from the opening frame to the ending frame. '\nPROMPT=\"$PROMPT\"'No text.'\nFIRST_FRAME_URL=\"https://your-image-host/first-frame.png\"\nLAST_FRAME_URL=\"https://your-image-host/last-frame.png\"\n\ncurl \\\n https://api.cometapi.com/v1/videos \\\n -H \"Authorization: Bearer $COMETAPI_KEY\" \\\n --form-string 'model=minimax-h3-max' \\\n --form-string \"prompt=$PROMPT\" \\\n --form-string 'seconds=5' \\\n --form-string 'size=1360x768' \\\n --form-string \"first_frame=$FIRST_FRAME_URL\" \\\n --form-string \"last_frame=$LAST_FRAME_URL\"\n"},{"label":"H3-Max: first and last frames","lang":"Python","source":"import os\n\nimport requests\n\nfields = [\n (\"model\", (None, \"minimax-h3-max\")),\n (\n \"prompt\",\n (\n None,\n \"Move from the opening frame to the ending frame. No text.\"\n ),\n ),\n (\"seconds\", (None, \"5\")),\n (\"size\", (None, \"1360x768\")),\n (\"first_frame\", (None, \"https://your-image-host/first-frame.png\")),\n (\"last_frame\", (None, \"https://your-image-host/last-frame.png\")),\n]\n\nresponse = requests.post(\n \"https://api.cometapi.com/v1/videos\",\n headers={\n \"Authorization\": \"Bearer \" + os.environ[\"COMETAPI_KEY\"]\n },\n files=fields,\n timeout=120,\n)\nresponse.raise_for_status()\nprint(response.json())\n"},{"label":"H3-Max: first and last frames","lang":"JavaScript","source":"const form = new FormData();\nform.append(\"model\", \"minimax-h3-max\");\nform.append(\n \"prompt\",\n \"Move from the opening frame to the ending frame. No text.\",\n);\nform.append(\"seconds\", \"5\");\nform.append(\"size\", \"1360x768\");\nform.append(\"first_frame\", \"https://your-image-host/first-frame.png\");\nform.append(\"last_frame\", \"https://your-image-host/last-frame.png\");\n\nconst response = await fetch(\n \"https://api.cometapi.com/v1/videos\",\n {\n method: \"POST\",\n headers: { Authorization: `Bearer ${process.env.COMETAPI_KEY}` },\n body: form,\n },\n);\n\nif (!response.ok) {\n throw new Error(await response.text());\n}\n\nconsole.log(await response.json());\n"}],"requiredOnlyExamples":true,"requestExampleType":"codeSamples","responseExampleType":"generated","prefillPlaygroundWithExample":true,"prefillPlaygroundExamples":[{"body.model":"minimax-h3","body.prompt":"A paper boat glides across a still pond, daylight, locked camera, no text.","body.seconds":5,"body.size":"2544x1456"},{"body.model":"minimax-h3","body.prompt":"A cinematic view of clouds moving over green mountains, locked camera, no text.","body.seconds":5,"body.size":"1344x768"},{"body.model":"minimax-h3","body.prompt":"The referenced characters walk together through a city street. Preserve their appearance and use natural motion. No text.","body.seconds":5,"body.size":"1344x768","body.input_reference.oneOf.1.items.0":"https://your-image-host/reference-1.png","body.input_reference.oneOf.1.items.1":"https://your-image-host/reference-2.jpg"},{"body.model":"minimax-h3","body.prompt":"The uploaded reference characters walk together through a city street. Preserve their appearance and use natural motion. No text.","body.seconds":5,"body.size":"2544x1456","body.input_reference.oneOf.1.items.0":"@/path/to/reference-1.png","body.input_reference.oneOf.1.items.1":"@/path/to/reference-2.jpg"},{"body.model":"minimax-h3","body.prompt":"Follow the reference clip's shot structure and motion. No text.","body.seconds":5,"body.size":"1344x768","body.reference_videos.items.0.oneOf.0":"https://your-media-host/reference.mp4"},{"body.model":"minimax-h3","body.prompt":"Animate the reference image and synchronize the motion with the reference audio. No text.","body.seconds":5,"body.size":"1344x768","body.input_reference.oneOf.0":"https://your-image-host/reference.png","body.reference_audios.items.0.oneOf.0":"https://your-media-host/reference.mp3"},{"body.model":"minimax-h3","body.prompt":"Move naturally from the opening frame to the ending frame. No text.","body.seconds":5,"body.size":"1344x768","body.first_frame.oneOf.0":"https://your-image-host/first-frame.png","body.last_frame.oneOf.0":"https://your-image-host/last-frame.png"},{"body.model":"minimax-h3","body.prompt":"Move naturally from the uploaded opening frame to the uploaded ending frame. No text.","body.seconds":5,"body.size":"1344x768","body.first_frame.oneOf.1":"\u003cbinary PNG file>","body.last_frame.oneOf.1":"\u003cbinary PNG file>"},{"body.model":"minimax-h3","body.prompt":"Follow the uploaded reference video shot structure and motion. No text.","body.seconds":5,"body.size":"1344x768","body.reference_videos.items.0.oneOf.1":"@/path/to/reference.mp4"},{"body.model":"minimax-h3","body.prompt":"Animate the reference image and synchronize the motion with the uploaded reference audio. No text.","body.seconds":5,"body.size":"1344x768","body.input_reference.oneOf.0":"https://your-image-host/reference.png","body.reference_audios.items.0.oneOf.1":"@/path/to/reference.mp3"},{"body.model":"minimax-h3-max","body.prompt":"A paper boat crosses a pond. Fixed camera. No text.","body.seconds":5,"body.size":"864x480"},{"body.model":"minimax-h3-max","body.prompt":"A paper boat crosses a pond. Fixed camera. No text.","body.seconds":5,"body.size":"1360x768"},{"body.model":"minimax-h3-max","body.prompt":"The two reference characters walk through a park. No text.","body.seconds":5,"body.size":"1360x768","body.input_reference.oneOf.1.items.0":"https://your-image-host/reference-1.png","body.input_reference.oneOf.1.items.1":"https://your-image-host/reference-2.jpg"},{"body.model":"minimax-h3-max","body.prompt":"Use the image for the subject, video for motion, and audio for sound.","body.seconds":5,"body.size":"1360x768","body.input_reference.oneOf.1.items.0":"https://your-image-host/reference.png","body.reference_videos.items.0.oneOf.0":"https://your-media-host/reference.mp4","body.reference_audios.items.0.oneOf.0":"https://your-media-host/reference.mp3"},{"body.model":"minimax-h3-max","body.prompt":"Move from the opening frame to the ending frame. No text.","body.seconds":5,"body.size":"1360x768","body.first_frame.oneOf.0":"https://your-image-host/first-frame.png","body.last_frame.oneOf.0":"https://your-image-host/last-frame.png"}]},"dependencies":{"parameters":{},"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"type":"object","required":["model","prompt"],"properties":{"model":{"type":"string","default":"minimax-h3","description":"Model ID for the video task. Use minimax-h3 for 768P or 2K, or minimax-h3-max for 480P or 768P. Choose size from the matching model table.","enum":["minimax-h3","minimax-h3-max"],"isRequired":true,"uniqueKey":"model","typeLabel":"enum\u003cstring>"},"prompt":{"type":"string","minLength":1,"description":"Text that describes the scene, motion, camera behavior, and visual details that the video should preserve.","default":"A paper boat glides across a still pond, daylight, locked camera, no text.","isRequired":true,"uniqueKey":"prompt","typeLabel":"string"},"seconds":{"type":"integer","minimum":5,"maximum":15,"default":5,"description":"Requested clip duration in whole seconds. Use an integer from 5 through 15. The default is 5.","uniqueKey":"seconds","typeLabel":"integer"},"size":{"type":"string","pattern":"^[1-9][0-9]*x[1-9][0-9]*$","examples":["1536x672","1344x768","1024x768","768x768","768x1024","768x1344","2912x1280","2544x1456","1920x1440","1440x1440","1440x1920","1440x2560","1120x480","864x480","640x480","480x480","480x640","480x864","1792x768","1360x768","768x1360"],"description":"Requested size in WxH form. For text and reference-media requests, size selects the resolution tier and framing aspect ratio. With first or last frames, size selects the resolution tier. Use the matching model table: minimax-h3 uses 768P or 2K; minimax-h3-max uses 480P or 768P. For example, use 1344x768 for H3 at 768P, 864x480 for H3-Max at 480P, or 1360x768 for H3-Max at 768P. The service can normalize the final output dimensions.","uniqueKey":"size","typeLabel":"string"},"input_reference":{"oneOf":[{"type":"string","title":"Single image URL","description":"PNG or JPEG reference images. Repeat input_reference with one publicly accessible HTTPS image URL or uploaded image file per field. Send up to nine reference images, whether you use URLs or uploaded files. Use all URLs or all files within this field. Do not combine URLs into a comma-separated value. Keep each uploaded image at or below 20 MiB. Do not combine this field with first_frame or last_frame. Across images, videos, and audio, send at most 12 reference inputs. Each reference video or audio clip must be 2–15 seconds; keep the combined video duration and combined audio duration at or below 15 seconds each. Submit images in the order you want to reference them in the prompt.","format":"uri","pattern":"^https://","uniqueKey":"input_reference.oneOf.0","typeLabel":"string\u003curi>"},{"type":"array","items":{"type":"string","format":"uri","pattern":"^https://","description":"One publicly accessible HTTPS reference image URL.","uniqueKey":"input_reference.oneOf.1.items.[INDEX]","typeLabel":"string\u003curi>"},"title":"Image URLs","description":"PNG or JPEG reference images. Repeat input_reference with one publicly accessible HTTPS image URL or uploaded image file per field. Send up to nine reference images, whether you use URLs or uploaded files. Use all URLs or all files within this field. Do not combine URLs into a comma-separated value. Keep each uploaded image at or below 20 MiB. Do not combine this field with first_frame or last_frame. Across images, videos, and audio, send at most 12 reference inputs. Each reference video or audio clip must be 2–15 seconds; keep the combined video duration and combined audio duration at or below 15 seconds each. Submit images in the order you want to reference them in the prompt.","maxItems":9,"minItems":1,"uniqueKey":"input_reference.oneOf.1","typeLabel":"string\u003curi>[]"},{"type":"array","items":{"type":"string","format":"binary","description":"One uploaded reference image file.","uniqueKey":"input_reference.oneOf.2.items.[INDEX]","typeLabel":"file"},"title":"Image files","description":"PNG or JPEG reference images. Repeat input_reference with one publicly accessible HTTPS image URL or uploaded image file per field. Send up to nine reference images, whether you use URLs or uploaded files. Use all URLs or all files within this field. Do not combine URLs into a comma-separated value. Keep each uploaded image at or below 20 MiB. Do not combine this field with first_frame or last_frame. Across images, videos, and audio, send at most 12 reference inputs. Each reference video or audio clip must be 2–15 seconds; keep the combined video duration and combined audio duration at or below 15 seconds each. Submit images in the order you want to reference them in the prompt.","maxItems":9,"minItems":1,"uniqueKey":"input_reference.oneOf.2","typeLabel":"file[]"}],"uniqueKey":"input_reference","typeLabel":"string\u003curi> | string\u003curi>[] | file[]"},"reference_videos":{"type":"array","minItems":1,"maxItems":3,"items":{"oneOf":[{"type":"string","format":"uri","pattern":"^(https://|data:video/mp4;base64,)","example":"https://your-media-host/reference.mp4","uniqueKey":"reference_videos.items.[INDEX].oneOf.0","typeLabel":"string\u003curi>"},{"type":"string","format":"binary","uniqueKey":"reference_videos.items.[INDEX].oneOf.1","typeLabel":"file"}],"uniqueKey":"reference_videos.items.[INDEX]","typeLabel":"string\u003curi> | file"},"description":"Reference video inputs. Repeat reference_videos with a direct publicly accessible HTTPS MP4 URL or an uploaded MP4 file. Use only text values or only files within this field. Each uploaded file can be up to 50 MiB. Send no more than three video inputs. A complete data:video/mp4;base64,... URI is also accepted as a text value. Use MP4 with H.264 video; an AAC audio track is optional. Do not combine this field with first_frame or last_frame. Across images, videos, and audio, send at most 12 reference inputs. Each reference video or audio clip must be 2–15 seconds; keep the combined video duration and combined audio duration at or below 15 seconds each.","uniqueKey":"reference_videos","typeLabel":"(string\u003curi> | file)[]"},"reference_audios":{"type":"array","minItems":1,"maxItems":3,"items":{"oneOf":[{"type":"string","format":"uri","pattern":"^https://","example":"https://your-media-host/reference.mp3","uniqueKey":"reference_audios.items.[INDEX].oneOf.0","typeLabel":"string\u003curi>"},{"type":"string","format":"binary","uniqueKey":"reference_audios.items.[INDEX].oneOf.1","typeLabel":"file"}],"uniqueKey":"reference_audios.items.[INDEX]","typeLabel":"string\u003curi> | file"},"description":"Reference audio inputs. Repeat reference_audios with a direct publicly accessible HTTPS MP3 URL or an uploaded MP3 file. Use only text values or only files within this field. Each uploaded file can be up to 15 MiB. Send no more than three audio inputs. Pair reference audio with at least one reference image. Do not combine this field with first_frame or last_frame. Across images, videos, and audio, send at most 12 reference inputs. Each reference video or audio clip must be 2–15 seconds; keep the combined video duration and combined audio duration at or below 15 seconds each.","uniqueKey":"reference_audios","typeLabel":"(string\u003curi> | file)[]"},"first_frame":{"oneOf":[{"type":"string","description":"Opening frame input as one direct publicly accessible HTTPS PNG URL or one uploaded PNG file at or below 20 MiB (20 x 1024 x 1024 bytes). Do not combine frame fields with reference media fields.","format":"uri","pattern":"^https://","example":"https://your-image-host/first-frame.png","uniqueKey":"first_frame.oneOf.0","typeLabel":"string\u003curi>"},{"type":"string","description":"Opening frame input as one direct publicly accessible HTTPS PNG URL or one uploaded PNG file at or below 20 MiB (20 x 1024 x 1024 bytes). Do not combine frame fields with reference media fields.","format":"binary","uniqueKey":"first_frame.oneOf.1","typeLabel":"file"}],"uniqueKey":"first_frame","typeLabel":"string\u003curi> | file"},"last_frame":{"oneOf":[{"type":"string","description":"Optional ending frame input, used with first_frame, as one direct publicly accessible HTTPS PNG URL or one uploaded PNG file at or below 20 MiB (20 x 1024 x 1024 bytes). Do not combine frame fields with reference media fields.","format":"uri","pattern":"^https://","example":"https://your-image-host/last-frame.png","uniqueKey":"last_frame.oneOf.0","typeLabel":"string\u003curi>"},{"type":"string","description":"Optional ending frame input, used with first_frame, as one direct publicly accessible HTTPS PNG URL or one uploaded PNG file at or below 20 MiB (20 x 1024 x 1024 bytes). Do not combine frame fields with reference media fields.","format":"binary","uniqueKey":"last_frame.oneOf.1","typeLabel":"file"}],"uniqueKey":"last_frame","typeLabel":"string\u003curi> | file"}},"dependentRequired":{"last_frame":["first_frame"]},"additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"encoding":{"input_reference":{"contentType":"text/plain, image/png, image/jpeg","style":"form","explode":true},"reference_videos":{"style":"form","explode":true,"contentType":"text/plain, video/mp4"},"reference_audios":{"style":"form","explode":true,"contentType":"text/plain, audio/mpeg"},"first_frame":{"style":"form"},"last_frame":{"style":"form"}},"examples":{"text_2544x1456":{"title":"text_2544x1456","value":{"model":"minimax-h3","prompt":"A paper boat glides across a still pond, daylight, locked camera, no text.","seconds":5,"size":"2544x1456"}},"text_1344x768":{"title":"text_1344x768","value":{"model":"minimax-h3","prompt":"A cinematic view of clouds moving over green mountains, locked camera, no text.","seconds":5,"size":"1344x768"}},"url_reference_image":{"title":"url_reference_image","value":{"model":"minimax-h3","prompt":"The referenced characters walk together through a city street. Preserve their appearance and use natural motion. No text.","seconds":5,"size":"1344x768","input_reference":["https://your-image-host/reference-1.png","https://your-image-host/reference-2.jpg"]}},"uploaded_reference_images":{"title":"uploaded_reference_images","value":{"model":"minimax-h3","prompt":"The uploaded reference characters walk together through a city street. Preserve their appearance and use natural motion. No text.","seconds":5,"size":"2544x1456","input_reference":["@/path/to/reference-1.png","@/path/to/reference-2.jpg"]}},"https_reference_video":{"title":"https_reference_video","value":{"model":"minimax-h3","prompt":"Follow the reference clip's shot structure and motion. No text.","seconds":5,"size":"1344x768","reference_videos":["https://your-media-host/reference.mp4"]}},"https_reference_audio":{"title":"https_reference_audio","value":{"model":"minimax-h3","prompt":"Animate the reference image and synchronize the motion with the reference audio. No text.","seconds":5,"size":"1344x768","reference_audios":["https://your-media-host/reference.mp3"],"input_reference":"https://your-image-host/reference.png"}},"https_first_last_frames":{"title":"https_first_last_frames","value":{"model":"minimax-h3","prompt":"Move naturally from the opening frame to the ending frame. No text.","seconds":5,"size":"1344x768","first_frame":"https://your-image-host/first-frame.png","last_frame":"https://your-image-host/last-frame.png"}},"uploaded_first_last_frames":{"title":"uploaded_first_last_frames","value":{"model":"minimax-h3","prompt":"Move naturally from the uploaded opening frame to the uploaded ending frame. No text.","seconds":5,"size":"1344x768","first_frame":"\u003cbinary PNG file>","last_frame":"\u003cbinary PNG file>"}},"uploaded_reference_video":{"title":"uploaded_reference_video","value":{"model":"minimax-h3","prompt":"Follow the uploaded reference video shot structure and motion. No text.","seconds":5,"size":"1344x768","reference_videos":["@/path/to/reference.mp4"]}},"uploaded_reference_audio_with_image":{"title":"uploaded_reference_audio_with_image","value":{"model":"minimax-h3","prompt":"Animate the reference image and synchronize the motion with the uploaded reference audio. No text.","seconds":5,"size":"1344x768","reference_audios":["@/path/to/reference.mp3"],"input_reference":"https://your-image-host/reference.png"}},"h3_max_text_480p":{"title":"h3_max_text_480p","value":{"model":"minimax-h3-max","prompt":"A paper boat crosses a pond. Fixed camera. No text.","seconds":5,"size":"864x480"}},"h3_max_text_768p":{"title":"h3_max_text_768p","value":{"model":"minimax-h3-max","prompt":"A paper boat crosses a pond. Fixed camera. No text.","seconds":5,"size":"1360x768"}},"h3_max_reference_images":{"title":"h3_max_reference_images","value":{"model":"minimax-h3-max","prompt":"The two reference characters walk through a park. No text.","seconds":5,"size":"1360x768","input_reference":["https://your-image-host/reference-1.png","https://your-image-host/reference-2.jpg"]}},"h3_max_mixed_references":{"title":"h3_max_mixed_references","value":{"model":"minimax-h3-max","prompt":"Use the image for the subject, video for motion, and audio for sound.","seconds":5,"size":"1360x768","input_reference":["https://your-image-host/reference.png"],"reference_videos":["https://your-media-host/reference.mp4"],"reference_audios":["https://your-media-host/reference.mp3"]}},"h3_max_first_last_frames":{"title":"h3_max_first_last_frames","value":{"model":"minimax-h3-max","prompt":"Move from the opening frame to the ending frame. No text.","seconds":5,"size":"1360x768","first_frame":"https://your-image-host/first-frame.png","last_frame":"https://your-image-host/last-frame.png"}}},"exampleType":"examples"}},"exampleType":"examples"},"responses":{"bc91e2f3-adf2-42fd-ad89-36672bf19aa9":{"description":"Task created. Store the returned id and use it in retrieve and content requests.","content":{"application/json":{"schema":{"type":"object","required":["id","object","model","status","progress","created_at"],"properties":{"id":{"type":"string","description":"Task ID. Use this value as task_id in retrieve and content requests.","example":"\u003ctask_id>","isRequired":true,"uniqueKey":"id","typeLabel":"string"},"object":{"type":"string","const":"video","description":"Object type for the asynchronous video task.","isRequired":true,"uniqueKey":"object","typeLabel":"string"},"model":{"type":"string","description":"Model ID that the task uses.","enum":["minimax-h3","minimax-h3-max"],"isRequired":true,"uniqueKey":"model","typeLabel":"enum\u003cstring>"},"status":{"type":"string","enum":["queued","in_progress","completed","failed"],"description":"Task lifecycle status. Poll until the value is completed or failed.","isRequired":true,"uniqueKey":"status","typeLabel":"enum\u003cstring>"},"progress":{"type":"integer","minimum":0,"maximum":100,"description":"Task progress as a coarse percentage.","isRequired":true,"uniqueKey":"progress","typeLabel":"integer"},"created_at":{"type":"integer","format":"int64","description":"Task creation time as a Unix timestamp in seconds.","isRequired":true,"uniqueKey":"created_at","typeLabel":"integer\u003cint64>"},"task_id":{"type":"string","description":"Compatibility alias for id. This field can be omitted from retrieve responses.","example":"\u003ctask_id>","uniqueKey":"task_id","typeLabel":"string"},"completed_at":{"type":"integer","format":"int64","description":"Unix timestamp returned by the platform. Use status, not this field, to decide when polling can stop.","uniqueKey":"completed_at","typeLabel":"integer\u003cint64>"},"expires_at":{"type":"integer","format":"int64","description":"Result expiration time as a Unix timestamp in seconds when the task provides one.","uniqueKey":"expires_at","typeLabel":"integer\u003cint64>"},"video_url":{"type":"string","format":"uri","description":"Video delivery URL. This field appears on completed tasks.","example":"https://your-media-host/result.mp4","uniqueKey":"video_url","typeLabel":"string\u003curi>"},"error":{"type":"object","description":"Failure details. This field appears when the task fails.","properties":{"message":{"type":"string","description":"Human-readable failure description.","uniqueKey":"error.message","typeLabel":"string"},"code":{"type":"string","description":"Failure code when the task provides one.","uniqueKey":"error.code","typeLabel":"string"}},"additionalProperties":true,"uniqueKey":"error","typeLabel":"object"}},"additionalProperties":true,"uniqueKey":"","typeLabel":"object"},"example":{"id":"\u003ctask_id>","task_id":"\u003ctask_id>","object":"video","model":"minimax-h3","status":"queued","progress":0,"created_at":1779938152},"examples":{"Example":{"title":"Example","value":{"id":"\u003ctask_id>","task_id":"\u003ctask_id>","object":"video","model":"minimax-h3","status":"queued","progress":0,"created_at":1779938152}}},"exampleType":"examples"}},"exampleType":"examples"}},"security":{"60e09eff-3c70-4be9-a809-7fb264920b56":{"bearerAuth":{"type":"http","scheme":"bearer","description":"Bearer authentication. Use your CometAPI API key.","scopes":[]}}},"servers":{"3788f4d3-05af-4d2f-8c0a-4ae23c511ee9":{"url":"https://api.cometapi.com"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","description":"Bearer authentication. Use your CometAPI API key.","scopes":[]},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Bearer authentication. Use your CometAPI API key.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"bearerAuth","name":"Authorization"}],"title":"bearerAuth"}]},"originalFileLocation":"api/openapi/video/minimax-h3/post-create.openapi.json"},"subdomain":"cometapi","siteName":"CometAPI Documentation","title":"Create a MiniMax H3 video - CometAPI Documentation","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{"en":{"href":"/api/video/minimax-h3/create","matchLevel":0},"zh-Hans":{"href":"/zh-Hans/api/video/minimax-h3/create","matchLevel":1,"noindex":true},"zh-Hant":{"href":"/zh-Hant/api/video/minimax-h3/create","matchLevel":1,"noindex":true},"ja":{"href":"/ja/api/video/minimax-h3/create","matchLevel":1,"noindex":true},"ko":{"href":"/ko/api/video/minimax-h3/create","matchLevel":1,"noindex":true},"fr":{"href":"/fr/api/video/minimax-h3/create","matchLevel":1,"noindex":true},"de":{"href":"/de/api/video/minimax-h3/create","matchLevel":1,"noindex":true},"es":{"href":"/es/api/video/minimax-h3/create","matchLevel":1,"noindex":true},"it":{"href":"/it/api/video/minimax-h3/create","matchLevel":1,"noindex":true},"pt":{"href":"/pt/api/video/minimax-h3/create","matchLevel":1,"noindex":true},"ru":{"href":"/ru/api/video/minimax-h3/create","matchLevel":1,"noindex":true},"ar":{"href":"/ar/api/video/minimax-h3/create","matchLevel":1,"noindex":true},"vi":{"href":"/vi/api/video/minimax-h3/create","matchLevel":1,"noindex":true},"id":{"href":"/id/api/video/minimax-h3/create","matchLevel":1,"noindex":true},"tr":{"href":"/tr/api/video/minimax-h3/create","matchLevel":1,"noindex":true},"pl":{"href":"/pl/api/video/minimax-h3/create","matchLevel":1,"noindex":true},"nl":{"href":"/nl/api/video/minimax-h3/create","matchLevel":1,"noindex":true},"no":{"href":"/no/api/video/minimax-h3/create","matchLevel":1,"noindex":true},"uk":{"href":"/uk/api/video/minimax-h3/create","matchLevel":1,"noindex":true}}},"lastModified":"2026-09-16T02:17:43.368Z","gitLastModified":"2026-09-14T08:20:13.000Z","originalFileLocation":"api/video/minimax-h3/create.mdx","locale":"en"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Create a MiniMax H3 or H3-Max video task with text, reference media, or first and last frames through CometAPI\">\u003cmeta data-mint-head name=\"application-name\" content=\"CometAPI Documentation\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/cometapi/Jhcr00uAqm6Ci9Vs/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/cometapi/Jhcr00uAqm6Ci9Vs/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/cometapi/Jhcr00uAqm6Ci9Vs/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/cometapi/Jhcr00uAqm6Ci9Vs/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/cometapi/Jhcr00uAqm6Ci9Vs/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/cometapi/Jhcr00uAqm6Ci9Vs/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/cometapi/Jhcr00uAqm6Ci9Vs/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/cometapi/Jhcr00uAqm6Ci9Vs/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/cometapi/Jhcr00uAqm6Ci9Vs/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Create a MiniMax H3 video - CometAPI Documentation\">\u003cmeta data-mint-head property=\"og:description\" content=\"Create a MiniMax H3 or H3-Max video task with text, reference media, or first and last frames through CometAPI\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"CometAPI Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://apidoc.cometapi.com/api/video/minimax-h3/create\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://cometapi.mintlify.app/_mintlify/api/og/v2?division=MiniMax+H3\u0026amp;title=Create+a+MiniMax+H3+video\u0026amp;description=Create+a+MiniMax+H3+or+H3-Max+video+task+with+text%2C+reference+media%2C+or+first+and+last+frames+through+CometAPI\u0026amp;theme=8f4122d879437f2cf832428a\u0026amp;signature=c1ff65410d56408208c0c26c931524925b6cd28dbbfe622d537379799779b18b\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Create a MiniMax H3 video - CometAPI Documentation\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Create a MiniMax H3 or H3-Max video task with text, reference media, or first and last frames through CometAPI\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://cometapi.mintlify.app/_mintlify/api/og/v2?division=MiniMax+H3\u0026amp;title=Create+a+MiniMax+H3+video\u0026amp;description=Create+a+MiniMax+H3+or+H3-Max+video+task+with+text%2C+reference+media%2C+or+first+and+last+frames+through+CometAPI\u0026amp;theme=8f4122d879437f2cf832428a\u0026amp;signature=c1ff65410d56408208c0c26c931524925b6cd28dbbfe622d537379799779b18b\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/cometapi/Jhcr00uAqm6Ci9Vs/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"CometAPI Documentation\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#00ACE2\">\u003cmeta data-mint-head name=\"author\" content=\"CometAPI\">\u003cmeta data-mint-head name=\"copyright\" content=\"Copyright 2026 CometAPI\">\u003cmeta data-mint-head name=\"category\" content=\"Technology\">\u003cmeta data-mint-head name=\"distribution\" content=\"global\">\u003cmeta data-mint-head name=\"coverage\" content=\"Worldwide\">\u003clink data-mint-head rel=\"canonical\" href=\"https://apidoc.cometapi.com/api/video/minimax-h3/create\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api/video/minimax-h3/create.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://apidoc.cometapi.com/#organization\",\"name\":\"CometAPI Documentation\",\"url\":\"https://apidoc.cometapi.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/cometapi/cmhWX83dzrkf2F-2/logo/comet-light.svg?fit=max\u0026auto=format\u0026n=cmhWX83dzrkf2F-2\u0026q=85\u0026s=7ae2fde0df7785d111912bce23157ef2\"}},{\"@type\":\"WebSite\",\"@id\":\"https://apidoc.cometapi.com#website\",\"name\":\"CometAPI Documentation\",\"url\":\"https://apidoc.cometapi.com\",\"publisher\":{\"@id\":\"https://apidoc.cometapi.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://apidoc.cometapi.com/api/video/minimax-h3/create#webpage\",\"url\":\"https://apidoc.cometapi.com/api/video/minimax-h3/create\",\"name\":\"Create a MiniMax H3 video\",\"description\":\"Create a MiniMax H3 or H3-Max video task with text, reference media, or first and last frames through CometAPI\",\"dateModified\":\"2026-09-14T08:20:13.000Z\",\"isPartOf\":{\"@id\":\"https://apidoc.cometapi.com#website\"},\"breadcrumb\":{\"@id\":\"https://apidoc.cometapi.com/api/video/minimax-h3/create#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://apidoc.cometapi.com/api/video/minimax-h3/create#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Video Models\",\"item\":\"https://apidoc.cometapi.com/api/video/index\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Create a MiniMax H3 video\",\"item\":\"https://apidoc.cometapi.com/api/video/minimax-h3/create\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://apidoc.cometapi.com/api/video/minimax-h3/create#apireference\",\"headline\":\"Create a MiniMax H3 video\",\"name\":\"Create a MiniMax H3 video\",\"description\":\"Create a MiniMax H3 or H3-Max video task with text, reference media, or first and last frames through CometAPI\",\"url\":\"https://apidoc.cometapi.com/api/video/minimax-h3/create\",\"mainEntityOfPage\":{\"@id\":\"https://apidoc.cometapi.com/api/video/minimax-h3/create#webpage\"},\"dateModified\":\"2026-09-14T08:20:13.000Z\",\"keywords\":\"CometAPI, MiniMax H3, minimax-h3, video generation API, POST /v1/videos, text to video, reference image video\",\"publisher\":{\"@id\":\"https://apidoc.cometapi.com/#organization\"},\"isPartOf\":{\"@id\":\"https://apidoc.cometapi.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"CometAPI Documentation\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"CometAPI Documentation","nav":{"global":null,"languages":[{"language":"en","tabs":[{"tab":"Docs","pages":[{"title":"Docs","href":""}]},{"tab":"API","groups":[{"group":"Text Models","icon":"message","root":{"title":"Text and chat APIs","sidebarTitle":"Text and chat APIs","href":"/api/text"},"expanded":false,"pages":[{"title":"Create a chat completion","sidebarTitle":"Create a chat completion","openapi":"api/openapi/text/post-chat.openapi.json POST /v1/chat/completions","href":"/api/text/chat"},{"title":"Create a model response","sidebarTitle":"Create a model response","openapi":"api/openapi/text/post-responses.openapi.json POST /v1/responses","href":"/api/text/responses"},{"title":"Create a Message","sidebarTitle":"Create a Message","openapi":"api/openapi/text/post-anthropic-messages.openapi.json POST /v1/messages","href":"/api/text/anthropic-messages"},{"title":"Generate content","sidebarTitle":"Generate content","openapi":"api/openapi/text/post-gemini-generating-content.openapi.json POST /v1beta/models/{model}:{operator}","href":"/api/text/gemini-generating-content"}]},{"group":"Image Models","icon":"image","root":{"title":"Image generation and editing APIs","sidebarTitle":"Image Models","href":"/api/image/index"},"expanded":false,"pages":[{"group":"OpenAI","pages":[{"title":"Create an image","sidebarTitle":"Create an image","openapi":"api/openapi/image/openai/post-images.openapi.json POST /v1/images/generations","href":"/api/image/openai/images"},{"title":"Retrieve an image generation task","sidebarTitle":"Retrieve image task","openapi":"api/openapi/image/openai/get-image-generation-task.openapi.json GET /v1/images/generations/{task_id}","href":"/api/image/openai/image-generation-task"},{"title":"Create image edit","sidebarTitle":"Create image edit","openapi":"api/openapi/image/openai/post-image-editing.openapi.json POST /v1/images/edits","href":"/api/image/openai/image-editing"}]},{"group":"Gemini","pages":[{"title":"Generate images with Gemini","sidebarTitle":"Generate images with Gemini","openapi":"api/openapi/image/gemini/post-gemini-generates-image.openapi.json POST /v1beta/models/{model}:generateContent","href":"/api/image/gemini/gemini-generates-image"},{"title":"Use Gemini image models","sidebarTitle":"Use Gemini image models","href":"/api/image/gemini/generate-image-guide"}]},{"group":"Grok","pages":[{"title":"Generate images with Grok","sidebarTitle":"Generate images","openapi":"api/openapi/image/grok/post-image-generation.openapi.json POST /v1/images/generations","href":"/api/image/grok/image-generation"},{"title":"Edit images with Grok","sidebarTitle":"Edit images","openapi":"api/openapi/image/grok/post-image-editing.openapi.json POST /v1/images/edits","href":"/api/image/grok/image-editing"}]},{"group":"Kling","pages":[{"title":"Generate images with Kling","sidebarTitle":"Generate images with Kling","openapi":"api/openapi/image/kling/post-image-generation.openapi.json POST /kling/v1/images/generations","href":"/api/image/kling/image-generation"},{"title":"Generate a Kling image from multiple images","sidebarTitle":"Generate a Kling image from multiple images","openapi":"api/openapi/image/kling/post-multi-image-to-image.openapi.json POST /kling/v1/images/multi-image2image","href":"/api/image/kling/multi-image-to-image"},{"title":"Expand an image with Kling","sidebarTitle":"Expand an image with Kling","openapi":"api/openapi/image/kling/post-image-expansion.openapi.json POST /kling/v1/images/editing/expand","href":"/api/image/kling/image-expansion"},{"title":"Create a Kling Omni image task","sidebarTitle":"Create a Kling Omni image task","openapi":"api/openapi/image/kling/post-omni-image.openapi.json POST /kling/v1/images/omni-image","href":"/api/image/kling/omni-image"},{"title":"Get a Kling Omni image task","sidebarTitle":"Get a Kling Omni image task","openapi":"api/openapi/image/kling/get-omni-image.openapi.json GET /kling/v1/images/omni-image/{task_id}","href":"/api/image/kling/omni-image-query"}]},{"group":"Midjourney","pages":[{"title":"Start with Midjourney API","sidebarTitle":"Start with Midjourney API","href":"/api/image/midjourney/midjourney-api-quick-start"},{"group":"Task fetching","pages":[{"title":"List Midjourney tasks","sidebarTitle":"List Midjourney tasks","openapi":"api/openapi/image/midjourney/task-fetching-api/post-list-by-condition.openapi.json POST /mj/task/list-by-condition","href":"/api/image/midjourney/task-fetching-api/list-by-condition"},{"title":"Fetch a Midjourney task","sidebarTitle":"Fetch a Midjourney task","openapi":"api/openapi/image/midjourney/task-fetching-api/get-fetch-single-task.openapi.json GET /mj/task/{id}/fetch","href":"/api/image/midjourney/task-fetching-api/fetch-single-task"}]},{"title":"Create a Midjourney imagine task","sidebarTitle":"Create a Midjourney imagine task","openapi":"api/openapi/image/midjourney/post-imagine.openapi.json POST /mj/submit/imagine","href":"/api/image/midjourney/imagine"},{"title":"Create a Midjourney video task","sidebarTitle":"Create a Midjourney video task","openapi":"api/openapi/image/midjourney/post-submit-video.openapi.json POST /mj/submit/video","href":"/api/image/midjourney/submit-video"},{"title":"Create a Midjourney editor task","sidebarTitle":"Create a Midjourney editor task","openapi":"api/openapi/image/midjourney/post-submit-editor.openapi.json POST /mj/submit/edits","href":"/api/image/midjourney/submit-editor"},{"title":"Create a Midjourney action task","sidebarTitle":"Create a Midjourney action task","openapi":"api/openapi/image/midjourney/post-action.openapi.json POST /mj/submit/action","href":"/api/image/midjourney/action"},{"title":"Create a Midjourney blend task","sidebarTitle":"Create a Midjourney blend task","openapi":"api/openapi/image/midjourney/post-blend.openapi.json POST /mj/submit/blend","href":"/api/image/midjourney/blend"},{"title":"Describe an image with Midjourney","sidebarTitle":"Describe an image with Midjourney","openapi":"api/openapi/image/midjourney/post-describe.openapi.json POST /mj/submit/describe","href":"/api/image/midjourney/describe"},{"title":"Create a Midjourney modal task","sidebarTitle":"Create a Midjourney modal task","openapi":"api/openapi/image/midjourney/post-modal.openapi.json POST /mj/submit/modal","href":"/api/image/midjourney/modal"}]},{"group":"Replicate","pages":[{"title":"Create a Replicate prediction","sidebarTitle":"Create a Replicate prediction","openapi":"api/openapi/image/replicate/post-create-predictions-general.openapi.json POST /replicate/v1/models/{models}/predictions","href":"/api/image/replicate/create-predictions-general"},{"title":"Get a Replicate prediction","sidebarTitle":"Get a Replicate prediction","openapi":"api/openapi/image/replicate/get-replicate-query.openapi.json GET /replicate/v1/predictions/{id}","href":"/api/image/replicate/replicate-query"}]},{"group":"Seedream","pages":[{"title":"Create a Seedream image task","sidebarTitle":"Create image task","openapi":"api/openapi/image/seededit-seedream/post-bytedance-image-generation.openapi.json POST /v1/images/generations","href":"/api/image/seededit-seedream/bytedance-image-generation"},{"title":"Retrieve a Seedream image task","sidebarTitle":"Retrieve image task","openapi":"api/openapi/image/seededit-seedream/get-bytedance-image-generation-task.openapi.json GET /v1/images/generations/{task_id}","href":"/api/image/seededit-seedream/bytedance-image-generation-task"}]},{"group":"Flux","pages":[{"title":"Generate a FLUX image","sidebarTitle":"Generate a FLUX image","openapi":"api/openapi/image/flux/post-flux-generate-image.openapi.json POST /flux/v1/{model}","href":"/api/image/flux/flux-generate-image"},{"title":"Get a FLUX image result","sidebarTitle":"Get a FLUX image result","openapi":"api/openapi/image/flux/get-flux-query.openapi.json GET /flux/v1/get_result","href":"/api/image/flux/flux-query"}]}]},{"group":"Video Models","icon":"video","root":{"title":"Video generation APIs","sidebarTitle":"Video Models","href":"/api/video/index"},"expanded":false,"pages":[{"group":"Seedance","pages":[{"title":"Create a Seedance video","sidebarTitle":"Create a Seedance video","openapi":"api/openapi/video/seedance/post-seedance-create.openapi.json POST /v1/videos","href":"/api/video/seedance/create"},{"title":"Retrieve a Seedance video","sidebarTitle":"Retrieve a Seedance video","openapi":"api/openapi/video/seedance/get-seedance-query.openapi.json GET /v1/videos/{id}","href":"/api/video/seedance/query"}]},{"group":"HappyHorse","pages":[{"title":"Create a HappyHorse video","sidebarTitle":"Create a HappyHorse video","openapi":"api/openapi/video/happyhorse/post-create.openapi.json POST /v1/videos","href":"/api/video/happyhorse/create"},{"title":"Retrieve a HappyHorse video","sidebarTitle":"Retrieve a HappyHorse video","openapi":"api/openapi/video/happyhorse/get-retrieve.openapi.json GET /v1/videos/{task_id}","href":"/api/video/happyhorse/retrieve"},{"title":"Download HappyHorse video content","sidebarTitle":"Download HappyHorse video content","openapi":"api/openapi/video/happyhorse/get-retrieve-content.openapi.json GET /v1/videos/{task_id}/content","description":"Download the completed MP4 file for a HappyHorse video task through the content route.","href":"/api/video/happyhorse/retrieve-content"}]},{"group":"MiniMax H3","pages":[{"title":"Create a MiniMax H3 video","sidebarTitle":"Create a MiniMax H3 video","openapi":"api/openapi/video/minimax-h3/post-create.openapi.json POST /v1/videos","href":"/api/video/minimax-h3/create"},{"title":"Retrieve a MiniMax H3 video","sidebarTitle":"Retrieve a MiniMax H3 video","openapi":"api/openapi/video/minimax-h3/get-retrieve.openapi.json GET /v1/videos/{task_id}","description":"Retrieve a MiniMax H3 video task by task ID, including its status, progress, timestamps, result URL, or failure details.","href":"/api/video/minimax-h3/retrieve"},{"title":"Download MiniMax H3 video content","sidebarTitle":"Download MiniMax H3 video content","openapi":"api/openapi/video/minimax-h3/get-retrieve-content.openapi.json GET /v1/videos/{task_id}/content","href":"/api/video/minimax-h3/retrieve-content"}]},{"group":"Flux 3","pages":[{"title":"Create a Flux 3 video","sidebarTitle":"Create a Flux 3 video","openapi":"api/openapi/video/flux-3/post-create.openapi.json POST /v1/videos","href":"/api/video/flux-3/create"},{"title":"Retrieve a Flux 3 video","sidebarTitle":"Retrieve a Flux 3 video","openapi":"api/openapi/video/flux-3/get-retrieve.openapi.json GET /v1/videos/{task_id}","href":"/api/video/flux-3/retrieve"},{"title":"Download Flux 3 video content","sidebarTitle":"Download Flux 3 video content","openapi":"api/openapi/video/flux-3/get-retrieve-content.openapi.json GET /v1/videos/{task_id}/content","href":"/api/video/flux-3/retrieve-content"}]},{"group":"Veo 3","pages":[{"title":"Create a Veo 3 video","sidebarTitle":"Create a Veo 3 video","openapi":"api/openapi/video/veo3/post-create.openapi.json POST /v1/videos","href":"/api/video/veo3/create"},{"title":"Retrieve a Veo 3 video","sidebarTitle":"Retrieve a Veo 3 video","openapi":"api/openapi/video/veo3/get-retrieve.openapi.json GET /v1/videos/{video_id}","href":"/api/video/veo3/retrieve"}]},{"group":"Wan","pages":[{"title":"Create a Wan video","sidebarTitle":"Create a Wan video","openapi":"api/openapi/video/wan/post-create.openapi.json POST /v1/videos","href":"/api/video/wan/create"},{"title":"Retrieve a Wan video","sidebarTitle":"Retrieve a Wan video","openapi":"api/openapi/video/wan/get-retrieve.openapi.json GET /v1/videos/{task_id}","href":"/api/video/wan/retrieve"},{"title":"Download Wan video content","sidebarTitle":"Download Wan video content","openapi":"api/openapi/video/wan/get-retrieve-content.openapi.json GET /v1/videos/{task_id}/content","href":"/api/video/wan/retrieve-content"}]},{"group":"xAI","pages":[{"title":"Create a video with Grok","sidebarTitle":"Create a Grok video","openapi":"api/openapi/video/xai/post-video-generation.openapi.json POST /grok/v1/videos/generations","href":"/api/video/xai/video-generation"},{"title":"Create an xAI video edit","sidebarTitle":"Create an xAI video edit","openapi":"api/openapi/video/xai/post-video-edit.openapi.json POST /grok/v1/videos/edits","href":"/api/video/xai/video-edit"},{"title":"Get xAI video results","sidebarTitle":"Get xAI video results","openapi":"api/openapi/video/xai/get-get-video-generation-results.openapi.json GET /grok/v1/videos/{request_id}","href":"/api/video/xai/get-video-generation-results"}]},{"group":"Vidu","pages":[{"title":"Create a Vidu video","sidebarTitle":"Create a Vidu video","openapi":"api/openapi/video/vidu/post-create.openapi.json POST /v1/videos","href":"/api/video/vidu/create"},{"title":"Retrieve a Vidu video","sidebarTitle":"Retrieve a Vidu video","openapi":"api/openapi/video/vidu/get-retrieve.openapi.json GET /v1/videos/{task_id}","href":"/api/video/vidu/retrieve"},{"title":"Download Vidu video content","sidebarTitle":"Download Vidu video content","openapi":"api/openapi/video/vidu/get-retrieve-content.openapi.json GET /v1/videos/{task_id}/content","href":"/api/video/vidu/retrieve-content"}]},{"group":"Omni","tag":"Beta","pages":[{"title":"Create an Omni video from text, image, or video","sidebarTitle":"Create an Omni video","openapi":"api/openapi/video/omni/post-create.openapi.json POST /v1/videos","href":"/api/video/omni/create"},{"title":"Retrieve an Omni video","sidebarTitle":"Retrieve an Omni video","openapi":"api/openapi/video/omni/get-retrieve.openapi.json GET /v1/videos/{task_id}","href":"/api/video/omni/retrieve"},{"title":"Download Omni video content","sidebarTitle":"Download Omni video content","openapi":"api/openapi/video/omni/get-retrieve-content.openapi.json GET /v1/videos/{task_id}/content","href":"/api/video/omni/retrieve-content"}]},{"group":"Kling","pages":[{"group":"Multimodal video editing","pages":[{"title":"Initialize a Kling editing session","sidebarTitle":"Initialize a Kling editing session","openapi":"api/openapi/video/kling/multimodal-video-editing/post-initialize-video-for-editing.openapi.json POST /kling/v1/videos/multi-elements/init-selection","href":"/api/video/kling/multimodal-video-editing/initialize-video-for-editing"},{"title":"Add Kling video selection","sidebarTitle":"Add Kling video selection","openapi":"api/openapi/video/kling/multimodal-video-editing/post-add-video-selection.openapi.json POST /kling/v1/videos/multi-elements/add-selection","href":"/api/video/kling/multimodal-video-editing/add-video-selection"},{"title":"Delete Kling video selection","sidebarTitle":"Delete Kling video selection","openapi":"api/openapi/video/kling/multimodal-video-editing/post-delete-video-selection.openapi.json POST /kling/v1/videos/multi-elements/delete-selection","href":"/api/video/kling/multimodal-video-editing/delete-video-selection"},{"title":"Clear Kling video selection","sidebarTitle":"Clear Kling video selection","openapi":"api/openapi/video/kling/multimodal-video-editing/post-clear-video-selection.openapi.json POST /kling/v1/videos/multi-elements/clear-selection","href":"/api/video/kling/multimodal-video-editing/clear-video-selection"},{"title":"Preview Kling video selection","sidebarTitle":"Preview Kling video selection","openapi":"api/openapi/video/kling/multimodal-video-editing/post-preview-selected-video-area.openapi.json POST /kling/v1/videos/multi-elements/preview-selection","href":"/api/video/kling/multimodal-video-editing/preview-selected-video-area"},{"title":"Create a Kling multimodal edit task","sidebarTitle":"Create a Kling multimodal edit task","openapi":"api/openapi/video/kling/multimodal-video-editing/post-create-task.openapi.json POST /kling/v1/videos/multi-elements","href":"/api/video/kling/multimodal-video-editing/create-task"}]},{"group":"Model routes","pages":[{"title":"Create a Kling text-to-video task by model","sidebarTitle":"Text to video","openapi":"api/openapi/video/kling/model-routes/post-text-to-video.openapi.json POST /text-to-video/{model}","href":"/api/video/kling/model-routes/text-to-video"},{"title":"Create a Kling image-to-video task by model","sidebarTitle":"Image to video","openapi":"api/openapi/video/kling/model-routes/post-image-to-video.openapi.json POST /image-to-video/{model}","href":"/api/video/kling/model-routes/image-to-video"},{"title":"Create a Kling Omni video","sidebarTitle":"Omni video","openapi":"api/openapi/video/kling/model-routes/post-omni-video.openapi.json POST /omni-video/{model}","href":"/api/video/kling/model-routes/omni-video"},{"title":"Create a Kling motion-control video","sidebarTitle":"Motion control","openapi":"api/openapi/video/kling/model-routes/post-motion-control.openapi.json POST /motion-control/{model}","href":"/api/video/kling/model-routes/motion-control"},{"title":"Get a Kling model-route task","sidebarTitle":"Get a Kling task","openapi":"api/openapi/video/kling/model-routes/get-tasks.openapi.json GET /tasks","href":"/api/video/kling/model-routes/tasks"}]},{"title":"Create a Kling text-to-video task","sidebarTitle":"Create a Kling text-to-video task","openapi":"api/openapi/video/kling/post-text-to-video.openapi.json POST /kling/v1/videos/text2video","href":"/api/video/kling/text-to-video"},{"title":"Create a Kling image-to-video task","sidebarTitle":"Create a Kling image-to-video task","openapi":"api/openapi/video/kling/post-image-to-video.openapi.json POST /kling/v1/videos/image2video","href":"/api/video/kling/image-to-video"},{"title":"Create a Kling Motion Control task","sidebarTitle":"Create a Kling Motion Control task","openapi":"api/openapi/video/kling/post-motion-control.openapi.json POST /kling/v1/videos/motion-control","href":"/api/video/kling/motion-control"},{"title":"Create a Kling multi-image video task","sidebarTitle":"Create a Kling multi-image video task","openapi":"api/openapi/video/kling/post-multi-image-to-video.openapi.json POST /kling/v1/videos/multi-image2video","href":"/api/video/kling/multi-image-to-video"},{"title":"Extend a Kling video","sidebarTitle":"Extend a Kling video","openapi":"api/openapi/video/kling/post-video-extension.openapi.json POST /kling/v1/videos/video-extend","href":"/api/video/kling/video-extension"},{"title":"Create Kling speech","sidebarTitle":"Create Kling speech","openapi":"api/openapi/video/kling/post-tts.openapi.json POST /kling/v1/audio/tts","href":"/api/video/kling/tts"},{"title":"Create a Kling avatar video","sidebarTitle":"Create a Kling avatar video","openapi":"api/openapi/video/kling/post-avatar.openapi.json POST /kling/v1/videos/avatar/image2video","href":"/api/video/kling/avatar"},{"title":"Identify faces for Kling lip-sync","sidebarTitle":"Identify faces for Kling lip-sync","openapi":"api/openapi/video/kling/post-lip-sync.openapi.json POST /kling/v1/videos/identify-face","href":"/api/video/kling/lip-sync"},{"title":"Create a Kling advanced lip-sync task","sidebarTitle":"Create a Kling advanced lip-sync task","openapi":"api/openapi/video/kling/post-counterpart-creating-tasks.openapi.json POST /kling/v1/videos/advanced-lip-sync","href":"/api/video/kling/counterpart-creating-tasks"},{"title":"Apply Kling video effects","sidebarTitle":"Apply Kling video effects","openapi":"api/openapi/video/kling/post-video-effects.openapi.json POST /kling/v1/videos/effects","href":"/api/video/kling/video-effects"},{"title":"Create Kling text-to-audio","sidebarTitle":"Create Kling text-to-audio","openapi":"api/openapi/video/kling/post-text-to-audio.openapi.json POST /kling/v1/audio/text-to-audio","href":"/api/video/kling/text-to-audio"},{"title":"Create Kling video-to-audio","sidebarTitle":"Create Kling video-to-audio","openapi":"api/openapi/video/kling/post-video-to-audio.openapi.json POST /kling/v1/audio/video-to-audio","href":"/api/video/kling/video-to-audio"},{"title":"Recognize images with Kling","sidebarTitle":"Recognize images with Kling","openapi":"api/openapi/video/kling/post-image-recognize.openapi.json POST /kling/v1/videos/image-recognize","href":"/api/video/kling/image-recognize"},{"title":"Get a Kling task","sidebarTitle":"Get a Kling task","openapi":"api/openapi/video/kling/get-individual-queries.openapi.json GET /kling/v1/{action}/{action2}/{task_id}","href":"/api/video/kling/individual-queries"},{"title":"Create a Kling Omni video","sidebarTitle":"Create a Kling Omni video","openapi":"api/openapi/video/kling/post-omni-video.openapi.json POST /kling/v1/videos/omni-video","href":"/api/video/kling/omni-video"},{"title":"Get a Kling Omni video","sidebarTitle":"Get a Kling Omni video","openapi":"api/openapi/video/kling/get-omni-query.openapi.json GET /kling/v1/videos/omni-video/{task_id}","href":"/api/video/kling/omni-query"},{"title":"Use Kling callback URLs","sidebarTitle":"Use Kling callback URLs","href":"/api/video/kling/callback_url"}]},{"group":"Runway","pages":[{"title":"Runway API overview","sidebarTitle":"Overview","href":"/api/video/runway/overview"},{"group":"Images","pages":[{"title":"Create a Runway image","sidebarTitle":"Create a Runway image","openapi":"api/openapi/video/runway/official-format/post-generate-an-image-from-text.openapi.json POST /runwayml/v1/text_to_image","href":"/api/video/runway/official-format/generate-an-image-from-text"}]},{"group":"Videos","pages":[{"title":"Create a Runway image-to-video task","sidebarTitle":"Create a Runway image-to-video task","openapi":"api/openapi/video/runway/official-format/post-runway-images-raw-video.openapi.json POST /runwayml/v1/image_to_video","href":"/api/video/runway/official-format/runway-images-raw-video"},{"title":"Create a Runway text-to-video task","sidebarTitle":"Create a Runway text-to-video task","openapi":"api/openapi/video/runway/official-format/post-generate-a-video-from-text.openapi.json POST /runwayml/v1/text_to_video","href":"/api/video/runway/official-format/generate-a-video-from-text"},{"title":"Create a Runway video-to-video task","sidebarTitle":"Create a Runway video-to-video task","openapi":"api/openapi/video/runway/official-format/post-generate-a-video-from-a-video.openapi.json POST /runwayml/v1/video_to_video","href":"/api/video/runway/official-format/generate-a-video-from-a-video"},{"title":"Create a Runway character performance","sidebarTitle":"Create a Runway character performance","openapi":"api/openapi/video/runway/official-format/post-control-a-character.openapi.json POST /runwayml/v1/character_performance","href":"/api/video/runway/official-format/control-a-character"},{"title":"Upscale a Runway video","sidebarTitle":"Upscale a Runway video","openapi":"api/openapi/video/runway/official-format/post-upscale-a-video.openapi.json POST /runwayml/v1/video_upscale","href":"/api/video/runway/official-format/upscale-a-video"}]},{"group":"Audio","pages":[{"title":"Generate Runway sound effects","sidebarTitle":"Generate Runway sound effects","openapi":"api/openapi/video/runway/official-format/post-generate-sound-effects.openapi.json POST /runwayml/v1/sound_effect","href":"/api/video/runway/official-format/generate-sound-effects"},{"title":"Generate Runway speech from text","sidebarTitle":"Generate Runway speech from text","openapi":"api/openapi/video/runway/official-format/post-generate-speech-from-text.openapi.json POST /runwayml/v1/text_to_speech","href":"/api/video/runway/official-format/generate-speech-from-text"},{"title":"Convert Runway speech","sidebarTitle":"Convert Runway speech","openapi":"api/openapi/video/runway/official-format/post-convert-speech.openapi.json POST /runwayml/v1/speech_to_speech","href":"/api/video/runway/official-format/convert-speech"},{"title":"Dub Runway audio","sidebarTitle":"Dub Runway audio","openapi":"api/openapi/video/runway/official-format/post-dub-audio.openapi.json POST /runwayml/v1/voice_dubbing","href":"/api/video/runway/official-format/dub-audio"},{"title":"Isolate a Runway voice","sidebarTitle":"Isolate a Runway voice","openapi":"api/openapi/video/runway/official-format/post-isolate-voice.openapi.json POST /runwayml/v1/voice_isolation","href":"/api/video/runway/official-format/isolate-voice"}]},{"group":"Tasks","pages":[{"title":"Get a Runway task","sidebarTitle":"Get a Runway task","openapi":"api/openapi/video/runway/official-format/get-runway-to-get-task-details.openapi.json GET /runwayml/v1/tasks/{id}","href":"/api/video/runway/official-format/runway-to-get-task-details"}]}]}]},{"group":"Audio Models","icon":"volume-high","root":{"title":"Audio APIs","sidebarTitle":"Audio Models","href":"/api/audio/index"},"expanded":false,"pages":[{"title":"Create speech","sidebarTitle":"Create speech","openapi":"api/openapi/audio/post-create-speech.openapi.json POST /v1/audio/speech","href":"/api/audio/create-speech"},{"title":"Create transcription","sidebarTitle":"Create transcription","openapi":"api/openapi/audio/post-create-transcription.openapi.json POST /v1/audio/transcriptions","href":"/api/audio/create-transcription"},{"title":"Create translation","sidebarTitle":"Create translation","openapi":"api/openapi/audio/post-create-translation.openapi.json POST /v1/audio/translations","href":"/api/audio/create-translation"}]},{"group":"Embeddings","icon":"database","root":{"title":"Embeddings API","sidebarTitle":"Embeddings","href":"/api/embeddings/index"},"expanded":false,"pages":[{"title":"Create embeddings","sidebarTitle":"Create embeddings","openapi":"api/openapi/text/post-embeddings.openapi.json POST /v1/embeddings","href":"/api/text/embeddings"}]},{"group":"Content moderation","icon":"shield-check","expanded":false,"pages":[{"title":"Create a moderation","sidebarTitle":"Create a moderation","openapi":"api/openapi/content-moderation/create-moderation.openapi.json POST /v1/moderations","href":"/api/content-moderation/create-moderation"}]},{"group":"API keys","icon":"key","expanded":false,"pages":[{"title":"Get current API key","sidebarTitle":"Get current API key","openapi":"api/openapi/api-keys/get-current-api-key.openapi.json GET /api/usage/token","href":"/api/api-keys/get-current-api-key"},{"title":"List API keys","sidebarTitle":"List API keys","openapi":"api/openapi/api-keys/list-api-keys.openapi.json GET /api/token/","href":"/api/api-keys/list-api-keys"},{"title":"Create an API key","sidebarTitle":"Create an API key","openapi":"api/openapi/api-keys/create-api-key.openapi.json POST /api/token/","href":"/api/api-keys/create-api-key"},{"title":"Retrieve an API key","sidebarTitle":"Retrieve an API key","openapi":"api/openapi/api-keys/get-api-key.openapi.json GET /api/token/{id}","href":"/api/api-keys/get-api-key"},{"title":"Delete an API key","sidebarTitle":"Delete an API key","openapi":"api/openapi/api-keys/delete-api-key.openapi.json DELETE /api/token/{id}","href":"/api/api-keys/delete-api-key"},{"title":"Update an API key","sidebarTitle":"Update an API key","openapi":"api/openapi/api-keys/update-api-key.openapi.json PUT /api/token/","href":"/api/api-keys/update-api-key"}]}]},{"tab":"Integrations","pages":[{"title":"Integrations","href":"/integrations"}]}]},{"language":"zh-Hans","pages":[{"title":"zh-Hans","href":"/zh-Hans/api/video/minimax-h3/create"}]},{"language":"zh-Hant","pages":[{"title":"zh-Hant","href":"/zh-Hant/api/video/minimax-h3/create"}]},{"language":"ja","pages":[{"title":"ja","href":"/ja/api/video/minimax-h3/create"}]},{"language":"ko","pages":[{"title":"ko","href":"/ko/api/video/minimax-h3/create"}]},{"language":"fr","pages":[{"title":"fr","href":"/fr/api/video/minimax-h3/create"}]},{"language":"de","pages":[{"title":"de","href":"/de/api/video/minimax-h3/create"}]},{"language":"es","pages":[{"title":"es","href":"/es/api/video/minimax-h3/create"}]},{"language":"it","pages":[{"title":"it","href":"/it/api/video/minimax-h3/create"}]},{"language":"pt","pages":[{"title":"pt","href":"/pt/api/video/minimax-h3/create"}]},{"language":"ru","pages":[{"title":"ru","href":"/ru/api/video/minimax-h3/create"}]},{"language":"ar","pages":[{"title":"ar","href":"/ar/api/video/minimax-h3/create"}]},{"language":"vi","pages":[{"title":"vi","href":"/vi/api/video/minimax-h3/create"}]},{"language":"id","pages":[{"title":"id","href":"/id/api/video/minimax-h3/create"}]},{"language":"tr","pages":[{"title":"tr","href":"/tr/api/video/minimax-h3/create"}]},{"language":"pl","pages":[{"title":"pl","href":"/pl/api/video/minimax-h3/create"}]},{"language":"nl","pages":[{"title":"nl","href":"/nl/api/video/minimax-h3/create"}]},{"language":"no","pages":[{"title":"no","href":"/no/api/video/minimax-h3/create"}]},{"language":"uk","pages":[{"title":"uk","href":"/uk/api/video/minimax-h3/create"}]}]},"basePath":"","title":"Create a MiniMax H3 video - CometAPI Documentation","buildId":"dpl_9VVk5y1P8k1ATeJguVngy9Q3cmbD","deploymentId":"dpl_9VVk5y1P8k1ATeJguVngy9Q3cmbD","dynamics":["c2aa737661","b0f84f53ff","a9bb46feb3","2b790eda92"],"chunks":["OpenApiReferenceProvider-DX1Meug0.js","utils-B_OMIQVC.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-ChxhRPMa.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-CuKvD8Iv.js","snippetPresets-C5d7p2hp.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","Page-BAvA99GL.js","ApiExamples-CfHcE8m4.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-C1zZV314.js","shallow-CmQhqCJn.js","getApiPlaygroundDisplay-YRo9s1O7.js","CodeSnippet-RN1MTdfk.js","CodeSnippets-DKLPHxJA.js","getPastedJson-bz0M41mU.js","icon-CsmhpPrv.js","MethodPill-CNGsVE77.js","DuplicateIcon-DilfU_Z2.js","createIcon-BdsYzQck.js","DynamicMarkdown-CbqEDjbV.js","SectionHeading-O6hXpFCN.js","axios-vUo_bRtp.js","Markdown-nKm-uidQ.js","clsx-ClVdStUn.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-CIQkMg3R.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-ImrFS4Fy.js"]}