Pontos de extremidade da API REST para políticas de branch de implantação
Use a API REST para gerenciar políticas de branch de implantação personalizadas.
Sobre as políticas de branch de implantação
Use a API REST para especificar padrões de nome personalizados aos quais os branches devem corresponder para a implantação em um ambiente. A propriedade deployment_branch_policy.custom_branch_policies do ambiente deve ser definida como true para usar esses pontos de extremidade. Para atualizar o deployment_branch_policy para um ambiente, confira Endpoints da API REST para contextos de implantação.
Para saber mais sobre como restringir as implantações de ambientes a determinadas ramificações, confira Gerenciar ambientes para implantação.
List deployment branch policies
Lists the deployment branch policies for an environment.
Anyone with read access to the repository can use this endpoint.
OAuth app tokens and personal access tokens (classic) need the repo scope to use this endpoint with a private repository.
fine_grained_access
works_with_fine_grained_tokens:
permission_set:
- "Actions" repository permissions (read)
allows_public_read_access
Parâmetros para "List deployment branch policies"
| Nome, Tipo, Descrição |
|---|
accept string Setting to |
| Nome, Tipo, Descrição |
|---|
owner string ObrigatórioThe account owner of the repository. The name is not case sensitive. |
repo string ObrigatórioThe name of the repository without the |
environment_name string ObrigatórioThe name of the environment. The name must be URL encoded. For example, any slashes in the name must be replaced with |
| Nome, Tipo, Descrição |
|---|
per_page integer The number of results per page (max 100). For more information, see "Using pagination in the REST API." Padrão: |
page integer The page number of the results to fetch. For more information, see "Using pagination in the REST API." Padrão: |
http_status_code
| status_code | Descrição |
|---|---|
200 | OK |
code_samples
data_residency_notice
request_example
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2026-03-10" \
https://api.github.com/repos/OWNER/REPO/environments/ENVIRONMENT_NAME/deployment-branch-policiesResponse
Status: 200{
"total_count": 2,
"branch_policies": [
{
"id": 361471,
"node_id": "MDE2OkdhdGVCcmFuY2hQb2xpY3kzNjE0NzE=",
"name": "release/*"
},
{
"id": 361472,
"node_id": "MDE2OkdhdGVCcmFuY2hQb2xpY3kzNjE0NzI=",
"name": "main"
}
]
}Create a deployment branch policy
Creates a deployment branch or tag policy for an environment.
OAuth app tokens and personal access tokens (classic) need the repo scope to use this endpoint.
fine_grained_access
works_with_fine_grained_tokens:
permission_set:
- "Administration" repository permissions (write)
Parâmetros para "Create a deployment branch policy"
| Nome, Tipo, Descrição |
|---|
accept string Setting to |
| Nome, Tipo, Descrição |
|---|
owner string ObrigatórioThe account owner of the repository. The name is not case sensitive. |
repo string ObrigatórioThe name of the repository without the |
environment_name string ObrigatórioThe name of the environment. The name must be URL encoded. For example, any slashes in the name must be replaced with |
| Nome, Tipo, Descrição |
|---|
name string ObrigatórioThe name pattern that branches or tags must match in order to deploy to the environment. Wildcard characters will not match |
type string Whether this rule targets a branch or tag Pode ser um dos: |
http_status_code
| status_code | Descrição |
|---|---|
200 | OK |
303 | Response if the same branch name pattern already exists |
404 | Not Found or |
code_samples
data_residency_notice
request_examples
curl -L \
-X POST \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2026-03-10" \
https://api.github.com/repos/OWNER/REPO/environments/ENVIRONMENT_NAME/deployment-branch-policies \
-d '{"name":"release/*"}'Response
Status: 200{
"id": 364662,
"node_id": "MDE2OkdhdGVCcmFuY2hQb2xpY3kzNjQ2NjI=",
"name": "release/*"
}Get a deployment branch policy
Gets a deployment branch or tag policy for an environment.
Anyone with read access to the repository can use this endpoint.
OAuth app tokens and personal access tokens (classic) need the repo scope to use this endpoint with a private repository.
fine_grained_access
works_with_fine_grained_tokens:
permission_set:
- "Actions" repository permissions (read)
allows_public_read_access
Parâmetros para "Get a deployment branch policy"
| Nome, Tipo, Descrição |
|---|
accept string Setting to |
| Nome, Tipo, Descrição |
|---|
owner string ObrigatórioThe account owner of the repository. The name is not case sensitive. |
repo string ObrigatórioThe name of the repository without the |
environment_name string ObrigatórioThe name of the environment. The name must be URL encoded. For example, any slashes in the name must be replaced with |
branch_policy_id integer ObrigatórioThe unique identifier of the branch policy. |
http_status_code
| status_code | Descrição |
|---|---|
200 | OK |
code_samples
data_residency_notice
request_example
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2026-03-10" \
https://api.github.com/repos/OWNER/REPO/environments/ENVIRONMENT_NAME/deployment-branch-policies/BRANCH_POLICY_IDResponse
Status: 200{
"id": 364662,
"node_id": "MDE2OkdhdGVCcmFuY2hQb2xpY3kzNjQ2NjI=",
"name": "release/*"
}Update a deployment branch policy
Updates a deployment branch or tag policy for an environment.
OAuth app tokens and personal access tokens (classic) need the repo scope to use this endpoint.
fine_grained_access
works_with_fine_grained_tokens:
permission_set:
- "Administration" repository permissions (write)
Parâmetros para "Update a deployment branch policy"
| Nome, Tipo, Descrição |
|---|
accept string Setting to |
| Nome, Tipo, Descrição |
|---|
owner string ObrigatórioThe account owner of the repository. The name is not case sensitive. |
repo string ObrigatórioThe name of the repository without the |
environment_name string ObrigatórioThe name of the environment. The name must be URL encoded. For example, any slashes in the name must be replaced with |
branch_policy_id integer ObrigatórioThe unique identifier of the branch policy. |
| Nome, Tipo, Descrição |
|---|
name string ObrigatórioThe name pattern that branches must match in order to deploy to the environment. Wildcard characters will not match |
http_status_code
| status_code | Descrição |
|---|---|
200 | OK |
code_samples
data_residency_notice
request_example
curl -L \
-X PUT \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2026-03-10" \
https://api.github.com/repos/OWNER/REPO/environments/ENVIRONMENT_NAME/deployment-branch-policies/BRANCH_POLICY_ID \
-d '{"name":"release/*"}'Response
Status: 200{
"id": 364662,
"node_id": "MDE2OkdhdGVCcmFuY2hQb2xpY3kzNjQ2NjI=",
"name": "release/*"
}Delete a deployment branch policy
Deletes a deployment branch or tag policy for an environment.
OAuth app tokens and personal access tokens (classic) need the repo scope to use this endpoint.
fine_grained_access
works_with_fine_grained_tokens:
permission_set:
- "Administration" repository permissions (write)
Parâmetros para "Delete a deployment branch policy"
| Nome, Tipo, Descrição |
|---|
accept string Setting to |
| Nome, Tipo, Descrição |
|---|
owner string ObrigatórioThe account owner of the repository. The name is not case sensitive. |
repo string ObrigatórioThe name of the repository without the |
environment_name string ObrigatórioThe name of the environment. The name must be URL encoded. For example, any slashes in the name must be replaced with |
branch_policy_id integer ObrigatórioThe unique identifier of the branch policy. |
http_status_code
| status_code | Descrição |
|---|---|
204 | No Content |
code_samples
data_residency_notice
request_example
curl -L \
-X DELETE \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer <YOUR-TOKEN>" \
-H "X-GitHub-Api-Version: 2026-03-10" \
https://api.github.com/repos/OWNER/REPO/environments/ENVIRONMENT_NAME/deployment-branch-policies/BRANCH_POLICY_IDResponse
Status: 204