Skip to main content
Sessions

セッションイベントの送信

Forward セッションにサポート対象のユーザー入力イベントを送信します。

POST /api/v1/forward/sessions/{session_id}/events セッションにサポート対象のユーザー入力イベントを追加します。呼び出し元がエージェントイベントやセッションステータスイベントを偽造することはできません。

Headers

HeaderRequiredDescription
AuthorizationYesBearer <PAT または SAT>
Content-TypeYesapplication/json
Idempotency-KeyNo安全でないリクエスト向けの任意の冪等性キー。

Path parameters

ParameterTypeRequiredDescription
session_idstringYesSession ID。

Body parameters

ParameterTypeRequiredDescription
eventsarrayYes追加する Event オブジェクト。
events[].typestringYesInput Event の種類。
events[].contentarrayConditionaluser.message に必須。空でないコンテンツブロック配列である必要があり、textimage タイプのみをサポートします。
events[].file_attachmentsarrayNouser.message 用のファイル添付メタデータ。
events[].tool_use_idstringConditionaluser.tool_confirmationuser.tool_result に必須。
events[].custom_tool_use_idstringConditionaluser.custom_tool_result に必須。
events[].resultstringConditionaluser.tool_confirmation に必須: allow または deny
events[].deny_messagestringNoresult=deny の場合の拒否理由。
events[].descriptionstringConditionaluser.define_outcome に必須。
events[].rubricobjectConditionaluser.define_outcome に必須。
events[].reasonstringNouser.interrupt の割り込み理由。
events[].is_errorbooleanNoツール結果イベントのエラーフラグ。

Allowed input event types

user.message
user.interrupt
user.tool_confirmation
user.tool_result
user.custom_tool_result
user.define_outcome

Example request

curl -s -X POST 'https://api.qoder.com/api/v1/forward/sessions/sess_xxx/events' \
  -H "Authorization: Bearer $QODER_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "events": [
    {
      "type": "user.message",
      "content": [
        {
          "type": "text",
          "text": "Continue the analysis."
        }
      ],
      "file_attachments": []
    }
  ]
}'

Example response

HTTP 200 OK
{
  "data": [
    {
      "id": "evt_xxx",
      "type": "user.message",
      "session_id": "sess_xxx",
      "content": [
        {
          "type": "text",
          "text": "Continue the analysis."
        }
      ],
      "processed_at": "2026-06-22T11:00:00Z"
    }
  ]
}

Response fields

FieldTypeDescription
dataarrayForward のフィルタリング後に作成された Event オブジェクト。

Errors

HTTPTypeCodeTrigger
400invalid_request_errorinvalid_eventEvent の種類またはフィールドが無効。
401authentication_errorauthentication_requiredPAT または SAT が無効または期限切れ。
404not_found_errorsession_not_foundSession が存在しない。
409conflict_errorsession_archivedSession がアーカイブ済み。
409conflict_errorturn_already_running現在のターンが新しいターンを許可しない。
404not_found_errorpending_action_not_foundツール確認または結果に対応する保留中アクションがない。
409conflict_errorpending_action_already_resolved保留中アクションはすでに解決済み。

Notes

  • 許可される入力タイプは user.messageuser.interruptuser.tool_confirmationuser.tool_resultuser.custom_tool_result、および user.define_outcome です。
  • レスポンスはフィルタリング済みの Forward Event オブジェクトを使用し、生のランタイムイベント JSON は公開しません。
ベストプラクティス