メッセージを作成
Anthropic Messages API:Claude モデル専用。Base URL に /v1 を付けず、Anthropic SDK と Claude Code でそのまま使えます。
/v1/messagesClaude モデルは Anthropic プロトコルを使います。SDK の Base URL には https://api.hop-base.com を指定し(/v1 は付けません)、リクエストパスは /v1/messages のままです。POST /v1/messages/count_tokens にも対応しています。
下表にはゲートウェイが値を補ったり特別に処理したりする部分のみを載せています。その他の Messages API フィールドはそのまま転送され、値の範囲は Anthropic の公式仕様に従います。Claude のキーで OpenAI プロトコルのパスを呼ぶと 404「当前平台不支持该 API 路径」を返します。
ヘッダー
Bearer sk-…。x-api-key: sk-… でも可(どちらか一方)
SDK が自動で付与し、そのまま転送されます。例:2023-06-01
Beta 機能のスイッチ。そのまま転送されます
リクエストボディJSON
現在のキーのグループに含まれる Claude モデル ID。グループにそのモデルがない場合は 404 model_not_found を返します
ゲートウェイでは上限を設けず、最大値はモデルの公式仕様に従います。公式 API では必須ですが、HopBase は省略時に 4096 を補います。長い出力は 4096 で打ち切られる(stop_reason: "max_tokens")ため、明示的に指定してください
デフォルト4096
Anthropic 公式形式に従い、そのまま転送されます
個数≥ 1 個
user または assistant
文字列、またはコンテンツブロックの配列(text、image、tool_use、tool_result など)
システムプロンプト。そのまま転送されます
true で Anthropic の SSE イベントストリームを返します
デフォルトfalse
Anthropic のツール定義(name、description、input_schema)。そのまま転送されます
拡張思考の設定。そのまま転送され、値は Anthropic の公式仕様に従います
そのまま転送され、範囲は Anthropic の公式仕様に従います
レスポンス
200成功。非ストリーミングでは message JSON、stream: true のときは Anthropic の SSE
メッセージ ID
モデル ID
コンテンツブロック
text / thinking / tool_use
text ブロックのテキスト
tool_use:ツール名
tool_use:ツールの引数
end_turn / max_tokens / tool_use / stop_sequence
トークン使用量
入力トークン
出力トークン
キャッシュに書き込まれた入力トークン
キャッシュにヒットした入力トークン
エラー
{"type":"error","error":{"type":"invalid_request_error","message":"…"}}。code はありません。キー検証段階のエラー(401、402、403)は OpenAI 形式のままですmissing_api_key / invalid_api_key / api_key_expired)insufficient_quota)model_not_found)、またはパスがそのグループに属さない(route_not_found)request_too_large)user_concurrency_limit / apikey_concurrency_limit)。Retry-After 付き