403 PERMISSION_DENIED – "Your project has been denied access" after enabling billing

Hello,

I am requesting help with a project-level access restriction affecting the Gemini API.

Project ID:
gen-lang-client-03762650..

Current configuration:

A GET request to:

https://generativelanguage.googleapis.com/v1beta/models

works correctly and returns HTTP 200, listing the available Gemini models.

However, when calling:

POST https://generativelanguage.googleapis.com/v1beta/interactions

using gemini-3.5-flash, the request consistently returns:

HTTP 403

{
“error”: {
“message”: “Your project has been denied access. Please contact support.”,
“code”: “permission_denied”
}
}

Before billing was enabled, the Interactions API returned HTTP 429 because of quota/billing limitations.

I then:

  1. Activated Google Cloud billing.
  2. Confirmed that the Generative Language API is enabled.
  3. Confirmed that the API key is valid.
  4. Confirmed that GET /v1beta/models works with HTTP 200.

After completing these steps, the Interactions API started returning the HTTP 403 error above.

I also used Gemini Cloud Assist to diagnose the issue. Cloud Assist identified it as a project-level administrative restriction and indicated that it requires manual review by Google.

I attempted to contact Google Cloud Support, but my current account/project is not eligible for direct technical support without an additional support plan.

The project is being used for a legitimate application called “The Ship Cruise Club”, a cruise information platform. Gemini will be used server-side to retrieve, verify and structure publicly available cruise information from authoritative sources in order to maintain an up-to-date cruise ship database.

No attempt is being made to bypass website access controls.

Could a Google team member please review project:

gen-lang-client-03762650..

and advise whether the restriction can be removed or whether any additional verification/compliance action is required?

Thank you.

Hello @Rosario_Cali ,

Getting a 403 API error response and / or seeing “Unavailable” next to your project in AI audio indicates a flag has been placed on your account. To proceed:

If you’re on the free tier with no billing attached, please try the below steps:

  1. Check Model Availability & Rate Limits:

    • Ensure that the model you are requesting is available on your current plan. For example, not all models are available on the free tier. You can verify model availability, quotas, and limits on the AI Studio Rate Limit dashboard.
  2. Ensure you have completed age verification by navigating to Google Account Age Verification and verifying date of birth in Google Account Personal Info.

  3. Complete Phone Verification and turn on 2-Step Verification (2SV) on the Google Account associated with your project.

  4. Once age, phone and 2sv are configured, retry your request or create a new API key in Google AI Studio.

  5. If completing these steps still does not restore access (or if using a model requiring a paid tier), you might want to consider adding prepayment credits directly in Google AI Studio and/ or attaching a Google Cloud Billing account in the Google Cloud Console. Please note this will mean you lose your free tier quota.

If you are on a paid tier:

  1. 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.

  2. If your GCP project/ billing account is suspended, you must submit an appeal directly through the Google Cloud Console following the Project Suspension Guidelines (Help Center)