{"openapi":"3.1.0","info":{"title":"Veo 3.1 Lite API — Cheaper Gen.","version":"1.0.0","description":"Google Veo 3.1 Lite generates 4–8 second 720p videos with native audio from text or a first and last frame, at the lowest price in the Veo family."},"servers":[{"url":"https://cheapergen.com/api/v1"}],"security":[{"bearer":[]}],"components":{"securitySchemes":{"bearer":{"type":"http","scheme":"bearer"}},"schemas":{"Generation":{"type":"object","properties":{"id":{"type":"string"},"object":{"const":"generation"},"model":{"type":"string"},"endpoint":{"type":"string"},"status":{"enum":["queued","running","succeeded","failed","canceled"]},"output":{"type":["object","null"]},"error":{"type":["object","null"]},"cost":{"type":"object","properties":{"amount_usd":{"type":"number"},"official_usd":{"type":["number","null"]},"saved_usd":{"type":["number","null"]},"estimated":{"type":"boolean"}}},"created_at":{"type":"string","format":"date-time"},"completed_at":{"type":["string","null"],"format":"date-time"}}}}},"paths":{"/run/google/veo-3.1-lite/text-to-video":{"post":{"summary":"Veo 3.1 Lite — Text to Video","operationId":"google_veo_3_1_lite_text_to_video","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["prompt"],"properties":{"prompt":{"title":"Prompt","description":"Describe the shot: subject, action, camera movement, lighting and style.","type":"string","maxLength":5000},"aspect_ratio":{"title":"Aspect ratio","description":"Landscape or portrait.","type":"string","enum":["16:9","9:16"],"default":"16:9"},"resolution":{"title":"Resolution","description":"720p (1080p isn't available on our channel yet).","type":"string","enum":["720p"],"default":"720p"},"duration":{"title":"Duration","description":"Clip length: 4, 6 or 8 seconds.","type":"integer","enum":[4,6,8],"default":8},"webhook_url":{"type":"string","format":"uri","title":"Webhook URL","description":"Optional. We POST the finished generation here (signed)."}},"additionalProperties":false}}}},"responses":{"202":{"description":"Queued","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Generation"}}}},"400":{"description":"Invalid request"},"402":{"description":"Insufficient balance"}}}},"/run/google/veo-3.1-lite/image-to-video":{"post":{"summary":"Veo 3.1 Lite — Image to Video","operationId":"google_veo_3_1_lite_image_to_video","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["prompt","image_url"],"properties":{"prompt":{"title":"Prompt","description":"Describe the shot: subject, action, camera movement, lighting and style.","type":"string","maxLength":5000},"image_url":{"title":"First frame","description":"Image used as the opening frame. JPG/PNG/WebP, URL or upload.","type":"string","format":"uri"},"end_image_url":{"title":"Last frame","description":"Optional closing frame — the model animates between the two.","type":"string","format":"uri"},"aspect_ratio":{"title":"Aspect ratio","description":"Landscape or portrait.","type":"string","enum":["16:9","9:16"],"default":"16:9"},"resolution":{"title":"Resolution","description":"720p (1080p isn't available on our channel yet).","type":"string","enum":["720p"],"default":"720p"},"duration":{"title":"Duration","description":"Clip length: 4, 6 or 8 seconds.","type":"integer","enum":[4,6,8],"default":8},"webhook_url":{"type":"string","format":"uri","title":"Webhook URL","description":"Optional. We POST the finished generation here (signed)."}},"additionalProperties":false}}}},"responses":{"202":{"description":"Queued","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Generation"}}}},"400":{"description":"Invalid request"},"402":{"description":"Insufficient balance"}}}},"/generations/{id}":{"get":{"summary":"Get a generation","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Generation"}}}}}}}}}