> ## Documentation Index
> Fetch the complete documentation index at: https://docs.zeus.agentspro.cn/llms.txt
> Use this file to discover all available pages before exploring further.

# 获取会话节点

> 获取会话应该使用的节点

查询会话绑定的节点。如果会话未绑定但用户有多个在线节点，返回 `requires_selection: true` 和候选节点列表，提示前端让用户选择。

<ParamField path="session_id" type="string" required>
  会话 ID
</ParamField>

<ParamField query="user_id" type="string" required>
  用户 ID
</ParamField>

<ParamField query="node_type" type="string">
  节点类型过滤：`extension` | `desktop`
</ParamField>

<ResponseField name="session_id" type="string">会话 ID</ResponseField>
<ResponseField name="node_id" type="string">已绑定的节点 ID（可能为 null）</ResponseField>
<ResponseField name="node" type="object">节点详情（已绑定时返回）</ResponseField>
<ResponseField name="requires_selection" type="boolean">是否需要用户手动选择节点</ResponseField>
<ResponseField name="available_nodes" type="array">候选节点列表（需要选择时返回）</ResponseField>

<RequestExample>
  ```bash cURL theme={null}
  curl --request GET \
    --url 'https://zeus-api.agentspro.cn/node/session/sess_456?user_id=user_123'
  ```
</RequestExample>

<ResponseExample>
  ```json 200 (已绑定) theme={null}
  {
    "session_id": "sess_456",
    "node_id": "node_abc",
    "node": {
      "node_id": "node_abc",
      "node_type": "extension",
      "node_name": "Chrome Extension",
      "status": "online",
      "is_connected": true
    },
    "requires_selection": false,
    "available_nodes": []
  }
  ```

  ```json 200 (需要选择) theme={null}
  {
    "session_id": "sess_456",
    "node_id": null,
    "node": null,
    "requires_selection": true,
    "available_nodes": [
      { "node_id": "node_1", "node_name": "Chrome - Work", "is_connected": true },
      { "node_id": "node_2", "node_name": "Chrome - Personal", "is_connected": true }
    ]
  }
  ```
</ResponseExample>
