{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/ludo-ai/main/json-schema/ludo-ai-generate-video-payload-public-schema.json", "title": "GenerateVideoPayloadPublic", "description": "Payload for generating a video from a source image and motion prompt", "x-generated": "2026-10-02", "x-method": "derived", "x-generator": "derive-json-schema.py", "x-source": "openapi/ludo-ai-openapi.json#/components/schemas/GenerateVideoPayloadPublic", "type": "object", "required": [ "image", "prompt" ], "properties": { "image": { "type": "string", "description": "URL or base64-encoded source image (the starting frame for the video)" }, "prompt": { "type": "string", "description": "Text description of the motion or action for the video (e.g., \"walking forward\", \"waving hand\", \"camera zoom in\")" }, "augment_prompt": { "type": "boolean", "default": true, "description": "Rewrites your prompt behind the scenes into the form the model works best with. Leave it on (the default). Turning it off does not give you more control - it usually gives worse results. Do not disable it unless you really know what you are doing and have tested your prompts extensively." }, "final_image": { "type": "string", "description": "URL or base64-encoded end frame image. When provided, the video will interpolate between the initial and final frames." }, "duration": { "type": "number", "format": "float", "default": 5, "description": "Duration in seconds. Available values depend on the model:\n- griffin: 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\n- griffin-hd: 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\n- blitz: 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12\n- eagle: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15\n- eagle-audio: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15" }, "model": { "type": "string", "description": "Model to use. Available models:\n- \"griffin\" (Griffin): 1.5 credits/s, shortest duration 5s, so 7.5 credits minimum · Fast cinematic videos in any style, with audio, 480p\n- \"griffin-hd\" (Griffin HD): 2 credits/s, shortest duration 5s, so 10 credits minimum · Same as Griffin, but in 720p\n- \"blitz\" (Blitz): 1 credits/s, shortest duration 2s, so 2 credits minimum · LEGACY - scheduled for removal, do not use for new work\n- \"eagle\" (Eagle): 1.3 credits/s · LEGACY - scheduled for removal, do not use for new work\n- \"eagle-audio\" (Eagle with Audio): 1.8 credits/s · LEGACY - scheduled for removal, do not use for new work\nLegacy aliases: \"standard\" → blitz.\nModels marked LEGACY still work for existing integrations but will be removed; pick a current model for anything new.", "enum": [ "griffin", "griffin-hd", "blitz", "standard", "eagle", "eagle-audio" ], "default": "griffin" }, "request_id": { "type": "string", "description": "Optional client-provided identifier, unique per request. Re-sending the same request_id returns the existing job instead of generating again. Also usable as the request_id filter of listGenerations." }, "async": { "type": "boolean", "default": true, "description": "Defaults to true: the call returns 202 immediately with a job id to poll with getApiJob. Set false for a synchronous response (deprecated but supported): the call then blocks until the result is ready." } } }