II.
Provider JSON
Structured · liveprovider:gcp-vertex
Google Cloud Vertex AI json
Inspect the normalized record payload exactly as the atlas UI reads it.
{
"id": "provider:gcp-vertex",
"_kind": "Provider",
"_file": "compute/providers/gcp-vertex.yaml",
"_cluster": "compute",
"attributes": {
"displayName": "Google Cloud Vertex AI",
"vendor": "Google Cloud",
"versionRange": ">=v1",
"authMethods": [
"service-account",
"oauth",
"workload-identity",
"gcp-adc"
],
"authMethodNotes": "Vertex requires GCP IAM. Local dev uses Application Default\nCredentials (`gcloud auth application-default login`); production\nworkloads use Workload Identity (GKE / Cloud Run) or service-account\nJSON. Caller MUST have `aiplatform.endpoints.predict` (and\n`aiplatform.endpoints.streamRawPredict` for streaming). The publisher\nmodel (e.g. `publishers/anthropic/models/claude-opus-4-7`) MUST be\nenabled for the GCP project.\n",
"endpoints": {
"base": "https://{region}-aiplatform.googleapis.com/v1",
"publishers_anthropic_messages": "https://{region}-aiplatform.googleapis.com/v1/projects/{project}/locations/{region}/publishers/anthropic/models/{model}:rawPredict",
"publishers_google_generate_content": "https://{region}-aiplatform.googleapis.com/v1/projects/{project}/locations/{region}/publishers/google/models/{model}:generateContent"
},
"pricing": "See https://cloud.google.com/vertex-ai/generative-ai/pricing for\nVertex-published model pricing. Vertex passes through model\npricing for Anthropic and Google models with a multi-region surcharge.\n",
"pricingTiers": [
{
"name": "on-demand",
"rateLimit": "Per-project online prediction quotas (RPM) per region per publisher model",
"priceMultiplier": 1,
"description": "Default per-token billing via :rawPredict / :generateContent."
},
{
"name": "provisioned-throughput",
"rateLimit": "Reserved GSU (Generative AI Scale Units) per region per model",
"priceMultiplier": 1,
"description": "Vertex Provisioned Throughput — committed capacity in GSU."
},
{
"name": "batch",
"rateLimit": "Async batch prediction jobs; backed by Cloud Storage / BigQuery",
"priceMultiplier": 0.5,
"description": "Vertex Batch Prediction — discounted async."
}
],
"rateLimitSignalingProtocol": "Quota errors return HTTP 429 with gRPC `code: 8 (RESOURCE_EXHAUSTED)`\nin the standard Google error envelope `{ \"error\": { \"code\": 429,\n\"status\": \"RESOURCE_EXHAUSTED\", \"message\": ..., \"details\": [...] } }`.\n`x-goog-request-id` always present. Use Cloud Quotas API to inspect\ncurrent limits.\n",
"dataResidencyOptions": [
"us-central1",
"us-east1",
"us-east4",
"us-east5",
"us-west1",
"us-west4",
"europe-west1",
"europe-west2",
"europe-west4",
"europe-west9",
"asia-southeast1",
"asia-northeast1",
"region:us",
"region:eu"
],
"vendorFeatures": [
"capability:supports-vertex-reasoning-engine",
"capability:supports-batch-api",
"capability:supports-prompt-caching"
],
"slaTier": "gcp-vertex-99.9",
"regions": [
"us-central1",
"us-east1",
"us-east4",
"us-east5",
"us-west1",
"us-west4",
"europe-west1",
"europe-west2",
"europe-west4",
"europe-west9",
"asia-southeast1",
"asia-northeast1"
]
},
"outgoingEdges": [
{
"from": "provider:gcp-vertex",
"to": "layer:2-provider",
"kind": "realizes",
"attributes": {}
},
{
"from": "provider:gcp-vertex",
"to": "capability:supports-vertex-reasoning-engine",
"kind": "supports",
"attributes": {
"versionRange": ">=2024-01-01"
}
},
{
"from": "provider:gcp-vertex",
"to": "capability:model-discovery",
"kind": "supports",
"attributes": {
"versionRange": ">=2024-01-01"
}
},
{
"from": "provider:gcp-vertex",
"to": "model:claude-opus-4-7@current",
"kind": "serves"
},
{
"from": "provider:gcp-vertex",
"to": "model:claude-opus-4-6@current",
"kind": "serves"
},
{
"from": "provider:gcp-vertex",
"to": "model:claude-opus-4-5@current",
"kind": "serves"
},
{
"from": "provider:gcp-vertex",
"to": "model:claude-opus-3@current",
"kind": "serves"
},
{
"from": "provider:gcp-vertex",
"to": "model:claude-sonnet-4-6@current",
"kind": "serves"
},
{
"from": "provider:gcp-vertex",
"to": "model:claude-sonnet-4-5@current",
"kind": "serves"
},
{
"from": "provider:gcp-vertex",
"to": "model:claude-sonnet-3-5@current",
"kind": "serves"
},
{
"from": "provider:gcp-vertex",
"to": "model:claude-haiku-4-5@current",
"kind": "serves"
},
{
"from": "provider:gcp-vertex",
"to": "model:gemini-3-1-pro@current",
"kind": "serves"
},
{
"from": "provider:gcp-vertex",
"to": "model:gemini-2-5-pro@current",
"kind": "serves"
},
{
"from": "provider:gcp-vertex",
"to": "model:gemini-2-5-flash@current",
"kind": "serves"
},
{
"from": "provider:gcp-vertex",
"to": "model:gemini-2-0-flash@current",
"kind": "serves"
}
],
"incomingEdges": [
{
"from": "model-transport:vertex-anthropic-messages",
"to": "provider:gcp-vertex",
"kind": "served_by"
},
{
"from": "model:claude-haiku-4-5@current",
"to": "provider:gcp-vertex",
"kind": "served_by"
},
{
"from": "model:claude-opus-3@current",
"to": "provider:gcp-vertex",
"kind": "served_by"
},
{
"from": "model:claude-opus-4-5@current",
"to": "provider:gcp-vertex",
"kind": "served_by"
},
{
"from": "model:claude-opus-4-6@current",
"to": "provider:gcp-vertex",
"kind": "served_by"
},
{
"from": "model:claude-opus-4-7@current",
"to": "provider:gcp-vertex",
"kind": "served_by"
},
{
"from": "model:claude-sonnet-3-5@current",
"to": "provider:gcp-vertex",
"kind": "served_by"
},
{
"from": "model:claude-sonnet-4-5@current",
"to": "provider:gcp-vertex",
"kind": "served_by"
},
{
"from": "model:claude-sonnet-4-6@current",
"to": "provider:gcp-vertex",
"kind": "served_by"
},
{
"from": "model:gemini-2-0-flash@current",
"to": "provider:gcp-vertex",
"kind": "served_by"
},
{
"from": "model:gemini-2-5-flash@current",
"to": "provider:gcp-vertex",
"kind": "served_by"
},
{
"from": "model:gemini-2-5-pro@current",
"to": "provider:gcp-vertex",
"kind": "served_by"
},
{
"from": "model:gemini-3-1-deep-think@current",
"to": "provider:gcp-vertex",
"kind": "served_by"
},
{
"from": "model:gemini-3-1-flash-lite@current",
"to": "provider:gcp-vertex",
"kind": "served_by"
},
{
"from": "model:gemini-3-1-pro@current",
"to": "provider:gcp-vertex",
"kind": "served_by"
},
{
"from": "model:gemini-3-flash@current",
"to": "provider:gcp-vertex",
"kind": "served_by"
},
{
"from": "model:gemini-3-pro@current",
"to": "provider:gcp-vertex",
"kind": "served_by"
},
{
"from": "mux:transport-mux",
"to": "provider:gcp-vertex",
"kind": "bridges_for",
"attributes": {}
}
]
}