Overview
Grok Imagine Video 1.5 creates short videos from reference images, first and last frames, timed middle keyframes, or a loop image. Use a text prompt to guide motion, camera movement, and scene changes.Choose the Grok video endpoint
These endpoints generate new clips; neither exposes video-input editing or native video extension. Grok Imagine Video 1.5 supports dedicated first/last frames, timed keyframes, and loop images as described below. Multiple
image_urls entries remain reference images, not a first/last-frame pair. xAI’s native Extend feature is a separate API capability; do not send its parameters to these APIXO endpoints.
For a longer sequence assembled from separate clips, see the Grok longer-video workflow. It explains clip planning and editing, and distinguishes this workflow from native video extension.
Endpoint and authentication
Base URL:
All requests require your APIXO API key:
Copy-paste async quickstart
This minimal request submits an image-to-video task and returns ataskId.
taskId; you need it to poll for the final result.
Poll for result
resultJson after state becomes success:
Request body
Image-to-video
mode field is optional on this endpoint. If omitted, APIXO uses image-to-video.
First, last, and timed middle frames
Loop video
1080p single first frame
Parameters
string
default:"async"
Result delivery mode. Omit this field or use
async for polling with statusTask, or use callback for webhook delivery.string
Required when
request_type is callback. Must be a public HTTPS URL that can receive the final task payload. See Webhooks.object
required
Grok Imagine Video 1.5 input parameters. Provide at least one image input through a non-empty image_urls array, first_frame_url, last_frame_url, loop_url, or a non-empty keyframes array. Use a single first frame at 1080p; prefer 720p for combined frame controls.
Response format
Submit task response
POST /generateTask/grok-imagine-video-1-5 returns a task ID when the task is accepted:
integer
API status code.
200 means the task was accepted.string
Human-readable status message.
string
Unique task identifier used with the status endpoint.
Status response fields
string
Unique task identifier.
string
Current task state:
processing, success, or failed.string
JSON string containing generated video URLs in
resultUrls. Present when state is success.string
Machine-readable failure code. Present when
state is failed.string
Human-readable failure message. Present when
state is failed.integer
Task creation timestamp in Unix milliseconds.
integer
Task completion timestamp in Unix milliseconds. Present after completion.
integer
Processing duration in milliseconds when available.
Webhook callback mode
Use callback mode when your backend should receive the final result automatically instead of polling.code, message, and data. Successful callbacks include the final state and resultJson. See Webhooks for delivery requirements and retry behavior.
Billing
New non-LLM requests use 1 credit =$0.001. Calculate the full amount, including billable quantity and add-ons, apply the applicable account discount, then round the request total upward to the next whole credit. Agreed fixed unit prices retain their precision and replace the standard price and discount; final rounding still applies. See credit conversion and rounding.
Grok Imagine Video 1.5 is billed per second. The selected resolution determines the per-second unit price, and the submitted duration determines the billable seconds.
Market display references are comparison values, not the charged amount. A 10-second request costs
$0.240 at 480p, $0.450 at 720p, or $0.800 at 1080p before account discounts.
Formula:
Latency and polling
Grok Imagine Video 1.5 tasks are asynchronous. Actual latency may vary by prompt complexity, image accessibility, duration, resolution, and generation queue load.
Result URLs are temporary. Download and store important outputs promptly after task completion.
Rate limits and concurrency can vary by account and API key. If you receive
429, slow down requests and retry with backoff. For account-level details, see System APIs.
Errors and troubleshooting
HTTP errors
Validation notes
Task failure codes
failCode identifies the task failure. Common values include:
See Error Codes for the full error reference.
MCP integration
The complete model schema declares result decoding inmcp.result and supported file bindings in mcp.attachments. These are client integration metadata, not generation input parameters. Attachment paths: image_urls, first_frame_url, last_frame_url, loop_url, keyframes[].url. Preserve the user’s file order. For a path containing [], supply the parent array items and their metadata in input, then bind files to an explicit item index, such as [0]. Model parameter validation remains on the API.