Поскольку не хватало времени и ответа не было, я был вынужден использовать обходной путь, поэтому на основании этого ответа я подготовил следующие запросы:
curl http://teamcity:8111/app/rest/buildQueue/project:<projectId>,count:[1-n] \
-X POST -u *** \
-H 'Content-Type: application/json' -d '{
"buildCancelRequest": {
"comment": "Multiple builds will be cancelled.",
"readdIntoQueue": "false"
}
}'
Вам нужно только заменить n на количество построений, которые у вас есть в выбранном проекте, чтобы отменить их все. Это в основном отправка нескольких запросов, что подразумевает остановку всех сборок в очереди.
Однако, если вы хотите остановить уже запущенные сборки, вам нужно достичь другой конечной точки:
curl http://teamcity:8111/app/rest/builds/project:<projectId>,running:true,count:[1-n] \
-X POST -u *** \
-H 'Content-Type: application/json' -d '{
"buildCancelRequest": {
"comment": "Already running builds will be stopped.",
"readdIntoQueue": "false"
}
}'
Если вы знаете, что для одного проекта будет выполняться только одна сборка, вы можете пропустить count:[1-n]
locator, и будет отправлен только один запрос, который остановит текущую сборку в выбранном проекте.