Feature flag user lists API

  • Tier: Free, Premium, Ultimate
  • Offering: GitLab.com, GitLab Self-Managed, GitLab Dedicated
History

API for accessing GitLab feature flag user lists.

Users with at least the Developer role can access the feature flag user lists API.

GET requests return twenty results at a time because the API results are paginated. You can change this value.

List all feature flag user lists for a project

Gets all feature flag user lists for the requested project.

Copy to clipboard
GET /projects/:id/feature_flags_user_lists
AttributeTypeRequiredDescription
idinteger/stringyesThe ID or URL-encoded path of the project.
searchstringnoReturn user lists matching the search criteria.
Copy to clipboard
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/1/feature_flags_user_lists"

Example response:

Copy to clipboard
[
   {
      "name": "user_list",
      "user_xids": "user1,user2",
      "id": 1,
      "iid": 1,
      "project_id": 1,
      "created_at": "2020-02-04T08:13:51.423Z",
      "updated_at": "2020-02-04T08:13:51.423Z"
   },
   {
      "name": "test_users",
      "user_xids": "user3,user4,user5",
      "id": 2,
      "iid": 2,
      "project_id": 1,
      "created_at": "2020-02-04T08:13:10.507Z",
      "updated_at": "2020-02-04T08:13:10.507Z"
   }
]

Create a feature flag user list

Creates a feature flag user list.

Copy to clipboard
POST /projects/:id/feature_flags_user_lists
AttributeTypeRequiredDescription
idinteger/stringyesThe ID or URL-encoded path of the project.
namestringyesThe name of the list.
user_xidsstringyesA comma-separated list of external user IDs.
Copy to clipboard
curl "https://gitlab.example.com/api/v4/projects/1/feature_flags_user_lists" \
     --header "PRIVATE-TOKEN: <your_access_token>" \
     --header "Content-type: application/json" \
     --data @- << EOF
{
    "name": "my_user_list",
    "user_xids": "user1,user2,user3"
}
EOF

Example response:

Copy to clipboard
{
   "name": "my_user_list",
   "user_xids": "user1,user2,user3",
   "id": 1,
   "iid": 1,
   "project_id": 1,
   "created_at": "2020-02-04T08:32:27.288Z",
   "updated_at": "2020-02-04T08:32:27.288Z"
}

Get a feature flag user list

Gets a feature flag user list.

Copy to clipboard
GET /projects/:id/feature_flags_user_lists/:iid
AttributeTypeRequiredDescription
idinteger/stringyesThe ID or URL-encoded path of the project.
iidinteger/stringyesThe internal ID of the project’s feature flag user list.
Copy to clipboard
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/1/feature_flags_user_lists/1"

Example response:

Copy to clipboard
{
   "name": "my_user_list",
   "user_xids": "123,456",
   "id": 1,
   "iid": 1,
   "project_id": 1,
   "created_at": "2020-02-04T08:13:10.507Z",
   "updated_at": "2020-02-04T08:13:10.507Z"
}

Update a feature flag user list

Updates a feature flag user list.

Copy to clipboard
PUT /projects/:id/feature_flags_user_lists/:iid
AttributeTypeRequiredDescription
idinteger/stringyesThe ID or URL-encoded path of the project.
iidinteger/stringyesThe internal ID of the project’s feature flag user list.
namestringnoThe name of the list.
user_xidsstringnoA comma-separated list of external user IDs.
Copy to clipboard
curl "https://gitlab.example.com/api/v4/projects/1/feature_flags_user_lists/1" \
     --header "PRIVATE-TOKEN: <your_access_token>" \
     --header "Content-type: application/json" \
     --request PUT \
     --data @- << EOF
{
    "user_xids": "user2,user3,user4"
}
EOF

Example response:

Copy to clipboard
{
   "name": "my_user_list",
   "user_xids": "user2,user3,user4",
   "id": 1,
   "iid": 1,
   "project_id": 1,
   "created_at": "2020-02-04T08:32:27.288Z",
   "updated_at": "2020-02-05T09:33:17.179Z"
}

Delete feature flag user list

Deletes a feature flag user list.

Copy to clipboard
DELETE /projects/:id/feature_flags_user_lists/:iid
AttributeTypeRequiredDescription
idinteger/stringyesThe ID or URL-encoded path of the project.
iidinteger/stringyesThe internal ID of the project’s feature flag user list
Copy to clipboard
curl --header "PRIVATE-TOKEN: <your_access_token>" --request DELETE "https://gitlab.example.com/api/v4/projects/1/feature_flags_user_lists/1"