Skip to content

Update a protected environment for a project

PUT
/api/v4/projects/{id}/protected_environments/{name}

Updates a specified protected environment for a project.

id
required
One of:
string

The ID or URL-encoded path of the project owned by the authenticated user

name
required
string

The name of the environment

Media type application/json
object
required_approval_count

[DEPRECATED] The number of approvals required to deploy to this environment

integer
nullable
deploy_access_levels

An array of users/groups allowed to deploy environment

Array<object>
nullable
object
user_id

The ID of a user with access to the project

integer
nullable
group_id

The ID of a group with access to the project

integer
nullable
group_inheritance_type

Specify whether to take inherited group membership into account. Use 0 for direct group membership or 1 for all inherited groups. Default is 0

integer
nullable
Allowed values: 0 1
id

The ID of the approval rule to update

integer
nullable
_destroy

Deletes the object when true

boolean
nullable
access_level

The access levels allowed to deploy

integer
nullable
Allowed values: 40 30 20 60
approval_rules

Array of access levels allowed to approve, with each described by a hash. One of user_id, group_id or access_level. They take the form of {user_id: integer}, {group_id: integer} or {access_level: integer} respectively. You can also specify the number of required approvals from the specified entity with required_approvals field.

Array<object>
nullable
object
user_id

The ID of a user with access to the project

integer
nullable
group_id

The ID of a group with access to the project

integer
nullable
group_inheritance_type

Specify whether to take inherited group membership into account. Use 0 for direct group membership or 1 for all inherited groups. Default is 0

integer
nullable
Allowed values: 0 1
id

The ID of the approval rule to update

integer
nullable
_destroy

Deletes the object when true

boolean
nullable
access_level

The access levels allowed to approve

integer
nullable
Allowed values: 40 30 20 60
required_approvals

The number of approvals required for this rule

integer
default: 1 nullable

OK

Media type application/json
object
name
string
deploy_access_levels
object
id
integer format: int64
access_level
integer
access_level_description
string
deploy_key_id
integer format: int64
user_id
integer format: int64
group_id
integer format: int64
member_role_id
integer format: int64
member_role_name
string
group_inheritance_type
integer
required_approval_count
integer
approval_rules
object
id
integer format: int64
user_id
integer format: int64
group_id
integer format: int64
access_level
integer
access_level_description
string
required_approvals
integer
group_inheritance_type
integer
Example
{
"name": "production",
"deploy_access_levels": {
"id": 1,
"access_level": 40,
"access_level_description": "Maintainers",
"deploy_key_id": 1,
"user_id": 1,
"group_id": 1,
"member_role_id": 42,
"member_role_name": "Lead Developer",
"group_inheritance_type": 0
},
"required_approval_count": 2
}

Bad Request

Not found

Unprocessable entity