Grok Video · Video Generation
grok-video-3-maxNEW
📌 What is this:Grok video 3 Max: fixed 15s duration; 480P-1080P.
💡 When to use:Use to generate video with grok-video-3-max.
Endpoints
| Usage | Method | Path |
|---|---|---|
| Submit task | POST | /api/cqt/generator/grok |
| Query Result | GET | /api/cqt/info/grok?id={taskId} |
⏱ Recommended polling interval:Video is generated asynchronously — poll every 15s until status = succeeded / failed.
Request Parameters
| Param | Type | Required | Description |
|---|---|---|---|
| model | string | Required | Fixed: grok-video-3-max |
| prompt | string | — | Video description |
| imageUrls | string[] | — | Optional first-frame reference image. |
| duration | integer | — | Fixed 15s (input ignored). |
| resolution | string | — | 480p / 540p / 720p / 1080p, default 480p. |
| aspectRatio | string | — | Ratio 2:3 / 3:2 / 1:1 / 16:9 / 9:16, default 16:9 |
| mode | string | — | fun / normal / spicy (invalid ignored) |
| nsfwChecker | boolean | — | Enable NSFW check, default false |
| callBackUrl | string | — | Completion callback URL |
Request Example
curl -X POST https://api.cqtai.com/api/cqt/generator/grok \
-H 'Authorization: Bearer <API_KEY>' \
-H 'Content-Type: application/json' \
-d '{
"model": "grok-video-3-max",
"prompt": "a paper plane flying over a city",
"resolution": "720p",
"aspectRatio": "16:9"
}'
# -> { "code":200, "data":"<taskId>" }Response Example
{
"code": 200,
"msg": "success",
"data": {
"id": "35592194e2c14f868b960061311d3955",
"resultUrl": "https://r2.geeknow.top/videos/288/task_Vpw2drsWF6DKZQY2rpNQ8XjtUvGa2i02.mp4",
"status": "succeeded",
"errorMsg": null,
"createTime": "2026-07-10 10:53:11",
"completeTime": "2026-07-10 10:53:55"
}
}Response Fields
| Field | Type | Description |
|---|---|---|
| code | number | Status code; 200 means success |
| msg | string | Status message; "success" on success |
| data.id | string | Task ID (taskId); use it to poll GET /api/cqt/info |
| data.status | string | Task status: succeeded / failed / otherwise still processing |
| data.resultUrl | string | URL of the generated video; returned when status = succeeded, null otherwise |
| data.errorMsg | string | null | Failure reason; null on success |
| data.createTime | string | Task creation time |
| data.completeTime | string | null | Task completion time; null until finished |
Billing & Credits
Per second (fixed 15s) = per-second credits × 15 × your rate. Per-second: 480P/540P=4, 720P=5, 1080P=6. E.g. 720P = 5×15 = 75. (x your user rate). Auto-refunded on failure.