File: claude-on-vertex-ai.md | Updated: 11/15/2025
Agent Skills are now available! Learn more about extending Claude's capabilities with Agent Skills .
English
Search...
Ctrl K
Search...
Navigation
Claude on 3rd-party platforms
Claude on Vertex AI
Home Developer Guide API Reference Model Context Protocol (MCP) Resources Release Notes
On this page
The Vertex API for accessing Claude is nearly-identical to the Messages API and supports all of the same options, with two key differences:
model is not passed in the request body. Instead, it is specified in the Google Cloud endpoint URL.anthropic_version is passed in the request body (rather than as a header), and must be set to the value vertex-2023-10-16.Vertex is also supported by Anthropic’s official client SDKs . This guide will walk you through the process of making a request to Claude on Vertex AI in either Python or TypeScript. Note that this guide assumes you have already have a GCP project that is able to use Vertex AI. See using the Claude 3 models from Anthropic for more information on the setup required, as well as a full walkthrough.
First, install Anthropic’s client SDK for your language of choice.
Python
TypeScript
Copy
pip install -U google-cloud-aiplatform "anthropic[vertex]"
Model Availability
Note that Anthropic model availability varies by region. Search for “Claude” in the Vertex AI Model Garden or go to Use Claude 3 for the latest information.
API model IDs
| Model | Vertex AI API model ID | | --- | --- | | Claude Sonnet 4.5 | claude-sonnet-4-5@20250929Copied! | | Claude Sonnet 4 | claude-sonnet-4@20250514Copied! | | Claude Sonnet 3.7 ⚠️ | claude-3-7-sonnet@20250219Copied! | | Claude Opus 4.1 | claude-opus-4-1@20250805Copied! | | Claude Opus 4 | claude-opus-4@20250514Copied! | | Claude Opus 3 ⚠️ | claude-3-opus@20240229Copied! | | Claude Haiku 4.5 | claude-haiku-4-5@20251001Copied! | | Claude Haiku 3.5 | claude-3-5-haiku@20241022Copied! | | Claude Haiku 3 | claude-3-haiku@20240307Copied! |
Making requests
Before running requests you may need to run gcloud auth application-default login to authenticate with GCP. The following examples shows how to generate text from Claude on Vertex AI:
Python
TypeScript
Shell
Copy
from anthropic import AnthropicVertex
project_id = "MY_PROJECT_ID"
region = "global"
client = AnthropicVertex(project_id=project_id, region=region)
message = client.messages.create(
model="claude-sonnet-4-5@20250929",
max_tokens=100,
messages=[\
{\
"role": "user",\
"content": "Hey Claude!",\
}\
],
)
print(message)
See our client SDKs and the official Vertex AI docs for more details.
Vertex provides a request-response logging service that allows customers to log the prompts and completions associated with your usage. Anthropic recommends that you log your activity on at least a 30-day rolling basis in order to understand your activity and investigate any potential misuse.
Turning on this service does not give Google or Anthropic any access to your content.
You can find all the features currently supported on Vertex here .
Starting with Claude Sonnet 4.5 and all future models, Google Vertex AI offers two endpoint types:
Regional endpoints include a 10% pricing premium over global endpoints.
This applies to Claude Sonnet 4.5 and future models only. Older models (Claude Sonnet 4, Opus 4, and earlier) maintain their existing pricing structures.
When to use each option
Global endpoints (recommended):
Regional endpoints:
Implementation
Using global endpoints (recommended): Set the region parameter to "global" when initializing the client:
Python
TypeScript
Copy
from anthropic import AnthropicVertex
project_id = "MY_PROJECT_ID"
region = "global"
client = AnthropicVertex(project_id=project_id, region=region)
message = client.messages.create(
model="claude-sonnet-4-5@20250929",
max_tokens=100,
messages=[\
{\
"role": "user",\
"content": "Hey Claude!",\
}\
],
)
print(message)
Using regional endpoints: Specify a specific region like "us-east1" or "europe-west1":
Python
TypeScript
Copy
from anthropic import AnthropicVertex
project_id = "MY_PROJECT_ID"
region = "us-east1" # Specify a specific region
client = AnthropicVertex(project_id=project_id, region=region)
message = client.messages.create(
model="claude-sonnet-4-5@20250929",
max_tokens=100,
messages=[\
{\
"role": "user",\
"content": "Hey Claude!",\
}\
],
)
print(message)
Additional resources
Google Vertex AI pricing: cloud.google.com/vertex-ai/generative-ai/pricing
Claude models documentation: Claude on Vertex AI
Google blog post: Global endpoint for Claude models
Anthropic pricing details: Pricing documentation
Was this page helpful?
YesNo
Assistant
Responses are generated using AI and may contain mistakes.