Добавление нескольких участников в команду одним запросом. Отклик предоставляет сведения о том, каких участников можно создать, а каких — нельзя.
Примечание.
Иногда требуется время, чтобы отразить добавление элемента после его добавления. Пользователи могут использовать уведомления об изменениях для подписки на уведомления об изменениях членства в определенной команде.
Выберите разрешение или разрешения, помеченные как наименее привилегированные для этого API. Используйте более привилегированное разрешение или разрешения только в том случае, если это требуется приложению. Дополнительные сведения о делегированных разрешениях и разрешениях приложений см. в разделе Типы разрешений. Дополнительные сведения об этих разрешениях см. в справочнике по разрешениям.
Тип разрешения
Разрешения с наименьшими привилегиями
Более высокие привилегированные разрешения
Делегированные (рабочая или учебная учетная запись)
TeamMember.ReadWrite.All
Недоступно.
Делегированные (личная учетная запись Майкрософт)
Не поддерживается.
Не поддерживается.
Приложение
TeamMember.ReadWrite.All
Недоступно.
HTTP-запрос
Это связывающее действие для добавления нескольких элементов в коллекцию conversationMember одним запросом.
В тексте запроса укажите в формате JSON представление списка производных conversationMember, которые необходимо добавить. В один запрос можно добавить не более 200 производных conversationMember.
В следующей таблице указаны параметры, которые можно использовать с этим действием.
Список участников беседы, которых следует добавить.
Отклик
В случае успеха это действие возвращает код отклика 200 OK и коллекцию производных ресурса actionResultPart в тексте отклика.
Этот API возвращает либо ответ, указывающий 200 , что все указанные члены были добавлены в команду, либо ответ, указывающий 207 , что в команду были добавлены только некоторые из указанных участников. Вызывающая сторона должна проверить полезные данные отклика, чтобы определить, какого участника не удалось добавить. Текст отклика является коллекцией производных ресурса actionResultPart. Этот API отвечает ошибкой при сбое запроса. Дополнительные сведения об ошибках Microsoft Graph см. в статье Ошибки Microsoft Graph и типы ресурсов.
Примеры
Пример 1. Массовое добавление участников в команду
Запрос
В следующем примере показан запрос на добавление нескольких участников в команду.
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Teams.Item.Members.Add;
using Microsoft.Graph.Models;
var requestBody = new AddPostRequestBody
{
Values = new List<ConversationMember>
{
new AadUserConversationMember
{
OdataType = "microsoft.graph.aadUserConversationMember",
Roles = new List<string>
{
},
AdditionalData = new Dictionary<string, object>
{
{
"user@odata.bind" , "https://graph.microsoft.com/v1.0/users('18a80140-b0fb-4489-b360-2f6efaf225a0')"
},
},
},
new AadUserConversationMember
{
OdataType = "microsoft.graph.aadUserConversationMember",
Roles = new List<string>
{
"owner",
},
AdditionalData = new Dictionary<string, object>
{
{
"user@odata.bind" , "https://graph.microsoft.com/v1.0/users('86503198-b81b-43fe-81ee-ad45b8848ac9')"
},
},
},
},
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Teams["{team-id}"].Members.Add.PostAsAddPostResponseAsync(requestBody);
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
com.microsoft.graph.teams.item.members.add.AddPostRequestBody addPostRequestBody = new com.microsoft.graph.teams.item.members.add.AddPostRequestBody();
LinkedList<ConversationMember> values = new LinkedList<ConversationMember>();
AadUserConversationMember conversationMember = new AadUserConversationMember();
conversationMember.setOdataType("microsoft.graph.aadUserConversationMember");
LinkedList<String> roles = new LinkedList<String>();
conversationMember.setRoles(roles);
HashMap<String, Object> additionalData = new HashMap<String, Object>();
additionalData.put("user@odata.bind", "https://graph.microsoft.com/v1.0/users('18a80140-b0fb-4489-b360-2f6efaf225a0')");
conversationMember.setAdditionalData(additionalData);
values.add(conversationMember);
AadUserConversationMember conversationMember1 = new AadUserConversationMember();
conversationMember1.setOdataType("microsoft.graph.aadUserConversationMember");
LinkedList<String> roles1 = new LinkedList<String>();
roles1.add("owner");
conversationMember1.setRoles(roles1);
HashMap<String, Object> additionalData1 = new HashMap<String, Object>();
additionalData1.put("user@odata.bind", "https://graph.microsoft.com/v1.0/users('86503198-b81b-43fe-81ee-ad45b8848ac9')");
conversationMember1.setAdditionalData(additionalData1);
values.add(conversationMember1);
addPostRequestBody.setValues(values);
var result = graphClient.teams().byTeamId("{team-id}").members().add().post(addPostRequestBody);
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Teams.Item.Members.Add;
using Microsoft.Graph.Models;
var requestBody = new AddPostRequestBody
{
Values = new List<ConversationMember>
{
new AadUserConversationMember
{
OdataType = "microsoft.graph.aadUserConversationMember",
Roles = new List<string>
{
},
AdditionalData = new Dictionary<string, object>
{
{
"user@odata.bind" , "https://graph.microsoft.com/v1.0/users('jacob@contoso.com')"
},
},
},
new AadUserConversationMember
{
OdataType = "microsoft.graph.aadUserConversationMember",
Roles = new List<string>
{
"owner",
},
AdditionalData = new Dictionary<string, object>
{
{
"user@odata.bind" , "https://graph.microsoft.com/v1.0/users('alex@contoso.com')"
},
},
},
},
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Teams["{team-id}"].Members.Add.PostAsAddPostResponseAsync(requestBody);
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
com.microsoft.graph.teams.item.members.add.AddPostRequestBody addPostRequestBody = new com.microsoft.graph.teams.item.members.add.AddPostRequestBody();
LinkedList<ConversationMember> values = new LinkedList<ConversationMember>();
AadUserConversationMember conversationMember = new AadUserConversationMember();
conversationMember.setOdataType("microsoft.graph.aadUserConversationMember");
LinkedList<String> roles = new LinkedList<String>();
conversationMember.setRoles(roles);
HashMap<String, Object> additionalData = new HashMap<String, Object>();
additionalData.put("user@odata.bind", "https://graph.microsoft.com/v1.0/users('jacob@contoso.com')");
conversationMember.setAdditionalData(additionalData);
values.add(conversationMember);
AadUserConversationMember conversationMember1 = new AadUserConversationMember();
conversationMember1.setOdataType("microsoft.graph.aadUserConversationMember");
LinkedList<String> roles1 = new LinkedList<String>();
roles1.add("owner");
conversationMember1.setRoles(roles1);
HashMap<String, Object> additionalData1 = new HashMap<String, Object>();
additionalData1.put("user@odata.bind", "https://graph.microsoft.com/v1.0/users('alex@contoso.com')");
conversationMember1.setAdditionalData(additionalData1);
values.add(conversationMember1);
addPostRequestBody.setValues(values);
var result = graphClient.teams().byTeamId("{team-id}").members().add().post(addPostRequestBody);