Set project feature permissions via API


I’m writing a script which generates a new project with default settings for a particular group. Most of the things work, but I’m having problems configuring feature permissions via API.

As feature permissions, I mean repository / pipeline /… visibility options:

  • Everyone with access
  • Only project members

I checked API documentation and I can’t seem to find option to set those permissions. When setting this in GUI, browser send a POST request with content:

utf8	✓
_method	patch
authenticity_token	VsVZHWPbiydv8YZhyBQNSUazUAZOdE…zijMU3QwH4izYlB648Ie0nGizeA==
project[visibility_level]	10
project[request_access_enabled]	true
project[project_feature_attributes][issues_access_level]	0
project[project_feature_attributes][repository_access_level]	20
project[project_feature_attributes][merge_requests_access_level]	10
project[project_feature_attributes][builds_access_level]	10
project[container_registry_enabled]	true
project[lfs_enabled]	true
project[project_feature_attributes][wiki_access_level]	0
project[project_feature_attributes][snippets_access_level]	0
commit	Save+changes

Is there an option to set this via API?