Submit video generation job
Submit a video generation job. Returns immediately with a task identifier for polling.
Video generation is asynchronous — use the returned id with /video/retrieve to poll for progress and retrieve the completed video.
Authorization
SIWx Base64-encoded JSON envelope containing a CAIP-122 sign-in message and its cryptographic signature.
{
"message": "<CAIP-122 message>",
"signature": "<base58 for Solana, hex for EVM>"
}In: header
Request Body
application/json
Canonical model slug.
Text prompt (optional if image_url is provided).
Seed image for image-to-video generation.
Seed image for image-to-video generation.
Reference images for consistency (up to 4).
Seed image for image-to-video generation.
Seed image for image-to-video generation.
Duration string (e.g. 5s, 10s). Validated by provider.
Things to avoid in the generated video.
One of 480p, 720p, 1080p, 4k.
"480p" | "720p" | "1080p" | "4k"Aspect ratio (e.g. 16:9, 9:16).
Frames per second.
Whether to generate audio for the video.
Prompt for generated audio / TTS.
Whether the camera should stay fixed.
Whether to add a watermark.
Seed for reproducibility (-1 = nondeterministic).
Number of video variants to generate.
End-user identifier.
Free-form metadata.
Response Body
application/json
application/json
application/json
curl -X POST "https://beta.aimo.network/api/v1/video/queue" \ -H "Content-Type: application/json" \ -d '{ "model": "kling-v2", "duration": "5s" }'{
"id": "provider_pubkey:base64_task",
"created": 0,
"status": "queued",
"variants_expected": 0
}{
"error": {
"code": "string",
"message": "string"
}
}{
"error": {
"code": "string",
"message": "string"
}
}