Expand description
The Messages API.
The headline endpoint of the Anthropic API. Build a request via
CreateMessageRequest::builder, then send it through the
Messages namespace handle obtained from
Client::messages.
§Endpoints
| Method | Path | Function |
|---|---|---|
POST | /v1/messages | Messages::create (non-streaming) |
POST | /v1/messages | Messages::create_stream (SSE) |
POST | /v1/messages/count_tokens | Messages::count_tokens |
§Quick start
use claude_api::{Client, messages::CreateMessageRequest, types::ModelId};
let client = Client::new("sk-ant-...");
let resp = client.messages().create(
CreateMessageRequest::builder()
.model(ModelId::SONNET_4_6)
.max_tokens(256)
.system("Be concise.")
.user("What is the capital of France?")
.build()?,
).await?;§Module layout
request–CreateMessageRequest,CountTokensRequest, buildersresponse–Message,CountTokensResponse,ContainerInfocontent–ContentBlock/KnownBlockunion with forward-compat fallthroughstream–StreamEvent,ContentDelta, theEventStreamaggregator +on_*callbackstools–Tool,BuiltinTool,CustomTool,ToolChoicecache–CacheControlfor prompt cachingthinking–ThinkingConfigfor extended thinkingmcp–McpServerConfigfor MCP server invocationcitation– typedCitationenuminput–MessageInput,SystemPrompthelpersmetadata–MessageMetadata,RequestServiceTier
For streaming, see stream for the wire-event types and
api::Messages::create_stream for the namespace method.
Re-exports§
pub use cache::CacheControl;pub use citation::Citation;pub use citation::KnownCitation;pub use content::CitationConfig;pub use content::ContentBlock;pub use content::DocumentSource;pub use content::ImageSource;pub use content::KnownBlock;pub use content::ToolResultContent;pub use input::MessageContent;pub use input::MessageInput;pub use input::SystemPrompt;pub use mcp::McpServerConfig;pub use mcp::McpToolConfiguration;pub use metadata::MessageMetadata;pub use metadata::RequestServiceTier;pub use request::CountTokensRequest;pub use request::CountTokensRequestBuilder;pub use request::CreateMessageRequest;pub use request::CreateMessageRequestBuilder;pub use response::ClearThinkingEdit;pub use response::ClearToolUsesEdit;pub use response::ContainerInfo;pub use response::ContextEdit;pub use response::CountTokensResponse;pub use response::KnownContextEdit;pub use response::KnownStopDetails;pub use response::Message;pub use response::RefusalStopDetails;pub use response::ResponseContextManagement;pub use response::StopDetails;pub use stream::ContentDelta;pub use stream::KnownContentDelta;pub use stream::KnownStreamEvent;pub use stream::MessageDelta;pub use stream::StreamEvent;pub use thinking::ThinkingConfig;pub use tools::BuiltinTool;pub use tools::CustomTool;pub use tools::KnownBuiltinTool;pub use tools::Tool;pub use tools::ToolChoice;pub use tools::UserLocation;pub use api::Messages;async
Modules§
- api
async - The Messages API namespace.
- cache
- Cache breakpoints for Anthropic prompt caching.
- citation
- Typed citations produced by Claude.
- content
- Content blocks: the building blocks of message bodies and stream deltas.
- input
- Request-side message structures:
MessageInput,MessageContent,SystemPrompt. - mcp
- MCP server configuration for the
mcp_serversrequest field. - metadata
- Per-request metadata and the request-side
service_tierfield. - request
- Request payloads for the Messages API.
- response
- Response types returned by the Messages API.
- stream
- Streaming event types and reconstruction.
- thinking
- Configuration for extended thinking.
- tools
- Tool definitions and tool-choice configuration.