申請手順
Claude Messages API を使用するには、まず Ace Data Cloud コンソール で API Token を取得し、予備として保管してください。
まだログインまたは登録していない場合は、ログインページに自動的に移動して登録とログインが案内され、完了後に現在のページへ自動的に戻ります。
1 つの API Token でプラットフォーム上のすべてのサービスを呼び出せるため、サービスごとに個別申請する必要はありません。 初回申請時には無料クレジットが付与され、無料で体験できます。クレジットが不足した場合は、コンソールで共通残高をチャージできます。
📘 完全なドキュメント:Claude Messages API →
基本的な使用方法
Claude Messages API のリクエストパスは/v1/messages であり、Anthropic 公式 API と一致しています。少なくとも以下の 3 つの必須パラメータを指定する必要があります。
model:使用する Claude モデルを選択します。claude-opus-5-5は Messages API でのみ提供され、100 万 Token のコンテキスト、最大出力 128K Token をサポートし、常に適応型思考を有効にします。最新のフラッグシップはclaude-fable-5-1(100 万 Token のコンテキスト、最大出力 128K Token)であり、従来のclaude-fable-5も引き続き互換性を維持しています。claude-sonnet-5-5はネイティブ Messages シリーズインターフェースに追加され、画像入力と適応型思考をサポートしています。その入力、出力、キャッシュ読み取りの公式参考価格は、それぞれ 100 万 Token あたり 2、10、0.20 米ドルです。messages:入力メッセージの配列であり、各メッセージにはrole(ロール)とcontent(内容)が含まれます。roleはuserとassistantをサポートします。max_tokens:最大出力 token 数であり、1 回の応答の長さを制限するために使用します。
system:システムプロンプト。モデルの動作とロールを設定するために使用します。temperature:生成のランダム性。0~1 の間で、値が大きいほど応答はより発散的になります。stream:ストリーミング応答を使用するかどうか。trueに設定すると、1 文字ずつ返す効果を実現できます。stop_sequences:カスタム停止シーケンス。モデルはこれらのテキストに遭遇すると生成を停止します。top_p:核サンプリングパラメータ。temperature と組み合わせて生成のランダム性を制御します。top_k:確率が最も高い K 個の選択肢からのみサンプリングします。tools:ツール定義。モデルが外部関数を呼び出せるようにするために使用します。tool_choice:モデルが提供されたツールをどのように使用するかを制御します。cache_control:リクエストの最後のキャッシュ可能なコンテンツブロックにキャッシュブレークポイントを自動作成します。具体的なコンテンツブロックに記述することもできます。
cURL の例
Python の例
id:今回のメッセージの一意な識別子。type:常にmessageです。role:常にassistantです。content:応答内容の配列。各要素にはtype(例:text)と対応する内容が含まれます。model:リクエストを処理したモデル名。stop_reason:停止理由。安定した値にはend_turn、max_tokens、stop_sequence、tool_use、pause_turn(現在の assistant 内容をそのまま返送して継続可能)、refusal、およびmodel_context_window_exceededが含まれます。stop_sequence:カスタム停止シーケンスによって停止した場合、マッチした停止シーケンステキストを表示します。stop_details:stop_reasonがrefusalの場合、拒否カテゴリと説明が含まれる可能性があります。usage:token 使用統計。input_tokensはキャッシュされていない入力です。cache_creation_input_tokensとcache_read_input_tokensはそれぞれキャッシュ書き込みと読み取りです。output_tokensはすべての出力 token 数です。output_tokens_details.thinking_tokensが返された場合、この値はoutput_tokensの部分集合であるため、合計量または料金を計算する際に再度加算しないでください。この明細は権威あるカウントがない場合、nullになるか省略される可能性があります。usage.cache_creation:任意のキャッシュ書き込み TTL 明細。ephemeral_5m_input_tokensとephemeral_1h_input_tokensを含みます。オブジェクトが存在する場合、両者の合計はcache_creation_input_tokensと等しくなります。フィールドがnullまたは省略されている場合は、現在の応答に利用可能な TTL 内訳がないことを示し、0と解釈することはできません。usage.cost:非ストリーミング応答には、Ace Data Cloud が記録したクレジット消費オブジェクトが含まれる場合があります。そのうちamountは今回の実際の消費量、currencyは計量単位、list_amountは割引前の金額(存在する場合)です。Fable 5.1 の公式キャッシュ読み取り基本価格は 100 万 Token あたり $0.25 であり、5 分間および 1 時間のキャッシュ書き込み基本価格はそれぞれ $12.50 および $20/100 万 Token です。プラットフォームの実際の価格はプラン割引に基づいて換算されます。
システムプロンプト
Claude Messages API はsystem フィールドを通じてシステムプロンプトを設定でき、モデルの動作、ロール、コンテキストを定義するために使用します。
Python の例
system プロンプトを設定することで、Claude の役割と動作方法を正確に制御できます。
ストリーミング応答
このインターフェースはストリーミング応答にも対応しており、stream パラメータを true に設定すると段階的に返される効果を得られます。これはウェブページでの一文字ずつの表示を実現するのに非常に適しています。
Python の例
event: と data: で始まります。ストリーミングイベントの種類には以下が含まれます:
message_start:メッセージの開始。メッセージの基本情報とモデル名を含みます。content_block_start:コンテンツブロックの開始。content_block_delta:コンテンツブロックの増分更新。新しく生成されたテキスト断片を含みます。content_block_stop:コンテンツブロックの終了。message_delta:メッセージレベルの増分更新。stop_reasonと最終的なusage情報を含みます。output_tokens_details.thinking_tokensの権威ある値は、最後のmessage_delta.usageからのみ読み取るべきであり、イベントをまたいで累算しないでください。message_stop:メッセージの終了。
content_block_delta イベントに段階的に生成されるテキスト内容が含まれており、すべての text_delta を連結することで完全な応答を取得できます。
JavaScript の例
マルチターン対話
マルチターン対話機能を連携したい場合は、messages 配列内で user と assistant ロールのメッセージを交互に配置し、それまでの対話履歴をあわせて渡す必要があります。
Python の例
messages で完全な対話履歴を渡すことで、Claude はコンテキストを組み合わせて正確に回答できます。
深い思考モデル
Claude の thinking と thinking summary は異なる2つの概念です。モデルは内部推論を行えますが、API は元の思考連鎖を返しません。推論過程を表示する必要がある場合、API が返すのは処理済みの要約です。 現在のモデルでは adaptive thinking の使用が推奨されており、output_config.effort によって全体的な推論投入量を制御します:
display: "summarized"は読みやすい思考要約を返します;これは生の思考連鎖ではありません。display: "omitted"はthinking: ""を返しますが、後続の会話をサポートするため opaque なsignatureは引き続き保持します。display: "updates"は Anthropic の beta モードであり、anthropic-beta: thinking-display-updates-2026-08-18を付加する必要があります。公式の定義では、推論本文を非表示にし、ツール呼び出しの間に短い進捗更新を表示します。プラットフォームはこのパラメータと beta リクエストヘッダーを元の値のまま渡し、強制的にsummarizedへ書き換えることはありません;実際の出力内容は、選択したモデルのサポート状況に依存します。thinking、output_config、effort、サンプリングパラメータおよび新規拡張フィールドは、元の値のまま渡されます。プラットフォームはモデルごとにハードコードされた値の列挙や組み合わせ制限を維持せず、thinking モードを自動的に書き換えることもありません;これらのパラメータを受け入れるかどうかは選択したモデルが判断し、モデルが返すパラメータエラーはクライアントに返されます。- Fable 5.1、Fable 5、Opus 5、Sonnet 5、Opus 4.8 および Opus 4.7 の display のデフォルト値は
omittedです;Opus 4.6、Sonnet 4.6 およびそれ以前の thinking をサポートするモデルでは、デフォルトでsummarizedを使用します。 - Display は返される内容とストリーミング遅延にのみ影響し、推論を無効化することも、thinking token の課金を減らすこともありません。
- thinking がデフォルトで有効かどうかと、display のデフォルト値は2つの独立した問題です。Opus 5、Sonnet 5 では adaptive thinking がデフォルトで有効です;Opus 5 では、
thinkingを省略することは adaptive と同等であり、output_config.effortを省略することはhighと同等です。Opus 4.8、4.7 および 4.6 では明示的な有効化が必要です。 - Thinking と最終本文はともに
max_tokensの出力予算を消費します。予算が小さすぎる場合、thinking が大部分の枠を占有し、本文が空になるか切り詰められる可能性があります;max_tokensを増やすか、low/mediumeffort を使用して推論の投入量を制御してください。 - thinking を無効化できるモデルでは、
thinking: {"type":"disabled"}を渡すことができます。between_toolsなどの新しいモードおよび effort の組み合わせは、選択したモデルに依存します;プラットフォームは古いモデルルールに基づいて事前に拒否しません。 - 固定の思考予算は
budget_tokensを通じて渡すことができます;新しいモデルでは通常、thinking.type=adaptiveとoutput_config.effortを使用します。固定予算または思考の無効化をサポートするかどうかは、選択したモデルの現在の能力に準拠します。 - マルチターン会話とツール呼び出しでは、assistant が返した完全な thinking ブロックおよび signature をそのまま返すべきです;signature を変更したり、自身で生成したりしないでください。
- パラメータの透過渡しは、すべてのモデルがすべての機能をサポートすることを意味するものではありません。プロトコルをまたぐ呼び出しでは引き続き変換が必要であり、
redacted_thinkingなどの内容のサポート範囲とエラーは、実際にリクエストを処理するモデルサービスによって決まります。
summarized は thinking_delta を生成します;omitted は thinking_delta を生成せず、thinking ブロックのライフサイクルと signature_delta のみを保持します。
ビジョンモデル
Claude はマルチモーダル入力をサポートしており、テキストと画像を同時に処理できます。Messages API では、content を配列形式に設定し、画像コンテンツブロックを渡すことでビジョン機能を使用できます。
Base64 エンコード画像を使用する
URL 画像を使用する
cURL の例
image/jpeg、image/png、image/gif、image/webp が含まれます。
ドキュメントと PDF
PDF ではdocument コンテンツブロックを使用し、Base64 と URL の2種類の安定したソースをサポートします。Base64 ソースでは必ず application/pdf を使用する必要があります:
{"type":"url","url":"https://example.com/report.pdf"} と記述します。document は text/plain および text/image ブロックで構成される content ソースもサポートします;オプションフィールドには title、context、citations が含まれます。Files API の file_id ソースは独立した beta 機能に属しており、本インターフェースの安定した契約には含まれません。
プロンプトキャッシュ
トップレベルのcache_control は、最後のキャッシュ可能なブロックにキャッシュのブレークポイントを自動的に配置します:
cache_control を text、image、document、tool_use、tool_result のコンテンツブロックまたはツール定義に記述することもできます。ttl は 5m(デフォルト)と 1h をサポートします。usage.cache_creation_input_tokens と usage.cache_read_input_tokens を通じて、キャッシュの書き込みとヒットを判断してください。
レスポンスに usage.cache_creation が含まれる場合、ephemeral_5m_input_tokens + ephemeral_1h_input_tokens = cache_creation_input_tokens です。cache_creation が null または省略されている場合、キャッシュ書き込みの合計量のみがあり、権威ある TTL 内訳がないことを示します。この場合、いずれかの bucket を既知の 0 と見なさないでください。課金と合計量は引き続き aggregate フィールドに従います。
返却結果の例:
ツール呼び出し(Tool Use)
Claude Messages API はツール呼び出し機能をネイティブにサポートしており、必要に応じてモデルが事前定義されたツール/関数を呼び出すことを可能にします。Python の例
content には tool_use タイプのコンテンツブロックが含まれます。
stop_reason が tool_use であることに注意してください。これは、モデルがツールを呼び出す必要があることを示します。この結果を受け取った後、ツール関数を実行し、その結果を tool_result の形式でモデルに返す必要があります。
Chat Completion API との違い
Ace Data Cloud は 2 種類の Claude API 形式を同時に提供しており、両者の主な違いは以下のとおりです。 Messages API のusage.input_tokens はキャッシュされていない入力のみを表し、cache_read_input_tokens と cache_creation_input_tokens は独立した課金バケットです。3 つはそれぞれ対応する価格で計算されます。
システムがすでに OpenAI 形式の API に接続されている場合は、Chat Completion API を使用してシームレスに切り替えることができます。Claude のすべてのネイティブ機能を使用する必要がある場合は、Messages API の使用を推奨します。
エラー処理
公開インターフェースのエラーレスポンスでは、Ace Data Cloud プラットフォームの envelope を使用します。error.code は安定したエラーコード、error.message は説明、trace_id はリクエストの調査に使用されます。一般的な HTTP ステータスは以下のとおりです。
400:リクエストパラメータまたはプロトコルの内容が無効です。401:認可トークンが無効、欠落、または期限切れです。403:アクセス禁止、残高不足、またはクォータ制限です。404:API またはモデルが存在しません。413:リクエストボディが大きすぎます。429:リクエストが多すぎます。500/503/504:サービスエラー、一時的に利用不可、または処理タイムアウトです。
エラーレスポンスの例
error.code に従って処理してください。

