POST /v1/messages.
Quickstart
Install the Anthropic SDK for your language:- Python
- JavaScript / TypeScript
The base URL for the Anthropic SDK is
https://api.fireworks.ai/inference (without the /v1 suffix). The SDK appends /v1/messages automatically.Usage
Use the Anthropic SDK as you normally would. Setmodel to a Fireworks model resource name, such as accounts/fireworks/models/kimi-k2p5.
The Serverless Quickstart includes Anthropic SDK examples for common use cases:
API compatibility
Supported endpoint
Fireworks supports the Anthropic/v1/messages endpoint, including non-streaming and streaming (SSE) responses.
Deployment support
Anthropic compatibility is supported for serverless and on-demand deployments. Requests must go throughapi.fireworks.ai/inference (direct route endpoints are not supported for this surface).
Differences from Anthropic
The following parameters and fields are handled differently or are not supported:model: Must be a Fireworks model identifier (for example,accounts/fireworks/models/deepseek-v3p2) instead of an Anthropic model name. See the Fireworks Model Library for available models.max_tokens: Optional on Fireworks (required on Anthropic).anthropic-versionheader: Not required. Fireworks ignores this header.usagefield: Included in both non-streaming and streaming responses. See Token usage for details.service_tier: Supported. Setservice_tier: "priority"to opt into Priority tier.inference_geo: Not supported.
Reasoning effort mapping
When you use thethinking parameter with output_config.effort, Anthropic effort values map to Fireworks reasoning_effort:
The
adaptive thinking type is not supported yet.Tool search and deferred tool loading
Tool definition schemas usually live at the top of a model’s chat template, ahead of the conversation. Carrying every schema on every turn bloats that prefix and destabilizes the prompt cache for clients with large tool sets. Fireworks supports the tool search pattern for on-demand tool discovery—used by Claude Code’s MCP tool search and the Agent SDK’s tool search—to lazy-load schemas instead.defer_loading: Tools markeddefer_loading: trueare omitted from the request’s tool definitions when a tool-search tool is present. Rather than placing every schema at the top of the template up front, the deferred schemas are loaded lazily through tool results once the model identifies which tools it needs.tool_referenceexpansion: When a tool result returnstool_referenceblocks (the payload a tool-search call emits), each reference is expanded inline into the referenced tool’s schema within the tool-result message. That makes the newly loaded schema visible to the model through the conversation, so it can produce tool calls in line with that schema—without the client re-sending the fulltoolsarray and shifting the prefix.
tool_search_tool_* tool names and clients that name their discovery tool ToolSearch (for example, Claude Code).
Fireworks translates the client-side tool-search discovery and deferred-loading wire format only. Anthropic’s server-side tool search and server-side tool use—where the provider executes the search and tool calls on its side—are not supported. Server-side execution of the other server tool families (web search, code execution, memory, web fetch) is likewise not supported; see Unsupported features.
An explicitly forced
tool_choice naming a deferred tool overrides the drop: the forced tool stays callable in the request’s tool definitions so the forced choice validates.Unsupported features
The following Anthropic features are not available on Fireworks:- Server tools: Server-side execution of tool families such as code execution, memory, web fetch, and web search is not supported. Tool search discovery and deferred tool loading are supported — see Tool search and deferred tool loading.
- Server-tool metadata: Fields such as
callerandcontainerare not supported. - Tool schema fields:
eager_input_streaming,cache_control,allowed_callers, andinput_examplesare not supported. server_tool_use: Not included in usage tracking.speed: Theoutput_config.speedoption is not supported yet.
Fireworks extensions
The following Fireworks-specific extension is available on the Anthropic-compatible endpoint:raw_output: A request parameter (boolean) that returns low-level details of what the model sees, including formatted prompts and function call data.
Token usage
Token usage (input_tokens and output_tokens) is included in both non-streaming and streaming responses.
Non-streaming
For non-streaming requests, usage is returned on the response object:Streaming
For streaming requests, token usage is included in the finalmessage_delta event:
There is only one
message_delta event per stream (the last event before message_stop), and it always contains the actual token counts. The message_start event also includes a usage field, but its values are always 0 and should be ignored for metering purposes.Next steps
Quickstart
Get started with your first API call
Reasoning
Use reasoning with thinking models
API reference
Full Anthropic Messages API reference