一、接口介绍
·过滤条件:支持按会话(session_id)和时间范围(time_start / time_end)过滤,筛选字段均为可选。
·默认行为:筛选字段均不传时,等价于不加筛选,仅按分页参数返回当前作用域下的消息。
·跨 session 查询:session_id 为空或不传时,查询覆盖当前作用域下所有会话的消息,实现跨会话聚合查询。
二、Method 与 URL
POST https://memory.tdai.tencentyun.com/v3/conversation/query
三、使用示例
curl -i -k -X POST \\ -H 'Content-Type: application/json' \\ -H 'Authorization: Bearer *********************************' \\ -H "x-tdai-service-id: tdai-mem-xxxxxxxx" \\ https://memory.tdai.tencentyun.com/v3/conversation/query \\ -d '{ "team_id":"team-abc123", "user_id":"usr-456", "agent_id":"agt-xyz789", "session_id":"agent-main:sess-001", "limit":20, "offset":0 }'
四、请求参数
| 参数 | 是否必选 | 参数含义 | 配置方法及要求 |
| team_id | 否 | 团队 ID。 | 数据类型:String。 |
| user_id | 否 | 用户 ID。 | 数据类型:String。 |
| agent_id | 否 | Agent ID(全局唯一)。 | 数据类型:String。 |
| session_id | 否 | 会话 ID,用于限定查询范围。 | 数据类型:String。不传则跨所有 session 查询。 |
| task_id | 否 | Task ID。 | 数据类型:String。 |
| limit | 否 | 单次返回的最大条数。 | 数据类型:Integer。取值范围:[1, 100]。默认值:20。 |
| offset | 否 | 分页偏移量。 | 数据类型:Integer。最小值为 0。默认值:0。 |
| time_start | 否 | 查询时间范围起点。 | 数据类型:String。格式:ISO 8601(如 2026-07-01T00:00:00Z)。仅返回该时间之后的消息。 |
| time_end | 否 | 查询时间范围终点。 | 数据类型:String。格式:ISO 8601(如 2026-07-22T23:59:59Z)。仅返回该时间之前的消息。 |
五、响应示例
{ "code":0, "message":"ok", "request_id":"req-7fd3b2dd", "data":{ "messages":[ { "id":"msg-aaaa", "version":"v1", "role":"user", "content":"帮我查一下上周的会议纪要", "timestamp":"2026-07-22T10:00:00Z" }, { "id":"msg-bbbb", "version":"v1", "role":"assistant", "content":"好的,根据记忆,上周你参加了产品评审和团队周会两次会议…", "timestamp":"2026-07-22T10:00:05Z" } ], "total":42 }}
六、响应参数说明
| 参数名(一级) | 参数名(二级) | 参数含义 |
| data | messages | 查询到的消息列表。 |
| | messages[].id | 消息唯一 ID。 |
| | messages[].version | 消息当前版本号。 |
| | messages[].role | 消息角色:user 或 assistant。 |
| | messages[].content | 消息内容。 |
| | messages[].timestamp | 消息时间戳,ISO 8601 格式。 |
| | total | 满足条件的消息总数。 |