Gemini-3.1-flash-image-preview — 400 INVALID_ARGUMENT with no details, what causes this?

Getting this error intermittently on gemini-3.1-flash-image-preview via Vertex AI:

{

“error”: {

“code”: 400,

“message”: “Request contains an invalid argument.”,

“status”: “INVALID_ARGUMENT”

}

}

The error gives no further details — no field names, no reason, nothing actionable.

A few questions:

  1. What are the common causes of a bare INVALID_ARGUMENT with no details from this model specifically?

  2. Is this always a content/safety block, or can it indicate something else (token limit, model policy, etc.)?

  3. Is there a way to get more diagnostic information out of this error? The response body doesn’t include errorDetails or any blockReason.

Has anyone else seen this and figured out what’s triggering it?