# 查询运行策略

```{raw} html
<div class="mo-api-page-show-toc" aria-hidden="true"></div>
```

读取智能体当前保存的策略引用，并返回可解析的运行策略配置和未解析引用的警告。

```text
GET https://api.moi.matrixorigin.cn/v5/workspaces/{workspace_id}/agents/{agent_id}/policies
```

## 调用前准备

先[查询智能体列表](list-agents.md)，从同一列表项取得智能体 ID 和智能体所属工作区 ID。准备有目标工作区访问权限的个人访问令牌，并将两个返回值分别保存为 `AGENT_ID` 和 `AGENT_WORKSPACE_ID`。

## 请求参数

:::::::{div} mo-api-tabs
::::::{tab-set}
:::::{tab-item} 请求示例

```bash
curl --get "https://api.moi.matrixorigin.cn/v5/workspaces/$WORKSPACE_ID/agents/$AGENT_ID/policies" \
  -H "X-API-Key: $AI_STUDIO_API_KEY" \
  -H "X-Workspace-ID: $WORKSPACE_ID" \
  --data-urlencode "agent_workspace_id=$AGENT_WORKSPACE_ID"
```

:::::
:::::{tab-item} 参数说明

::::{tab-set}
:::{tab-item} 路径参数

| 字段 | 类型 | 必填 | 说明 |
| --- | --- | --- | --- |
| `workspace_id` | string | 是 | 当前工作区 ID。 |
| `agent_id` | string | 是 | 要查看的智能体 ID。 |

:::
:::{tab-item} 查询参数

| 字段 | 类型 | 必填 | 说明 |
| --- | --- | --- | --- |
| `agent_workspace_id` | string | 否 | 智能体定义所属的工作区 ID。使用智能体列表同一项返回的 `workspace_id`；未提供时使用当前工作区。 |

:::
::::
:::::
::::::
:::::::

## 成功响应

:::::::{div} mo-api-tabs mo-api-response-tabs
::::::{tab-set}
:::::{tab-item} 响应示例

```json
{
  "code": 0,
  "data": {
    "agent_id": "agent_01",
    "agent_version": 2,
    "policy_refs": {
      "runtime_policy_ref": "rp_01",
      "approval_policy_ref": "ap_01",
      "guardrail_policy_ref": "gp_01"
    },
    "runtime_policy": {
      "id": "rp_01"
    },
    "warnings": []
  }
}
```

:::::
:::::{tab-item} 字段说明

成功时返回 `200`。`warnings` 表示某个引用没有被解析，不表示本次读取失败。没有警告时，响应可能不包含 `warnings`，客户端应将字段缺失视为空集合。

::::{tab-set}
:::{tab-item} 通用字段

| 字段 | 类型 | 说明 |
| --- | --- | --- |
| `code` | integer | 成功时为 0。 |

:::
:::{tab-item} 响应数据

| 字段 | 类型 | 说明 |
| --- | --- | --- |
| `data.agent_id` | string | 智能体 ID。 |
| `data.agent_version` | integer | 智能体资源版本。 |
| `data.policy_refs` | object | 已保存的运行、审批和护栏策略引用。 |
| `data.runtime_policy` | object | 可解析时返回的运行策略配置。 |
| `data.warnings` | array of string | 无法解析的运行策略，或当前未解析的审批、护栏策略引用说明；仅在存在警告时返回。 |

:::
::::
:::::
::::::
:::::::

## 错误响应

:::::::{div} mo-api-tabs mo-api-response-tabs
::::::{tab-set}
:::::{tab-item} 响应示例

```json
{
  "code": 3,
  "message": "<错误信息>"
}
```

:::::
:::::{tab-item} 字段说明

::::{tab-set}
:::{tab-item} 常见 HTTP 错误

| 字段 | 类型 | 说明 |
| --- | --- | --- |
| `400` | `2`（`INVALID_ARGUMENT`） | 路径参数或 `agent_workspace_id` 无效。建议：检查路径和查询参数。 |
| `401` | `6`（`UNAUTHENTICATED`） | 缺少有效身份凭据。建议：检查 API Key。 |
| `403` | `5`（`PERMISSION_DENIED`） | 当前调用者没有读取智能体的权限。建议：检查工作区中的智能体授权。 |
| `404` | `3`（`NOT_FOUND`） | 指定工作区范围内不存在该智能体。建议：检查智能体 ID 和所属工作区。 |
| `503` | `15`（`UNAVAILABLE`） | 智能体资源服务或其授权依赖暂不可用。建议：稍后重试。 |

:::
::::
:::::
::::::
:::::::

## 后续操作

需要修改时[更新运行策略](update-runtime-policies.md)。
