What changed
Previously, fast mode required manually setting the fast-mode-2026-02-01 beta header in HTTP requests — there was no SDK-level parameter. As of Python SDK v1.15.0 and TypeScript SDK v0.135.0 (both Oct 15), speed="fast" is a first-class top-level parameter on messages.create(), and the response's usage object now includes a speed field ("fast" or "standard") that lets you verify which tier actually ran.
TL;DR
Anthropic SDK (Python v1.15.0, TypeScript v0.135.0) — Oct 15 — adds speed="fast" to Messages API across 8 SDK languages; Opus 5.5 needs no beta header, Opus 5 and 4.8 still do; pricing is 2x standard ($8/$40 per MTok for Opus 5.5); prompt cache is not shared between fast and standard speed requests.
Developer signal
For Claude Opus 5.5 (now GA in fast mode), just add speed="fast" to your messages.create() call — no beta header needed:
response = client.messages.create(
model="claude-opus-5-5",
max_tokens=4096,
speed="fast",
messages=[{"role": "user", "content": "..."}],
)
print(response.usage.speed) # "fast" or "standard"
For Claude Opus 5 and Opus 4.8, still send anthropic-beta: fast-mode-2026-02-01 alongside the speed parameter. Critical cache gotcha: fast and standard speed requests do NOT share prompt cache prefixes — if you have a large cached system prompt and switch between speed: "fast" and standard (e.g., in a fallback), you'll take a cache miss. Design your fallback pattern with this in mind. Rate limits for fast mode are separate from standard Opus rate limits and have their own set of response headers (anthropic-fast-input-tokens-limit, etc.). Fast mode is NOT available on the Batch API, Priority Tier, or Claude Platform on AWS.