Bedrock Application Inference Profile (Opus 4.7, 1M context) still returns `thinking.type.enabled is not supported` 400 error
Summary
The previously shipped fix — "Fixed thinking.type.enabled is not supported 400 error when using Opus 4.7 via a Bedrock Application Inference Profile ARN" (see https://code.claude.com/docs/en/changelog) — does not cover the 1M-context variant. Selecting Opus 4.7 with [1m] via a Bedrock Application Inference Profile ARN still fails with the same 400.
Environment
- Claude Code version: 2.1.114
- Platform: macOS (Darwin 25.4.0), zsh
- Provider: AWS Bedrock via Application Inference Profile ARN
- Env vars:
CLAUDE_CODE_USE_BEDROCK=1ANTHROPIC_DEFAULT_OPUS_MODEL=arn:aws:bedrock:us-west-2:<acct>:application-inference-profile/<id>- Model: Opus 4.7 (
claude-opus-4-7), 1M-context variant selected via/model opus[1m] - Effort level: xhigh (also reproducible at
max)
Reproduction
- Export the env vars above so Claude Code routes Opus through a Bedrock Application Inference Profile ARN.
- Start Claude Code (
claude). /model opus[1m]to select the 1M-context variant./effort xhigh(also reproducible withmax).- Send any user message.
Actual behavior
Request fails with:
API Error: 400 {"type":"error","request_id":"<redacted>","error":{"type":"invalid_request_error","message":"\"thinking.type.enabled\" is not supported for this model. Use \"thinking.type.adaptive\" and \"output_config.effort\" to control thinking behavior."}}
Claude Code is still sending thinking.type = "enabled" on this routing path instead of thinking.type = "adaptive" + output_config.effort.
Expected behavior
When the selected model is Opus 4.7 behind a Bedrock Application Inference Profile ARN — including the [1m] 1M-context variant selected via /model opus[1m] — Claude Code should send thinking.type = "adaptive" and translate the effort level into output_config.effort, matching the fix already shipped for the non-1M variant.
Notes
- The earlier changelog entry states this 400 was fixed for Application Inference Profile ARNs, but the fix appears to miss the 1M-context code path (
[1m]suffix). - Workaround: switching off
[1m](plain/model opus) avoids the error, consistent with the routing-path hypothesis. - Happy to share the original request_id privately with the Anthropic team if it helps debugging.
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗