Google Gemini API error
Gemini API 400 FAILED_PRECONDITION: what it means and how to fix it
400 FAILED_PRECONDITIONRetry? NoLast verified 1 documented fix1 source
What it means
generateContent API: Gemini API free tier is not available in your country, and billing is not enabled on the project in Google AI Studio.
Causes
- Making requests from a region where the free tier is not supported without billing enabled
How to fix it
- Fix 1.
Set up a paid plan using Google AI Studio.
More Gemini API errors
All 30 Gemini API errorsHTTP 400 at other providers
Compare 400 across providers400 ValidationExceptionRetry? NoAmazon Bedrock400 ServiceQuotaExceededExceptionRetry? YesAmazon Bedrock400 IncompleteSignatureRetry? Not statedAmazon Bedrock400 InvalidActionRetry? Not statedAmazon Bedrock400 NotAuthorizedRetry? Not statedAmazon Bedrock400 RequestExpiredRetry? Not statedAmazon Bedrock400 invalid_request_errorRetry? Not statedAnthropic API400 invalid_request_error (spend limit reached)Retry? Not statedAnthropic API400 Bad RequestRetry? Not statedAzure OpenAI400 content_filterRetry? Not statedAzure OpenAI400 Bad RequestRetry? Not statedCohere API400 Bad Request (too many tokens)Retry? Not statedCohere API
FAQ
What does the Gemini API error "400 FAILED_PRECONDITION" mean?
generateContent API: Gemini API free tier is not available in your country, and billing is not enabled on the project in Google AI Studio.
How do I fix Gemini API "400 FAILED_PRECONDITION"?
Set up a paid plan using Google AI Studio.
Should I retry Gemini API "400 FAILED_PRECONDITION"?
No. The official docs treat this error as not retryable: fix the cause before sending the request again.
Which other AI APIs return HTTP 400?
Per their official error docs: Amazon Bedrock (400 ValidationException; 400 ServiceQuotaExceededException; 400 IncompleteSignature; 400 InvalidAction; 400 NotAuthorized; 400 RequestExpired), Anthropic API (400 invalid_request_error; 400 invalid_request_error (spend limit reached)), Azure OpenAI (400 Bad Request; 400 content_filter), Cohere API (400 Bad Request; 400 Bad Request (too many tokens)), DeepSeek API (400 - Invalid Format), Groq API (400 Bad Request), Mistral API (400 Bad request), OpenAI API (400 invalid_request_error (Invalid service_tier argument); 400 BadRequestError), OpenRouter (400 invalid_request; 400 invalid_prompt; 400 context_length_exceeded; 400 max_tokens_exceeded; 400 token_limit_exceeded; 400 string_too_long; 400 invalid_image; 400 image_too_large; 400 image_too_small; 400 unsupported_image_format; 400 image_download_failed), Vertex AI (400 INVALID_ARGUMENT / FAILED_PRECONDITION), xAI API (400 Bad Request).
Sources
Last verified against 1 source: Gemini API's official docs and official SDK repositories.
Newsletter
Know when the APIs change
One email per week. New model releases, API changes, what broke, and how developers are working around it.