> ## Documentation Index
> Fetch the complete documentation index at: https://docs.xhuoapi.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Claude Messages Count Tokens API 申請及び使用

> Claude AI 集成指南 - XHuoAPI

Claude Messages Count Tokens API は、実際にメッセージを作成することなく、メッセージの入力トークン数を計算できます。これにはツール、画像、ドキュメントなどの内容のトークンカウントが含まれます。これは、コストを見積もったり、入力がモデルのコンテキスト制限を超えていないかを確認する際に非常に便利です。

この文書では、Claude Messages Count Tokens API の使用プロセスについて説明します。

## 申請プロセス

Claude Messages Count Tokens API を使用するには、まず [Claude Messages Count Tokens API](https://api.xhuoapi.ai/documents/claude-messages-count-tokens) ページにアクセスし、「Acquire」ボタンをクリックして、リクエストに必要な認証情報を取得します。

まだログインまたは登録していない場合は、自動的にログインページにリダイレクトされ、登録とログインを促されます。ログインまたは登録後は、自動的に現在のページに戻ります。

この API は完全に無料で使用でき、クレジットを消費することはありません。

## 基本使用

Claude Messages Count Tokens API のリクエストパスは `/v1/messages/count_tokens` で、Anthropic の公式 API と一致しています。少なくとも2つの必須パラメータを提供する必要があります：

* `model`：使用する Claude モデルを選択します。例：`claude-sonnet-4-5-20250929`、`claude-opus-4-20250514` など。
* `messages`：入力メッセージの配列で、各メッセージには `role`（役割）と `content`（内容）が含まれます。

一般的なオプションパラメータ：

* `system`：システムプロンプトで、トークン数にカウントされます。
* `tools`：ツール定義で、トークン数にカウントされます。
* `thinking`：思考拡張設定。

### cURL の例

```bash theme={null}
curl -X POST 'https://api.xhuoapi.ai/v1/v1/messages/count_tokens' \
  -H 'accept: application/json' \
  -H 'authorization: Bearer {token}' \
  -H 'content-type: application/json' \
  -d '{
    "model": "claude-sonnet-4-5-20250929",
    "messages": [
      {
        "role": "user",
        "content": "Hello, Claude"
      }
    ]
  }'
```

### Python の例

```python theme={null}
import httpx

url = "https://api.xhuoapi.ai/v1/v1/messages/count_tokens"
headers = {
    "accept": "application/json",
    "authorization": "Bearer {token}",
    "content-type": "application/json",
}
payload = {
    "model": "claude-sonnet-4-5-20250929",
    "messages": [
        {
            "role": "user",
            "content": "Hello, Claude"
        }
    ],
}
response = httpx.post(url, headers=headers, json=payload)
print(response.json())
```

返却結果の例：

```json theme={null}
{
  "input_tokens": 11
}
```

### Anthropic SDK の使用

Claude Messages Count Tokens API は完全に Anthropic の公式 SDK と互換性があり、`anthropic` ライブラリを使用して直接呼び出すことができます。

```python theme={null}
from anthropic import Anthropic

client = Anthropic(
    api_key="{token}",
    base_url="https://api.xhuoapi.ai/v1",
)

result = client.messages.count_tokens(
    model="claude-sonnet-4-5-20250929",
    messages=[
        {
            "role": "user",
            "content": "Hello, Claude"
        }
    ],
)
print(result.input_tokens)
```

## ツールを含むトークンカウント

リクエストにツール定義が含まれている場合、これらのツールもトークン数にカウントされます：

```python theme={null}
result = client.messages.count_tokens(
    model="claude-sonnet-4-5-20250929",
    messages=[
        {
            "role": "user",
            "content": "What is the weather in San Francisco?"
        }
    ],
    tools=[
        {
            "name": "get_weather",
            "description": "Get the current weather in a given location",
            "input_schema": {
                "type": "object",
                "properties": {
                    "location": {
                        "type": "string",
                        "description": "The city and state, e.g. San Francisco, CA"
                    }
                },
                "required": ["location"]
            }
        }
    ],
)
print(result.input_tokens)
```

## システムプロンプトを含むトークンカウント

システムプロンプトもトークン数にカウントされます：

```python theme={null}
result = client.messages.count_tokens(
    model="claude-sonnet-4-5-20250929",
    system="You are a helpful assistant that speaks Chinese.",
    messages=[
        {
            "role": "user",
            "content": "Hello"
        }
    ],
)
print(result.input_tokens)
```

## 注意事項

* この API は入力トークン数のみを計算し、モデル出力は生成しません。
* トークンカウント結果は、Claude Messages API のコストを見積もるために使用できます。
* 異なるモデルのトークン化方法は異なる場合があるため、実際の呼び出しと同じ model パラメータを使用してください。
* この API は完全に無料で、クレジットを消費しません。
