API リファレンス

Claude Messages API

Anthropic ネイティブの Messages API — Claude モデルをネイティブプロトコルで利用できます。Anthropic SDK と Claude Code に対応しています。

エンドポイント

http
POST https://api.tokspan.com/v1/messages

簡単な例

Anthropic SDK を TokSpan をベース URL として使用します — 設定以外のコード変更は不要です:

python
from anthropic import Anthropic

client = Anthropic(
    api_key="sk-your-key",
    base_url="https://api.tokspan.com",  # ← host root; the SDK appends /v1/messages
)

response = client.messages.create(
    model="MODEL_NAME",
    max_tokens=1024,
    messages=[{"role": "user", "content": "Hello!"}],
)

print(response.content[0].text)
shell
curl -X POST "https://api.tokspan.com/v1/messages" \
  -H "x-api-key: sk-your-key" \
  -H "anthropic-version: 2023-06-01" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "MODEL_NAME",
    "max_tokens": 1024,
    "messages": [{"role": "user", "content": "Hello!"}]
  }'
json — Response
{
  "id": "msg_abc123",
  "type": "message",
  "role": "assistant",
  "content": [{
    "type": "text",
    "text": "Hello! How can I help you today?"
  }],
  "model": "MODEL_NAME",
  "stop_reason": "end_turn",
  "usage": {
    "input_tokens": 10,
    "output_tokens": 12
  }
}

リクエストボディ

パラメータ必須説明
modelstringはいClaude モデル ID(例:claude-opus-4-8claude-sonnet-4-6)。
max_tokensintegerはい生成する最大トークン数。Messages API では <strong>必須</strong> です。
messagesarrayはい<code>user</code> と <code>assistant</code> のロールを交互に持つメッセージの配列。最初のメッセージはユーザーからのものである必要があります。
systemstringいいえシステムプロンプト — 文字列またはコンテンツブロックの配列。
temperaturenumberいいえサンプリング温度(0~1)。
streambooleanいいえSSE ストリーミングを有効にします。デフォルト:<code>false</code>。
top_pnumberいいえ核サンプリング(0~1)。
toolsarrayいいえツール使用のためのツール定義。ツール呼び出し をご参照ください。
tool_choiceobjectいいえツール選択の制御:{"type": "auto"} または特定のツール。
thinkingobjectいいえ拡張思考(Extended thinking)設定:{"type": "enabled", "budget_tokens": 1024}。予算は ≥1024 かつ max_tokens 未満である必要があります。

システムプロンプト

システムプロンプトはトップレベルの <code>system</code> フィールドとして渡します(メッセージではありません):

json
{
  "model": "MODEL_NAME",
  "max_tokens": 1024,
  "system": "You are a helpful assistant that always answers in French.",
  "messages": [{"role": "user", "content": "What is the capital of France?"}]
}

ストリーミング(SSE)

stream: true を設定すると、Anthropic の SSE イベント(message_startcontent_block_deltamessage_stop など)を受信できます。

shell
curl -X POST "https://api.tokspan.com/v1/messages" \
  -H "x-api-key: sk-your-key" \
  -H "anthropic-version: 2023-06-01" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "MODEL_NAME",
    "max_tokens": 1024,
    "messages": [{"role": "user", "content": "Tell me a story."}],
    "stream": true
  }'
設定:Anthropic SDK の base_urlhttps://api.tokspan.com に設定してください — SDK が /v1/messages を自動的に追加します。認証は x-api-key + anthropic-version ヘッダー(Anthropic ネイティブ)と Authorization: Bearer の両方を受け入れます。Anthropic SDK はこれを自動的に処理します。