GitHub Actions 权限
使用 REST API 与 GitHub Actions 的权限进行交互。
关于 GitHub Actions 的权限
可以使用 REST API 为允许运行 GitHub Actions 的企业、组织和存储库以及允许运行的操作设置权限。 有关详细信息,请参阅“使用限制、计费和管理”。
Get GitHub Actions permissions for an enterprise
Gets the GitHub Actions permissions policy for organizations and allowed actions in an enterprise.
You must authenticate using an access token with the admin:enterprise
scope to use this endpoint.
参数
标头 |
---|
名称, 类型, 说明 |
accept stringSetting to |
路径参数 |
名称, 类型, 说明 |
enterprise string必须The slug version of the enterprise name. You can also substitute this value with the enterprise id. |
HTTP 响应状态代码
状态代码 | 说明 |
---|---|
200 | OK |
代码示例
curl \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/enterprises/ENTERPRISE/actions/permissions
Response
Status: 200
{
"enabled_organizations": "all",
"allowed_actions": "selected",
"selected_actions_url": "https://api.github.com/enterprises/2/actions/permissions/selected-actions"
}
Set GitHub Actions permissions for an enterprise
Sets the GitHub Actions permissions policy for organizations and allowed actions in an enterprise.
You must authenticate using an access token with the admin:enterprise
scope to use this endpoint.
参数
标头 |
---|
名称, 类型, 说明 |
accept stringSetting to |
路径参数 |
名称, 类型, 说明 |
enterprise string必须The slug version of the enterprise name. You can also substitute this value with the enterprise id. |
正文参数 |
名称, 类型, 说明 |
enabled_organizations string必须The policy that controls the organizations in the enterprise that are allowed to run GitHub Actions. 可以是以下选项之一: |
allowed_actions stringThe permissions policy that controls the actions that are allowed to run. 可以是以下选项之一: |
HTTP 响应状态代码
状态代码 | 说明 |
---|---|
204 | No Content |
代码示例
curl \
-X PUT \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/enterprises/ENTERPRISE/actions/permissions \
-d '{"enabled_organizations":"all","allowed_actions":"selected"}'
Response
Status: 204
List selected organizations enabled for GitHub Actions in an enterprise
Lists the organizations that are selected to have GitHub Actions enabled in an enterprise. To use this endpoint, the enterprise permission policy for enabled_organizations
must be configured to selected
. For more information, see "Set GitHub Actions permissions for an enterprise."
You must authenticate using an access token with the admin:enterprise
scope to use this endpoint.
参数
标头 |
---|
名称, 类型, 说明 |
accept stringSetting to |
路径参数 |
名称, 类型, 说明 |
enterprise string必须The slug version of the enterprise name. You can also substitute this value with the enterprise id. |
查询参数 |
名称, 类型, 说明 |
per_page integerThe number of results per page (max 100). 默认: |
page integerPage number of the results to fetch. 默认: |
HTTP 响应状态代码
状态代码 | 说明 |
---|---|
200 | OK |
代码示例
curl \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/enterprises/ENTERPRISE/actions/permissions/organizations
Response
Status: 200
{
"total_count": 1,
"organizations": [
{
"login": "octocat",
"id": 161335,
"node_id": "MDEwOlJlcG9zaXRvcnkxMjk2MjY5",
"url": "https://api.github.com/orgs/octo-org",
"repos_url": "https://api.github.com/orgs/octo-org/repos",
"events_url": "https://api.github.com/orgs/octo-org/events",
"hooks_url": "https://api.github.com/orgs/octo-org/hooks",
"issues_url": "https://api.github.com/orgs/octo-org/issues",
"members_url": "https://api.github.com/orgs/octo-org/members{/member}",
"public_members_url": "https://api.github.com/orgs/octo-org/public_members{/member}",
"avatar_url": "https://github.com/images/error/octocat_happy.gif",
"description": "A great organization"
}
]
}
Set selected organizations enabled for GitHub Actions in an enterprise
Replaces the list of selected organizations that are enabled for GitHub Actions in an enterprise. To use this endpoint, the enterprise permission policy for enabled_organizations
must be configured to selected
. For more information, see "Set GitHub Actions permissions for an enterprise."
You must authenticate using an access token with the admin:enterprise
scope to use this endpoint.
参数
标头 |
---|
名称, 类型, 说明 |
accept stringSetting to |
路径参数 |
名称, 类型, 说明 |
enterprise string必须The slug version of the enterprise name. You can also substitute this value with the enterprise id. |
正文参数 |
名称, 类型, 说明 |
selected_organization_ids array of integers必须List of organization IDs to enable for GitHub Actions. |
HTTP 响应状态代码
状态代码 | 说明 |
---|---|
204 | No Content |
代码示例
curl \
-X PUT \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/enterprises/ENTERPRISE/actions/permissions/organizations \
-d '{"selected_organization_ids":[32,91]}'
Response
Status: 204
Enable a selected organization for GitHub Actions in an enterprise
Adds an organization to the list of selected organizations that are enabled for GitHub Actions in an enterprise. To use this endpoint, the enterprise permission policy for enabled_organizations
must be configured to selected
. For more information, see "Set GitHub Actions permissions for an enterprise."
You must authenticate using an access token with the admin:enterprise
scope to use this endpoint.
参数
标头 |
---|
名称, 类型, 说明 |
accept stringSetting to |
路径参数 |
名称, 类型, 说明 |
enterprise string必须The slug version of the enterprise name. You can also substitute this value with the enterprise id. |
org_id integer必须The unique identifier of the organization. |
HTTP 响应状态代码
状态代码 | 说明 |
---|---|
204 | No Content |
代码示例
curl \
-X PUT \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/enterprises/ENTERPRISE/actions/permissions/organizations/ORG_ID
Response
Status: 204
Disable a selected organization for GitHub Actions in an enterprise
Removes an organization from the list of selected organizations that are enabled for GitHub Actions in an enterprise. To use this endpoint, the enterprise permission policy for enabled_organizations
must be configured to selected
. For more information, see "Set GitHub Actions permissions for an enterprise."
You must authenticate using an access token with the admin:enterprise
scope to use this endpoint.
参数
标头 |
---|
名称, 类型, 说明 |
accept stringSetting to |
路径参数 |
名称, 类型, 说明 |
enterprise string必须The slug version of the enterprise name. You can also substitute this value with the enterprise id. |
org_id integer必须The unique identifier of the organization. |
HTTP 响应状态代码
状态代码 | 说明 |
---|---|
204 | No Content |
代码示例
curl \
-X DELETE \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/enterprises/ENTERPRISE/actions/permissions/organizations/ORG_ID
Response
Status: 204
Get allowed actions for an enterprise
Gets the selected actions that are allowed in an enterprise. To use this endpoint, the enterprise permission policy for allowed_actions
must be configured to selected
. For more information, see "Set GitHub Actions permissions for an enterprise."
You must authenticate using an access token with the admin:enterprise
scope to use this endpoint.
参数
标头 |
---|
名称, 类型, 说明 |
accept stringSetting to |
路径参数 |
名称, 类型, 说明 |
enterprise string必须The slug version of the enterprise name. You can also substitute this value with the enterprise id. |
HTTP 响应状态代码
状态代码 | 说明 |
---|---|
200 | OK |
代码示例
curl \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/enterprises/ENTERPRISE/actions/permissions/selected-actions
Response
Status: 200
{
"github_owned_allowed": true,
"verified_allowed": false,
"patterns_allowed": [
"monalisa/octocat@*",
"docker/*"
]
}
Set allowed actions for an enterprise
Sets the actions that are allowed in an enterprise. To use this endpoint, the enterprise permission policy for allowed_actions
must be configured to selected
. For more information, see "Set GitHub Actions permissions for an enterprise."
You must authenticate using an access token with the admin:enterprise
scope to use this endpoint.
参数
标头 |
---|
名称, 类型, 说明 |
accept stringSetting to |
路径参数 |
名称, 类型, 说明 |
enterprise string必须The slug version of the enterprise name. You can also substitute this value with the enterprise id. |
正文参数 |
名称, 类型, 说明 |
github_owned_allowed boolean必须Whether GitHub-owned actions are allowed. For example, this includes the actions in the |
patterns_allowed array of strings必须Specifies a list of string-matching patterns to allow specific action(s). Wildcards, tags, and SHAs are allowed. For example, |
HTTP 响应状态代码
状态代码 | 说明 |
---|---|
204 | No Content |
代码示例
curl \
-X PUT \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/enterprises/ENTERPRISE/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 enterprise
Gets the default workflow permissions granted to the GITHUB_TOKEN
when running workflows in an enterprise,
as well as whether GitHub Actions can submit approving pull request reviews. For more information, see
"Enforcing a policy for workflow permissions in your enterprise."
You must authenticate using an access token with the admin:enterprise
scope to use this endpoint.
GitHub Apps must have the enterprise_administration:write
permission to use this endpoint.
参数
标头 |
---|
名称, 类型, 说明 |
accept stringSetting to |
路径参数 |
名称, 类型, 说明 |
enterprise string必须The slug version of the enterprise name. You can also substitute this value with the enterprise id. |
HTTP 响应状态代码
状态代码 | 说明 |
---|---|
200 | Success response |
代码示例
curl \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/enterprises/ENTERPRISE/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 enterprise
Sets the default workflow permissions granted to the GITHUB_TOKEN
when running workflows in an enterprise, and sets
whether GitHub Actions can submit approving pull request reviews. For more information, see
"Enforcing a policy for workflow permissions in your enterprise."
You must authenticate using an access token with the admin:enterprise
scope to use this endpoint.
GitHub Apps must have the enterprise_administration:write
permission to use this endpoint.
参数
标头 |
---|
名称, 类型, 说明 |
accept stringSetting to |
路径参数 |
名称, 类型, 说明 |
enterprise string必须The slug version of the enterprise name. You can also substitute this value with the enterprise id. |
正文参数 |
名称, 类型, 说明 |
default_workflow_permissions stringThe default workflow permissions granted to the GITHUB_TOKEN when running workflows. 可以是以下选项之一: |
can_approve_pull_request_reviews booleanWhether GitHub Actions can approve pull requests. Enabling this can be a security risk. |
HTTP 响应状态代码
状态代码 | 说明 |
---|---|
204 | Success response |
代码示例
curl \
-X PUT \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/enterprises/ENTERPRISE/actions/permissions/workflow \
-d '{"default_workflow_permissions":"read","can_approve_pull_request_reviews":true}'
Success response
Status: 204
Get GitHub Actions permissions for an organization
Gets the GitHub Actions permissions policy for repositories and allowed actions 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.
参数
标头 |
---|
名称, 类型, 说明 |
accept stringSetting to |
路径参数 |
名称, 类型, 说明 |
org string必须The organization name. The name is not case sensitive. |
HTTP 响应状态代码
状态代码 | 说明 |
---|---|
200 | OK |
代码示例
curl \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/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
Sets the GitHub Actions permissions policy for repositories and allowed actions in an organization.
If the organization belongs to an enterprise that has set restrictive permissions at the enterprise level, such as allowed_actions
to selected
actions, then you cannot override them for the 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.
参数
标头 |
---|
名称, 类型, 说明 |
accept stringSetting to |
路径参数 |
名称, 类型, 说明 |
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. 可以是以下选项之一: |
allowed_actions stringThe permissions policy that controls the actions that are allowed to run. 可以是以下选项之一: |
HTTP 响应状态代码
状态代码 | 说明 |
---|---|
204 | No Content |
代码示例
curl \
-X PUT \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/orgs/ORG/actions/permissions \
-d '{"enabled_repositories":"all","allowed_actions":"selected"}'
Response
Status: 204
List selected repositories enabled for GitHub Actions in an organization
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.
参数
标头 |
---|
名称, 类型, 说明 |
accept stringSetting to |
路径参数 |
名称, 类型, 说明 |
org string必须The organization name. The name is not case sensitive. |
查询参数 |
名称, 类型, 说明 |
per_page integerThe number of results per page (max 100). 默认: |
page integerPage number of the results to fetch. 默认: |
HTTP 响应状态代码
状态代码 | 说明 |
---|---|
200 | OK |
代码示例
curl \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/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
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.
参数
标头 |
---|
名称, 类型, 说明 |
accept stringSetting to |
路径参数 |
名称, 类型, 说明 |
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 响应状态代码
状态代码 | 说明 |
---|---|
204 | No Content |
代码示例
curl \
-X PUT \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/orgs/ORG/actions/permissions/repositories \
-d '{"selected_repository_ids":[32,42]}'
Response
Status: 204
Enable a selected repository for GitHub Actions in an organization
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.
参数
标头 |
---|
名称, 类型, 说明 |
accept stringSetting to |
路径参数 |
名称, 类型, 说明 |
org string必须The organization name. The name is not case sensitive. |
repository_id integer必须The unique identifier of the repository. |
HTTP 响应状态代码
状态代码 | 说明 |
---|---|
204 | No Content |
代码示例
curl \
-X PUT \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/orgs/ORG/actions/permissions/repositories/REPOSITORY_ID
Response
Status: 204
Disable a selected repository for GitHub Actions in an organization
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.
参数
标头 |
---|
名称, 类型, 说明 |
accept stringSetting to |
路径参数 |
名称, 类型, 说明 |
org string必须The organization name. The name is not case sensitive. |
repository_id integer必须The unique identifier of the repository. |
HTTP 响应状态代码
状态代码 | 说明 |
---|---|
204 | No Content |
代码示例
curl \
-X DELETE \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/orgs/ORG/actions/permissions/repositories/REPOSITORY_ID
Response
Status: 204
Get allowed actions for an organization
Gets the selected actions 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.
参数
标头 |
---|
名称, 类型, 说明 |
accept stringSetting to |
路径参数 |
名称, 类型, 说明 |
org string必须The organization name. The name is not case sensitive. |
HTTP 响应状态代码
状态代码 | 说明 |
---|---|
200 | OK |
代码示例
curl \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/orgs/ORG/actions/permissions/selected-actions
Response
Status: 200
{
"github_owned_allowed": true,
"verified_allowed": false,
"patterns_allowed": [
"monalisa/octocat@*",
"docker/*"
]
}
Set allowed actions for an organization
Sets the actions 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."
If the organization belongs to an enterprise that has selected
actions set at the enterprise level, then you cannot override any of the enterprise's allowed actions settings.
To use the patterns_allowed
setting for private repositories, the organization must belong to an enterprise. If the organization does not belong to an enterprise, then the patterns_allowed
setting only applies to public repositories in the 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.
参数
标头 |
---|
名称, 类型, 说明 |
accept stringSetting to |
路径参数 |
名称, 类型, 说明 |
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 |
patterns_allowed array of strings必须Specifies a list of string-matching patterns to allow specific action(s). Wildcards, tags, and SHAs are allowed. For example, |
HTTP 响应状态代码
状态代码 | 说明 |
---|---|
204 | No Content |
代码示例
curl \
-X PUT \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/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
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.
参数
标头 |
---|
名称, 类型, 说明 |
accept stringSetting to |
路径参数 |
名称, 类型, 说明 |
org string必须The organization name. The name is not case sensitive. |
HTTP 响应状态代码
状态代码 | 说明 |
---|---|
200 | OK |
代码示例
curl \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/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
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.
参数
标头 |
---|
名称, 类型, 说明 |
accept stringSetting to |
路径参数 |
名称, 类型, 说明 |
org string必须The organization name. The name is not case sensitive. |
正文参数 |
名称, 类型, 说明 |
default_workflow_permissions stringThe default workflow permissions granted to the GITHUB_TOKEN when running workflows. 可以是以下选项之一: |
can_approve_pull_request_reviews booleanWhether GitHub Actions can approve pull requests. Enabling this can be a security risk. |
HTTP 响应状态代码
状态代码 | 说明 |
---|---|
204 | Success response |
409 | Conflict response when changing a setting is prevented by the owning enterprise |
代码示例
curl \
-X PUT \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/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
Gets the GitHub Actions permissions policy for a repository, including whether GitHub Actions is enabled and the actions 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.
参数
标头 |
---|
名称, 类型, 说明 |
accept stringSetting to |
路径参数 |
名称, 类型, 说明 |
owner string必须The account owner of the repository. The name is not case sensitive. |
repo string必须The name of the repository. The name is not case sensitive. |
HTTP 响应状态代码
状态代码 | 说明 |
---|---|
200 | OK |
代码示例
curl \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/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
Sets the GitHub Actions permissions policy for enabling GitHub Actions and allowed actions in the repository.
If the repository belongs to an organization or enterprise that has set restrictive permissions at the organization or enterprise levels, such as allowed_actions
to selected
actions, then you cannot override them for 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.
参数
标头 |
---|
名称, 类型, 说明 |
accept stringSetting to |
路径参数 |
名称, 类型, 说明 |
owner string必须The account owner of the repository. The name is not case sensitive. |
repo string必须The name of the repository. The name is not case sensitive. |
正文参数 |
名称, 类型, 说明 |
enabled boolean必须Whether GitHub Actions is enabled on the repository. |
allowed_actions stringThe permissions policy that controls the actions that are allowed to run. 可以是以下选项之一: |
HTTP 响应状态代码
状态代码 | 说明 |
---|---|
204 | No Content |
代码示例
curl \
-X PUT \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/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
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 internal repositories. For more information, see "Managing GitHub Actions settings for a 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.
参数
标头 |
---|
名称, 类型, 说明 |
accept stringSetting to |
路径参数 |
名称, 类型, 说明 |
owner string必须The account owner of the repository. The name is not case sensitive. |
repo string必须The name of the repository. The name is not case sensitive. |
HTTP 响应状态代码
状态代码 | 说明 |
---|---|
200 | OK |
代码示例
curl \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/repos/OWNER/REPO/actions/permissions/access
Response
Status: 200
{
"access_level": "organization"
}
Set the level of access for workflows outside of the repository
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 internal repositories. For more information, see "Managing GitHub Actions settings for a 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.
参数
标头 |
---|
名称, 类型, 说明 |
accept stringSetting to |
路径参数 |
名称, 类型, 说明 |
owner string必须The account owner of the repository. The name is not case sensitive. |
repo string必须The name of the repository. 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.
可以是以下选项之一: |
HTTP 响应状态代码
状态代码 | 说明 |
---|---|
204 | No Content |
代码示例
curl \
-X PUT \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/repos/OWNER/REPO/actions/permissions/access \
-d '{"access_level":"organization"}'
Response
Status: 204
Get allowed actions for a repository
Gets the settings for selected actions 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.
参数
标头 |
---|
名称, 类型, 说明 |
accept stringSetting to |
路径参数 |
名称, 类型, 说明 |
owner string必须The account owner of the repository. The name is not case sensitive. |
repo string必须The name of the repository. The name is not case sensitive. |
HTTP 响应状态代码
状态代码 | 说明 |
---|---|
200 | OK |
代码示例
curl \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/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 for a repository
Sets the actions 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."
If the repository belongs to an organization or enterprise that has selected
actions set at the organization or enterprise levels, then you cannot override any of the allowed actions settings.
To use the patterns_allowed
setting for private repositories, the repository must belong to an enterprise. If the repository does not belong to an enterprise, then the patterns_allowed
setting only applies to public repositories.
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.
参数
标头 |
---|
名称, 类型, 说明 |
accept stringSetting to |
路径参数 |
名称, 类型, 说明 |
owner string必须The account owner of the repository. The name is not case sensitive. |
repo string必须The name of the repository. The name is not case sensitive. |
正文参数 |
名称, 类型, 说明 |
github_owned_allowed boolean必须Whether GitHub-owned actions are allowed. For example, this includes the actions in the |
patterns_allowed array of strings必须Specifies a list of string-matching patterns to allow specific action(s). Wildcards, tags, and SHAs are allowed. For example, |
HTTP 响应状态代码
状态代码 | 说明 |
---|---|
204 | No Content |
代码示例
curl \
-X PUT \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/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
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.
参数
标头 |
---|
名称, 类型, 说明 |
accept stringSetting to |
路径参数 |
名称, 类型, 说明 |
owner string必须The account owner of the repository. The name is not case sensitive. |
repo string必须The name of the repository. The name is not case sensitive. |
HTTP 响应状态代码
状态代码 | 说明 |
---|---|
200 | OK |
代码示例
curl \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/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
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.
参数
标头 |
---|
名称, 类型, 说明 |
accept stringSetting to |
路径参数 |
名称, 类型, 说明 |
owner string必须The account owner of the repository. The name is not case sensitive. |
repo string必须The name of the repository. The name is not case sensitive. |
正文参数 |
名称, 类型, 说明 |
default_workflow_permissions stringThe default workflow permissions granted to the GITHUB_TOKEN when running workflows. 可以是以下选项之一: |
can_approve_pull_request_reviews booleanWhether GitHub Actions can approve pull requests. Enabling this can be a security risk. |
HTTP 响应状态代码
状态代码 | 说明 |
---|---|
204 | Success response |
409 | Conflict response when changing a setting is prevented by the owning organization or enterprise |
代码示例
curl \
-X PUT \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
http(s)://HOSTNAME/api/v3/repos/OWNER/REPO/actions/permissions/workflow \
-d '{"default_workflow_permissions":"read","can_approve_pull_request_reviews":true}'
Success response
Status: 204