Utilisez cette API pour ajouter un membre (utilisateur, groupe ou appareil) à une unité administrative. Actuellement, il n’est possible d’ajouter qu’un seul membre à la fois à une unité administrative.
L’une des autorisations suivantes est nécessaire pour appeler cette API. Pour plus d’informations, notamment sur la façon de choisir les autorisations, voir Autorisations.
Autorisations pour ajouter un utilisateur, un groupe ou un appareil existant
Type d’autorisation
Autorisations (de celle qui offre le plus de privilèges à celle qui en offre le moins)
Déléguée (compte professionnel ou scolaire)
AdministrativeUnit.ReadWrite.All
Déléguée (compte Microsoft personnel)
Non prise en charge.
Application
AdministrativeUnit.ReadWrite.All
Pour ajouter un utilisateur, un groupe ou un appareil à une unité administrative, le principal appelant doit se voir attribuer au moins le rôle Administrateur de rôle privilégiéMicrosoft Entra.
Autorisations de création d’un groupe
Type d’autorisation
Autorisations (de celle qui offre le plus de privilèges à celle qui en offre le moins)
Déléguée (compte professionnel ou scolaire)
Group.ReadWrite.All et AdministrativeUnit.Read.All, Directory.ReadWrite.All
Déléguée (compte Microsoft personnel)
Non prise en charge.
Application
Group.Create et AdministrativeUnit.Read.All, Group.ReadWrite.All et AdministrativeUnit.Read.All, Directory.ReadWrite.All
Pour créer un groupe dans une unité administrative, le principal appelant doit se voir attribuer au moins l’un des rôles Microsoft Entra suivants dans l’étendue de l’unité administrative :
Administrateur de groupes
Administrateur d’utilisateurs
Lorsque ces rôles sont attribués à un principal de service, des autorisations supplémentaires sont nécessaires pour lire l’annuaire, telles que l’attribution au rôle Lecteurs d’annuaire, ou le fait de disposer d’autorisations d’application Microsoft Graph, telles que Directory.Read.All.
Requête HTTP
La requête suivante ajoute un utilisateur, un groupe ou un appareil existant à l’unité administrative.
POST /directory/administrativeUnits/{id}/members/$ref
La requête suivante crée un groupe au sein de l’unité administrative.
Le tableau suivant présente les propriétés de la ressource de groupe à spécifier lorsque vous créez un groupe dans l’unité administrative.
Propriété
Type
Description
displayName
chaîne
Nom à afficher dans le carnet d’adresses pour le groupe. Obligatoire.
description
string
Description du groupe. Facultatif.
isAssignableToRole
Boolean
Définissez la valeur true pour permettre au groupe d’être affecté à un rôle Microsoft Entra. Administrateur de rôle privilégié est le rôle le moins privilégié pour définir la valeur de cette propriété. Facultatif.
mailEnabled
Boolean
Défini sur true pour les groupes à extension messagerie. Obligatoire.
mailNickname
chaîne
Alias de messagerie du groupe. Ces caractères ne peuvent pas être utilisés dans mailNickName : @()\[]";:.<>,SPACE. Obligatoire.
securityEnabled
Boolean
Définissez true pour les groupes prenant en charge la sécurité, y compris les groupes Microsoft 365. Obligatoire.
Cette propriété représente les membres du groupe au moment de la création. Facultatif.
visibility
String
Spécifie la visibilité d’un groupe Microsoft 365. Les valeurs possibles sont les suivantes : Private, Public, HiddenMembership ou vide (qui est interprété comme étant Public).
Réponse
En cas de réussite, l’ajout d’un objet existant (à l’aide $refde ) retourne 204 No Content le code de réponse. Il ne retourne rien dans le corps de la réponse.
Lors de la création d’un groupe (sans $ref), cette méthode retourne un 201 Created code de réponse et un objet group dans le corps de la réponse. La réponse inclut uniquement les propriétés par défaut du groupe. Vous devez fournir la "@odata.type" : "#microsoft.graph.group" ligne dans le corps de la demande pour identifier explicitement le nouveau membre en tant que groupe. Un corps de requête sans le correct @odata.type retourne un 400 Bad Request message d’erreur.
Exemples
Exemple 1 : Ajouter un utilisateur ou un groupe existant
La requête suivante ajoute un utilisateur ou un groupe existant à une unité administrative.
POST https://graph.microsoft.com/v1.0/directory/administrativeUnits/{id}/members/$ref
Content-type: application/json
{
"@odata.id":"https://graph.microsoft.com/v1.0/groups/{id}"
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Models;
var requestBody = new ReferenceCreate
{
OdataId = "https://graph.microsoft.com/v1.0/groups/{id}",
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
await graphClient.Directory.AdministrativeUnits["{administrativeUnit-id}"].Members.Ref.PostAsync(requestBody);
// Code snippets are only available for the latest major version. Current major version is $v1.*
// Dependencies
import (
"context"
msgraphsdk "github.com/microsoftgraph/msgraph-sdk-go"
graphmodels "github.com/microsoftgraph/msgraph-sdk-go/models"
//other-imports
)
requestBody := graphmodels.NewReferenceCreate()
odataId := "https://graph.microsoft.com/v1.0/groups/{id}"
requestBody.SetOdataId(&odataId)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
graphClient.Directory().AdministrativeUnits().ByAdministrativeUnitId("administrativeUnit-id").Members().Ref().Post(context.Background(), requestBody, nil)
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
com.microsoft.graph.models.ReferenceCreate referenceCreate = new com.microsoft.graph.models.ReferenceCreate();
referenceCreate.setOdataId("https://graph.microsoft.com/v1.0/groups/{id}");
graphClient.directory().administrativeUnits().byAdministrativeUnitId("{administrativeUnit-id}").members().ref().post(referenceCreate);
<?php
use Microsoft\Graph\GraphServiceClient;
use Microsoft\Graph\Generated\Models\ReferenceCreate;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new ReferenceCreate();
$requestBody->setOdataId('https://graph.microsoft.com/v1.0/groups/{id}');
$graphServiceClient->directory()->administrativeUnits()->byAdministrativeUnitId('administrativeUnit-id')->members()->ref()->post($requestBody)->wait();
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
from msgraph.generated.models.reference_create import ReferenceCreate
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = ReferenceCreate(
odata_id = "https://graph.microsoft.com/v1.0/groups/{id}",
)
await graph_client.directory.administrative_units.by_administrative_unit_id('administrativeUnit-id').members.ref.post(request_body)
Dans le corps de la demande, indiquez le id de l’objet utilisateur ou groupe que vous souhaitez ajouter.
Réponse
L’exemple suivant illustre la réponse.
HTTP/1.1 204 No Content
Exemple 2 : Créer un groupe
L’exemple suivant crée un groupe dans l’unité administrative. Vous devez fournir la "@odata.type" : "#microsoft.graph.group" ligne dans le corps de la demande pour identifier explicitement le nouveau membre en tant que groupe. Un corps de requête sans le correct @odata.type retourne un 400 Bad Request message d’erreur.
POST https://graph.microsoft.com/v1.0/directory/administrativeUnits/{id}/members
Content-type: application/json
{
"@odata.type": "#microsoft.graph.group",
"description": "Self help community for golf",
"displayName": "Golf Assist",
"groupTypes": [
"Unified"
],
"mailEnabled": true,
"mailNickname": "golfassist",
"securityEnabled": false
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Models;
var requestBody = new Group
{
OdataType = "#microsoft.graph.group",
Description = "Self help community for golf",
DisplayName = "Golf Assist",
GroupTypes = new List<string>
{
"Unified",
},
MailEnabled = true,
MailNickname = "golfassist",
SecurityEnabled = false,
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Directory.AdministrativeUnits["{administrativeUnit-id}"].Members.PostAsync(requestBody);
// Code snippets are only available for the latest major version. Current major version is $v1.*
// Dependencies
import (
"context"
msgraphsdk "github.com/microsoftgraph/msgraph-sdk-go"
graphmodels "github.com/microsoftgraph/msgraph-sdk-go/models"
//other-imports
)
requestBody := graphmodels.NewDirectoryObject()
description := "Self help community for golf"
requestBody.SetDescription(&description)
displayName := "Golf Assist"
requestBody.SetDisplayName(&displayName)
groupTypes := []string {
"Unified",
}
requestBody.SetGroupTypes(groupTypes)
mailEnabled := true
requestBody.SetMailEnabled(&mailEnabled)
mailNickname := "golfassist"
requestBody.SetMailNickname(&mailNickname)
securityEnabled := false
requestBody.SetSecurityEnabled(&securityEnabled)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
members, err := graphClient.Directory().AdministrativeUnits().ByAdministrativeUnitId("administrativeUnit-id").Members().Post(context.Background(), requestBody, nil)
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
Group directoryObject = new Group();
directoryObject.setOdataType("#microsoft.graph.group");
directoryObject.setDescription("Self help community for golf");
directoryObject.setDisplayName("Golf Assist");
LinkedList<String> groupTypes = new LinkedList<String>();
groupTypes.add("Unified");
directoryObject.setGroupTypes(groupTypes);
directoryObject.setMailEnabled(true);
directoryObject.setMailNickname("golfassist");
directoryObject.setSecurityEnabled(false);
DirectoryObject result = graphClient.directory().administrativeUnits().byAdministrativeUnitId("{administrativeUnit-id}").members().post(directoryObject);
<?php
use Microsoft\Graph\GraphServiceClient;
use Microsoft\Graph\Generated\Models\Group;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new Group();
$requestBody->setOdataType('#microsoft.graph.group');
$requestBody->setDescription('Self help community for golf');
$requestBody->setDisplayName('Golf Assist');
$requestBody->setGroupTypes(['Unified', ]);
$requestBody->setMailEnabled(true);
$requestBody->setMailNickname('golfassist');
$requestBody->setSecurityEnabled(false);
$result = $graphServiceClient->directory()->administrativeUnits()->byAdministrativeUnitId('administrativeUnit-id')->members()->post($requestBody)->wait();
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
from msgraph.generated.models.group import Group
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = Group(
odata_type = "#microsoft.graph.group",
description = "Self help community for golf",
display_name = "Golf Assist",
group_types = [
"Unified",
],
mail_enabled = True,
mail_nickname = "golfassist",
security_enabled = False,
)
result = await graph_client.directory.administrative_units.by_administrative_unit_id('administrativeUnit-id').members.post(request_body)