---
title: "Remove pull requests from a pull request stack"
method: POST
path: "/repos/{owner}/{repo}/stacks/{stack_number}/unstack"
tags: ["pulls"]
---

# Remove pull requests from a pull request stack

`POST /repos/{owner}/{repo}/stacks/{stack_number}/unstack`

Removes the unmerged pull requests from a stack. Pull requests that cannot be
unstacked (for example, those that are queued for merge) are left in place. When pull requests remain in the stack, the updated
stack is returned with a `200`. When no pull requests remain, the stack is
dissolved and a `204` is returned.

## Path parameters

- `owner` string, required
- `repo` string, required
- `stack_number` integer, required

## Response `200`

Response

- object
  - `id` integer, required
  - `number` integer, required
  - `node_id` string, required
  - `url` string, uri, required
  - `base` object, required
    - `ref` string, required
  - `open` boolean, required — Whether the stack has any open pull request. False when all pull requests are merged or closed.
  - `created_at` string, date-time, required
  - `pull_requests` PullRequestStackPullRequest[], required
    - `id` integer, required
    - `number` integer, required
    - `url` string, required
    - `head` object, required
      - `ref` string, required
      - `sha` string, required
      - `repo` object, required
        - `id` integer, required
        - `url` string, required
        - `name` string, required
    - `base` object, required
      - `ref` string, required
      - `sha` string, required
      - `repo` object, required
        - `id` integer, required
        - `url` string, required
        - `name` string, required
    - `node_id` string, required
    - `title` string, required
    - `state` 'open' | 'closed', required
    - `merged_at` string, date-time, nullable, required
    - `draft` boolean, required
    - `html_url` string, uri, required
    - `user` NullableSimpleUser, nullable, required — A GitHub user.
      - `name` string, nullable
      - `email` string, nullable
      - `login` string, required
      - `id` integer, required
      - `node_id` string, required
      - `avatar_url` string, uri, required
      - `gravatar_id` string, nullable, required
      - `url` string, uri, required
      - `html_url` string, uri, required
      - `followers_url` string, uri, required
      - `following_url` string, required
      - `gists_url` string, required
      - `starred_url` string, required
      - `subscriptions_url` string, uri, required
      - `organizations_url` string, uri, required
      - `repos_url` string, uri, required
      - `events_url` string, required
      - `received_events_url` string, uri, required
      - `type` string, required
      - `site_admin` boolean, required
      - `starred_at` string
      - `user_view_type` string

## Other responses

- `204` — A header with no content is returned.
- `404` — Resource not found
- `409` — Conflict. Returned when the stack is being modified by another request.
- `422` — Validation failed. Returned when the stack can't be unstacked because every pull request in it is locked and cannot be removed.

---

[API](https://skmtc.net/github/apis/rest-api.md) · [All operations](https://skmtc.net/github/apis/rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/github/rest-api/versions/80850db290cd/schema)
