Count tokens in a Message
POST
/v1/messages/count_tokens?beta=true https://api.anthropic.com
Count the number of tokens in a Message.
The Token Count API can be used to count the number of tokens in a Message, including tools, images, and documents, without creating it.
Learn more about token counting in our user guide
Parameters
header Header Parameters
| Name | Type |
|---|---|
anthropic-beta Optional header to specify the beta version(s) you want to use. To use multiple betas, use a comma separated list like | string |
anthropic-version The version of the Claude API you want to use. Read more about versioning and our version history here. | string |
Request Body
application/json
required
interface BetaCountMessageTokensParams {
context_management?:BetaContextManagementConfig | null;
mcp_servers?:BetaRequestMCPServerURLDefinition [];
messages:BetaInputMessage [];
model:Model ;
output_config?:BetaOutputConfig ;
output_format?:BetaJsonOutputFormat | null;
system?:BetaRequestTextBlock [] | string;
thinking?:BetaThinkingConfigParam ;
tool_choice?:BetaToolChoice ;
tools?: (BetaTool | BetaBashTool20241022 | BetaBashTool20250124 | BetaCodeExecutionTool20250522 | BetaCodeExecutionTool20250825 | BetaComputerUseTool20241022 | BetaMemoryTool20250818 | BetaComputerUseTool20250124 | BetaTextEditor20241022 | BetaComputerUseTool20251124 | BetaTextEditor20250124 | BetaTextEditor20250429 | BetaTextEditor20250728 | BetaWebSearchTool20250305 | BetaWebFetchTool20250910 | BetaToolSearchToolBM2520251119 | BetaToolSearchToolRegex20251119 | BetaMCPToolset )[];
}
context_management?:
mcp_servers?:
messages:
model:
output_config?:
output_format?:
system?:
thinking?:
tool_choice?:
tools?: (
}
Responses
200 application/json
Successful Response
interface BetaCountMessageTokensResponse {
context_management:BetaContextManagementResponse | null;
input_tokens: number;
}
context_management:
input_tokens: number;
}
Client Errors
4XX application/json
Error response.
See our errors documentation for more details.
interface BetaErrorResponse {
error:BetaInvalidRequestError | BetaAuthenticationError | BetaBillingError | BetaPermissionError | BetaNotFoundError | BetaRateLimitError | BetaGatewayTimeoutError | BetaAPIError | BetaOverloadedError ;
request_id: string | null;
type: "error";
}
error:
request_id: string | null;
type: "error";
}