POST /v2/video_generation and queries them with GET /v2/query/video_generation/{task_id}; GregAPI exposes these as proxy endpoints, and both require a Bearer token.
1. Models and capabilities
minimax-h3-768p-second, minimax-h3-2k-second, minimax-h3-extra-input-image, minimax-h3-max-480p-second, and minimax-h3-max-768p-second are GregAPI’s internal billing component SKUs. They cannot be used as model values, nor are they configurable model allowlist entries.
2. Endpoints
All requests use the GregAPI API Token:
3. Create a task
Request body
The
text item in content may be up to 7000 Unicode characters and must not set role.
Create example
4. Content and media rules
Media items incontent are limited by type and count:
An
image_url without a role is treated as first_frame. Constraints:
- First/last-frame mode cannot be mixed with any reference material.
- When only
reference_audiois provided,reference_imageorreference_videomust also be present.
Ratio and mode
- Text-to-video: with no media items,
ratiois required and must be a concrete ratio, notadaptive. - First/last frame: when
first_frameorlast_frameis present,adaptiveis used. - Reference material: when any
reference_*item is present,ratiomay be omitted (defaults toadaptive), or set toadaptiveor a concrete ratio.
5. Media locators and size limits
Eachimage_url.url, video_url.url, and audio_url.url may only use these locators:
- A public
https://URL. GregAPI performs DNS fail-closed and private/loopback address blocking; HTTP,file:,ftp:,blob:,javascript:, and protocol-relative URLs are not accepted. - A strict
data:<mime>;base64,<payload>. The metadata must be exactly<mime>;base64with no whitespace, and the payload must be non-empty strict Base64. - An authority-only
mm_file://<positive-int64>. Only a positive decimal int64 authority is allowed, with no userinfo, port, path, query, or fragment.
Public HTTPS URLs and
mm_file references are not fetched or locally inspected by GregAPI; official media-format constraints are validated upstream. The full JSON request body is capped at 64 MiB; the Base64 expansion of data URIs and other fields count toward this limit, so the actual decoded size available will be lower than the per-file cap.
6. Query a task
Put thetask_id (or platform_id) from the creation response into the path parameter:
task object and appends platform_id at the top level; base_resp may also appear. task may contain id, status, model, task_type, resolution, duration, created_at, updated_at, content.url, usage, and error. status and time fields reflect what upstream actually returns.
7. Billing and notes
- On success,
task.content.urlis an upstream signed URL and will expire; the exact validity depends on the URL and the upstream response. Use it promptly and do not write the full signed URL into logs or long-term storage. - Billing for creation failures, task failures, or cancellations is subject to the GregAPI account and actual task settlement records.