사용자 지정 리포지토리 역할에 대한 REST API 엔드포인트
REST API를 사용하여 사용자 지정 리포지토리 역할과 상호 작용합니다.
Closing down - List custom repository roles in an organization
Warning
Closing down notice: This operation is closing down and will be removed in the future. Use the "List custom repository roles" endpoint instead.
List the custom repository roles available in this organization. For more information on custom repository roles, see "About custom repository roles."
The authenticated user must be administrator of the organization or of a repository of the organization to use this endpoint.
OAuth app tokens and personal access tokens (classic) need the admin:org
or repo
scope to use this endpoint.
"Closing down - List custom repository roles in an organization"에 대한 세분화된 액세스 토큰
이 엔드포인트는 다음 세분화된 토큰 형식에서 작동합니다.:
세분화된 토큰에는 다음 권한 집합 중 하나 이상이 있어야 합니다.:
- "Custom repository roles" organization permissions (read)
- "Administration" organization permissions (read)
"Closing down - List custom repository roles in an organization"에 대한 매개 변수
속성, 형식, 설명 |
---|
accept string Setting to |
속성, 형식, 설명 |
---|
organization_id string RequiredThe unique identifier of the organization. |
"Closing down - List custom repository roles in an organization"에 대한 HTTP 응답 상태 코드
상태 코드 | 설명 |
---|---|
200 | Response - list of custom role names |
"Closing down - List custom repository roles in an organization"에 대한 코드 샘플
요청 예제
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2022-11-28" \
http(s)://HOSTNAME/api/v3/organizations/ORGANIZATION_ID/custom_roles
Response - list of custom role names
Status: 200
{
"id": 8030,
"name": "Security Engineer",
"description": "Able to contribute code and maintain the security pipeline",
"base_role": "maintain",
"permissions": [
"delete_alerts_code_scanning"
],
"organization": {
"login": "github",
"id": 1,
"node_id": "MDEyOk9yZ2FuaXphdGlvbjE=",
"url": "https://HOSTNAME/orgs/github",
"repos_url": "https://HOSTNAME/orgs/github/repos",
"events_url": "https://HOSTNAME/orgs/github/events",
"hooks_url": "https://HOSTNAME/orgs/github/hooks",
"issues_url": "https://HOSTNAME/orgs/github/issues",
"members_url": "https://HOSTNAME/orgs/github/members{/member}",
"public_members_url": "https://HOSTNAME/orgs/github/public_members{/member}",
"avatar_url": "https://github.com/images/error/octocat_happy.gif",
"description": "A great organization"
},
"created_at": "2022-07-04T22:19:11Z",
"updated_at": "2022-07-04T22:20:11Z"
}
List custom repository roles in an organization
List the custom repository roles available in this organization. For more information on custom repository roles, see "About custom repository roles."
The authenticated user must be an administrator of the organization or of a repository of the organization to use this endpoint.
OAuth app tokens and personal access tokens (classic) need the admin:org
or repo
scope to use this endpoint.
"List custom repository roles in an organization"에 대한 세분화된 액세스 토큰
이 엔드포인트는 다음 세분화된 토큰 형식에서 작동합니다.:
세분화된 토큰에는 다음 권한 집합 중 하나 이상이 있어야 합니다.:
- "Custom repository roles" organization permissions (read)
- "Administration" organization permissions (read)
"List custom repository roles in an organization"에 대한 매개 변수
속성, 형식, 설명 |
---|
accept string Setting to |
속성, 형식, 설명 |
---|
org string RequiredThe organization name. The name is not case sensitive. |
"List custom repository roles in an organization"에 대한 HTTP 응답 상태 코드
상태 코드 | 설명 |
---|---|
200 | Response - list of custom role names |
"List custom repository roles in an organization"에 대한 코드 샘플
요청 예제
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2022-11-28" \
http(s)://HOSTNAME/api/v3/orgs/ORG/custom-repository-roles
Response - list of custom role names
Status: 200
{
"total_count": 2,
"custom_roles": [
{
"id": 8030,
"name": "Security Engineer",
"description": "Able to contribute code and maintain the security pipeline",
"base_role": "maintain",
"permissions": [
"delete_alerts_code_scanning"
],
"organization": {
"login": "github",
"id": 9919,
"node_id": "MDEyOk9yZ2FuaXphdGlvbjk5MTk=",
"avatar_url": "https://avatars.githubusercontent.com/u/9919?v=4",
"gravatar_id": "",
"url": "https://HOSTNAME/users/github",
"html_url": "https://github.com/github",
"followers_url": "https://HOSTNAME/users/github/followers",
"following_url": "https://HOSTNAME/users/github/following{/other_user}",
"gists_url": "https://HOSTNAME/users/github/gists{/gist_id}",
"starred_url": "https://HOSTNAME/users/github/starred{/owner}{/repo}",
"subscriptions_url": "https://HOSTNAME/users/github/subscriptions",
"organizations_url": "https://HOSTNAME/users/github/orgs",
"repos_url": "https://HOSTNAME/users/github/repos",
"events_url": "https://HOSTNAME/users/github/events{/privacy}",
"received_events_url": "https://HOSTNAME/users/github/received_events",
"type": "Organization",
"site_admin": false
},
"created_at": "2022-07-04T22:19:11Z",
"updated_at": "2022-07-04T22:20:11Z"
},
{
"id": 8031,
"name": "Community manager",
"description": "Able to handle all the community interactions without being able to contribute code",
"base_role": "read",
"permissions": [
"mark_as_duplicate",
"manage_settings_pages",
"manage_settings_wiki",
"set_social_preview",
"edit_repo_metadata",
"toggle_discussion_comment_minimize"
],
"organization": {
"login": "github",
"id": 9919,
"node_id": "MDEyOk9yZ2FuaXphdGlvbjk5MTk=",
"avatar_url": "https://avatars.githubusercontent.com/u/9919?v=4",
"gravatar_id": "",
"url": "https://HOSTNAME/users/github",
"html_url": "https://github.com/github",
"followers_url": "https://HOSTNAME/users/github/followers",
"following_url": "https://HOSTNAME/users/github/following{/other_user}",
"gists_url": "https://HOSTNAME/users/github/gists{/gist_id}",
"starred_url": "https://HOSTNAME/users/github/starred{/owner}{/repo}",
"subscriptions_url": "https://HOSTNAME/users/github/subscriptions",
"organizations_url": "https://HOSTNAME/users/github/orgs",
"repos_url": "https://HOSTNAME/users/github/repos",
"events_url": "https://HOSTNAME/users/github/events{/privacy}",
"received_events_url": "https://HOSTNAME/users/github/received_events",
"type": "Organization",
"site_admin": false
},
"created_at": "2022-07-05T12:01:11Z",
"updated_at": "2022-07-05T12:20:11Z"
}
]
}
Create a custom repository role
Creates a custom repository role that can be used by all repositories owned by the organization. For more information on custom repository roles, see "About custom repository roles."
The authenticated user must be an administrator for the organization to use this endpoint.
OAuth app tokens and personal access tokens (classic) need the admin:org
scope to use this endpoint.
"Create a custom repository role"에 대한 세분화된 액세스 토큰
이 엔드포인트는 다음 세분화된 토큰 형식에서 작동합니다.:
세분화된 토큰에는 다음 권한 집합이 있어야 합니다.:
- "Custom repository roles" organization permissions (write)
"Create a custom repository role"에 대한 매개 변수
속성, 형식, 설명 |
---|
accept string Setting to |
속성, 형식, 설명 |
---|
org string RequiredThe organization name. The name is not case sensitive. |
속성, 형식, 설명 |
---|
name string RequiredThe name of the custom role. |
description string or null A short description about who this role is for or what permissions it grants. |
base_role string RequiredThe system role from which this role inherits permissions. 다음 중 하나일 수 있습니다.: |
permissions array of strings RequiredA list of additional permissions included in this role. |
"Create a custom repository role"에 대한 HTTP 응답 상태 코드
상태 코드 | 설명 |
---|---|
201 | Created |
404 | Resource not found |
422 | Validation failed, or the endpoint has been spammed. |
"Create a custom repository role"에 대한 코드 샘플
요청 예제
curl -L \
-X POST \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2022-11-28" \
http(s)://HOSTNAME/api/v3/orgs/ORG/custom-repository-roles \
-d '{"name":"Labeler","description":"A role for issue and pull request labelers","base_role":"read","permissions":["add_label"]}'
Response
Status: 201
{
"id": 8030,
"name": "Security Engineer",
"description": "Able to contribute code and maintain the security pipeline",
"base_role": "maintain",
"permissions": [
"delete_alerts_code_scanning"
],
"organization": {
"login": "github",
"id": 1,
"node_id": "MDEyOk9yZ2FuaXphdGlvbjE=",
"url": "https://HOSTNAME/orgs/github",
"repos_url": "https://HOSTNAME/orgs/github/repos",
"events_url": "https://HOSTNAME/orgs/github/events",
"hooks_url": "https://HOSTNAME/orgs/github/hooks",
"issues_url": "https://HOSTNAME/orgs/github/issues",
"members_url": "https://HOSTNAME/orgs/github/members{/member}",
"public_members_url": "https://HOSTNAME/orgs/github/public_members{/member}",
"avatar_url": "https://github.com/images/error/octocat_happy.gif",
"description": "A great organization"
},
"created_at": "2022-07-04T22:19:11Z",
"updated_at": "2022-07-04T22:20:11Z"
}
Get a custom repository role
Gets a custom repository role that is available to all repositories owned by the organization. For more information on custom repository roles, see "About custom repository roles."
The authenticated user must be an administrator of the organization or of a repository of the organization to use this endpoint.
OAuth app tokens and personal access tokens (classic) need the admin:org
or repo
scope to use this endpoint.
"Get a custom repository role"에 대한 세분화된 액세스 토큰
이 엔드포인트는 다음 세분화된 토큰 형식에서 작동합니다.:
세분화된 토큰에는 다음 권한 집합 중 하나 이상이 있어야 합니다.:
- "Custom repository roles" organization permissions (read)
- "Administration" organization permissions (read)
"Get a custom repository role"에 대한 매개 변수
속성, 형식, 설명 |
---|
accept string Setting to |
속성, 형식, 설명 |
---|
org string RequiredThe organization name. The name is not case sensitive. |
role_id integer RequiredThe unique identifier of the role. |
"Get a custom repository role"에 대한 HTTP 응답 상태 코드
상태 코드 | 설명 |
---|---|
200 | OK |
404 | Resource not found |
"Get a custom repository role"에 대한 코드 샘플
요청 예제
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2022-11-28" \
http(s)://HOSTNAME/api/v3/orgs/ORG/custom-repository-roles/ROLE_ID
Response
Status: 200
{
"id": 8030,
"name": "Security Engineer",
"description": "Able to contribute code and maintain the security pipeline",
"base_role": "maintain",
"permissions": [
"delete_alerts_code_scanning"
],
"organization": {
"login": "github",
"id": 1,
"node_id": "MDEyOk9yZ2FuaXphdGlvbjE=",
"url": "https://HOSTNAME/orgs/github",
"repos_url": "https://HOSTNAME/orgs/github/repos",
"events_url": "https://HOSTNAME/orgs/github/events",
"hooks_url": "https://HOSTNAME/orgs/github/hooks",
"issues_url": "https://HOSTNAME/orgs/github/issues",
"members_url": "https://HOSTNAME/orgs/github/members{/member}",
"public_members_url": "https://HOSTNAME/orgs/github/public_members{/member}",
"avatar_url": "https://github.com/images/error/octocat_happy.gif",
"description": "A great organization"
},
"created_at": "2022-07-04T22:19:11Z",
"updated_at": "2022-07-04T22:20:11Z"
}
Update a custom repository role
Updates a custom repository role that can be used by all repositories owned by the organization. For more information about custom repository roles, see "About custom repository roles."
The authenticated user must be an administrator for the organization to use this endpoint.
OAuth app tokens and personal access tokens (classic) need the admin:org
scope to use this endpoint.
"Update a custom repository role"에 대한 세분화된 액세스 토큰
이 엔드포인트는 다음 세분화된 토큰 형식에서 작동합니다.:
세분화된 토큰에는 다음 권한 집합이 있어야 합니다.:
- "Custom repository roles" organization permissions (write)
"Update a custom repository role"에 대한 매개 변수
속성, 형식, 설명 |
---|
accept string Setting to |
속성, 형식, 설명 |
---|
org string RequiredThe organization name. The name is not case sensitive. |
role_id integer RequiredThe unique identifier of the role. |
속성, 형식, 설명 |
---|
name string The name of the custom role. |
description string or null A short description about who this role is for or what permissions it grants. |
base_role string The system role from which this role inherits permissions. 다음 중 하나일 수 있습니다.: |
permissions array of strings A list of additional permissions included in this role. |
"Update a custom repository role"에 대한 HTTP 응답 상태 코드
상태 코드 | 설명 |
---|---|
200 | OK |
404 | Resource not found |
422 | Validation failed, or the endpoint has been spammed. |
"Update a custom repository role"에 대한 코드 샘플
요청 예제
curl -L \
-X PATCH \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2022-11-28" \
http(s)://HOSTNAME/api/v3/orgs/ORG/custom-repository-roles/ROLE_ID \
-d '{"name":"Labeler","description":"A role for issue and PR labelers","base_role":"read","permissions":["add_label","remove_label"]}'
Response
Status: 200
{
"id": 8030,
"name": "Security Engineer",
"description": "Able to contribute code and maintain the security pipeline",
"base_role": "maintain",
"permissions": [
"delete_alerts_code_scanning"
],
"organization": {
"login": "github",
"id": 1,
"node_id": "MDEyOk9yZ2FuaXphdGlvbjE=",
"url": "https://HOSTNAME/orgs/github",
"repos_url": "https://HOSTNAME/orgs/github/repos",
"events_url": "https://HOSTNAME/orgs/github/events",
"hooks_url": "https://HOSTNAME/orgs/github/hooks",
"issues_url": "https://HOSTNAME/orgs/github/issues",
"members_url": "https://HOSTNAME/orgs/github/members{/member}",
"public_members_url": "https://HOSTNAME/orgs/github/public_members{/member}",
"avatar_url": "https://github.com/images/error/octocat_happy.gif",
"description": "A great organization"
},
"created_at": "2022-07-04T22:19:11Z",
"updated_at": "2022-07-04T22:20:11Z"
}
Delete a custom repository role
Deletes a custom role from an organization. Once the custom role has been deleted, any user, team, or invitation with the deleted custom role will be reassigned the inherited role. For more information about custom repository roles, see "About custom repository roles."
The authenticated user must be an administrator for the organization to use this endpoint.
OAuth app tokens and personal access tokens (classic) need the admin:org
scope to use this endpoint.
"Delete a custom repository role"에 대한 세분화된 액세스 토큰
이 엔드포인트는 다음 세분화된 토큰 형식에서 작동합니다.:
세분화된 토큰에는 다음 권한 집합이 있어야 합니다.:
- "Custom repository roles" organization permissions (write)
"Delete a custom repository role"에 대한 매개 변수
속성, 형식, 설명 |
---|
accept string Setting to |
속성, 형식, 설명 |
---|
org string RequiredThe organization name. The name is not case sensitive. |
role_id integer RequiredThe unique identifier of the role. |
"Delete a custom repository role"에 대한 HTTP 응답 상태 코드
상태 코드 | 설명 |
---|---|
204 | No Content |
"Delete a custom repository role"에 대한 코드 샘플
요청 예제
curl -L \
-X DELETE \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2022-11-28" \
http(s)://HOSTNAME/api/v3/orgs/ORG/custom-repository-roles/ROLE_ID
Response
Status: 204
List repository fine-grained permissions for an organization
Lists the fine-grained permissions that can be used in custom repository roles for an organization. For more information, see "About custom repository roles."
The authenticated user must be an administrator of the organization or of a repository of the organization to use this endpoint.
OAuth app tokens and personal access tokens (classic) need the admin:org
or repo
scope to use this endpoint.
"List repository fine-grained permissions for an organization"에 대한 세분화된 액세스 토큰
이 엔드포인트는 다음 세분화된 토큰 형식에서 작동합니다.:
세분화된 토큰에는 다음 권한 집합 중 하나 이상이 있어야 합니다.:
- "Custom repository roles" organization permissions (read)
- "Administration" organization permissions (read)
"List repository fine-grained permissions for an organization"에 대한 매개 변수
속성, 형식, 설명 |
---|
accept string Setting to |
속성, 형식, 설명 |
---|
org string RequiredThe organization name. The name is not case sensitive. |
"List repository fine-grained permissions for an organization"에 대한 HTTP 응답 상태 코드
상태 코드 | 설명 |
---|---|
200 | OK |
"List repository fine-grained permissions for an organization"에 대한 코드 샘플
요청 예제
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2022-11-28" \
http(s)://HOSTNAME/api/v3/orgs/ORG/repository-fine-grained-permissions
Response