Group-level Variables API
Introduced in GitLab 9.5
List group variables
Get list of a group’s variables.
GET /groups/:id/variables
Attribute | Type | required | Description |
---|---|---|---|
id | integer/string | yes | The ID of a group or URL-encoded path of the group owned by the authenticated user |
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/groups/1/variables"
[
{
"key": "TEST_VARIABLE_1",
"variable_type": "env_var",
"value": "TEST_1"
},
{
"key": "TEST_VARIABLE_2",
"variable_type": "env_var",
"value": "TEST_2"
}
]
Show variable details
Get the details of a group’s specific variable.
GET /groups/:id/variables/:key
Attribute | Type | required | Description |
---|---|---|---|
id | integer/string | yes | The ID of a group or URL-encoded path of the group owned by the authenticated user |
key | string | yes | The key of a variable |
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/groups/1/variables/TEST_VARIABLE_1"
{
"key": "TEST_VARIABLE_1",
"variable_type": "env_var",
"value": "TEST_1"
}
Create variable
Create a new variable.
POST /groups/:id/variables
Attribute | Type | required | Description |
---|---|---|---|
id | integer/string | yes | The ID of a group or URL-encoded path of the group owned by the authenticated user |
key | string | yes | The key of a variable; must have no more than 255 characters; only A-Z , a-z , 0-9 , and _ are allowed |
value | string | yes | The value of a variable |
variable_type | string | no | The type of a variable. Available types are: env_var (default) and file |
protected | boolean | no | Whether the variable is protected |
curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/groups/1/variables" --form "key=NEW_VARIABLE" --form "value=new value"
{
"key": "NEW_VARIABLE",
"value": "new value",
"variable_type": "env_var",
"protected": false
}
Update variable
Update a group’s variable.
PUT /groups/:id/variables/:key
Attribute | Type | required | Description |
---|---|---|---|
id | integer/string | yes | The ID of a group or URL-encoded path of the group owned by the authenticated user |
key | string | yes | The key of a variable |
value | string | yes | The value of a variable |
variable_type | string | no | The type of a variable. Available types are: env_var (default) and file |
protected | boolean | no | Whether the variable is protected |
curl --request PUT --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/groups/1/variables/NEW_VARIABLE" --form "value=updated value"
{
"key": "NEW_VARIABLE",
"value": "updated value",
"variable_type": "env_var",
"protected": true
}
Remove variable
Remove a group’s variable.
DELETE /groups/:id/variables/:key
Attribute | Type | required | Description |
---|---|---|---|
id | integer/string | yes | The ID of a group or URL-encoded path of the group owned by the authenticated user |
key | string | yes | The key of a variable |
curl --request DELETE --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/groups/1/variables/VARIABLE_1"
Help and feedback
If there's something you don't like about this feature
To propose functionality that GitLab does not yet offer
To further help GitLab in shaping new features
If you didn't find what you were looking for
If you want help with something very specific to your use case, and can use some community support
POST ON GITLAB FORUM
If you have problems setting up or using this feature (depending on your GitLab subscription)
REQUEST SUPPORT
To view all GitLab tiers and features or to upgrade
If you want to try all features available in GitLab.com
If you want to try all features available in GitLab self-managed
If you spot an error or a need for improvement and would like to fix it yourself in a merge request
EDIT THIS PAGE
If you would like to suggest an improvement to this doc
If you want to give quick and simple feedback on this doc