Genace

Frame interpolation is not allowlisted for project — Veo API first and last frame on Vertex AI

HTTP 400 FAILED_PRECONDITION Do not retry as-is

The exact error

Async process failed with the following error: Frame interpolation is not allowlisted for project

What it means

Frame interpolation is Veo’s first and last frame mode: you give a starting image and an ending image, and Veo generates the video between them. This error says your Google Cloud project is not on the list of projects allowed to use that mode with the model you called. The number at the end of the full message is your own project number.

The source is python-genai issue #1377, from September 2025. The reporter called generate_videos on veo-3.0-generate-001 with a start image and a last_frame in the config. The call worked without last_frame. With it, the API returned 400 FAILED_PRECONDITION with this message, prefixed by “Async process failed with the following error”. The issue carries the api: vertex-ai label, and the message names a Cloud project. Both point to the Vertex AI channel rather than the Gemini API with an API key.

What happened next, all from the issue thread:

  • A responder assigned to the issue reproduced the error with veo-3.0-generate-001, and found that last_frame worked with veo-2.0-generate-001.
  • The reporter confirmed that Veo 2.0 worked and asked how to join the allowlist.
  • The responder replied that Veo 3 frame interpolation was “in the works” and advised using veo-2.0-generate-001 until then.
  • The issue was closed as stale. No one described a way to apply for the allowlist.

The responder’s answer suggests the cause was a model that did not yet offer interpolation to general projects, not a problem with the images.

How to confirm it’s this

  • The response is HTTP 400 with status FAILED_PRECONDITION, not INVALID_ARGUMENT.
  • The request contains a last frame (last_frame in Python, lastFrame in JavaScript and REST).
  • The same request without the last frame starts normally. The reporter in #1377 checked exactly this.
  • Note which model you called and which channel. The reported case was a Veo 3.0 model on Vertex AI.

Fix

  1. Check the model’s current feature list before sending a last frame. Google’s Gemini API Veo docs now present first and last frame generation as a Veo 3.1 feature, with lastFrame used together with image. For Vertex AI, check the Vertex docs for the model you use. This page does not have a source for Vertex’s current list.
  2. Use a model that supports interpolation on your channel. In #1377, the working option at the time was veo-2.0-generate-001.
  3. Do not plan around joining the allowlist. The reporter asked how to request access, and none of the sources describe a procedure.
  4. Feature-detect in code. If your agent offers first and last frame generation, catch this error and fall back to plain image-to-video, or to a model you have confirmed works, instead of failing the whole task.

Retry or not

No. FAILED_PRECONDITION means the project does not meet a requirement, and that does not change between attempts. In #1377, the error was consistent across the reporter’s and the responder’s tests. An agent should not retry with backoff. It should drop the last frame or switch models, and send a new request.

When it’s not this

  • last_frame parameter is not supported in Gemini API. That error is raised inside the SDK before any request is sent, when the Gemini API path does not accept the parameter. This one comes back from the server.
  • allow_adult for personGeneration is currently not supported. Google’s Veo docs list interpolation as allow_adult only. A wrong personGeneration value fails with INVALID_ARGUMENT, not an allowlist message.
  • Your use case is currently not supported. A different rejection. In forum thread 107529, a user reported it for a last frame combined with a 4-second duration.

Error text last verified against the sources below on .

Where these facts come from