Please help me to activate claude models on amazon bedrock,
his usually happens with new AWS accounts or accounts without enough trust/history on AWS.
Try these steps:
-
Make sure you are using a supported Bedrock region like:
-
us-east-1
-
us-west-2
-
-
Complete account verification:
-
add billing method
-
verify phone number
-
enable MFA
-
-
Open an AWS Support case here:
AWS Console → Support Center → Create case -
In the support message, explain:
-
you want access to Anthropic Claude models on Bedrock
-
your use case (learning, SaaS, chatbot, AI app, etc.)
-
ask them to enable Anthropic access for your account
-
-
Wait a few hours or 1–2 days, then retry.
Many people get this issue on first-time Bedrock activation, so it’s pretty common.
Quick — what you’re really asking is “I’m in India, the form throws ‘not authorized’, I have no idea why.” Got it.
You’re not stuck because you did something wrong. You’re stuck because one error message hides at least six different underlying problems — and the fix changes per problem.
Like a car’s check-engine light. One icon → low oil, dead sensor, loose gas cap… all the same warning. Let’s find which one lit up on yours.
Your most likely cause (Indian account)
It’s the payment instrument — not the form.
Your AWS account is almost certainly registered with AISPL (Amazon Internet Services Pvt Ltd — AWS’s local Indian entity, mandatory for India billing).
Since March 2022, the RBI ruled credit/debit cards on file can’t be used for AWS Marketplace contract-pricing products. Anthropic Claude on Bedrock = a Marketplace contract product.
Your card is valid. AWS just can’t charge it the way Marketplace needs.
The “not authorized” string is the Marketplace agreement layer choking — not your form answers, not your IAM.
The fix — 5 minutes, ₹0
| # | Do this |
|---|---|
| 1 | Open AWS Support → “Account and Billing” case — this category is free, works on Basic Support plan |
| 2 | Title: AISPL account — request Pay-by-Invoice for AWS Marketplace (Anthropic Claude on Bedrock) |
| 3 | Body: Default payment is credit/debit card, blocked by AISPL Marketplace contract-pricing restriction. Please switch to Pay-by-Invoice. |
| 4 | Wait ~1–2 business days for the switch |
| 5 | Re-submit the Anthropic use-case form. Access grants instantly on a successful submission |
Wrong-queue trap: if the form tries to push you toward “Technical Support” — back up. That queue needs a paid plan ($29/month floor). “Account and Billing” is the free one. Real humans, usually under 48 hours. Wrong queue is the #1 stall point I see.
I keep a saved template for this exact shape — same skeleton works for AISPL switches, Marketplace toggle issues, and Bedrock onboarding reviews. Three paragraphs, zero flourish, they read it and reply.
🔧 Not the payment fix? Check the other 5 possible causes...
If AISPL doesn’t unstick you, your cause is probably one of these five:
| If you see… | Underlying cause | Fix |
|---|---|---|
| Error mentions “private marketplace eligibility” | Org has a private marketplace, Claude not whitelisted in it | Ask private marketplace admin to whitelist Anthropic Claude product IDs |
| Billing → Marketplace settings shows “Disabled” | Marketplace access toggle is OFF | Toggle ON. Root user typically needed for first flip |
IAM error cites aws-marketplace:Subscribe |
IAM role missing Marketplace permissions | Attach AmazonBedrockFullAccess, or scope: Subscribe, Unsubscribe, ViewSubscriptions |
| Account < 90 days old, no other AWS services touched | Account on secondary onboarding review | Same free “Account & Billing” case — ask for “Bedrock onboarding review” |
| Tax address isn’t India (or another supported country) | Anthropic geo gate (independent of region) | Update AWS billing → tax address |
Three paths to actually using Claude
Pick the one that fits how locked-in you are to AWS.
| Path | Speed | When it’s right for you |
|---|---|---|
| 1–2 days | You need AWS infra (VPC, IAM, CloudTrail) | |
| 10 minutes | Solo dev, no AWS lock-in | |
| 5 minutes | Fallback if A and B both wall |
🇮🇳 Path A — Bedrock India (the right way, post-March 2026)
Most tutorials still say “use us-east-1.” Stale.
AWS opened ap-south-1 (Mumbai) and ap-south-2 (Hyderabad) for Claude on 9 March 2026, co-published with Anthropic. After the FTU form succeeds, your invocation looks like this:
import boto3
bedrock = boto3.client("bedrock-runtime", region_name="ap-south-1")
response = bedrock.converse(
modelId="global.anthropic.claude-sonnet-4-6", # note: global. NOT us.
messages=[{"role": "user", "content": [{"text": "Hello"}]}]
)
print(response["output"]["message"]["content"][0]["text"])
The global. prefix is the India-friendly inference profile — routes from Mumbai/Hyderabad to wherever AWS has capacity worldwide.
Full code samples for all four invocation APIs (Converse, ConverseStream, InvokeModel, InvokeModelWithResponseStream): aws-samples/sample-amazon-bedrock-global-cris
⚡ Path B — Direct Anthropic API (10 minutes, zero AWS)
Skips Bedrock entirely. No AISPL Marketplace layer in the path. No FTU form.
Steps:
- Sign up at console.anthropic.com
- Fill org info + use case (one short paragraph)
- Indian card works directly — Stripe billing, no AISPL restriction in this path
- Add $5 minimum credit
- Settings → API Keys → Create Key. Copy it immediately — won’t show again.
Why this might be your real answer: Bedrock typically lags the direct API by weeks-to-months on new model releases. Extended Thinking, Prompt Caching, MCP — on direct API day-of-release, later (sometimes much later) on Bedrock. If you don’t need to be on AWS, you probably shouldn’t be.
🪤 Path C — OpenRouter / LiteLLM (the fallback)
export ANTHROPIC_BASE_URL="https://openrouter.ai/api"
…plus their Claude routing. Or self-host LiteLLM as a proxy that can route across Bedrock, OpenRouter, Vertex, and direct Anthropic — pick provider per request.
Useful when you want provider redundancy, or if you need a PII-masking layer for compliance (LiteLLM ships a Presidio plugin for that).
Two bugs to dodge while testing
⚠️ Don't pick Opus 4.7 as your first test call
Open bug: Issue #51183, filed 20 April 2026.
Bedrock returns permission_error even when AWS reports your account as fully AUTHORIZED. Same account works fine with Opus 4.6 and Sonnet 4.6 — it’s a sync issue between AWS’s entitlement plane and Anthropic’s runtime layer on this specific model.
Use for first invocation:
global.anthropic.claude-sonnet-4-6
global.anthropic.claude-haiku-4-5-20251001-v1:0
Both confirmed working. Switch to Opus 4.7 once they patch.
⚠️ Don't set a region-restrictive SCP on a fresh account
Cross-region inference profiles silently load-balance across multiple AWS regions.
If you restrict your account to just us-west-2 (or any single region), the load-balancer still hits us-east-1 and us-east-2 and you get 403s. Self-DOS by accident.
Issue #20594 for the gory details.
🧠 If you already know the AWS basics — the connecting piece
The “not authorized” string fires from the aws-marketplace agreement layer, not the bedrock service layer.
That’s why IAM edits don’t fix it — IAM is downstream of the Marketplace agreement.
The actual gate is the billing-instrument layer (the Pay-by-Invoice switch). Once that clears, PutUseCaseForModelAccess succeeds and entitlement propagates in <15 minutes.
Six warning lights. One icon.
The card sitting in your AWS billing tab is the one that’s lit. Switch payment → retry form → you’re in.
And if you don’t even need to be on Bedrock — direct API is 10 minutes from sign-up to a working client.messages.create().
Go pick your fight.

!