Skip to main content

Module messages

Module messages 

Source
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

MethodPathFunction
POST/v1/messagesMessages::create (non-streaming)
POST/v1/messagesMessages::create_stream (SSE)
POST/v1/messages/count_tokensMessages::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

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::ContainerInfo;
pub use response::CountTokensResponse;
pub use response::Message;
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§

apiasync
The Messages namespace: Messages::create, Messages::count_tokens, and their _with_beta siblings.
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_servers request field.
metadata
Per-request metadata and the request-side service_tier field.
request
Request payloads for the Messages API.
response
Response types: Message, CountTokensResponse, ContainerInfo.
stream
Streaming event types and reconstruction.
thinking
Configuration for extended thinking.
tools
Tool definitions and tool-choice configuration.