Skip to main content
POST
BaseURL:デフォルトの BaseURL は https://direct.evolink.ai で、テキストモデルへの対応が優れており、長時間接続をサポートします。https://api.evolink.ai はマルチモーダルサービスの主力エンドポイントで、テキストモデルに対しては代替アドレスとして使用されます。
Responses 形式で GLM を呼び出し、テキスト会話、ストリーミング、関数呼び出しを利用できます。画像理解と Web 検索はモデルに応じて利用可能です。パラメータとモデルの違いは以下を参照してください。

モデルとパラメータの違い

GLM モデルを選択します。4 モデルともこのエンドポイントのテキスト入力に対応します。オプション機能はモデルによって異なります。 Responses はトップレベルの reasoning_effortthinking ではなく、ネストした reasoning.effort を使用します。思考の使用量は output_tokens に含まれます。簡単なタスクで reasoning_tokens=0 が返っても、思考の無効化に対応することを意味しません。 推論強度。low を推奨します。 glm-5.3 / glm-5.3-flash / glm-5.3-flashx の互換ルール minimalnone は 5.3 シリーズの思考を無効にしません。 思考トークンは出力として課金されます。認識されない値は互換変換せず、そのまま扱われます。表の値を使用してください。これらの互換ルールは glm-5.2 には適用されません。 このエンドポイントでは glm-5.2none を指定しても思考トークンが生成される場合があり、思考の無効化は保証されません。

システムプロンプトと複数ターンの会話

instructions: システム指示。glm-5.3-flash は input が文字列の場合にこのフィールドを使用できます。メッセージ配列の場合、システムプロンプトは先頭の role=system メッセージに置いてください。
後で参照できるように応答を保存します。glm-5.3-flashglm-5.3-flashxstore=trueprevious_response_id による会話継続に対応します。glm-5.2 は応答 ID による継続に非対応で、store=true でも有効になりません。input に全履歴を含めてください。 前の応答のトップレベルの id。glm-5.3-flashglm-5.3-flashxstore=true と同一モデルで使用できます。output 内の項目 ID ではなく、応答 ID をそのまま指定してください。glm-5.2 では 400 を返します。モデルを切り替える場合はこのフィールドを省略し、input に全履歴を含めてください。

ストリーミング応答

SSE ストリーミングを有効にします。本文は response.output_text.delta の delta から読み取ります。成功時の終了イベントは response.completed です。response.incompleteresponse.failed、error でもそのターンを終了して処理してください。[DONE] や接続終了だけを待たないでください。 終了イベントを受信したら読み取りを終了してください。HTTP 200 はストリームの確立のみを示すため、イベントの最終状態も確認します。ツール呼び出しのターンが response.completed で終了しても、アプリケーションによる関数実行と次のリクエストが必要な場合があります。

関数呼び出し

リクエストメニューから関数呼び出しの例を選択してください。Responses の関数定義はフラットな構造です。
  1. response.output を走査し、type=function_call の全項目を取得します。
  2. arguments の JSON 文字列を解析・検証し、アプリケーションで各関数を実行します。
  3. 前の output 全体を履歴に追加します。呼び出しごとに function_call_output を追加し、元の call_id と文字列の output を指定します。
  4. 更新した履歴を次のリクエストの input として送信します。関数結果の返送例がこの構造を示しています。
parallel_tool_calls: 1 ターンで複数のツール呼び出しを許可するかどうか。false でも関数呼び出しが 1 件だけになる保証はありません。すべての function_call を走査して処理してください。

画像・検索・JSON 出力

glm-5.3-flashglm-5.3-flashx では、ユーザーメッセージの content 配列に input_textinput_image を混在できます。image_url に公開画像 URL または Base64 Data URL を指定してください。glm-5.3glm-5.2 にはテキストのみを使用します。 tools: [{"type":"web_search"}] を宣言します。検索はサーバー側で実行され、web_search_call と本文で結果が返ります。検索が実行されたかは出力項目で確認してください。トークン料金に加えて検索単位の料金がかかる場合があります。モデル料金を参照してください。 検索後に会話を続ける場合は、web_search_callmessage を含む前のレスポンスの output 全体を input に追加し、その後に新しい質問を追加してください。元の idstatusaction などのフィールドはそのまま保持します。検索はサーバー側ですでに実行されているため、web_search_call に対する function_call_output を作成する必要はありません。リクエスト例 web_search_history を参照してください。 text.format.type: 出力形式。text は通常のテキスト、json_object は JSON オブジェクトです。json_object では有効な JSON をプロンプトで明示的に要求し、クライアントで解析・検証してください。厳密な JSON Schema 制約は提供されないため、json_schemastrict=true で構造が保証されるとは限りません。

応答と使用量

順序付き出力項目。type=message の content 内にある type=output_text の text が本文です。reasoning が本文より前に来る場合や、function_call のターンに本文がない場合があります。常に output[0] を読む実装は避けてください。 output_text: 本文を集約したオプションフィールド。存在しない場合があります。汎用クライアントでは output を走査してください。 message 内は output_text、reasoning 内は reasoning_text の場合があります。 思考内容は summary_text で返る場合もあります。すべての reasoning 項目に content があるとは限りません。
  • usage.input_tokens: 入力トークン総数。キャッシュにヒットした分を含みます。 usage.input_tokens_details.cached_tokens: 入力のうちキャッシュにヒットしたトークン数。input_tokens に再加算しないでください。プレフィックスキャッシュは自動で、明示的な cache_control は不要です。ヒット数は返された値で確認してください。
  • usage.output_tokens: 出力トークン総数。思考トークンを含みます。 usage.output_tokens_details.reasoning_tokens: 出力のうち思考に使われたトークン数。output_tokens に二重計上しないでください。この詳細は省略される場合や 0 の場合があります。
status=incomplete かつ incomplete_details.reason=max_output_tokens は出力上限の消費を示します。思考のみで本文がない場合があるため、上限を増やしてください。

承認

Authorization
string
header
必須

Authorization ヘッダーに Bearer YOUR_API_KEY を指定します。

ボディ

application/json
model
enum<string>
デフォルト:glm-5.3-flash
必須

GLM モデルを選択します。4 モデルともこのエンドポイントのテキスト入力に対応します。オプション機能はモデルによって異なります。

利用可能なオプション:
glm-5.3,
glm-5.3-flash,
glm-5.3-flashx,
glm-5.2
:

"glm-5.3-flash"

input
必須

必須。テキスト文字列、または Responses 入力項目の配列。配列にはメッセージ、モデル出力の再送項目、function_call_output を含められます。複数ターンでは毎回すべての履歴を送信できます。システムプロンプトは先頭の role=system メッセージに置くことを推奨します。画像は input_image を使用し、glm-5.3-flash と glm-5.3-flashx のみ対応します。Chat Completions の messages / image_url ブロック形式は使用しないでください。

:

"自己紹介を一文でしてください。"

max_output_tokens
integer

今回の生成の出力トークン上限。思考トークンも含みます。1024 を目安にタスクに応じて調整してください。少なすぎると思考中に上限に達し、reasoning 項目のみで本文が返らない場合があります。status と incomplete_details を確認してください。パラメータ名は max_tokens ではなく max_output_tokens です。

必須範囲: x >= 1
:

1024

stream
boolean
デフォルト:false

SSE ストリーミングを有効にします。本文は response.output_text.delta の delta から読み取ります。成功時の終了イベントは response.completed です。response.incomplete、response.failed、error でもそのターンを終了して処理してください。[DONE] や接続終了だけを待たないでください。

reasoning
object

Responses はトップレベルの reasoning_effort や thinking ではなく、ネストした reasoning.effort を使用します。思考の使用量は output_tokens に含まれます。簡単なタスクで reasoning_tokens=0 が返っても、思考の無効化に対応することを意味しません。

instructions
string

システム指示。glm-5.3-flash は input が文字列の場合にこのフィールドを使用できます。メッセージ配列の場合、システムプロンプトは先頭の role=system メッセージに置いてください。

tools
object[]

クライアント側の function とサーバー側の web_search に対応します。関数は name / description / parameters を同じ階層に定義し、Chat Completions のような function オブジェクトにネストしないでください。function_call はアプリケーションで実行し、結果を返します。web_search はサーバー側で実行され、実際の検索はトークン料金に加えて呼び出し単位の料金が発生する場合があります。モデル料金を参照してください。

tool_choice

auto はモデルが選択、none はツールなし、required はツール呼び出し必須です。関数を指定する場合は {"type":"function","name":"get_temperature"} を使用します。強制選択の動作は、すべてのモデルとツールの組み合わせで同一とは限りません。

利用可能なオプション:
auto,
none,
required
:

"auto"

parallel_tool_calls
boolean

1 ターンで複数のツール呼び出しを許可するかどうか。false でも関数呼び出しが 1 件だけになる保証はありません。すべての function_call を走査して処理してください。

text
object

出力形式。例では json_object を使用します。HTTP 200 は JSON Schema への適合を保証しません。

store
boolean

後で参照できるように応答を保存します。glm-5.3-flash と glm-5.3-flashx は store=true と previous_response_id による会話継続に対応します。glm-5.2 は応答 ID による継続に非対応で、store=true でも有効になりません。input に全履歴を含めてください。

previous_response_id
string

前の応答のトップレベルの id。glm-5.3-flash と glm-5.3-flashx は store=true と同一モデルで使用できます。output 内の項目 ID ではなく、応答 ID をそのまま指定してください。glm-5.2 では 400 を返します。モデルを切り替える場合はこのフィールドを省略し、input に全履歴を含めてください。

:

"前のターンで返された応答 ID"

metadata
object

カスタムの文字列キー・値のメタデータ。応答の metadata から取得できます。キーや機密情報を含めないでください。

:
temperature
number

サンプリングパラメータ。有効範囲と効果はモデルによって異なります。決定的な出力を保証するものではなく、推論タスクでは省略できます。

top_p
number

サンプリングパラメータ。有効範囲と効果はモデルによって異なり、通常は省略できます。

レスポンス

生成完了または不完全な結果。status を確認してください。ストリーミングでは text/event-stream を返します。

id
string

今回の応答 ID。previous_response_id にはそのまま指定します。

:

"response_demo"

object
string
Allowed value: "response"
created_at
integer

作成時刻。Unix 秒単位。

model
string
:

"glm-5.3-flash"

status
enum<string>

completed は今回の生成終了を示し、ツール呼び出しのみの場合もあります。incomplete は出力が不完全であることを示します。output と error を両方確認してください。

利用可能なオプション:
completed,
incomplete,
failed,
in_progress,
queued
output
object[]

順序付き出力項目。type=message の content 内にある type=output_text の text が本文です。reasoning が本文より前に来る場合や、function_call のターンに本文がない場合があります。常に output[0] を読む実装は避けてください。

output_text
string

本文を集約したオプションフィールド。存在しない場合があります。汎用クライアントでは output を走査してください。

usage
object
error
object | null

応答エラー。成功時は通常 null です。

incomplete_details
object
metadata
object | null