Project-level 403 PERMISSION_DENIED on Gemini generation — models list returns 200, generate denied, spread to a second project

Gemini API project-level generation denial — blocking production.

Project gen-lang-client-05011306.. (name: Kairo-1, production)

  • lifecycleState: ACTIVE
  • generativelanguage.googleapis.com: ENABLED
  • API key already restricted: apiTargets = generativelanguage.googleapis.com (not unrestricted; June 19 unrestricted-key policy does not apply)
  • First 403: 2026-08-11T02:05:28Z (same key/project served normally ~90 minutes earlier)
  • GET /v1beta/models → HTTP 200
  • POST /v1beta/openai/chat/completions (gemini-3.1-flash-lite) → HTTP 403
  • POST /v1beta/models/gemini-2.5-flash:generateContent → HTTP 403
  • Error on both generate surfaces:
    PERMISSION_DENIED — “Your project has been denied access. Please contact support.”

Second project gen-lang-client-06020915..

Ruled out

  • Not 429 quota (403 + explicit denied-access string)
  • Not unrestricted key (apiTargets already set)
  • Not IAM alone (same credential: list models 200, generate 403 — missing permission would fail both)
  • Not disabled project/API (ACTIVE + enabled + models list works)

Billing Support live chat confirmed they cannot view/resolve Gemini API enforcement and directed me here.

Request: restore generation access on gen-lang-client-05011306.. (and ideally gen-lang-client-06020915..).

Production app has been down ~2.5 hours; currently running on a third project as a temporary bridge, which is not sustainable.

Resolved when: generate returns HTTP 200 on gen-lang-client-05011306…

Hello @Akshit ,
Getting a 403 API error response indicates a flag has been placed on your account. To proceed:

  1. If you’re on the free tier with no billing attached, you should consider setting up billing. In most cases this is enough to clear any flag on your account. Please note this will mean you lose your free tier quota. You should also see a banner in AI studio prompting you to set up billing.

  2. If you are on a paid tier, check for banners / error callouts in the AI Studio Projects page & the Billing page. Mostly these flags cause visible banners or other errors on these pages with concrete next steps / appeal links. You can also check the email address associated with your project for information on next steps.