Add pull requests to a pull request stack
Appends an ordered list of pull request numbers onto the top of an existing stack. Provide only the pull requests you want to add, from the current top of the stack upward. The first new pull request’s base ref must match the current top pull request’s head ref.
Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”The account owner of the repository. The name is not case sensitive.
The name of the repository without the .git extension. The name is not case sensitive.
The number that identifies the pull request stack.
Request Bodyrequired
Section titled “Request Bodyrequired”object
An ordered list of pull request numbers to append to the stack, from the current top upward.
Examples
{ "pull_requests": [ 104, 102 ]}Responses
Section titled “Responses”Response
object
object
Whether the stack has any open pull request. False when all pull requests are merged or closed.
object
object
object
object
object
A GitHub user.
object
Examples
{ "id": 9876543, "number": 42, "node_id": "S_kwDOABCDEF4AAAAA", "url": "https://api.github.com/repos/octocat/hello-world/stacks/42", "base": { "ref": "main" }, "open": true, "created_at": "2026-04-15T10:00:00Z", "pull_requests": [ { "id": 100001, "node_id": "PR_kwDOABCDEF4AAAAA", "title": "Add user model", "state": "open", "merged_at": null, "draft": false, "html_url": "https://github.com/octocat/hello-world/pull/101", "user": { "login": "octocat", "id": 1, "node_id": "MDQ6VXNlcjE=", "avatar_url": "https://github.com/images/error/octocat_happy.gif", "gravatar_id": "", "url": "https://api.github.com/users/octocat", "html_url": "https://github.com/octocat", "followers_url": "https://api.github.com/users/octocat/followers", "following_url": "https://api.github.com/users/octocat/following{/other_user}", "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", "organizations_url": "https://api.github.com/users/octocat/orgs", "repos_url": "https://api.github.com/users/octocat/repos", "events_url": "https://api.github.com/users/octocat/events{/privacy}", "received_events_url": "https://api.github.com/users/octocat/received_events", "type": "User", "site_admin": false, "user_view_type": "public" }, "number": 101, "url": "https://api.github.com/repos/octocat/hello-world/pulls/101", "head": { "ref": "user-model", "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11", "repo": { "id": 1296269, "url": "https://api.github.com/repos/octocat/hello-world", "name": "hello-world" } }, "base": { "ref": "main", "sha": "6dcb09b5b57875f334f61aebed695e2e4193db5e", "repo": { "id": 1296269, "url": "https://api.github.com/repos/octocat/hello-world", "name": "hello-world" } } }, { "id": 100002, "node_id": "PR_kwDOABCDEF4AAAAB", "title": "Add user API", "state": "open", "merged_at": null, "draft": true, "html_url": "https://github.com/octocat/hello-world/pull/102", "user": { "login": "octocat", "id": 1, "node_id": "MDQ6VXNlcjE=", "avatar_url": "https://github.com/images/error/octocat_happy.gif", "gravatar_id": "", "url": "https://api.github.com/users/octocat", "html_url": "https://github.com/octocat", "followers_url": "https://api.github.com/users/octocat/followers", "following_url": "https://api.github.com/users/octocat/following{/other_user}", "gists_url": "https://api.github.com/users/octocat/gists{/gist_id}", "starred_url": "https://api.github.com/users/octocat/starred{/owner}{/repo}", "subscriptions_url": "https://api.github.com/users/octocat/subscriptions", "organizations_url": "https://api.github.com/users/octocat/orgs", "repos_url": "https://api.github.com/users/octocat/repos", "events_url": "https://api.github.com/users/octocat/events{/privacy}", "received_events_url": "https://api.github.com/users/octocat/received_events", "type": "User", "site_admin": false, "user_view_type": "public" }, "number": 102, "url": "https://api.github.com/repos/octocat/hello-world/pulls/102", "head": { "ref": "user-api", "sha": "bbb2222bbb2222bbb2222bbb2222bbb2222bbb22", "repo": { "id": 1296269, "url": "https://api.github.com/repos/octocat/hello-world", "name": "hello-world" } }, "base": { "ref": "user-model", "sha": "aaa1111aaa1111aaa1111aaa1111aaa1111aaa11", "repo": { "id": 1296269, "url": "https://api.github.com/repos/octocat/hello-world", "name": "hello-world" } } } ]}Resource not found
Basic Error
object
Examplegenerated
{ "message": "example", "documentation_url": "example", "url": "example", "status": "example"}Conflict. Returned when the stack is being modified by another request.
Basic Error
object
Examples
Another request is currently modifying the stack
{ "message": "Stack is currently being modified", "documentation_url": "https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack", "status": "409"}Validation failed. Returned when the request references pull requests that don’t exist in the repository, or when the pull requests can’t be appended to the stack.
Validation Error
object
Examples
One or more pull request numbers don't exist in the repository
{ "message": "Validation Failed", "documentation_url": "https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack", "errors": [ { "resource": "Stack", "field": "pull_requests", "code": "missing", "value": [ 123 ] } ]}The pull requests don't continue the stack linearly
{ "message": "Pull requests must form a stack, where each PR's base ref is the previous PR's head ref", "documentation_url": "https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack"}A pull request already belongs to a stack
{ "message": "Pull request #123 is already part of a stack", "documentation_url": "https://docs.github.com/rest/pulls/stacks#add-pull-requests-to-a-pull-request-stack"}