Skip to main content
The REST API is now versioned. For more information, see "About API versioning."

GitHub Actions 权限

使用 REST API 与 GitHub Actions 的权限进行交互。

关于 GitHub Actions

的权限

可以使用 REST API 为允许运行 GitHub Actions 的组织和存储库以及允许运行的操作和可重用工作流设置权限。有关详细信息,请参阅“使用限制、计费和管理”。

Get GitHub Actions permissions for an organization

Works with GitHub Apps

Gets the GitHub Actions permissions policy for repositories and allowed actions and reusable workflows in an organization.

You must authenticate using an access token with the admin:org scope to use this endpoint. GitHub Apps must have the administration organization permission to use this API.

Parameters for "Get GitHub Actions permissions for an organization"

标头
名称, 类型, 说明
accept string

Setting to application/vnd.github+json is recommended.

路径参数
名称, 类型, 说明
org string 必须

The organization name. The name is not case sensitive.

HTTP response status codes for "Get GitHub Actions permissions for an organization"

Status codeDescription
200

OK

Code samples for "Get GitHub Actions permissions for an organization"

get/orgs/{org}/actions/permissions
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/orgs/ORG/actions/permissions

Response

Status: 200
{ "enabled_repositories": "all", "allowed_actions": "selected", "selected_actions_url": "https://api.github.com/organizations/42/actions/permissions/selected-actions" }

Set GitHub Actions permissions for an organization

Works with GitHub Apps

Sets the GitHub Actions permissions policy for repositories and allowed actions and reusable workflows in an organization.

You must authenticate using an access token with the admin:org scope to use this endpoint. GitHub Apps must have the administration organization permission to use this API.

Parameters for "Set GitHub Actions permissions for an organization"

标头
名称, 类型, 说明
accept string

Setting to application/vnd.github+json is recommended.

路径参数
名称, 类型, 说明
org string 必须

The organization name. The name is not case sensitive.

正文参数
名称, 类型, 说明
enabled_repositories string 必须

The policy that controls the repositories in the organization that are allowed to run GitHub Actions.

可以是以下选项之一: all, none, selected

allowed_actions string

The permissions policy that controls the actions and reusable workflows that are allowed to run.

可以是以下选项之一: all, local_only, selected

HTTP response status codes for "Set GitHub Actions permissions for an organization"

Status codeDescription
204

No Content

Code samples for "Set GitHub Actions permissions for an organization"

put/orgs/{org}/actions/permissions
curl -L \ -X PUT \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/orgs/ORG/actions/permissions \ -d '{"enabled_repositories":"all","allowed_actions":"selected"}'

Response

Status: 204

List selected repositories enabled for GitHub Actions in an organization

Works with GitHub Apps

Lists the selected repositories that are enabled for GitHub Actions in an organization. To use this endpoint, the organization permission policy for enabled_repositories must be configured to selected. For more information, see "Set GitHub Actions permissions for an organization."

You must authenticate using an access token with the admin:org scope to use this endpoint. GitHub Apps must have the administration organization permission to use this API.

Parameters for "List selected repositories enabled for GitHub Actions in an organization"

标头
名称, 类型, 说明
accept string

Setting to application/vnd.github+json is recommended.

路径参数
名称, 类型, 说明
org string 必须

The organization name. The name is not case sensitive.

查询参数
名称, 类型, 说明
per_page integer

The number of results per page (max 100).

默认: 30

page integer

Page number of the results to fetch.

默认: 1

HTTP response status codes for "List selected repositories enabled for GitHub Actions in an organization"

Status codeDescription
200

OK

Code samples for "List selected repositories enabled for GitHub Actions in an organization"

get/orgs/{org}/actions/permissions/repositories
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/orgs/ORG/actions/permissions/repositories

Response

Status: 200
{ "total_count": 1, "repositories": [ { "id": 1296269, "node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5", "name": "Hello-World", "full_name": "octocat/Hello-World", "owner": { "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 }, "private": false, "html_url": "https://github.com/octocat/Hello-World", "description": "This your first repo!", "fork": false, "url": "https://api.github.com/repos/octocat/Hello-World", "archive_url": "https://api.github.com/repos/octocat/Hello-World/{archive_format}{/ref}", "assignees_url": "https://api.github.com/repos/octocat/Hello-World/assignees{/user}", "blobs_url": "https://api.github.com/repos/octocat/Hello-World/git/blobs{/sha}", "branches_url": "https://api.github.com/repos/octocat/Hello-World/branches{/branch}", "collaborators_url": "https://api.github.com/repos/octocat/Hello-World/collaborators{/collaborator}", "comments_url": "https://api.github.com/repos/octocat/Hello-World/comments{/number}", "commits_url": "https://api.github.com/repos/octocat/Hello-World/commits{/sha}", "compare_url": "https://api.github.com/repos/octocat/Hello-World/compare/{base}...{head}", "contents_url": "https://api.github.com/repos/octocat/Hello-World/contents/{+path}", "contributors_url": "https://api.github.com/repos/octocat/Hello-World/contributors", "deployments_url": "https://api.github.com/repos/octocat/Hello-World/deployments", "downloads_url": "https://api.github.com/repos/octocat/Hello-World/downloads", "events_url": "https://api.github.com/repos/octocat/Hello-World/events", "forks_url": "https://api.github.com/repos/octocat/Hello-World/forks", "git_commits_url": "https://api.github.com/repos/octocat/Hello-World/git/commits{/sha}", "git_refs_url": "https://api.github.com/repos/octocat/Hello-World/git/refs{/sha}", "git_tags_url": "https://api.github.com/repos/octocat/Hello-World/git/tags{/sha}", "git_url": "git:github.com/octocat/Hello-World.git", "issue_comment_url": "https://api.github.com/repos/octocat/Hello-World/issues/comments{/number}", "issue_events_url": "https://api.github.com/repos/octocat/Hello-World/issues/events{/number}", "issues_url": "https://api.github.com/repos/octocat/Hello-World/issues{/number}", "keys_url": "https://api.github.com/repos/octocat/Hello-World/keys{/key_id}", "labels_url": "https://api.github.com/repos/octocat/Hello-World/labels{/name}", "languages_url": "https://api.github.com/repos/octocat/Hello-World/languages", "merges_url": "https://api.github.com/repos/octocat/Hello-World/merges", "milestones_url": "https://api.github.com/repos/octocat/Hello-World/milestones{/number}", "notifications_url": "https://api.github.com/repos/octocat/Hello-World/notifications{?since,all,participating}", "pulls_url": "https://api.github.com/repos/octocat/Hello-World/pulls{/number}", "releases_url": "https://api.github.com/repos/octocat/Hello-World/releases{/id}", "ssh_url": "git@github.com:octocat/Hello-World.git", "stargazers_url": "https://api.github.com/repos/octocat/Hello-World/stargazers", "statuses_url": "https://api.github.com/repos/octocat/Hello-World/statuses/{sha}", "subscribers_url": "https://api.github.com/repos/octocat/Hello-World/subscribers", "subscription_url": "https://api.github.com/repos/octocat/Hello-World/subscription", "tags_url": "https://api.github.com/repos/octocat/Hello-World/tags", "teams_url": "https://api.github.com/repos/octocat/Hello-World/teams", "trees_url": "https://api.github.com/repos/octocat/Hello-World/git/trees{/sha}", "clone_url": "https://github.com/octocat/Hello-World.git", "mirror_url": "git:git.example.com/octocat/Hello-World", "hooks_url": "https://api.github.com/repos/octocat/Hello-World/hooks", "svn_url": "https://svn.github.com/octocat/Hello-World", "homepage": "https://github.com", "language": null, "forks_count": 9, "stargazers_count": 80, "watchers_count": 80, "size": 108, "default_branch": "master", "open_issues_count": 0, "is_template": true, "topics": [ "octocat", "atom", "electron", "api" ], "has_issues": true, "has_projects": true, "has_wiki": true, "has_pages": false, "has_downloads": true, "archived": false, "disabled": false, "visibility": "public", "pushed_at": "2011-01-26T19:06:43Z", "created_at": "2011-01-26T19:01:12Z", "updated_at": "2011-01-26T19:14:43Z", "permissions": { "admin": false, "push": false, "pull": true }, "allow_rebase_merge": true, "template_repository": null, "temp_clone_token": "ABTLWHOULUVAXGTRYU7OC2876QJ2O", "allow_squash_merge": true, "allow_auto_merge": false, "delete_branch_on_merge": true, "allow_merge_commit": true, "subscribers_count": 42, "network_count": 0, "license": { "key": "mit", "name": "MIT License", "url": "https://api.github.com/licenses/mit", "spdx_id": "MIT", "node_id": "MDc6TGljZW5zZW1pdA==", "html_url": "https://github.com/licenses/mit" }, "forks": 1, "open_issues": 1, "watchers": 1 } ] }

Set selected repositories enabled for GitHub Actions in an organization

Works with GitHub Apps

Replaces the list of selected repositories that are enabled for GitHub Actions in an organization. To use this endpoint, the organization permission policy for enabled_repositories must be configured to selected. For more information, see "Set GitHub Actions permissions for an organization."

You must authenticate using an access token with the admin:org scope to use this endpoint. GitHub Apps must have the administration organization permission to use this API.

Parameters for "Set selected repositories enabled for GitHub Actions in an organization"

标头
名称, 类型, 说明
accept string

Setting to application/vnd.github+json is recommended.

路径参数
名称, 类型, 说明
org string 必须

The organization name. The name is not case sensitive.

正文参数
名称, 类型, 说明
selected_repository_ids array of integers 必须

List of repository IDs to enable for GitHub Actions.

HTTP response status codes for "Set selected repositories enabled for GitHub Actions in an organization"

Status codeDescription
204

No Content

Code samples for "Set selected repositories enabled for GitHub Actions in an organization"

put/orgs/{org}/actions/permissions/repositories
curl -L \ -X PUT \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/orgs/ORG/actions/permissions/repositories \ -d '{"selected_repository_ids":[32,42]}'

Response

Status: 204

Enable a selected repository for GitHub Actions in an organization

Works with GitHub Apps

Adds a repository to the list of selected repositories that are enabled for GitHub Actions in an organization. To use this endpoint, the organization permission policy for enabled_repositories must be must be configured to selected. For more information, see "Set GitHub Actions permissions for an organization."

You must authenticate using an access token with the admin:org scope to use this endpoint. GitHub Apps must have the administration organization permission to use this API.

Parameters for "Enable a selected repository for GitHub Actions in an organization"

标头
名称, 类型, 说明
accept string

Setting to application/vnd.github+json is recommended.

路径参数
名称, 类型, 说明
org string 必须

The organization name. The name is not case sensitive.

repository_id integer 必须

The unique identifier of the repository.

HTTP response status codes for "Enable a selected repository for GitHub Actions in an organization"

Status codeDescription
204

No Content

Code samples for "Enable a selected repository for GitHub Actions in an organization"

put/orgs/{org}/actions/permissions/repositories/{repository_id}
curl -L \ -X PUT \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/orgs/ORG/actions/permissions/repositories/REPOSITORY_ID

Response

Status: 204

Disable a selected repository for GitHub Actions in an organization

Works with GitHub Apps

Removes a repository from the list of selected repositories that are enabled for GitHub Actions in an organization. To use this endpoint, the organization permission policy for enabled_repositories must be configured to selected. For more information, see "Set GitHub Actions permissions for an organization."

You must authenticate using an access token with the admin:org scope to use this endpoint. GitHub Apps must have the administration organization permission to use this API.

Parameters for "Disable a selected repository for GitHub Actions in an organization"

标头
名称, 类型, 说明
accept string

Setting to application/vnd.github+json is recommended.

路径参数
名称, 类型, 说明
org string 必须

The organization name. The name is not case sensitive.

repository_id integer 必须

The unique identifier of the repository.

HTTP response status codes for "Disable a selected repository for GitHub Actions in an organization"

Status codeDescription
204

No Content

Code samples for "Disable a selected repository for GitHub Actions in an organization"

delete/orgs/{org}/actions/permissions/repositories/{repository_id}
curl -L \ -X DELETE \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/orgs/ORG/actions/permissions/repositories/REPOSITORY_ID

Response

Status: 204

Get allowed actions and reusable workflows for an organization

Works with GitHub Apps

Gets the selected actions and reusable workflows that are allowed in an organization. To use this endpoint, the organization permission policy for allowed_actions must be configured to selected. For more information, see "Set GitHub Actions permissions for an organization.""

You must authenticate using an access token with the admin:org scope to use this endpoint. GitHub Apps must have the administration organization permission to use this API.

Parameters for "Get allowed actions and reusable workflows for an organization"

标头
名称, 类型, 说明
accept string

Setting to application/vnd.github+json is recommended.

路径参数
名称, 类型, 说明
org string 必须

The organization name. The name is not case sensitive.

HTTP response status codes for "Get allowed actions and reusable workflows for an organization"

Status codeDescription
200

OK

Code samples for "Get allowed actions and reusable workflows for an organization"

get/orgs/{org}/actions/permissions/selected-actions
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/orgs/ORG/actions/permissions/selected-actions

Response

Status: 200
{ "github_owned_allowed": true, "verified_allowed": false, "patterns_allowed": [ "monalisa/octocat@*", "docker/*" ] }

Set allowed actions and reusable workflows for an organization

Works with GitHub Apps

Sets the actions and reusable workflows that are allowed in an organization. To use this endpoint, the organization permission policy for allowed_actions must be configured to selected. For more information, see "Set GitHub Actions permissions for an organization."

You must authenticate using an access token with the admin:org scope to use this endpoint. GitHub Apps must have the administration organization permission to use this API.

Parameters for "Set allowed actions and reusable workflows for an organization"

标头
名称, 类型, 说明
accept string

Setting to application/vnd.github+json is recommended.

路径参数
名称, 类型, 说明
org string 必须

The organization name. The name is not case sensitive.

正文参数
名称, 类型, 说明
github_owned_allowed boolean

Whether GitHub-owned actions are allowed. For example, this includes the actions in the actions organization.

verified_allowed boolean

Whether actions from GitHub Marketplace verified creators are allowed. Set to true to allow all actions by GitHub Marketplace verified creators.

patterns_allowed array of strings

Specifies a list of string-matching patterns to allow specific action(s) and reusable workflow(s). Wildcards, tags, and SHAs are allowed. For example, monalisa/octocat@*, monalisa/octocat@v2, monalisa/*.

Note: The patterns_allowed setting only applies to public repositories.

HTTP response status codes for "Set allowed actions and reusable workflows for an organization"

Status codeDescription
204

No Content

Code samples for "Set allowed actions and reusable workflows for an organization"

put/orgs/{org}/actions/permissions/selected-actions
curl -L \ -X PUT \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/orgs/ORG/actions/permissions/selected-actions \ -d '{"github_owned_allowed":true,"verified_allowed":false,"patterns_allowed":["monalisa/octocat@*","docker/*"]}'

Response

Status: 204

Get default workflow permissions for an organization

Works with GitHub Apps

Gets the default workflow permissions granted to the GITHUB_TOKEN when running workflows in an organization, as well as whether GitHub Actions can submit approving pull request reviews. For more information, see "Setting the permissions of the GITHUB_TOKEN for your organization."

You must authenticate using an access token with the admin:org scope to use this endpoint. GitHub Apps must have the administration organization permission to use this API.

Parameters for "Get default workflow permissions for an organization"

标头
名称, 类型, 说明
accept string

Setting to application/vnd.github+json is recommended.

路径参数
名称, 类型, 说明
org string 必须

The organization name. The name is not case sensitive.

HTTP response status codes for "Get default workflow permissions for an organization"

Status codeDescription
200

OK

Code samples for "Get default workflow permissions for an organization"

get/orgs/{org}/actions/permissions/workflow
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/orgs/ORG/actions/permissions/workflow

Give read-only permission, and allow approving PRs.

Status: 200
{ "default_workflow_permissions": "read", "can_approve_pull_request_reviews": true }

Set default workflow permissions for an organization

Works with GitHub Apps

Sets the default workflow permissions granted to the GITHUB_TOKEN when running workflows in an organization, and sets if GitHub Actions can submit approving pull request reviews. For more information, see "Setting the permissions of the GITHUB_TOKEN for your organization."

You must authenticate using an access token with the admin:org scope to use this endpoint. GitHub Apps must have the administration organization permission to use this API.

Parameters for "Set default workflow permissions for an organization"

标头
名称, 类型, 说明
accept string

Setting to application/vnd.github+json is recommended.

路径参数
名称, 类型, 说明
org string 必须

The organization name. The name is not case sensitive.

正文参数
名称, 类型, 说明
default_workflow_permissions string

The default workflow permissions granted to the GITHUB_TOKEN when running workflows.

可以是以下选项之一: read, write

can_approve_pull_request_reviews boolean

Whether GitHub Actions can approve pull requests. Enabling this can be a security risk.

HTTP response status codes for "Set default workflow permissions for an organization"

Status codeDescription
204

Success response

Code samples for "Set default workflow permissions for an organization"

put/orgs/{org}/actions/permissions/workflow
curl -L \ -X PUT \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/orgs/ORG/actions/permissions/workflow \ -d '{"default_workflow_permissions":"read","can_approve_pull_request_reviews":true}'

Success response

Status: 204

Get GitHub Actions permissions for a repository

Works with GitHub Apps

Gets the GitHub Actions permissions policy for a repository, including whether GitHub Actions is enabled and the actions and reusable workflows allowed to run in the repository.

You must authenticate using an access token with the repo scope to use this endpoint. GitHub Apps must have the administration repository permission to use this API.

Parameters for "Get GitHub Actions permissions for a repository"

标头
名称, 类型, 说明
accept string

Setting to application/vnd.github+json is recommended.

路径参数
名称, 类型, 说明
owner string 必须

The account owner of the repository. The name is not case sensitive.

repo string 必须

The name of the repository without the .git extension. The name is not case sensitive.

HTTP response status codes for "Get GitHub Actions permissions for a repository"

Status codeDescription
200

OK

Code samples for "Get GitHub Actions permissions for a repository"

get/repos/{owner}/{repo}/actions/permissions
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/repos/OWNER/REPO/actions/permissions

Response

Status: 200
{ "enabled": true, "allowed_actions": "selected", "selected_actions_url": "https://api.github.com/repositories/42/actions/permissions/selected-actions" }

Set GitHub Actions permissions for a repository

Works with GitHub Apps

Sets the GitHub Actions permissions policy for enabling GitHub Actions and allowed actions and reusable workflows in the repository.

You must authenticate using an access token with the repo scope to use this endpoint. GitHub Apps must have the administration repository permission to use this API.

Parameters for "Set GitHub Actions permissions for a repository"

标头
名称, 类型, 说明
accept string

Setting to application/vnd.github+json is recommended.

路径参数
名称, 类型, 说明
owner string 必须

The account owner of the repository. The name is not case sensitive.

repo string 必须

The name of the repository without the .git extension. The name is not case sensitive.

正文参数
名称, 类型, 说明
enabled boolean 必须

Whether GitHub Actions is enabled on the repository.

allowed_actions string

The permissions policy that controls the actions and reusable workflows that are allowed to run.

可以是以下选项之一: all, local_only, selected

HTTP response status codes for "Set GitHub Actions permissions for a repository"

Status codeDescription
204

No Content

Code samples for "Set GitHub Actions permissions for a repository"

put/repos/{owner}/{repo}/actions/permissions
curl -L \ -X PUT \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/repos/OWNER/REPO/actions/permissions \ -d '{"enabled":true,"allowed_actions":"selected"}'

Response

Status: 204

Get the level of access for workflows outside of the repository

Works with GitHub Apps

Gets the level of access that workflows outside of the repository have to actions and reusable workflows in the repository. This endpoint only applies to private repositories. For more information, see "Allowing access to components in a private repository."

You must authenticate using an access token with the repo scope to use this endpoint. GitHub Apps must have the repository administration permission to use this endpoint.

Parameters for "Get the level of access for workflows outside of the repository"

标头
名称, 类型, 说明
accept string

Setting to application/vnd.github+json is recommended.

路径参数
名称, 类型, 说明
owner string 必须

The account owner of the repository. The name is not case sensitive.

repo string 必须

The name of the repository without the .git extension. The name is not case sensitive.

HTTP response status codes for "Get the level of access for workflows outside of the repository"

Status codeDescription
200

OK

Code samples for "Get the level of access for workflows outside of the repository"

get/repos/{owner}/{repo}/actions/permissions/access
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/repos/OWNER/REPO/actions/permissions/access

Response

Status: 200
{ "access_level": "organization" }

Set the level of access for workflows outside of the repository

Works with GitHub Apps

Sets the level of access that workflows outside of the repository have to actions and reusable workflows in the repository. This endpoint only applies to private repositories. For more information, see "Allowing access to components in a private repository".

You must authenticate using an access token with the repo scope to use this endpoint. GitHub Apps must have the repository administration permission to use this endpoint.

Parameters for "Set the level of access for workflows outside of the repository"

标头
名称, 类型, 说明
accept string

Setting to application/vnd.github+json is recommended.

路径参数
名称, 类型, 说明
owner string 必须

The account owner of the repository. The name is not case sensitive.

repo string 必须

The name of the repository without the .git extension. The name is not case sensitive.

正文参数
名称, 类型, 说明
access_level string 必须

Defines the level of access that workflows outside of the repository have to actions and reusable workflows within the repository.

none means the access is only possible from workflows in this repository. user level access allows sharing across user owned private repos only. organization level access allows sharing across the organization.

可以是以下选项之一: none, user, organization

HTTP response status codes for "Set the level of access for workflows outside of the repository"

Status codeDescription
204

No Content

Code samples for "Set the level of access for workflows outside of the repository"

put/repos/{owner}/{repo}/actions/permissions/access
curl -L \ -X PUT \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/repos/OWNER/REPO/actions/permissions/access \ -d '{"access_level":"organization"}'

Response

Status: 204

Get allowed actions and reusable workflows for a repository

Works with GitHub Apps

Gets the settings for selected actions and reusable workflows that are allowed in a repository. To use this endpoint, the repository policy for allowed_actions must be configured to selected. For more information, see "Set GitHub Actions permissions for a repository."

You must authenticate using an access token with the repo scope to use this endpoint. GitHub Apps must have the administration repository permission to use this API.

Parameters for "Get allowed actions and reusable workflows for a repository"

标头
名称, 类型, 说明
accept string

Setting to application/vnd.github+json is recommended.

路径参数
名称, 类型, 说明
owner string 必须

The account owner of the repository. The name is not case sensitive.

repo string 必须

The name of the repository without the .git extension. The name is not case sensitive.

HTTP response status codes for "Get allowed actions and reusable workflows for a repository"

Status codeDescription
200

OK

Code samples for "Get allowed actions and reusable workflows for a repository"

get/repos/{owner}/{repo}/actions/permissions/selected-actions
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/repos/OWNER/REPO/actions/permissions/selected-actions

Response

Status: 200
{ "github_owned_allowed": true, "verified_allowed": false, "patterns_allowed": [ "monalisa/octocat@*", "docker/*" ] }

Set allowed actions and reusable workflows for a repository

Works with GitHub Apps

Sets the actions and reusable workflows that are allowed in a repository. To use this endpoint, the repository permission policy for allowed_actions must be configured to selected. For more information, see "Set GitHub Actions permissions for a repository."

You must authenticate using an access token with the repo scope to use this endpoint. GitHub Apps must have the administration repository permission to use this API.

Parameters for "Set allowed actions and reusable workflows for a repository"

标头
名称, 类型, 说明
accept string

Setting to application/vnd.github+json is recommended.

路径参数
名称, 类型, 说明
owner string 必须

The account owner of the repository. The name is not case sensitive.

repo string 必须

The name of the repository without the .git extension. The name is not case sensitive.

正文参数
名称, 类型, 说明
github_owned_allowed boolean

Whether GitHub-owned actions are allowed. For example, this includes the actions in the actions organization.

verified_allowed boolean

Whether actions from GitHub Marketplace verified creators are allowed. Set to true to allow all actions by GitHub Marketplace verified creators.

patterns_allowed array of strings

Specifies a list of string-matching patterns to allow specific action(s) and reusable workflow(s). Wildcards, tags, and SHAs are allowed. For example, monalisa/octocat@*, monalisa/octocat@v2, monalisa/*.

Note: The patterns_allowed setting only applies to public repositories.

HTTP response status codes for "Set allowed actions and reusable workflows for a repository"

Status codeDescription
204

No Content

Code samples for "Set allowed actions and reusable workflows for a repository"

put/repos/{owner}/{repo}/actions/permissions/selected-actions
curl -L \ -X PUT \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/repos/OWNER/REPO/actions/permissions/selected-actions \ -d '{"github_owned_allowed":true,"verified_allowed":false,"patterns_allowed":["monalisa/octocat@*","docker/*"]}'

Response

Status: 204

Get default workflow permissions for a repository

Works with GitHub Apps

Gets the default workflow permissions granted to the GITHUB_TOKEN when running workflows in a repository, as well as if GitHub Actions can submit approving pull request reviews. For more information, see "Setting the permissions of the GITHUB_TOKEN for your repository."

You must authenticate using an access token with the repo scope to use this endpoint. GitHub Apps must have the repository administration permission to use this API.

Parameters for "Get default workflow permissions for a repository"

标头
名称, 类型, 说明
accept string

Setting to application/vnd.github+json is recommended.

路径参数
名称, 类型, 说明
owner string 必须

The account owner of the repository. The name is not case sensitive.

repo string 必须

The name of the repository without the .git extension. The name is not case sensitive.

HTTP response status codes for "Get default workflow permissions for a repository"

Status codeDescription
200

OK

Code samples for "Get default workflow permissions for a repository"

get/repos/{owner}/{repo}/actions/permissions/workflow
curl -L \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/repos/OWNER/REPO/actions/permissions/workflow

Give read-only permission, and allow approving PRs.

Status: 200
{ "default_workflow_permissions": "read", "can_approve_pull_request_reviews": true }

Set default workflow permissions for a repository

Works with GitHub Apps

Sets the default workflow permissions granted to the GITHUB_TOKEN when running workflows in a repository, and sets if GitHub Actions can submit approving pull request reviews. For more information, see "Setting the permissions of the GITHUB_TOKEN for your repository."

You must authenticate using an access token with the repo scope to use this endpoint. GitHub Apps must have the repository administration permission to use this API.

Parameters for "Set default workflow permissions for a repository"

标头
名称, 类型, 说明
accept string

Setting to application/vnd.github+json is recommended.

路径参数
名称, 类型, 说明
owner string 必须

The account owner of the repository. The name is not case sensitive.

repo string 必须

The name of the repository without the .git extension. The name is not case sensitive.

正文参数
名称, 类型, 说明
default_workflow_permissions string

The default workflow permissions granted to the GITHUB_TOKEN when running workflows.

可以是以下选项之一: read, write

can_approve_pull_request_reviews boolean

Whether GitHub Actions can approve pull requests. Enabling this can be a security risk.

HTTP response status codes for "Set default workflow permissions for a repository"

Status codeDescription
204

Success response

409

Conflict response when changing a setting is prevented by the owning organization

Code samples for "Set default workflow permissions for a repository"

put/repos/{owner}/{repo}/actions/permissions/workflow
curl -L \ -X PUT \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Bearer <YOUR-TOKEN>" \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/repos/OWNER/REPO/actions/permissions/workflow \ -d '{"default_workflow_permissions":"read","can_approve_pull_request_reviews":true}'

Success response

Status: 204