API 参考 / changes
GET /api/v1/requirements/{requirementId}/activity · listRequirementActivity
读取当前项目中与该需求相关的 ChangeSet/Event。直接需求事件匹配 payload.id;派生工作项事件匹配 payload.requirementId;挂在本需求上的子资源事件(评论 / 附件)匹配 payload.targetType=requirement 且 payload.targetId 命中——附件事件不带 requirementId,只按前两条规则会永远读不到它。
结果集按调用者 moduleAccess 逐行过滤(B-00216)。 进得来不等于看得全:条目按其对象所属 模块判定归属,调用者对该模块等级为 none 的条目不下发;判不出归属的对象条目一律不下发。 因为过滤发生在取数之后,实际返回条数可能少于 limit——分页请以 nextSeq / nextCursor 为准, 不要用「不足 limit」判定已到末页。归属表见 docs/api/guides/activity.md。
鉴权:项目 API Token(Authorization: Bearer wfp_…)。详见 Agent 接入。
requirementId(必填)sinceSeqlimititems(必填)items[].id(必填)items[].seq(必填)items[].actorId(必填)items[].kind(必填)items[].summary(必填)items[].createdAt(必填)items[].events(必填)items[].events[].id(必填)items[].events[].changeSetId(必填)items[].events[].type(必填)items[].events[].payload(必填)items[].events[].occurredAt(必填)nextSeq(必填)403:Problem 错误响应404:Problem 错误响应curl -X GET "https://你的项目.workflow.games/api/v1/requirements/{requirementId}/activity?sinceSeq=…&limit=…" \
-H "Authorization: Bearer wfp_…"HTTP/1.1 200
{
"items": [
{
"id": "018f3c2e-0000-7000-8000-000000000000",
"seq": 1,
"actorId": "018f3c2e-0000-7000-8000-000000000000",
"kind": "示例文本",
"summary": "一段描述文字",
"createdAt": "示例文本",
"events": [
{}
]
}
],
"nextSeq": 1
}合同真值:OpenAPI 3.1(0.1.0)。
相关:Agent 接入指南 · 使用指南 · API 参考索引