{"meta":{"title":"堆积拉取请求 API 和 Webhook","intro":"使用 GitHub REST 和 GraphQL API 和 Webhook 以编程方式读取和管理堆积拉取请求。","product":"拉取请求","breadcrumbs":[{"href":"/zh/pull-requests","title":"拉取请求"},{"href":"/zh/pull-requests/reference","title":"Reference"},{"href":"/zh/pull-requests/reference/stacked-pull-requests-apis-and-webhooks","title":"堆积 PR API 和 Webhook"}],"documentType":"article"},"body":"# 堆积拉取请求 API 和 Webhook\n\n使用 GitHub REST 和 GraphQL API 和 Webhook 以编程方式读取和管理堆积拉取请求。\n\n> \\[!NOTE] 此功能以公共预览版提供，可能会发生更改。\n\nGitHub REST 和 GraphQL API 都公开堆积拉取请求。 REST API 支持读取和管理堆栈，而 GraphQL API 支持只读查询。\n\n使用 API 读取拉取请求的堆栈成员身份，或为堆积拉取请求生成自己的自动化和集成。\n\n## REST API\n\nREST API 以两种方式公开堆积拉取请求：\n\n* **`stack`拉取请求资源上的对象。** 当拉取请求属于堆栈时，其 REST 资源包括一个 `stack` 对象。 这样，便可以直接从拉取请求读取拉取请求的堆栈成员身份，包括堆栈的数量和大小以及拉取请求的位置和基数。\n* **Stacks API。** 用于列出、读取、创建、扩展和解散堆栈的专用终结点集。 这是用于创建和修改堆栈的图面。\n\n有关终结点、参数和架构，请参阅 [用于拉取请求的 REST API 终结点](/zh/rest/pulls/pulls)。\n\n> \\[!IMPORTANT]\n> 如果通过 API 合并并想要使用堆叠拉取请求，则必须使用新的异步合并 API。\n\n### 合并 API\n\n通过 API 合并堆积拉取请求时，必须使用异步合并终结点。\n\n堆栈不能与旧的同步合并终结点或突变合并。 合并堆积拉取请求时，堆栈中的每个拉取请求将合并或排队以合并到基分支中， 合并拉取请求堆栈可能需要几分钟才能合并的拉取请求。 因此，在提交合并请求时，合并在后台运行，然后你可以轮询结果。\n\n提交打开的 PR 时，只会检查基本拉取请求状态。 稍后在合并实际运行时评估分支保护和存储库规则，并在轮询时将规则失败报告为失败结果。 堆栈合并请求是原子请求，这意味着整个拉取请求合并组，或添加到合并队列，或者其中没有任何请求。\n\n有关详细信息，请参阅 [用于拉取请求的 REST API 终结点](/zh/rest/pulls/pulls?apiVersion=2026-03-10#merge-a-pull-request-asynchronously)。\n\n## GraphQL API\n\nGraphQL API 通过类型上的`stack`只读`stackEntry`字段公开`PullRequest`拉取请求的堆栈成员身份。 使用这些字段查询拉取请求所属的堆栈及其内部位置。\n\nGraphQL API 是堆栈的只读;没有堆栈突变。 若要创建或修改堆栈，请使用 REST API。\n\n有关字段、对象和架构，请参阅 [拉取请求](/zh/graphql/reference/pulls#object-pullrequeststack)。\n\n## 网络钩子\n\n当拉取请求属于堆栈时， GitHub 将属性添加到 `stack``pull_request` Webhook 事件有效负载中的对象。 这允许应用和集成检查堆栈的目标分支，而不仅仅是拉取请求的直接父分支。\n\n该 `stack` 对象包含在拉取请求生命周期事件的 Webhook 有效负载中 `pull_request` ，该事件发生在拉取请求是堆栈的一部分。\n\n请参阅“[Webhook 事件和有效负载](/zh/webhooks/webhook-events-and-payloads?actionType=stacked#pull_request)”。\n\n## 延伸阅读\n\n* [堆积拉取请求 CLI 命令](/zh/pull-requests/reference/stacked-prs-cli-commands)\n* [关于堆叠式拉取请求](/zh/pull-requests/get-started/about-stacked-prs)"}