Skip to main content

Generate Veo3 Video

POST 

https://api.veo3api.ai/api/v1/veo/generate

Create a new video generation task using the Veo3 AI model.

Usage Modes

  1. Text-to-Video Generation

    • Provide text prompt prompt
  2. Image-to-Video Generation

    • Provide text prompt prompt and image URL list imageUrls

Request

Bodyrequired

    promptstringrequired

    Text prompt describing the desired video content. Required for all generation modes.

    • Should be detailed and specific in describing video content
    • Can include actions, scenes, style and other information
    • For image-to-video, describe how you want the image to come alive
    Example: A dog playing in a park
    imageUrlsstring[]

    Image URL list (used in image-to-video mode, maximum 3 images).

    • Must be valid image URLs
    • Images must be accessible to the API server
    Example: ["http://example.com/image1.jpg"]
    modelstring

    Select the model type to use.

    • veo3: Veo 3 Quality, supports both text-to-video and image-to-video generation
    • veo3_fast: Fast generation model, supports both text-to-video and image-to-video generation

    Possible values: [veo3, veo3_fast]

    Default value: veo3
    Example: veo3
    watermarkstring

    Watermark text.

    • Optional parameter
    • If provided, a watermark will be added to the generated video
    Example: MyBrand
    aspectRatiostring

    Video aspect ratio. Specifies the dimension ratio of the generated video. Available options:

    • 16:9: Landscape video format, supports 1080P HD video generation (Only 16:9 aspect ratio supports 1080P)
    • 9:16: Portrait video format, suitable for mobile short videos

    Default value is 16:9.

    Possible values: [16:9, 9:16]

    Default value: 16:9
    Example: 16:9
    seedsinteger

    (Optional) Random seed parameter to control the randomness of the generated content. Value range: 10000-99999. The same seed will generate similar video content, different seeds will generate different content. If not provided, the system will assign one automatically.

    Possible values: >= 10000 and <= 99999

    Example: 12345
    callBackUrlstring

    Completion callback URL.

    • Optional but recommended for production use
    • System will POST task completion status to this URL
    • Alternatively, use the Get Video Details endpoint to check status
    Example: http://your-callback-url.com/complete

Responses

Request successful

Schema
    codeStatusCode (integer)

    Response status code

    Enum ValueDescription
    200Success - Request has been processed successfully
    4001080P is processing. It should be ready in 1-2 minutes. Please check back shortly.
    401Unauthorized - Authentication credentials are missing or invalid
    402Insufficient Credits - Account does not have enough credits to perform the operation
    404Not Found - The requested resource or endpoint does not exist
    422Validation Error - The request parameters failed validation checks
    429Rate Limited - Request limit has been exceeded for this resource
    455Service Unavailable - System is currently undergoing maintenance
    500Server Error - An unexpected error occurred while processing the request
    501Generation Failed - Video generation task failed
    505Feature Disabled - The requested feature is currently disabled

    Possible values: [200, 400, 401, 402, 404, 422, 429, 455, 500, 501, 505]

    msgstring

    Response message

    Example: success
    data object
    taskIdstring

    Task ID, can be used with Get Video Details endpoint to query task status

    Example: veo_task_abcdef123456

Callbacks

POST 

{$request.body#/callBackUrl}

When the video generation task is completed, the system will send the result to your provided callback URL via POST request

Bodyrequired

    codeinteger

    Status code

    Enum ValueDescription
    200Success - Video generation task successfully
    501Failed - Video generation task failed

    Possible values: [200, 501]

    msgstring

    Status message

    Example: Veo3 video generated successfully.
    data object
    taskIdstring

    Task ID

    Example: veo_task_abcdef123456
    info object
    resultUrlsstring

    Generated video URLs

    Example: [http://example.com/video1.mp4]

Callbacks Responses

Callback received successfully

Authorization: http

name: BearerAuthtype: httpscheme: bearerbearerFormat: API Keydescription: All APIs require authentication via Bearer Token.

Get API Key:
1. Visit [API Key Management Page](https://Veo3api.ai/api-key) to get your API Key

Usage:
Add to request header:
Authorization: Bearer YOUR_API_KEY

Note:
- Keep your API Key secure and do not share it with others
- If you suspect your API Key has been compromised, reset it immediately in the management page
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Post, "https://api.veo3api.ai/api/v1/veo/generate");
request.Headers.Add("Accept", "application/json");
request.Headers.Add("Authorization", "Bearer <token>");
var content = new StringContent("{\n \"prompt\": \"A dog playing in a park\",\n \"imageUrls\": [\n \"http://example.com/image1.jpg\"\n ],\n \"model\": \"veo3\",\n \"watermark\": \"MyBrand\",\n \"callBackUrl\": \"http://your-callback-url.com/complete\",\n \"aspectRatio\": \"9:16\",\n \"seeds\": 123456\n}", null, "application/json");
request.Content = content;
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());
Request Collapse all
Base URL
https://api.veo3api.ai
Auth
Body required
{
  "prompt": "A dog playing in a park",
  "imageUrls": [
    "http://example.com/image1.jpg"
  ],
  "model": "veo3",
  "watermark": "MyBrand",
  "callBackUrl": "http://your-callback-url.com/complete",
  "aspectRatio": "9:16",
  "seeds": 123456
}
ResponseClear

Click the Send API Request button above and see the response here!