Veo 3.1 query video (Gemini)
GET/v1beta/models/veo-3.1/operations/:operation_id
Poll the Veo 3.1 operation until done is true. Use the last segment of the submit response name as operation_id.
Example:
GET /v1beta/models/veo-3.1/operations/task_xxxxxxxx
Vertex-style fetch is also accepted:
POST /v1beta/models/veo-3.1:fetchPredictOperation
Content-Type: application/json
{
"operationName": "models/veo-3.1/operations/task_xxxxxxxx"
}
In progress: { "name": "...", "done": false }.
On success, generatedVideos and generatedSamples are both returned so official REST and the google-genai SDK can consume the result.
After done: true, download uri with the same system token. uri points to this system's /v1/videos/{id}/content, not a Google file URL.
curl --location 'https://open-api.fancyai.com/v1beta/models/veo-3.1/operations/task_xxxxxxxx' \
--header 'x-goog-api-key: YOUR_API_KEY'
Download
curl -L 'https://open-api.fancyai.com/v1/videos/task_xxxxxxxx/content' \
--header 'x-goog-api-key: YOUR_API_KEY' \
--output veo.mp4
After download, the actual file size should match the Content-Length response header. If it is smaller, the download was interrupted and the file may not play.
Request
Responses
- 200
- 400
- 401
Query succeeded
Operation not found or invalid parameters
Unauthorized