JetBrains / JetBrains/teamcity-cli
`allowUIEditing` returns 403 despite admin access and a token with all permissions granted
- Dominant language
- Go
- Stars
- 123
- Forks
- 16
- Avg merge
- 1d 13h
- Merged PRs (30d)
- 22
Description
### CLI Version
v1.5.0
### TeamCity Server Version
2026.1.1
### Operating System
Windows
### What happened?
I have admin access, I generated the token with all permissions
the command I am running is
`'false' | teamcity api '/app/rest/projects/id:{yourProjectId}/versionedSettings/config/parameters/allowUIEditing' `
-X PUT `
-H 'Content-Type: text/plain' `
--input - `
--include `
--raw`
result:
`HTTP/1.1 403 Forbidden
Cache-Control: no-store
Content-Type: application/xml
Date: Tue, 15 Sep 2026 00:46:43 GMT
Teamcity-Node-Id: MAIN_SERVER
X-Request-Id: xxx
Content-Length: 528
You do not have "Enable / disable versioned settings" permission in project with internal id: project1
jetbrains.buildServer.serverSide.auth.AccessDeniedException: You do not have "Enable / disable versioned settings" permission in project with internal id: project1.
Responding with error, status code: 403 (Forbidden).
Error: missing "Enable / disable versioned settings" permission in project project1
Tip: Generate a new access token with EDIT_VERSIONED_SETTINGS permission in your TeamCity user profile, then run 'teamcity auth login'`
### Expected behavior
Expect successful 200+ response and update to allowUIEditing if value was different, (in my case the value is the same, as I am running a test)
### Steps to reproduce
1. Run `teamcity auth login` and give all permissions
2. run `'false' | teamcity api '/app/rest/projects/id:{yourProjectId}/versionedSettings/config/parameters/allowUIEditing' `
-X PUT `
-H 'Content-Type: text/plain' `
--input - `
--include `
--raw`
### Relevant log output
```shell
```
Contributor guide
Research direction
Start with the `teamcity auth login` permission flow and the `teamcity api` handling of the PUT request to `/app/rest/projects/id:{yourProjectId}/versionedSettings/config/parameters/allowUIEditing`. Trace why a token granted all permissions is rejected for `EDIT_VERSIONED_SETTINGS`, then verify the command returns a successful response for the reproduction shown.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- api, authentication, cli
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 52/100