> ## Documentation Index
> Fetch the complete documentation index at: https://braintrust.dev/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Vertex AI gemini model region and registry issues

export const plans_0 = "Any"

export const deployments_0 = "Any"

export const data_plane_version_0 = undefined

export const use_case_0 = "Use case - How to configure Braintrust Vertex AI providers and manually-registered Vertex models (Gemini) to avoid 404/permission errors — includes when to set per-model location vs provider-level location and how to use a US API base URL for global/multi-region models."

<Note>
  **Applies to:**

  * Plan - {plans_0}
  * Deployment - {deployments_0}
  * {data_plane_version_0}
  * {use_case_0}
</Note>

## Summary

Manual Vertex model entries return 404 or permission errors after you disable the default registry.
Likely causes: per-model location or model format mismatch, or region/global behavior for multi-region models (e.g., gemini-3.6-flash).
Fix by matching the default registry settings: exact model ID, correct format, and the model location (or use a region-specific API base URL).

## What is happening

When Braintrust includes the default Vertex registry some models are registered with a per-model location of `global`. Manually adding the same model without the `global` location (or with the wrong format) can cause Vertex to look in a different region and return `NOT_FOUND (404)`. Multi-region/global models (like Gemini 3.6 Flash) require either the `global` model location or a region-specific API base URL to keep traffic in a specific geographic boundary. Permission errors indicate the Vertex-calling service account lacks the necessary role on the target project.

## Fix or suggestion

### Option 1: Match default registry per-model settings

1. Use the exact Vertex model name. Example:
   * `publishers/google/models/gemini-3.6-flash`
2. Set the model format to the provider-appropriate value (`Gemini` when set in the UI / `google` when set with the API), not the default `openai`.
3. Set the model location to `global` for models that the default registry marks as `global`.
4. Save and retry the call.

### Option 2: Force US-only traffic for global/multi-region models

1. Keep the provider location as your preferred region (e.g., `us-west1`) if needed.
2. Change the provider API base URL to the US Vertex endpoint to ensure requests stay within the US for global models ([or use the EU API URL if you need that](https://docs.cloud.google.com/gemini-enterprise-agent-platform/resources/locations)):
   * Example: `https://aiplatform.us.rep.googleapis.com`
3. Test this change in a custom provider first, then apply to the live provider if successful.

### Check service account permissions (if errors persist)

* Ensure the Vertex-calling service account has roles that allow model invocation (for example: AI Platform Developer or equivalent) on the project hosting the model.

## How to confirm it worked

* Run a quick Playground or test prompt that calls the model. Successful calls return a model response instead of `NOT_FOUND` or permission errors.
* Verify provider/model configuration shows the expected model name, format, and location (or that the provider API base URL is set to the US endpoint).

## Notes

* `404`/`NOT_FOUND` usually means wrong model name or mismatched region/location. Permission errors mean the service account needs the correct IAM role.
* [Google model location docs](https://cloud.google.com/gemini-enterprise-agent-platform/resources/locations)
