Back to GithubUpdate pull request review protection
Protected branches are available in public repositories with GitHub Free and GitHub Free for organizations, and in public and private repositories with GitHub Pro, GitHub Team, GitHub Enterprise Cloud, and GitHub Enterprise Server. For more information, see GitHub's products in the GitHub Help documentation.
Updating pull request review enforcement requires admin or owner permissions to the repository and branch protection to be enabled.
Note: Passing new arrays of users
and teams
replaces their previous values.
Input
type: object
properties:
parameters:
type: object
properties:
owner:
type: string
description: The account owner of the repository. The name is not case sensitive.
repo:
type: string
description: The name of the repository. The name is not case sensitive.
branch:
type: string
description: >-
The name of the branch. Cannot contain wildcard characters. To use
wildcard characters in branch names, use [the GraphQL
API](https://docs.github.com/graphql).
required:
- owner
- repo
- branch
title: Parameters
data:
type: object
properties:
dismissal_restrictions:
type: object
properties:
users:
type: array
description: The list of user `login`s with dismissal access
items:
type: string
teams:
type: array
description: The list of team `slug`s with dismissal access
items:
type: string
apps:
type: array
description: The list of app `slug`s with dismissal access
items:
type: string
dismiss_stale_reviews:
type: boolean
description: >-
Set to `true` if you want to automatically dismiss approving reviews
when someone pushes a new commit.
require_code_owner_reviews:
type: boolean
description: >-
Blocks merging pull requests until [code
owners](https://docs.github.com/articles/about-code-owners/) have
reviewed.
required_approving_review_count:
type: integer
description: >-
Specifies the number of reviewers required to approve pull requests.
Use a number between 1 and 6 or 0 to not require reviewers.
require_last_push_approval:
type: boolean
description: >-
Whether the most recent push must be approved by someone other than
the person who pushed it. Default: `false`
default: false
bypass_pull_request_allowances:
type: object
properties:
users:
type: array
description: >-
The list of user `login`s allowed to bypass pull request
requirements.
items:
type: string
teams:
type: array
description: >-
The list of team `slug`s allowed to bypass pull request
requirements.
items:
type: string
apps:
type: array
description: >-
The list of app `slug`s allowed to bypass pull request
requirements.
items:
type: string
title: Data
Output
type: object
title: Protected Branch Pull Request Review
properties:
url:
type: string
format: uri
example: >-
https://api.github.com/repos/octocat/Hello-World/branches/master/protection/dismissal_restrictions
dismissal_restrictions:
type: object
properties:
users:
description: The list of users with review dismissal access.
type: array
items:
type: object
title: Simple User
properties:
name:
nullable: true
type: string
email:
nullable: true
type: string
login:
type: string
example: octocat
id:
type: integer
example: 1
node_id:
type: string
example: MDQ6VXNlcjE=
avatar_url:
type: string
format: uri
example: https://github.com/images/error/octocat_happy.gif
gravatar_id:
type: string
example: 41d064eb2195891e12d0413f63227ea7
nullable: true
url:
type: string
format: uri
example: https://api.github.com/users/octocat
html_url:
type: string
format: uri
example: https://github.com/octocat
followers_url:
type: string
format: uri
example: https://api.github.com/users/octocat/followers
following_url:
type: string
example: https://api.github.com/users/octocat/following{/other_user}
gists_url:
type: string
example: https://api.github.com/users/octocat/gists{/gist_id}
starred_url:
type: string
example: https://api.github.com/users/octocat/starred{/owner}{/repo}
subscriptions_url:
type: string
format: uri
example: https://api.github.com/users/octocat/subscriptions
organizations_url:
type: string
format: uri
example: https://api.github.com/users/octocat/orgs
repos_url:
type: string
format: uri
example: https://api.github.com/users/octocat/repos
events_url:
type: string
example: https://api.github.com/users/octocat/events{/privacy}
received_events_url:
type: string
format: uri
example: https://api.github.com/users/octocat/received_events
type:
type: string
example: User
site_admin:
type: boolean
starred_at:
type: string
example: '"2020-07-09T00:17:55Z"'
teams:
description: The list of teams with review dismissal access.
type: array
items:
type: object
title: Team
properties:
id:
type: integer
node_id:
type: string
name:
type: string
slug:
type: string
description:
type: string
nullable: true
privacy:
type: string
notification_setting:
type: string
permission:
type: string
permissions:
type: object
properties:
pull:
type: boolean
triage:
type: boolean
push:
type: boolean
maintain:
type: boolean
admin:
type: boolean
url:
type: string
format: uri
html_url:
type: string
format: uri
example: https://github.com/orgs/rails/teams/core
members_url:
type: string
repositories_url:
type: string
format: uri
parent:
type: object
title: Team Simple
properties:
id:
description: Unique identifier of the team
type: integer
example: 1
node_id:
type: string
example: MDQ6VGVhbTE=
url:
description: URL for the team
type: string
format: uri
example: https://api.github.com/organizations/1/team/1
members_url:
type: string
example: >-
https://api.github.com/organizations/1/team/1/members{/member}
name:
description: Name of the team
type: string
example: Justice League
description:
description: Description of the team
type: string
nullable: true
example: A great team.
permission:
description: Permission that the team will have for its repositories
type: string
example: admin
privacy:
description: The level of privacy this team should have
type: string
example: closed
notification_setting:
description: The notification setting the team has set
type: string
example: notifications_enabled
html_url:
type: string
format: uri
example: https://github.com/orgs/rails/teams/core
repositories_url:
type: string
format: uri
example: https://api.github.com/organizations/1/team/1/repos
slug:
type: string
example: justice-league
ldap_dn:
description: >-
Distinguished Name (DN) that team maps to within LDAP
environment
example: uid=example,ou=users,dc=github,dc=com
type: string
apps:
description: The list of apps with review dismissal access.
type: array
items:
type: object
title: GitHub app
properties:
id:
description: Unique identifier of the GitHub app
example: 37
type: integer
slug:
description: The slug name of the GitHub app
example: probot-owners
type: string
node_id:
type: string
example: MDExOkludGVncmF0aW9uMQ==
owner:
type: object
title: Simple User
properties:
name:
nullable: true
type: string
email:
nullable: true
type: string
login:
type: string
example: octocat
id:
type: integer
example: 1
node_id:
type: string
example: MDQ6VXNlcjE=
avatar_url:
type: string
format: uri
example: https://github.com/images/error/octocat_happy.gif
gravatar_id:
type: string
example: 41d064eb2195891e12d0413f63227ea7
nullable: true
url:
type: string
format: uri
example: https://api.github.com/users/octocat
html_url:
type: string
format: uri
example: https://github.com/octocat
followers_url:
type: string
format: uri
example: https://api.github.com/users/octocat/followers
following_url:
type: string
example: https://api.github.com/users/octocat/following{/other_user}
gists_url:
type: string
example: https://api.github.com/users/octocat/gists{/gist_id}
starred_url:
type: string
example: https://api.github.com/users/octocat/starred{/owner}{/repo}
subscriptions_url:
type: string
format: uri
example: https://api.github.com/users/octocat/subscriptions
organizations_url:
type: string
format: uri
example: https://api.github.com/users/octocat/orgs
repos_url:
type: string
format: uri
example: https://api.github.com/users/octocat/repos
events_url:
type: string
example: https://api.github.com/users/octocat/events{/privacy}
received_events_url:
type: string
format: uri
example: https://api.github.com/users/octocat/received_events
type:
type: string
example: User
site_admin:
type: boolean
starred_at:
type: string
example: '"2020-07-09T00:17:55Z"'
name:
description: The name of the GitHub app
example: Probot Owners
type: string
description:
type: string
example: The description of the app.
nullable: true
external_url:
type: string
format: uri
example: https://example.com
html_url:
type: string
format: uri
example: https://github.com/apps/super-ci
created_at:
type: string
format: date-time
example: '2017-07-08T20:18:44.000Z'
updated_at:
type: string
format: date-time
example: '2017-07-08T20:18:44.000Z'
permissions:
type: object
properties:
issues:
type: string
checks:
type: string
metadata:
type: string
contents:
type: string
deployments:
type: string
events:
type: array
items:
type: string
installations_count:
description: The number of installations associated with the GitHub app
example: 5
type: integer
client_id:
type: string
example: '"Iv1.25b5d1e65ffc4022"'
client_secret:
type: string
example: '"1d4b2097ac622ba702d19de498f005747a8b21d3"'
webhook_secret:
type: string
example: '"6fba8f2fc8a7e8f2cca5577eddd82ca7586b3b6b"'
nullable: true
pem:
type: string
example: >-
"-----BEGIN RSA PRIVATE
KEY-----\nMIIEogIBAAKCAQEArYxrNYD/iT5CZVpRJu4rBKmmze3PVmT/gCo2ATUvDvZTPTey\nxcGJ3vvrJXazKk06pN05TN29o98jrYz4cengG3YGsXPNEpKsIrEl8NhbnxapEnM9\nJCMRe0P5JcPsfZlX6hmiT7136GRWiGOUba2X9+HKh8QJVLG5rM007TBER9/z9mWm\nrJuNh+m5l320oBQY/Qq3A7wzdEfZw8qm/mIN0FCeoXH1L6B8xXWaAYBwhTEh6SSn\nZHlO1Xu1JWDmAvBCi0RO5aRSKM8q9QEkvvHP4yweAtK3N8+aAbZ7ovaDhyGz8r6r\nzhU1b8Uo0Z2ysf503WqzQgIajr7Fry7/kUwpgQIDAQABAoIBADwJp80Ko1xHPZDy\nfcCKBDfIuPvkmSW6KumbsLMaQv1aGdHDwwTGv3t0ixSay8CGlxMRtRDyZPib6SvQ\n6OH/lpfpbMdW2ErkksgtoIKBVrDilfrcAvrNZu7NxRNbhCSvN8q0s4ICecjbbVQh\nnueSdlA6vGXbW58BHMq68uRbHkP+k+mM9U0mDJ1HMch67wlg5GbayVRt63H7R2+r\nVxcna7B80J/lCEjIYZznawgiTvp3MSanTglqAYi+m1EcSsP14bJIB9vgaxS79kTu\noiSo93leJbBvuGo8QEiUqTwMw4tDksmkLsoqNKQ1q9P7LZ9DGcujtPy4EZsamSJT\ny8OJt0ECgYEA2lxOxJsQk2kI325JgKFjo92mQeUObIvPfSNWUIZQDTjniOI6Gv63\nGLWVFrZcvQBWjMEQraJA9xjPbblV8PtfO87MiJGLWCHFxmPz2dzoedN+2Coxom8m\nV95CLz8QUShuao6u/RYcvUaZEoYs5bHcTmy5sBK80JyEmafJPtCQVxMCgYEAy3ar\nZr3yv4xRPEPMat4rseswmuMooSaK3SKub19WFI5IAtB/e7qR1Rj9JhOGcZz+OQrl\nT78O2OFYlgOIkJPvRMrPpK5V9lslc7tz1FSh3BZMRGq5jSyD7ETSOQ0c8T2O/s7v\nbeEPbVbDe4mwvM24XByH0GnWveVxaDl51ABD65sCgYB3ZAspUkOA5egVCh8kNpnd\nSd6SnuQBE3ySRlT2WEnCwP9Ph6oPgn+oAfiPX4xbRqkL8q/k0BdHQ4h+zNwhk7+h\nWtPYRAP1Xxnc/F+jGjb+DVaIaKGU18MWPg7f+FI6nampl3Q0KvfxwX0GdNhtio8T\nTj1E+SnFwh56SRQuxSh2gwKBgHKjlIO5NtNSflsUYFM+hyQiPiqnHzddfhSG+/3o\nm5nNaSmczJesUYreH5San7/YEy2UxAugvP7aSY2MxB+iGsiJ9WD2kZzTUlDZJ7RV\nUzWsoqBR+eZfVJ2FUWWvy8TpSG6trh4dFxImNtKejCR1TREpSiTV3Zb1dmahK9GV\nrK9NAoGAbBxRLoC01xfxCTgt5BDiBcFVh4fp5yYKwavJPLzHSpuDOrrI9jDn1oKN\nonq5sDU1i391zfQvdrbX4Ova48BN+B7p63FocP/MK5tyyBoT8zQEk2+vWDOw7H/Z\nu5dTCPxTIsoIwUw1I+7yIxqJzLPFgR2gVBwY1ra/8iAqCj+zeBw=\n-----END
RSA PRIVATE KEY-----\n"
url:
type: string
example: >-
"https://api.github.com/repos/the-org/an-org-repo/branches/master/protection/dismissal_restrictions"
users_url:
type: string
example: >-
"https://api.github.com/repos/the-org/an-org-repo/branches/master/protection/dismissal_restrictions/users"
teams_url:
type: string
example: >-
"https://api.github.com/repos/the-org/an-org-repo/branches/master/protection/dismissal_restrictions/teams"
bypass_pull_request_allowances:
type: object
properties:
users:
description: The list of users allowed to bypass pull request requirements.
type: array
items:
type: object
title: Simple User
properties:
name:
nullable: true
type: string
email:
nullable: true
type: string
login:
type: string
example: octocat
id:
type: integer
example: 1
node_id:
type: string
example: MDQ6VXNlcjE=
avatar_url:
type: string
format: uri
example: https://github.com/images/error/octocat_happy.gif
gravatar_id:
type: string
example: 41d064eb2195891e12d0413f63227ea7
nullable: true
url:
type: string
format: uri
example: https://api.github.com/users/octocat
html_url:
type: string
format: uri
example: https://github.com/octocat
followers_url:
type: string
format: uri
example: https://api.github.com/users/octocat/followers
following_url:
type: string
example: https://api.github.com/users/octocat/following{/other_user}
gists_url:
type: string
example: https://api.github.com/users/octocat/gists{/gist_id}
starred_url:
type: string
example: https://api.github.com/users/octocat/starred{/owner}{/repo}
subscriptions_url:
type: string
format: uri
example: https://api.github.com/users/octocat/subscriptions
organizations_url:
type: string
format: uri
example: https://api.github.com/users/octocat/orgs
repos_url:
type: string
format: uri
example: https://api.github.com/users/octocat/repos
events_url:
type: string
example: https://api.github.com/users/octocat/events{/privacy}
received_events_url:
type: string
format: uri
example: https://api.github.com/users/octocat/received_events
type:
type: string
example: User
site_admin:
type: boolean
starred_at:
type: string
example: '"2020-07-09T00:17:55Z"'
teams:
description: The list of teams allowed to bypass pull request requirements.
type: array
items:
type: object
title: Team
properties:
id:
type: integer
node_id:
type: string
name:
type: string
slug:
type: string
description:
type: string
nullable: true
privacy:
type: string
notification_setting:
type: string
permission:
type: string
permissions:
type: object
properties:
pull:
type: boolean
triage:
type: boolean
push:
type: boolean
maintain:
type: boolean
admin:
type: boolean
url:
type: string
format: uri
html_url:
type: string
format: uri
example: https://github.com/orgs/rails/teams/core
members_url:
type: string
repositories_url:
type: string
format: uri
parent:
type: object
title: Team Simple
properties:
id:
description: Unique identifier of the team
type: integer
example: 1
node_id:
type: string
example: MDQ6VGVhbTE=
url:
description: URL for the team
type: string
format: uri
example: https://api.github.com/organizations/1/team/1
members_url:
type: string
example: >-
https://api.github.com/organizations/1/team/1/members{/member}
name:
description: Name of the team
type: string
example: Justice League
description:
description: Description of the team
type: string
nullable: true
example: A great team.
permission:
description: Permission that the team will have for its repositories
type: string
example: admin
privacy:
description: The level of privacy this team should have
type: string
example: closed
notification_setting:
description: The notification setting the team has set
type: string
example: notifications_enabled
html_url:
type: string
format: uri
example: https://github.com/orgs/rails/teams/core
repositories_url:
type: string
format: uri
example: https://api.github.com/organizations/1/team/1/repos
slug:
type: string
example: justice-league
ldap_dn:
description: >-
Distinguished Name (DN) that team maps to within LDAP
environment
example: uid=example,ou=users,dc=github,dc=com
type: string
apps:
description: The list of apps allowed to bypass pull request requirements.
type: array
items:
type: object
title: GitHub app
properties:
id:
description: Unique identifier of the GitHub app
example: 37
type: integer
slug:
description: The slug name of the GitHub app
example: probot-owners
type: string
node_id:
type: string
example: MDExOkludGVncmF0aW9uMQ==
owner:
type: object
title: Simple User
properties:
name:
nullable: true
type: string
email:
nullable: true
type: string
login:
type: string
example: octocat
id:
type: integer
example: 1
node_id:
type: string
example: MDQ6VXNlcjE=
avatar_url:
type: string
format: uri
example: https://github.com/images/error/octocat_happy.gif
gravatar_id:
type: string
example: 41d064eb2195891e12d0413f63227ea7
nullable: true
url:
type: string
format: uri
example: https://api.github.com/users/octocat
html_url:
type: string
format: uri
example: https://github.com/octocat
followers_url:
type: string
format: uri
example: https://api.github.com/users/octocat/followers
following_url:
type: string
example: https://api.github.com/users/octocat/following{/other_user}
gists_url:
type: string
example: https://api.github.com/users/octocat/gists{/gist_id}
starred_url:
type: string
example: https://api.github.com/users/octocat/starred{/owner}{/repo}
subscriptions_url:
type: string
format: uri
example: https://api.github.com/users/octocat/subscriptions
organizations_url:
type: string
format: uri
example: https://api.github.com/users/octocat/orgs
repos_url:
type: string
format: uri
example: https://api.github.com/users/octocat/repos
events_url:
type: string
example: https://api.github.com/users/octocat/events{/privacy}
received_events_url:
type: string
format: uri
example: https://api.github.com/users/octocat/received_events
type:
type: string
example: User
site_admin:
type: boolean
starred_at:
type: string
example: '"2020-07-09T00:17:55Z"'
name:
description: The name of the GitHub app
example: Probot Owners
type: string
description:
type: string
example: The description of the app.
nullable: true
external_url:
type: string
format: uri
example: https://example.com
html_url:
type: string
format: uri
example: https://github.com/apps/super-ci
created_at:
type: string
format: date-time
example: '2017-07-08T20:18:44.000Z'
updated_at:
type: string
format: date-time
example: '2017-07-08T20:18:44.000Z'
permissions:
type: object
properties:
issues:
type: string
checks:
type: string
metadata:
type: string
contents:
type: string
deployments:
type: string
events:
type: array
items:
type: string
installations_count:
description: The number of installations associated with the GitHub app
example: 5
type: integer
client_id:
type: string
example: '"Iv1.25b5d1e65ffc4022"'
client_secret:
type: string
example: '"1d4b2097ac622ba702d19de498f005747a8b21d3"'
webhook_secret:
type: string
example: '"6fba8f2fc8a7e8f2cca5577eddd82ca7586b3b6b"'
nullable: true
pem:
type: string
example: >-
"-----BEGIN RSA PRIVATE
KEY-----\nMIIEogIBAAKCAQEArYxrNYD/iT5CZVpRJu4rBKmmze3PVmT/gCo2ATUvDvZTPTey\nxcGJ3vvrJXazKk06pN05TN29o98jrYz4cengG3YGsXPNEpKsIrEl8NhbnxapEnM9\nJCMRe0P5JcPsfZlX6hmiT7136GRWiGOUba2X9+HKh8QJVLG5rM007TBER9/z9mWm\nrJuNh+m5l320oBQY/Qq3A7wzdEfZw8qm/mIN0FCeoXH1L6B8xXWaAYBwhTEh6SSn\nZHlO1Xu1JWDmAvBCi0RO5aRSKM8q9QEkvvHP4yweAtK3N8+aAbZ7ovaDhyGz8r6r\nzhU1b8Uo0Z2ysf503WqzQgIajr7Fry7/kUwpgQIDAQABAoIBADwJp80Ko1xHPZDy\nfcCKBDfIuPvkmSW6KumbsLMaQv1aGdHDwwTGv3t0ixSay8CGlxMRtRDyZPib6SvQ\n6OH/lpfpbMdW2ErkksgtoIKBVrDilfrcAvrNZu7NxRNbhCSvN8q0s4ICecjbbVQh\nnueSdlA6vGXbW58BHMq68uRbHkP+k+mM9U0mDJ1HMch67wlg5GbayVRt63H7R2+r\nVxcna7B80J/lCEjIYZznawgiTvp3MSanTglqAYi+m1EcSsP14bJIB9vgaxS79kTu\noiSo93leJbBvuGo8QEiUqTwMw4tDksmkLsoqNKQ1q9P7LZ9DGcujtPy4EZsamSJT\ny8OJt0ECgYEA2lxOxJsQk2kI325JgKFjo92mQeUObIvPfSNWUIZQDTjniOI6Gv63\nGLWVFrZcvQBWjMEQraJA9xjPbblV8PtfO87MiJGLWCHFxmPz2dzoedN+2Coxom8m\nV95CLz8QUShuao6u/RYcvUaZEoYs5bHcTmy5sBK80JyEmafJPtCQVxMCgYEAy3ar\nZr3yv4xRPEPMat4rseswmuMooSaK3SKub19WFI5IAtB/e7qR1Rj9JhOGcZz+OQrl\nT78O2OFYlgOIkJPvRMrPpK5V9lslc7tz1FSh3BZMRGq5jSyD7ETSOQ0c8T2O/s7v\nbeEPbVbDe4mwvM24XByH0GnWveVxaDl51ABD65sCgYB3ZAspUkOA5egVCh8kNpnd\nSd6SnuQBE3ySRlT2WEnCwP9Ph6oPgn+oAfiPX4xbRqkL8q/k0BdHQ4h+zNwhk7+h\nWtPYRAP1Xxnc/F+jGjb+DVaIaKGU18MWPg7f+FI6nampl3Q0KvfxwX0GdNhtio8T\nTj1E+SnFwh56SRQuxSh2gwKBgHKjlIO5NtNSflsUYFM+hyQiPiqnHzddfhSG+/3o\nm5nNaSmczJesUYreH5San7/YEy2UxAugvP7aSY2MxB+iGsiJ9WD2kZzTUlDZJ7RV\nUzWsoqBR+eZfVJ2FUWWvy8TpSG6trh4dFxImNtKejCR1TREpSiTV3Zb1dmahK9GV\nrK9NAoGAbBxRLoC01xfxCTgt5BDiBcFVh4fp5yYKwavJPLzHSpuDOrrI9jDn1oKN\nonq5sDU1i391zfQvdrbX4Ova48BN+B7p63FocP/MK5tyyBoT8zQEk2+vWDOw7H/Z\nu5dTCPxTIsoIwUw1I+7yIxqJzLPFgR2gVBwY1ra/8iAqCj+zeBw=\n-----END
RSA PRIVATE KEY-----\n"
dismiss_stale_reviews:
type: boolean
example: true
require_code_owner_reviews:
type: boolean
example: true
required_approving_review_count:
type: integer
minimum: 0
maximum: 6
example: 2
require_last_push_approval:
description: >-
Whether the most recent push must be approved by someone other than the
person who pushed it.
type: boolean
example: true
default: false