grok-imagine-video-1.5-preview
Grok Imagine Video 1.5 creates 1–15-second videos from text, including 1080p. The model itself supports image animation, visual references, keyframe staging and an audio track.
About the model
This description covers the model’s capabilities. Available in Ailoot inputs, outputs and options are listed for the selected method below.
Creating a video scene
Grok Imagine Video 1.5 is an xAI model for generating videos from text descriptions and visual material. Ailoot's current method publishes generation from text; additional modes of the model itself allow image animation, use of references and specification of anchor frames in a scene.
The result is created asynchronously: after a task is submitted, readiness is checked through its identifier. According to xAI, the process may take several minutes depending on scene complexity, duration and resolution. Receiving a task identifier does not yet mean the video is ready.
Duration, proportions and resolution
Generated videos last 1 to 15 seconds. 1:1, 16:9, 9:16, 4:3, 3:4, 3:2 or 2:3 can be selected; the standard format for text is 16:9. Image animation retains the image's proportions by default.
480p, 720p and 1080p are available for generation from text and a starting image. 480p is the default; reference mode is limited to 720p. The existence of 1080p in the model does not mean it applies to every mode.
Controlling appearance
In reference mode, xAI accepts up to 7 images. They define people, objects, clothing and other visual characteristics without fixing the initial frame. This method is intended for scenes with a recurring character, product demonstrations and retention of the desired appearance across different stagings.
First, last and intermediate frames
Version 1.5 allows the exact first frame, exact last frame or both to be fixed. If only the last is specified, the model constructs the beginning itself and arrives at the supplied image. With both boundaries specified, it creates movement between them; a text instruction can refine motion and camera work.
For storyboarding within a video, up to 4 keyframes can be fixed. Each time must be strictly after the start and before the end; placement follows a 1/3-second grid. Two frames that round to the same grid point are rejected. To avoid this, leave at least 1/3 second between them. First and last frames are specified separately from these four intermediate frames.
Anchor frames can be combined with visual references and preset voices. If at least one frame is fixed, a text description is optional: the image sequence itself defines the scene. Keyframes cannot be used with video-editing mode. These xAI capabilities do not mean they are available in Ailoot's published text-based generation.
Audio and voices
A generated video contains an audio track by default; a silent result is also provided. In xAI's voice-reference mode, up to 3 preset voices can be selected and associated with speaking participants in the scene.
Supplying a custom audio file as a voice sample is not a general capability of this model: xAI provides it separately on request. A preset voice and uploaded audio are different types of input.
Operating modes
Text-to-video generation creates a new scene; a starting image defines its beginning; references guide appearance; fixed frames specify visual points in time. Each mode has its own limitations, so settings from one method cannot be unconditionally applied to another.
Ailoot · Video POST /v1/videos/generations grok-imagine-video-1.5-preview
grok-imagine-video-1.5-preview
grok-imagine-video-1.5-previewOverview
Grok Imagine Video 1.5 creates 1–15-second videos from text, including 1080p. The model itself supports image animation, visual references, keyframe staging and an audio track.
- Accepted inputs
- Text
- Results
- Video
Available in Ailoot · inputs & methods
Ailoot · Video POST /v1/videos/generations
- Input types
text- Output types
video- Output format
- mp4
| Field | Type | Requirement | Values & limits | Default |
|---|---|---|---|---|
Fieldmodel | Typestring | RequirementRequired | Values & limits grok-imagine-video-1.5-preview | Default— |
Fieldprompt | Typestring | RequirementOptional | Values & limits Minimum length: 1 | Default— |
Fieldduration | Typeinteger | RequirementOptional | Values & limits Minimum: 1 Maximum: 15 Conditions: Do not supply bothdurationandseconds Unit: seconds | Default1 |
Fieldseconds | Typeinteger|integer_string | RequirementOptional | Values & limits Minimum: 1 Maximum: 15 Alternative: duration | Default— |
Fieldresolution | Typestring | RequirementOptional | Values & limits 480p, 720p, 1080p | Default480p |
Fieldaspect_ratio | Typestring | RequirementOptional | Values & limits 1:1, 16:9, 9:16, 4:3, 3:4, 3:2, 2:3 Conditions: Ifimageinputsuppliedandratioomitted,providerinheritsimageaspect | Default16:9 |
Fieldsize | Typestring | RequirementOptional | Values & limits 1280x720, 720x1280, 1920x1080, 1080x1920 Conditions: Mustagreewithresolution/aspect_ratioifbothspecified | Default— |
Fieldimage | Typeobject | RequirementOptional | Values & limits Conditions: Actualsupportedinputimage; permitsomittingprompt | Default— |
Input material combinations
Text to video · Required: prompt
Image to video · Required: image
Method parameters and lifecycle
| Parameter | Contract |
|---|---|
Parametermaterial_types | Contracttext |
Parameterrequired | Contractnull |
Parameteroptional_controls | Contractnull |
Lifecycle: submit_once_poll_original
GET /v1/videos/{request_id}
GET /v1/videos/generations/{request_id}
GET /v1/videos/{request_id}/content
GET /v1/videos/generations/{request_id}/content
Method shapes and IDs are exact; supplier capability is separate from admission.
Pricing
Ailoot method rates
POST /v1/videos/generations- Input
- $0.01 per input image
- Output
- $0.25 per second at 1080p
- Output
- $0.08 per second at 480p
- Output
- $0.14 per second at 720p
Ailoot reserves an estimated amount before a request. After the result, it settles the final charge from measured usage. Streaming settlement uses the final usage record. How reservation and settlement work →
Example requests
Ailoot · Video
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
curl https://api.ailoot.ai/v1/videos/generations \
-H "Authorization: Bearer $AILOOT_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model": "grok-imagine-video-1.5-preview", "prompt": "A person walks slowly through a quiet garden as the camera tracks from the side."}'Receive and save results
Ailoot · Video
mp4
GET /v1/videos/{request_id}GET /v1/videos/generations/{request_id}GET /v1/videos/{request_id}/contentGET /v1/videos/generations/{request_id}/content
Check job status
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_VIDEO_ID:?Set the actual Ailoot operation ID returned by creation}"
export AILOOT_VIDEO_ID
video_id=$(python3 -c 'import os, urllib.parse; print(urllib.parse.quote(os.environ["AILOOT_VIDEO_ID"], safe=""))') || exit 1
curl "https://api.ailoot.ai/v1/videos/generations/$video_id" \
-H "Authorization: Bearer $AILOOT_API_KEY"Other content reads
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_VIDEO_ID:?Set the actual Ailoot operation ID returned by creation}"
export AILOOT_VIDEO_ID
video_id=$(python3 -c 'import os, urllib.parse; print(urllib.parse.quote(os.environ["AILOOT_VIDEO_ID"], safe=""))') || exit 1
curl "https://api.ailoot.ai/v1/videos/generations/$video_id/content" \
-H "Authorization: Bearer $AILOOT_API_KEY" \
--output video.mp4Keep all completed results
Save every completed video or returned file; retrieve every actual returned asset URL.
Keep the complete status JSON and the actual request_id. A completed response with status=done contains video.url with an owned content URL. Preserve the reported duration and every returned result field.
If the original response needs checking
Read existing original job; never resubmit unknown send.
Response fields
| Field | Type |
|---|---|
Fieldrequest_id | Typestring |
Fieldid | Typestring |
Fieldstatus | Typestring |
Fieldvideo.url | Typeowned signed content URL |
Fieldvideo.duration | Typenumber |
Fieldvideo.respect_moderation | Typeboolean |
Errors and next steps
| Response | Condition | Next step |
|---|---|---|
Response400 · invalid_request_error | ConditionInvalid required fields, material representation or parameter value | Next stepCorrect the indicated fields before a new creation request. |
Response409 · video_not_ready | ConditionOriginal result content is not yet available | Next stepPoll the original returned ID and respect Retry-After. |
Responseserver_error | ConditionThe returned response says the operation or result requires a check | Next stepKeep the original returned operation/task ID, request headers and response; continue supported reads of that original operation. Do not resubmit the creation request. |
Aliases
Model aliases
Ailoot grok-imagine-video-1.5-preview
Method path aliases
Use the method paths shown above.
Related caller IDs
FAQ · grok-imagine-video-1.5-preview
- What inputs and results are available?
POST /v1/videos/generations·grok-imagine-video-1.5-preview:text→video- Which fields does the request use?
POST /v1/videos/generations·grok-imagine-video-1.5-preview:model,prompt,duration,seconds,resolution,aspect_ratio,size,image- What limits apply?
POST /v1/videos/generations·grok-imagine-video-1.5-preview:duration.minimum:1;duration.maximum:15;seconds.minimum:1;seconds.maximum:15