Skip to main content
설명서에 자주 업데이트를 게시하며 이 페이지의 번역이 계속 진행 중일 수 있습니다. 최신 정보는 영어 설명서를 참조하세요.
이제 REST API의 버전이 지정됩니다. 자세한 내용은 "API 버전 관리 정보"를 참조하세요.

Protection rules

Use the REST API to create, configure, and delete deployment protection rules.

Get all deployment protection rules for an environment

에서 작동 GitHub Apps

Gets all custom deployment protection rules that are enabled for an environment. Anyone with read access to the repository can use this endpoint. If the repository is private and you want to use a personal access token (classic), you must use an access token with the repo scope. GitHub Apps and fine-grained personal access tokens must have the actions:read permission to use this endpoint. For more information about environments, see "Using environments for deployment."

For more information about the app that is providing this custom deployment rule, see the documentation for the GET /apps/{app_slug} endpoint.

"Get all deployment protection rules for an environment"에 대한 매개 변수

헤더
이름, 형식, Description
accept string

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

경로 매개 변수
이름, 형식, Description
environment_name string 필수

The name of the environment.

repo string 필수

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

owner string 필수

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

"Get all deployment protection rules for an environment"에 대한 HTTP 응답 상태 코드

상태 코드Description
200

List of deployment protection rules

"Get all deployment protection rules for an environment"에 대한 코드 샘플

get/repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules
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/environments/ENVIRONMENT_NAME/deployment_protection_rules

List of deployment protection rules

Status: 200

Create a custom deployment protection rule on an environment

에서 작동 GitHub Apps

Enable a custom deployment protection rule for an environment.

You must authenticate using an access token with the repo scope to use this endpoint. Enabling a custom protection rule requires admin or owner permissions to the repository. GitHub Apps must have the actions:write permission to use this endpoint.

For more information about the app that is providing this custom deployment rule, see the documentation for the GET /apps/{app_slug} endpoint.

"Create a custom deployment protection rule on an environment"에 대한 매개 변수

헤더
이름, 형식, Description
accept string

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

경로 매개 변수
이름, 형식, Description
environment_name string 필수

The name of the environment.

repo string 필수

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

owner string 필수

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

본문 매개 변수
이름, 형식, Description
integration_id integer

The ID of the custom app that will be enabled on the environment.

"Create a custom deployment protection rule on an environment"에 대한 HTTP 응답 상태 코드

상태 코드Description
201

The enabled custom deployment protection rule

"Create a custom deployment protection rule on an environment"에 대한 코드 샘플

post/repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules
curl -L \ -X POST \ -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/environments/ENVIRONMENT_NAME/deployment_protection_rules \ -d '{"integration_id":5}'

The enabled custom deployment protection rule

Status: 201
{ "id": 3, "node_id": "IEH37kRlcGxveW1lbnRTdGF0ddiv", "enabled": true, "app": { "id": 1, "node_id": "GHT58kRlcGxveW1lbnRTdTY!bbcy", "slug": "a-custom-app", "integration_url": "https://api.github.com/apps/a-custom-app" } }

List custom deployment rule integrations available for an environment

에서 작동 GitHub Apps

Gets all custom deployment protection rule integrations that are available for an environment. Anyone with read access to the repository can use this endpoint. If the repository is private and you want to use a personal access token (classic), you must use an access token with the repo scope. GitHub Apps and fine-grained personal access tokens must have the actions:read permission to use this endpoint.

For more information about environments, see "Using environments for deployment."

For more information about the app that is providing this custom deployment rule, see "GET an app".

"List custom deployment rule integrations available for an environment"에 대한 매개 변수

헤더
이름, 형식, Description
accept string

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

경로 매개 변수
이름, 형식, Description
environment_name string 필수

The name of the environment.

repo string 필수

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

owner string 필수

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

쿼리 매개 변수
이름, 형식, Description
page integer

Page number of the results to fetch.

기본값: 1

per_page integer

The number of results per page (max 100).

기본값: 30

"List custom deployment rule integrations available for an environment"에 대한 HTTP 응답 상태 코드

상태 코드Description
200

A list of custom deployment rule integrations available for this environment.

"List custom deployment rule integrations available for an environment"에 대한 코드 샘플

get/repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/apps
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/environments/ENVIRONMENT_NAME/deployment_protection_rules/apps

A list of custom deployment rule integrations available for this environment.

Status: 200
[ { "total_count": 2 }, { "available_custom_deployment_protection_rule_integrations": [ { "id": 1, "node_id": "GHT58kRlcGxveW1lbnRTdTY!bbcy", "slug": "a-custom-app", "integration_url": "https://api.github.com/apps/a-custom-app" }, { "id": 2, "node_id": "UHVE67RlcGxveW1lbnRTdTY!jfeuy", "slug": "another-custom-app", "integration_url": "https://api.github.com/apps/another-custom-app" } ] } ]

Get a custom deployment protection rule

에서 작동 GitHub Apps

Gets an enabled custom deployment protection rule for an environment. Anyone with read access to the repository can use this endpoint. If the repository is private and you want to use a personal access token (classic), you must use an access token with the repo scope. GitHub Apps and fine-grained personal access tokens must have the actions:read permission to use this endpoint. For more information about environments, see "Using environments for deployment."

For more information about the app that is providing this custom deployment rule, see GET /apps/{app_slug}.

"Get a custom deployment protection rule"에 대한 매개 변수

헤더
이름, 형식, Description
accept string

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

경로 매개 변수
이름, 형식, Description
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.

environment_name string 필수

The name of the environment.

protection_rule_id integer 필수

The unique identifier of the protection rule.

"Get a custom deployment protection rule"에 대한 HTTP 응답 상태 코드

상태 코드Description
200

OK

"Get a custom deployment protection rule"에 대한 코드 샘플

get/repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}
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/environments/ENVIRONMENT_NAME/deployment_protection_rules/PROTECTION_RULE_ID

Response

Status: 200
{ "id": 3, "node_id": "IEH37kRlcGxveW1lbnRTdGF0ddiv", "enabled": true, "app": { "id": 1, "node_id": "GHT58kRlcGxveW1lbnRTdTY!bbcy", "slug": "a-custom-app", "integration_url": "https://api.github.com/apps/a-custom-app" } }

Disable a custom protection rule for an environment

에서 작동 GitHub Apps

Disables a custom deployment protection rule for an environment.

You must authenticate using an access token with the repo scope to use this endpoint. Removing a custom protection rule requires admin or owner permissions to the repository. GitHub Apps must have the actions:write permission to use this endpoint. For more information, see "Get an app".

"Disable a custom protection rule for an environment"에 대한 매개 변수

헤더
이름, 형식, Description
accept string

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

경로 매개 변수
이름, 형식, Description
environment_name string 필수

The name of the environment.

repo string 필수

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

owner string 필수

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

protection_rule_id integer 필수

The unique identifier of the protection rule.

"Disable a custom protection rule for an environment"에 대한 HTTP 응답 상태 코드

상태 코드Description
204

No Content

"Disable a custom protection rule for an environment"에 대한 코드 샘플

delete/repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_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/repos/OWNER/REPO/environments/ENVIRONMENT_NAME/deployment_protection_rules/PROTECTION_RULE_ID

Response

Status: 204