Erstellen Sie eine calendarPermission-Ressource , um die Identität und Rolle des Benutzers anzugeben, für den der angegebene Kalender freigegeben oder delegiert wird.
Je nach dem Typ des Kalenders, in dem sich das Ereignis befindet, und dem Typ der Berechtigung (delegierte Berechtigung oder Anwendungsberechtigung), ist eine der folgenden Berechtigungen erforderlich, um diese API aufzurufen. Weitere Informationen, unter anderem zur Auswahl von Berechtigungen, finden Sie unter Berechtigungen.
Kalender
Delegiert (Geschäfts-, Schul- oder Unikonto)
Delegiert (persönliches Microsoft-Konto)
Application
Benutzerkalender
Calendars.Read, Calendars.ReadWrite
Calendars.Read, Calendars.ReadWrite
Calendars.Read, Calendars.ReadWrite
Gruppenkalender
Group.Read.All, Group.ReadWrite.All
Nicht unterstützt
Nicht unterstützt
HTTP-Anforderung
Erstellen Sie die angegebenen Berechtigungen für den primären Kalender eines Benutzers:
POST /users/{id}/calendar/calendarPermissions
Erstellen Sie die angegebenen Berechtigungen eines Gruppenkalenders:
POST /groups/{id}/calendar/calendarPermissions
Erstellen Sie die angegebenen Berechtigungen des Benutzerkalenders, der das identifizierte Ereignis enthält:
POST /users/{id}/events/{id}/calendar/calendarPermissions
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Models;
var requestBody = new CalendarPermission
{
EmailAddress = new EmailAddress
{
Name = "Samantha Booth",
Address = "samanthab@contoso.com",
},
IsInsideOrganization = true,
IsRemovable = true,
Role = CalendarRoleType.Read,
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Me.Calendar.CalendarPermissions.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.NewCalendarPermission()
emailAddress := graphmodels.NewEmailAddress()
name := "Samantha Booth"
emailAddress.SetName(&name)
address := "samanthab@contoso.com"
emailAddress.SetAddress(&address)
requestBody.SetEmailAddress(emailAddress)
isInsideOrganization := true
requestBody.SetIsInsideOrganization(&isInsideOrganization)
isRemovable := true
requestBody.SetIsRemovable(&isRemovable)
role := graphmodels.READ_CALENDARROLETYPE
requestBody.SetRole(&role)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
calendarPermissions, err := graphClient.Me().Calendar().CalendarPermissions().Post(context.Background(), requestBody, nil)
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
CalendarPermission calendarPermission = new CalendarPermission();
EmailAddress emailAddress = new EmailAddress();
emailAddress.setName("Samantha Booth");
emailAddress.setAddress("samanthab@contoso.com");
calendarPermission.setEmailAddress(emailAddress);
calendarPermission.setIsInsideOrganization(true);
calendarPermission.setIsRemovable(true);
calendarPermission.setRole(CalendarRoleType.Read);
CalendarPermission result = graphClient.me().calendar().calendarPermissions().post(calendarPermission);
<?php
use Microsoft\Graph\GraphServiceClient;
use Microsoft\Graph\Generated\Models\CalendarPermission;
use Microsoft\Graph\Generated\Models\EmailAddress;
use Microsoft\Graph\Generated\Models\CalendarRoleType;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new CalendarPermission();
$emailAddress = new EmailAddress();
$emailAddress->setName('Samantha Booth');
$emailAddress->setAddress('samanthab@contoso.com');
$requestBody->setEmailAddress($emailAddress);
$requestBody->setIsInsideOrganization(true);
$requestBody->setIsRemovable(true);
$requestBody->setRole(new CalendarRoleType('read'));
$result = $graphServiceClient->me()->calendar()->calendarPermissions()->post($requestBody)->wait();
Import-Module Microsoft.Graph.Calendar
$params = @{
emailAddress = @{
name = "Samantha Booth"
address = "samanthab@contoso.com"
}
isInsideOrganization = $true
isRemovable = $true
role = "read"
}
# A UPN can also be used as -UserId.
New-MgUserCalendarPermission -UserId $userId -BodyParameter $params
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
from msgraph.generated.models.calendar_permission import CalendarPermission
from msgraph.generated.models.email_address import EmailAddress
from msgraph.generated.models.calendar_role_type import CalendarRoleType
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = CalendarPermission(
email_address = EmailAddress(
name = "Samantha Booth",
address = "samanthab@contoso.com",
),
is_inside_organization = True,
is_removable = True,
role = CalendarRoleType.Read,
)
result = await graph_client.me.calendar.calendar_permissions.post(request_body)