You don't need a new vendor relationship to bring Claude into your company. Claude runs natively on AWS, Google Cloud, and Microsoft Azure AI Foundry — billed through your existing cloud account, governed by your existing IAM, inside your existing compliance boundary. This is the 101 for getting from zero to a working, production-ready deployment.
The basics
Anthropic (the company behind Claude) offers two ways to use its models. First-party (1P) means calling Anthropic's own API directly with an Anthropic account. Third-party (3P) means using the exact same Claude models through a cloud platform your company already uses. Same models, same quality — different billing, contracts, and access controls.
You sign up with Anthropic, get an API key, and pay Anthropic directly. Fastest access to new features. Great for startups and teams that can onboard a new vendor easily.
You enable Claude inside AWS, Google Cloud, or Azure — no separate Anthropic contract needed. Usage appears on your existing cloud bill, and access is controlled by the cloud IAM roles and policies your security team already manages.
The business case
Claude is available through the AWS, Google Cloud, and Azure marketplaces. Spend can draw down existing committed-use agreements instead of opening a new vendor review.
Token usage lands on your existing cloud invoice with the cost tags, budgets, and alerts your finance team already uses.
Access is granted through IAM roles, service accounts, and network policies you already audit — not a shared API key in a spreadsheet.
Requests are processed within your cloud provider's certified infrastructure, with the region controls and data-handling terms of your existing cloud agreement.
Step 1 · Choose
Pick based on where your workloads already live. All four serve the same Claude models through the same Messages API shape — switching later is mostly a one-line client change.
Anthropic runs the service; AWS provides the auth (IAM/SigV4), network path, and Marketplace billing.
AWS's managed AI service. Claude sits alongside other models behind one AWS API and IAM policy set.
anthropic. prefixGoogle Cloud's AI platform. Claude is enabled per-project and authenticated with standard Google credentials.
globalAzure's AI Foundry service. Claude deploys as a resource in your Azure subscription.
Step 2 · Connect
All examples use the official Anthropic Python SDK (pip install anthropic) —
each platform has a dedicated client class, and after construction the API is identical.
TypeScript, Java, Go, C#, Ruby, and PHP SDKs follow the same pattern.
AWS_REGION and ANTHROPIC_AWS_WORKSPACE_ID (both required — no defaults).# pip install -U "anthropic[aws]"
from anthropic import AnthropicAWS
client = AnthropicAWS() # reads AWS_REGION + ANTHROPIC_AWS_WORKSPACE_ID
response = client.messages.create(
model="claude-opus-4-8", # bare model ID — no prefix
max_tokens=1024,
messages=[{"role": "user", "content": "Summarize this contract clause: ..."}],
)
print(response.content[0].text)
# pip install -U "anthropic[bedrock]"
from anthropic import AnthropicBedrockMantle
client = AnthropicBedrockMantle(aws_region="us-east-1")
response = client.messages.create(
model="anthropic.claude-opus-4-8", # note the anthropic. prefix
max_tokens=1024,
messages=[{"role": "user", "content": "Draft a reply to this customer email: ..."}],
)
print(response.content[0].text)
gcloud auth application-default login (or use a service account in production).# pip install -U "anthropic[vertex]"
from anthropic import AnthropicVertex
client = AnthropicVertex(project_id="my-gcp-project", region="global")
response = client.messages.create(
model="claude-opus-4-8", # bare model ID — no prefix
max_tokens=1024,
messages=[{"role": "user", "content": "Classify this support ticket: ..."}],
)
print(response.content[0].text)
# pip install -U anthropic
from anthropic import AnthropicFoundry
client = AnthropicFoundry(
api_key="<your-foundry-key>", # from the Azure portal
resource="my-foundry-resource",
)
response = client.messages.create(
model="claude-opus-4-8",
max_tokens=1024,
messages=[{"role": "user", "content": "Extract the key dates from this memo: ..."}],
)
print(response.content[0].text)
anthropic.claude-opus-4-8). Claude Platform on AWS, Vertex AI, and Foundry all use the bare
first-party IDs (claude-opus-4-8). Mixing these up is the #1 first-call error — it returns a 404/400, not a warning.
Step 3 · Plan
The core Messages API — chat, streaming, tool use, vision, PDFs, prompt caching — works on every platform. Differences show up in the newer, agent-oriented surface. Check this before you commit to an architecture.
| Capability | Claude Platform on AWS | Amazon Bedrock | Vertex AI | Microsoft Foundry |
|---|---|---|---|---|
| Messages, streaming, tool use | ✔ | ✔ | ✔ | ✔ |
| Prompt caching (up to ~90% input savings) | ✔ | ✔ | ✔ | β |
| PDF input & vision | ✔ | ✔ | ✔ | β |
| Structured outputs (guaranteed JSON) | ✔ | ✔ | ✔ | β |
| 1M-token context window | ✔ | ✔ | ✔ | β |
| Web search (server-side) | ✔ | ✘ | basic | β |
| Code execution (server-side sandbox) | ✔ | ✘ | ✘ | β |
| Batch API (50% discount, async) | ✔ | ✘ | ✘ | ✘ |
| Files API | β | ✘ | ✘ | β |
| Managed Agents (hosted agent sessions) | β | ✘ | ✘ | ✘ |
✔ = generally available · β = beta · ✘ = not supported. Snapshot as of July 2026 — always confirm against the official platform availability table before finalizing an architecture.
Step 4 · Size
Prices are Anthropic list prices per million tokens; on 3P platforms your effective rate is set by the cloud provider and may draw down committed-use discounts.
| Model | Bare ID | Best for | Input / Output ($/1M tokens) |
|---|---|---|---|
| Claude Opus 4.8 | claude-opus-4-8 |
The enterprise default: complex reasoning, coding, agents, document analysis | $5 / $25 |
| Claude Sonnet 5 | claude-sonnet-5 |
High-volume production workloads at near-Opus quality | $3 / $15 (intro $2 / $10 through Aug 2026) |
| Claude Haiku 4.5 | claude-haiku-4-5 |
Simple, speed-critical tasks: classification, routing, extraction | $1 / $5 |
Remember: on Amazon Bedrock, prepend anthropic. to every ID above.
Step 5 · Ship
The eight things to have in place before your first production workload.
Common questions
messages.create() interface on every platform — switching typically means changing the client constructor and (for Bedrock) the model ID prefix. Keep platform-specific configuration in one module to make the swap trivial.