Skip to main content
Sessions

セッションの一覧取得

フィルターとカーソルページネーションで Forward セッションを一覧取得します。

GET /api/v1/forward/sessions 認証されたアカウント配下のセッションを一覧取得します。デフォルトでは作成日時の降順で並び、アーカイブ済みのセッションは返されません。

Headers

HeaderRequiredDescription
AuthorizationYesBearer <PAT または SAT>

Query parameters

ParameterTypeRequiredDefaultDescription
searchstringNo-検索キーワード。値が sess_ で始まる場合は最初に Session ID の完全一致を試し、それ以外はタイトルを検索します。照合ルールは Notes を参照してください。
identity_idsstring or arrayNo-1 つ以上の Identity ID でフィルターします。カンマ区切りの文字列に対応。
template_idstringNo-Forward Template ID でフィルターします。
source_typestringNo-api、im、schedule、または batch でフィルターします。
created_at[gt]stringNo-この RFC 3339 タイムスタンプより後に作成。
created_at[gte]stringNo-この RFC 3339 タイムスタンプ以降に作成。
created_at[lt]stringNo-この RFC 3339 タイムスタンプより前に作成。
created_at[lte]stringNo-この RFC 3339 タイムスタンプ以前に作成。
updated_at[gt]stringNo-この RFC 3339 タイムスタンプより後に更新。
updated_at[gte]stringNo-この RFC 3339 タイムスタンプ以降に更新。
updated_at[lt]stringNo-この RFC 3339 タイムスタンプより前に更新。
updated_at[lte]stringNo-この RFC 3339 タイムスタンプ以前に更新。
limitintegerNo201 ページあたりの件数。最大 100。
after_idstringNo-次ページ用カーソル。前ページのレスポンスの last_id を指定します。
before_idstringNo-前ページ用カーソル。現在のページのレスポンスの first_id を指定します。
orderstringNodesc作成日時のソート順: desc または asc。
include_archivedbooleanNofalseアーカイブ済みのセッションを含めます。

Example request

curl -s -X GET 'https://api.qoder.com/api/v1/forward/sessions' \
  -H "Authorization: Bearer $QODER_ACCESS_TOKEN"
タイトルのキーワードで検索:
curl -s -X GET 'https://api.qoder.com/api/v1/forward/sessions?search=support' \
  -H "Authorization: Bearer $QODER_ACCESS_TOKEN"
Session ID で完全一致検索:
curl -s -X GET 'https://api.qoder.com/api/v1/forward/sessions?search=sess_xxx' \
  -H "Authorization: Bearer $QODER_ACCESS_TOKEN"
次のページを取得:
curl -s -X GET 'https://api.qoder.com/api/v1/forward/sessions?limit=20&order=desc&after_id=sess_xxx' \
  -H "Authorization: Bearer $QODER_ACCESS_TOKEN"

Example response

HTTP 200 OK
{
  "data": [
    {
      "id": "sess_xxx",
      "type": "session",
      "identity_id": "idn_xxx",
      "template": {
        "id": "tmpl_support",
        "type": "template",
        "name": "Support assistant",
        "model": "ultimate",
        "version": 3
      },
      "source_type": "im",
      "status": "idle",
      "title": "Customer support session",
      "metadata": {
        "source": "dingtalk"
      },
      "config": {
        "environment_variables": {
          "API_KEY": "sk-xxx"
        }
      },
      "resources": [
        {
          "id": "sesr_xxx",
          "type": "file",
          "file_id": "file_xxx",
          "mount_path": "/data/workspace/spec.md",
          "created_at": "2026-06-23T05:53:19Z",
          "updated_at": "2026-06-23T05:53:38Z"
        }
      ],
      "stats": {
        "active_seconds": 30,
        "duration_seconds": 3600
      },
      "usage": {
        "total_credits": 12.5
      },
      "outcome_evaluations": [],
      "archived_at": null,
      "created_at": "2026-06-22T10:00:00Z",
      "updated_at": "2026-06-22T11:00:00Z"
    }
  ],
  "first_id": "sess_xxx",
  "last_id": "sess_xxx",
  "has_more": false
}

Response fields

FieldTypeDescription
dataarray現在のページの Session オブジェクト。
first_idstring|nullこのページの最初のレコードの ID。
last_idstring|nullこのページの最後のレコードの ID。
has_morebooleanさらにレコードが残っているかどうか。

Errors

HTTPTypeCodeTrigger
400invalid_request_errorinvalid_time_range時間フィルターが無効。
400invalid_request_errorinvalid_time_filter時間フィルターの形式が無効。
400invalid_request_errorinvalid_paginationページネーションパラメーターが無効。
400invalid_request_errorinvalid_limitlimit が無効、または最大値を超えている。
400invalid_request_errorinvalid_orderorder が asc または desc ではない。
400invalid_request_errorinvalid_searchsearch が有効な UTF-8 ではない、512 バイトを超える、または制御文字を含む。
401authentication_errorauthentication_requiredPAT または SAT が無効または期限切れ。

Notes

search の一致ルール:
  • 値が sess_ で始まる場合、API は最初に Session ID の完全一致を試します。見つかった場合はその Session のみを返し、見つからない場合はタイトル検索にフォールバックします。
  • タイトル検索は大文字と小文字を区別しない部分一致です。%、_、\ はリテラル文字として扱われます。
  • 先頭と末尾の空白は削除されます。残りの値は有効な UTF-8 で、512 バイト以下、かつ制御文字を含まない必要があります。
その他の注意事項:
  • after_id と before_id は併用できません。
  • 一覧は created_at でソートされます。作成日時が同じ場合は Session ID を同じ方向でソートし、安定したページネーションを保証します。
  • ページを続けて取得する場合は、同じフィルター条件と order を維持してください。
  • 現在の設計では status によるフィルタリングはサポートしていません。
  • usage 内の各フィールドはそれぞれ任意です。過去の Session では一部のフィールドが含まれない場合があり、明示的なゼロ値は保持されます。
  • resources は Session にマウントされたリソースです。現在はSession リソースを追加で追加した file のみを含み、ない場合は空配列です。