> ## Documentation Index
> Fetch the complete documentation index at: https://docs.gptproto.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Veo3.1-Fast - Text To Video - gptproto

> Veo3.1-Fast — Text To Video (gptproto). GPTProto API reference.

Google Veo3.1-fast's GPTProto format for the text to video API.

<CodeGroup>
  ```bash cURL theme={null}
  curl --location 'https://gptproto.com/api/v3/google/veo3.1-fast/text-to-video' \
  --header 'Authorization: Bearer sk-xxxxxx' \
  --header 'Content-Type: application/json' \
  --data '{
    "prompt": "A young woman walks alone under a transparent umbrella in a quiet alley during light rain, soft city lights reflecting on the wet pavement. Her pace is calm and thoughtful. The camera follows slowly behind her, occasional droplets hitting the lens. Subtle piano music plays, evoking a melancholic but peaceful mood. Dreamy, cinematic, slightly slow motion.",
    "aspect_ratio": "16:9",
    "enhance_prompt": true
  }'
  ```

  ```python Python theme={null}
  import requests
  import json

  url = "https://gptproto.com/api/v3/google/veo3.1-fast/text-to-video"
  headers = {
      "Authorization": "Bearer sk-xxxxxx",
      "Content-Type": "application/json"
  }

  data = {
      "prompt": "A young woman walks alone under a transparent umbrella in a quiet alley during light rain, soft city lights reflecting on the wet pavement. Her pace is calm and thoughtful. The camera follows slowly behind her, occasional droplets hitting the lens. Subtle piano music plays, evoking a melancholic but peaceful mood. Dreamy, cinematic, slightly slow motion.",
      "aspect_ratio": "16:9",
      "enhance_prompt": True
  }

  response = requests.post(url, headers=headers, json=data)
  result = response.json()
  print(json.dumps(result, indent=2))
  ```

  ```javascript JavaScript theme={null}
  const url = "https://gptproto.com/api/v3/google/veo3.1-fast/text-to-video";
  const headers = {
    "Authorization": "Bearer sk-xxxxxx",
    "Content-Type": "application/json"
  };

  const data = {
    "prompt": "A young woman walks alone under a transparent umbrella in a quiet alley during light rain, soft city lights reflecting on the wet pavement. Her pace is calm and thoughtful. The camera follows slowly behind her, occasional droplets hitting the lens. Subtle piano music plays, evoking a melancholic but peaceful mood. Dreamy, cinematic, slightly slow motion.",
    "aspect_ratio": "16:9",
    "enhance_prompt": true
  };

  fetch(url, {
    method: "POST",
    headers: headers,
    body: JSON.stringify(data)
  })
    .then(response => response.json())
    .then(data => console.log(data))
    .catch(error => console.error("Error:", error));
  ```

  ```go Go theme={null}
  package main

  import (
      "bytes"
      "encoding/json"
      "fmt"
      "io/ioutil"
      "net/http"
  )

  func main() {
      url := "https://gptproto.com/api/v3/google/veo3.1-fast/text-to-video"

      payload := []byte(`{
    "prompt": "A young woman walks alone under a transparent umbrella in a quiet alley during light rain, soft city lights reflecting on the wet pavement. Her pace is calm and thoughtful. The camera follows slowly behind her, occasional droplets hitting the lens. Subtle piano music plays, evoking a melancholic but peaceful mood. Dreamy, cinematic, slightly slow motion.",
    "aspect_ratio": "16:9",
    "enhance_prompt": true
  }`)

      req, _ := http.NewRequest("POST", url, bytes.NewBuffer(payload))
      req.Header.Set("Authorization", "Bearer sk-xxxxxx")
      req.Header.Set("Content-Type", "application/json")

      client := &http.Client{}
      resp, err := client.Do(req)
      if err != nil {
          panic(err)
      }
      defer resp.Body.Close()

      body, _ := ioutil.ReadAll(resp.Body)
      fmt.Println(string(body))
  }
  ```
</CodeGroup>

<CodeGroup>
  ```json 401 - Invalid signature theme={null}
  {
    "error": {
      "message": "Invalid signature",
      "type": "401"
    }
  }
  ```

  ```json 403 - Invalid Token theme={null}
  {
    "error": {
      "message": "Invalid Token",
      "type": "403"
    }
  }
  ```

  ```json 403 - Insufficient balance theme={null}
  {
    "error": {
      "message": "Insufficient balance",
      "type": "403"
    }
  }
  ```

  ```json 500 - Internal server error theme={null}
  {
    "error": {
      "message": "Internal server error",
      "type": "500"
    }
  }
  ```

  ```json 503 - Content policy violation theme={null}
  {
    "error": {
      "message": "Input may not meet the guidelines. Please adjust and try again.",
      "type": "503"
    }
  }
  ```
</CodeGroup>

## Parameters

| Parameter        | Type    | Required | Default | Description                                                                                               |
| ---------------- | ------- | -------- | ------- | --------------------------------------------------------------------------------------------------------- |
| `prompt`         | string  | ✅ Yes    | -       | The positive prompt for the generation. A detailed description of the video content you want to generate. |
| `aspect_ratio`   | string  | ❌ No     | `16:9`  | The aspect ratio of the generated media. Options: `16:9`, `9:16`                                          |
| `enhance_prompt` | boolean | ❌ No     | `true`  | Whether to enhance the prompt automatically. Options: `true`, `false`                                     |

## Usage Notes

* The prompt should be detailed and descriptive for best results
* Video generation is asynchronous - use the task ID returned to query status
* Processing time varies based on video complexity
* Use the [Query Task](docs/api/google/veo3.1-fast/gptproto-format/query-task) endpoint to check generation status
