Как программно добавить участника в команду VSTS?

Я хочу добавить пользователя / участника (у которого уже есть учетная запись VSTS) в определенной команде (в рамках конкретного проекта) программно. С портала мы всегда можем сделать то же самое. Но я ищу REST-сервис, который будет делать то же самое для меня.

В приведенной ниже документации от Microsoft мы получаем несколько API, связанных с командой. Но это не обеспечивает ничего, связанного с тем, "как добавить существующего владельца учетной записи VSTS в команду"

https://www.visualstudio.com/en-us/docs/integrate/api/tfs/teams

Заранее спасибо.

1 ответ

Вариант 1: REST API (пока недоступно)

На данный момент нет такого API REST для добавления участников в командный проект. Но есть голос пользователя add rest api для добавления участников в команду, которые предлагают добавить эту функцию для REST API, вы можете проголосовать и продолжить.

Когда REST API станет доступным, вы можете программно использовать REST API для добавления члена в команду.

Вариант 2: API

Вы также можете сослаться на соответствующий код под голосом пользователя в части комментариев (пример добавления участников в команду по умолчанию):

public Task<TeamProject> GetProjectAsync(string projectId) 
{ 
var projectClient = this.Connection.GetClient<ProjectHttpClient>();

return projectClient.GetProject(projectId); 
} 
public async Task GrantProjectAccessAsync(string projectId, string email) 
{ 
var project = await this.GetProjectAsync(projectId);

var client = this.Connection.GetClient<IdentityHttpClient>(); 
var identities = await client.ReadIdentitiesAsync(Microsoft.VisualStudio.Services.Identity.IdentitySearchFilter.MailAddress, email); 
if (!identities.Any() || identities.Count > 1) 
{ 
throw new InvalidOperationException("User not found or could not get an exact match based on email"); 
} 
var userIdentity = identities.Single(); 
var groupIdentity = await client.ReadIdentityAsync(project.DefaultTeam.Id); 

await client.AddMemberToGroupAsync( 
groupIdentity.Descriptor, 
userIdentity.Id 
); 
}

Чтобы добавить участников для другой команды, вы можете использовать метод teamClient.GetTeamsAsync, чтобы получить команды для проекта, а затем получить идентификатор команды, сопоставив его с указанным именем команды.

Другие вопросы по тегам