Skip to main content
POST

承認

Authorization
string
header
必須

すべてのリクエストは API キーで認証します:Authorization: Bearer {API_KEY}。アプリのエンドポイントにはアプリの API キーを、ナレッジのエンドポイントにはナレッジベースの API キーを使用します(Dify API クイックスタート)。

キーはサーバーサイドで保管し、クライアントコードには決して埋め込まないでください。キーが欠落または無効なリクエストは HTTP 401(unauthorized)で失敗します。

ヘッダー

X-Trace-Id
string

ボディの trace_id と同じです。最初に読み取られます。

X-Trace-Session-Id
string

ボディの trace_session_id と同じです。最初に読み取られます。

クエリパラメータ

trace_id
string

ボディの trace_id と同じです。ヘッダーの次に読み取られます。

trace_session_id
string

ボディの trace_session_id と同じです。ヘッダーの次に読み取られます。

ボディ

application/json

チャットメッセージを送信するためのリクエストボディ。

query
string
必須

ユーザーのメッセージです。

inputs
object
必須

アプリの入力変数の値を、変数名をキーとして指定します。対象環境に現在デプロイされているバージョンの入力変数に従って値を渡してください。

単一ファイル変数にはファイルオブジェクトを、ファイルリスト変数にはその配列を渡します。各オブジェクトの構造は files の各要素と同じです。

user
string
必須

エンドユーザーの識別子。アプリ側で定義し、アプリ内で一意にします。会話、メッセージ、ファイルは、同じ user を持つリクエストにのみ表示されます。エンドユーザーの識別 を参照してください。

response_mode
enum<string>
デフォルト:blocking

レスポンスをどう返すかを指定します。

  • streaming:実行が生成したイベントが順次届きます。短い応答以外はこちらを使います。
  • blocking:実行の完了後に 1 つのレスポンスを返します。
利用可能なオプション:
streaming,
blocking
conversation_id
string

続ける会話の ID です。省略するか空文字列を渡すと、新しい会話を開始します。レスポンスでは、次のメッセージに付ける conversation_id が返ります。以前の会話を再開する場合は、その ID を 会話一覧を取得 で取得します。

files
object[]

メッセージに添付するファイルです。ローカルファイルの場合は、まず ファイルをアップロード でアップロードし、返された id を upload_file_id として transfer_method: local_file で指定します。

trace_id
string

可観測性データに伝播されるトレース識別子です。英数字、ハイフン、アンダースコアを 128 文字まで使用できます。条件に合わない値は、エラーにならず読み飛ばされます。

trace_session_id
string

可観測性データに伝播されるトレースセッション識別子です。前後の空白を除いて 1〜200 文字です。

Required string length: 1 - 200

レスポンス

コンテンツタイプと構造はリクエストの response_mode パラメータに依存します。

  • response_mode が blocking の場合、application/json で ChatCompletionResponse オブジェクトを返します。
  • response_mode が streaming の場合、text/event-stream でサーバー送信イベントのストリームを返します。
event
string

常に message です。

task_id
string

この実行のタスク ID です。ブロッキングモードでは最後のボディにのみ含まれます。そのため チャットメッセージの生成を停止 が実用的なのは、ストリーミングの場合だけです。

id
string

メッセージ ID。

message_id
string

メッセージ ID です(id と同じ値)。

conversation_id
string

このターンが属する会話です。conversation_id を省略した場合は、新しい会話の ID が返ります。

mode
string

常に advanced-chat です。

answer
string

回答の全文です。

metadata
object

実行のメタデータです。トークン数、料金、レイテンシを含む usage が入ります。

created_at
integer

実行の開始時刻(Unix タイムスタンプ、秒)です。