About GitHub App permissions
GitHub Apps are created with a set of permissions. Permissions define what resources the GitHub App can access via the API. For more information, see "Setting permissions for GitHub Apps."
Actions
-
GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}(read) -
DELETE /repos/{owner}/{repo}/actions/artifacts/{artifact_id}(write) -
GET /repos/{owner}/{repo}/actions/runs/{run_id}/artifacts(read) -
GET /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments(read) -
POST /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments(read) -
GET /repos/{owner}/{repo}/actions/runs/{run_id}/approvals(read)
-
POST /repos/{owner}/{repo}/actions/runs/{run_id}/cancel(write) -
DELETE /repos/{owner}/{repo}/actions/runs/{run_id}/logs(write) -
POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun(write) -
GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs(read) -
GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}(read) -
PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/disable(write) -
POST /repos/{owner}/{repo}/actions/workflows/{workflow_id}/dispatches(write) -
PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/enable(write)
Administration
-
PUT /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}(write) -
DELETE /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}(write) -
POST /orgs/{org}/repos(write) -
PATCH /repos/{owner}/{repo}(write) -
DELETE /repos/{owner}/{repo}(write) -
POST /repos/{owner}/{repo}/forks(write) -
POST /user/repos(write) -
GET /repos/{owner}/{repo}/actions/permissions/selected-actions(read) -
PUT /repos/{owner}/{repo}/actions/permissions/selected-actions(write) -
DELETE /repos/{owner}/{repo}/autolinks/{autolink_id}(write) -
DELETE /repos/{owner}/{repo}/collaborators/{username}(write) -
PATCH /repos/{owner}/{repo}/invitations/{invitation_id}(write) -
DELETE /repos/{owner}/{repo}/invitations/{invitation_id}(write) -
POST /repos/{owner}/{repo}/keys(write) -
POST /repos/{owner}/{repo}/pages(write) -
PUT /repos/{owner}/{repo}/pages(write) -
GET /repos/{owner}/{repo}/actions/runners/{runner_id}(read) -
DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}(write)
GET /repos/{owner}/{repo}/actions/runners/downloads(read)POST /repos/{owner}/{repo}/actions/runners/registration-token(write)POST /repos/{owner}/{repo}/actions/runners/remove-token(write)
PUT /repos/{owner}/{repo}/topics(write)
Checks
POST /repos/{owner}/{repo}/check-runs(write)GET /repos/{owner}/{repo}/check-runs/{check_run_id}(read)PATCH /repos/{owner}/{repo}/check-runs/{check_run_id}(write)GET /repos/{owner}/{repo}/check-runs/{check_run_id}/annotations(read)POST /repos/{owner}/{repo}/check-runs/{check_run_id}/rerequest(write)GET /repos/{owner}/{repo}/check-suites/{check_suite_id}/check-runs(read)POST /repos/{owner}/{repo}/check-suites(write)GET /repos/{owner}/{repo}/check-suites/{check_suite_id}(read)POST /repos/{owner}/{repo}/check-suites/{check_suite_id}/rerequest(write)PATCH /repos/{owner}/{repo}/check-suites/preferences(write)POST /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments(read)
Contents
POST /repos/{owner}/{repo}/git/blobs(write)POST /repos/{owner}/{repo}/git/commits(write)POST /repos/{owner}/{repo}/git/refs(write)POST /repos/{owner}/{repo}/git/tags(write)POST /repos/{owner}/{repo}/git/trees(write)
-
POST /repos/{owner}/{repo}/comments/{comment_id}/reactions(write) -
DELETE /repos/{owner}/{repo}/comments/{comment_id}/reactions/{reaction_id}(write) -
GET /repos/{owner}/{repo}/releases/{release_id}/assets(read) -
PATCH /repos/{owner}/{repo}/releases/assets/{asset_id}(write) -
DELETE /repos/{owner}/{repo}/releases/assets/{asset_id}(write)
Deployments
POST /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments(read)GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses(read)POST /repos/{owner}/{repo}/deployments/{deployment_id}/statuses(write)GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses/{status_id}(read)GET /repos/{owner}/{repo}/deployments(read)POST /repos/{owner}/{repo}/deployments(write)GET /repos/{owner}/{repo}/deployments/{deployment_id}(read)DELETE /repos/{owner}/{repo}/deployments/{deployment_id}(write)
Emails
GET /user/emails(read)POST /user/emails(write)DELETE /user/emails(write)GET /user/public_emails(read)
Followers
GET /user/followers(read)GET /user/following(read)GET /user/following/{username}(read)PUT /user/following/{username}(write)DELETE /user/following/{username}(write)
Gists
POST /gists/{gist_id}/comments(write)PATCH /gists/{gist_id}/comments/{comment_id}(write)DELETE /gists/{gist_id}/comments/{comment_id}(write)POST /gists(write)PATCH /gists/{gist_id}(write)DELETE /gists/{gist_id}(write)POST /gists/{gist_id}/forks(write)PUT /gists/{gist_id}/star(write)DELETE /gists/{gist_id}/star(write)
Gpg keys
GET /user/gpg_keys(read)POST /user/gpg_keys(write)GET /user/gpg_keys/{gpg_key_id}(read)DELETE /user/gpg_keys/{gpg_key_id}(write)
Issues
POST /repos/{owner}/{repo}/issues/{issue_number}/assignees(write)DELETE /repos/{owner}/{repo}/issues/{issue_number}/assignees(write)GET /repos/{owner}/{repo}/issues/{issue_number}/comments(read)POST /repos/{owner}/{repo}/issues/{issue_number}/comments(write)GET /repos/{owner}/{repo}/issues/comments(read)GET /repos/{owner}/{repo}/issues/comments/{comment_id}(read)PATCH /repos/{owner}/{repo}/issues/comments/{comment_id}(write)DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}(write)GET /repos/{owner}/{repo}/issues/{issue_number}/events(read)GET /repos/{owner}/{repo}/issues/events(read)GET /repos/{owner}/{repo}/issues/events/{event_id}(read)GET /repos/{owner}/{repo}/issues/{issue_number}/timeline(read)GET /repos/{owner}/{repo}/assignees(read)GET /repos/{owner}/{repo}/issues(read)POST /repos/{owner}/{repo}/issues(write)GET /repos/{owner}/{repo}/issues/{issue_number}(read)PATCH /repos/{owner}/{repo}/issues/{issue_number}(write)PUT /repos/{owner}/{repo}/issues/{issue_number}/lock(write)DELETE /repos/{owner}/{repo}/issues/{issue_number}/lock(write)GET /repos/{owner}/{repo}/issues/{issue_number}/labels(read)POST /repos/{owner}/{repo}/issues/{issue_number}/labels(write)PUT /repos/{owner}/{repo}/issues/{issue_number}/labels(write)DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels(write)GET /repos/{owner}/{repo}/labels(read)POST /repos/{owner}/{repo}/labels(write)GET /repos/{owner}/{repo}/milestones/{milestone_number}/labels(read)GET /repos/{owner}/{repo}/milestones(read)POST /repos/{owner}/{repo}/milestones(write)GET /repos/{owner}/{repo}/milestones/{milestone_number}(read)PATCH /repos/{owner}/{repo}/milestones/{milestone_number}(write)DELETE /repos/{owner}/{repo}/milestones/{milestone_number}(write)GET /repos/{owner}/{repo}/issues/{issue_number}/reactions(read)POST /repos/{owner}/{repo}/issues/{issue_number}/reactions(write)DELETE /repos/{owner}/{repo}/issues/{issue_number}/reactions/{reaction_id}(write)GET /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions(read)POST /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions(write)DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions/{reaction_id}(write)
Keys
GET /user/keys(read)POST /user/keys(write)GET /user/keys/{key_id}(read)DELETE /user/keys/{key_id}(write)
Members
-
GET /orgs/{org}/members(read) -
GET /orgs/{org}/teams/{team_slug}/projects/{project_id}(read) -
PUT /orgs/{org}/teams/{team_slug}/projects/{project_id}(read) -
DELETE /orgs/{org}/teams/{team_slug}/projects/{project_id}(read) -
GET /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}(read) -
PUT /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}(read) -
DELETE /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}(read) -
GET /orgs/{org}/teams/{team_slug}/memberships/{username}(read) -
PUT /orgs/{org}/teams/{team_slug}/memberships/{username}(write) -
DELETE /orgs/{org}/teams/{team_slug}/memberships/{username}(write) -
GET /orgs/{org}/teams(read) -
POST /orgs/{org}/teams(write)
Metadata
GET /repos/{owner}/{repo}/events(read)POST /gists/{gist_id}/comments(read)GET /gists/{gist_id}/comments/{comment_id}(read)PATCH /gists/{gist_id}/comments/{comment_id}(read)DELETE /gists/{gist_id}/comments/{comment_id}(read)POST /gists(read)PATCH /gists/{gist_id}(read)DELETE /gists/{gist_id}(read)POST /gists/{gist_id}/forks(read)PUT /gists/{gist_id}/star(read)DELETE /gists/{gist_id}/star(read)GET /notifications(read)GET /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}(read)PUT /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}(read)DELETE /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}(read)GET /repos/{owner}/{repo}/comments/{comment_id}/reactions(read)GET /orgs/{org}/repos(read)GET /repositories(read)GET /repos/{owner}/{repo}(read)GET /repos/{owner}/{repo}/contributors(read)GET /repos/{owner}/{repo}/forks(read)GET /repos/{owner}/{repo}/languages(read)GET /repos/{owner}/{repo}/tags(read)GET /users/{username}/repos(read)GET /user/repos(read)GET /repos/{owner}/{repo}/stargazers(read)GET /repos/{owner}/{repo}/subscribers(read)GET /repos/{owner}/{repo}/collaborators(read)GET /repos/{owner}/{repo}/collaborators/{username}(read)GET /repos/{owner}/{repo}/collaborators/{username}/permission(read)GET /repos/{owner}/{repo}/comments(read)GET /repos/{owner}/{repo}/comments/{comment_id}(read)GET /repos/{owner}/{repo}/license(read)GET /repos/{owner}/{repo}/stats/code_frequency(read)GET /repos/{owner}/{repo}/stats/commit_activity(read)GET /repos/{owner}/{repo}/stats/contributors(read)GET /repos/{owner}/{repo}/stats/participation(read)GET /repos/{owner}/{repo}/stats/punch_card(read)GET /search/labels(read)GET /repos/{owner}/{repo}/topics(read)
Notifications
GET /notifications(read)
Organization administration
GET /orgs/{org}/audit-log(read)
GET /orgs/{org}/actions/permissions(read)PUT /orgs/{org}/actions/permissions(write)GET /orgs/{org}/actions/permissions/repositories(read)PUT /orgs/{org}/actions/permissions/repositories(write)GET /orgs/{org}/actions/permissions/selected-actions(read)PUT /orgs/{org}/actions/permissions/selected-actions(write)
PATCH /orgs/{org}(write)GET /orgs/{org}/installations(read)
Organization events
Organization hooks
GET /orgs/{org}/hooks(read)POST /orgs/{org}/hooks(write)GET /orgs/{org}/hooks/{hook_id}(read)PATCH /orgs/{org}/hooks/{hook_id}(write)DELETE /orgs/{org}/hooks/{hook_id}(write)GET /orgs/{org}/hooks/{hook_id}/config(read)PATCH /orgs/{org}/hooks/{hook_id}/config(write)GET /orgs/{org}/hooks/{hook_id}/deliveries(read)GET /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}(read)POST /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}/attempts(write)POST /orgs/{org}/hooks/{hook_id}/pings(write)
Organization pre receive hooks
GET /orgs/{org}/pre-receive-hooks(read)GET /orgs/{org}/pre-receive-hooks/{pre_receive_hook_id}(read)PATCH /orgs/{org}/pre-receive-hooks/{pre_receive_hook_id}(write)DELETE /orgs/{org}/pre-receive-hooks/{pre_receive_hook_id}(write)
Organization projects
PUT /orgs/{org}/teams/{team_slug}/projects/{project_id}(admin)DELETE /orgs/{org}/teams/{team_slug}/projects/{project_id}(admin)GET /orgs/{org}/projects(read)POST /orgs/{org}/projects(write)
Organization secrets
GET /orgs/{org}/actions/secrets(read)GET /orgs/{org}/actions/secrets/{secret_name}(read)PUT /orgs/{org}/actions/secrets/{secret_name}(write)DELETE /orgs/{org}/actions/secrets/{secret_name}(write)GET /orgs/{org}/actions/secrets/{secret_name}/repositories(read)PUT /orgs/{org}/actions/secrets/{secret_name}/repositories(write)GET /orgs/{org}/actions/secrets/public-key(read)
Organization self hosted runners
GET /orgs/{org}/actions/runner-groups(read)POST /orgs/{org}/actions/runner-groups(write)GET /orgs/{org}/actions/runner-groups/{runner_group_id}(read)PATCH /orgs/{org}/actions/runner-groups/{runner_group_id}(write)DELETE /orgs/{org}/actions/runner-groups/{runner_group_id}(write)GET /orgs/{org}/actions/runner-groups/{runner_group_id}/repositories(read)PUT /orgs/{org}/actions/runner-groups/{runner_group_id}/repositories(write)GET /orgs/{org}/actions/runner-groups/{runner_group_id}/runners(read)PUT /orgs/{org}/actions/runner-groups/{runner_group_id}/runners(write)PUT /orgs/{org}/actions/runner-groups/{runner_group_id}/runners/{runner_id}(write)DELETE /orgs/{org}/actions/runner-groups/{runner_group_id}/runners/{runner_id}(write)GET /orgs/{org}/actions/runners(read)GET /orgs/{org}/actions/runners/{runner_id}(read)DELETE /orgs/{org}/actions/runners/{runner_id}(write)
GET /orgs/{org}/actions/runners/downloads(read)POST /orgs/{org}/actions/runners/registration-token(write)POST /orgs/{org}/actions/runners/remove-token(write)
Pages
GET /repos/{owner}/{repo}/pages(read)POST /repos/{owner}/{repo}/pages(write)PUT /repos/{owner}/{repo}/pages(write)DELETE /repos/{owner}/{repo}/pages(write)GET /repos/{owner}/{repo}/pages/builds(read)POST /repos/{owner}/{repo}/pages/builds(write)GET /repos/{owner}/{repo}/pages/builds/{build_id}(read)GET /repos/{owner}/{repo}/pages/builds/latest(read)
Profile
PATCH /user(write)
Pull requests
GET /repos/{owner}/{repo}/pulls/{pull_number}/comments(read)POST /repos/{owner}/{repo}/pulls/{pull_number}/comments(write)GET /repos/{owner}/{repo}/pulls/comments(read)GET /repos/{owner}/{repo}/pulls/comments/{comment_id}(read)PATCH /repos/{owner}/{repo}/pulls/comments/{comment_id}(write)DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}(write)PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/dismissals(write)POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/events(write)GET /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers(read)POST /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers(write)DELETE /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers(write)GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews(read)POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews(write)GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}(read)PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}(write)DELETE /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}(write)GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments(read)GET /repos/{owner}/{repo}/pulls(read)POST /repos/{owner}/{repo}/pulls(write)GET /repos/{owner}/{repo}/pulls/{pull_number}(read)PATCH /repos/{owner}/{repo}/pulls/{pull_number}(write)GET /repos/{owner}/{repo}/pulls/{pull_number}/commits(read)GET /repos/{owner}/{repo}/pulls/{pull_number}/files(read)GET /repos/{owner}/{repo}/pulls/{pull_number}/merge(read)PUT /repos/{owner}/{repo}/pulls/{pull_number}/update-branch(write)GET /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions(read)POST /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions(write)DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions/{reaction_id}(write)
Repository hooks
GET /repos/{owner}/{repo}/hooks(read)POST /repos/{owner}/{repo}/hooks(write)GET /repos/{owner}/{repo}/hooks/{hook_id}(read)PATCH /repos/{owner}/{repo}/hooks/{hook_id}(write)DELETE /repos/{owner}/{repo}/hooks/{hook_id}(write)GET /repos/{owner}/{repo}/hooks/{hook_id}/config(read)PATCH /repos/{owner}/{repo}/hooks/{hook_id}/config(write)GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries(read)GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}(read)POST /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}/attempts(write)POST /repos/{owner}/{repo}/hooks/{hook_id}/pings(read)POST /repos/{owner}/{repo}/hooks/{hook_id}/tests(read)
Repository pre receive hooks
GET /repos/{owner}/{repo}/pre-receive-hooks(read)GET /repos/{owner}/{repo}/pre-receive-hooks/{pre_receive_hook_id}(read)PATCH /repos/{owner}/{repo}/pre-receive-hooks/{pre_receive_hook_id}(write)DELETE /repos/{owner}/{repo}/pre-receive-hooks/{pre_receive_hook_id}(write)
Repository projects
GET /projects/{project_id}/collaborators(write)PUT /projects/{project_id}/collaborators/{username}(write)DELETE /projects/{project_id}/collaborators/{username}(write)GET /projects/{project_id}/collaborators/{username}/permission(write)GET /projects/{project_id}(read)PATCH /projects/{project_id}(write)DELETE /projects/{project_id}(write)GET /projects/{project_id}/columns(read)POST /projects/{project_id}/columns(write)GET /projects/columns/{column_id}(read)PATCH /projects/columns/{column_id}(write)DELETE /projects/columns/{column_id}(write)GET /projects/columns/{column_id}/cards(read)POST /projects/columns/{column_id}/cards(write)POST /projects/columns/{column_id}/moves(write)GET /projects/columns/cards/{card_id}(read)PATCH /projects/columns/cards/{card_id}(write)DELETE /projects/columns/cards/{card_id}(write)POST /projects/columns/cards/{card_id}/moves(write)GET /repos/{owner}/{repo}/projects(read)POST /repos/{owner}/{repo}/projects(write)
Secret scanning alerts
GET /orgs/{org}/secret-scanning/alerts(read)GET /repos/{owner}/{repo}/secret-scanning/alerts(read)GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}(read)PATCH /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}(write)GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations(read)
Secrets
GET /repos/{owner}/{repo}/actions/secrets(read)GET /repos/{owner}/{repo}/actions/secrets/{secret_name}(read)PUT /repos/{owner}/{repo}/actions/secrets/{secret_name}(write)DELETE /repos/{owner}/{repo}/actions/secrets/{secret_name}(write)GET /repos/{owner}/{repo}/actions/secrets/public-key(read)
Security events
GET /repos/{owner}/{repo}/code-scanning/alerts(read)GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}(read)PATCH /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}(write)GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances(read)GET /repos/{owner}/{repo}/code-scanning/analyses(read)GET /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}(read)DELETE /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}(write)GET /repos/{owner}/{repo}/code-scanning/sarifs/{sarif_id}(read)POST /repos/{owner}/{repo}/code-scanning/sarifs(write)
Starring
GET /users/{username}/starred(read)GET /user/starred(read)GET /user/starred/{owner}/{repo}(read)PUT /user/starred/{owner}/{repo}(write)DELETE /user/starred/{owner}/{repo}(write)
Statuses
Team discussions
GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions(read)POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions(write)DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions/{reaction_id}(write)GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions(read)POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions(write)DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions/{reaction_id}(write)GET /orgs/{org}/teams/{team_slug}/discussions(read)POST /orgs/{org}/teams/{team_slug}/discussions(write)GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}(read)PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}(write)DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}(write)GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments(read)POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments(write)GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}(read)PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}(write)DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}(write)
Watching
GET /users/{username}/subscriptions(read)GET /user/subscriptions(read)