calendarPermission の更新
[アーティクル]
01/20/2022
3 人の共同作成者
この記事の内容
名前空間: microsoft.graph
予定表の対応する calendarPermission オブジェクトを使用して、既存の共有者または代理人に割り当てられたアクセス許可を更新します。
アクセス許可
イベントが含まれている予定表の種類および要求されたアクセス許可の種類 (委任またはアプリケーション) に応じて、この API を呼び出すには、次のいずれかの権限が必要です。 アクセス許可の選択方法などの詳細については、「アクセス許可 」を参照してください。
予定表
委任 (職場または学校のアカウント)
委任 (個人用 Microsoft アカウント)
アプリケーション
ユーザーの予定表
Calendars.ReadWrite
Calendars.ReadWrite
Calendars.ReadWrite
グループ予定表
Group.ReadWrite.All
サポートされていません。
サポートされていません。
HTTP 要求
ユーザーの予定表の指定されたアクセス許可を更新します。
PATCH /users/{id}/calendar/calendarPermissions/{id}
グループ カレンダーの指定されたアクセス許可を更新します。
PATCH /groups/{id}/calendar/calendarPermissions/{id}
指定したイベントを含むユーザー 予定表の指定されたアクセス許可を更新します。
PATCH /users/{id}/events/{id}/calendar/calendarPermissions/{id}
名前
説明
Authorization
ベアラー {token}。必須。
Content-Type
application/json. Required.
要求本文
要求本文で、更新する関連フィールドの値を指定します。 要求本文に含まれない既存のプロパティは、以前の値のままになるか、他のプロパティ値の変化に基づいて再計算されます。 最適なパフォーマンスを得るために、変更されていない既存の値を含めないでください。
応答
成功した場合、このメソッドは応答コードと、応答本文で 200 OK 更新された calendarPermission オブジェクトを返します。
例
要求
次の使用例は、sharee Adele のアクセス許可レベルをに変更します write 。
PATCH https://graph.microsoft.com/v1.0/users/{id}/calendar/calendarPermissions/RGVmYXVsdA==
Content-type: application/json
{
"role": "write"
}
GraphServiceClient graphClient = new GraphServiceClient( authProvider );
var calendarPermission = new CalendarPermission
{
Role = CalendarRoleType.Write
};
await graphClient.Users["{user-id}"].Calendar.CalendarPermissions["{calendarPermission-id}"]
.Request()
.UpdateAsync(calendarPermission);
SDK をプロジェクトに追加し、authProvider インスタンスを作成する 方法の詳細については、SDK のドキュメントを参照してください 。
const options = {
authProvider,
};
const client = Client.init(options);
const calendarPermission = {
role: 'write'
};
await client.api('/users/{id}/calendar/calendarPermissions/RGVmYXVsdA==')
.update(calendarPermission);
SDK をプロジェクトに追加し、authProvider インスタンスを作成する 方法の詳細については、SDK のドキュメントを参照してください 。
MSHTTPClient *httpClient = [MSClientFactory createHTTPClientWithAuthenticationProvider:authenticationProvider];
NSString *MSGraphBaseURL = @"https://graph.microsoft.com/v1.0/";
NSMutableURLRequest *urlRequest = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:[MSGraphBaseURL stringByAppendingString:@"/users/{id}/calendar/calendarPermissions/RGVmYXVsdA=="]]];
[urlRequest setHTTPMethod:@"PATCH"];
[urlRequest setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
MSGraphCalendarPermission *calendarPermission = [[MSGraphCalendarPermission alloc] init];
[calendarPermission setRole: [MSGraphCalendarRoleType write]];
NSError *error;
NSData *calendarPermissionData = [calendarPermission getSerializedDataWithError:&error];
[urlRequest setHTTPBody:calendarPermissionData];
MSURLSessionDataTask *meDataTask = [httpClient dataTaskWithRequest:urlRequest
completionHandler: ^(NSData *data, NSURLResponse *response, NSError *nserror) {
//Request Completed
}];
[meDataTask execute];
SDK をプロジェクトに追加し、authProvider インスタンスを作成する 方法の詳細については、SDK のドキュメントを参照してください 。
GraphServiceClient graphClient = GraphServiceClient.builder().authenticationProvider( authProvider ).buildClient();
CalendarPermission calendarPermission = new CalendarPermission();
calendarPermission.role = CalendarRoleType.WRITE;
graphClient.users("{id}").calendar().calendarPermissions("RGVmYXVsdA==")
.buildRequest()
.patch(calendarPermission);
SDK をプロジェクトに追加し、authProvider インスタンスを作成する 方法の詳細については、SDK のドキュメントを参照してください 。
//THE GO SDK IS IN PREVIEW. NON-PRODUCTION USE ONLY
graphClient := msgraphsdk.NewGraphServiceClient(requestAdapter)
requestBody := msgraphsdk.NewCalendarPermission()
role := "write"
requestBody.SetRole(&role)
userId := "user-id"
calendarPermissionId := "calendarPermission-id"
graphClient.UsersById(&userId).Calendar().CalendarPermissionsById(&calendarPermissionId).Patch(requestBody)
SDK をプロジェクトに追加し、authProvider インスタンスを作成する 方法の詳細については、SDK のドキュメントを参照してください 。
Import-Module Microsoft.Graph.Calendar
$params = @{
Role = "write"
}
Update-MgUserCalendarPermission -UserId $userId -CalendarPermissionId $calendarPermissionId -BodyParameter $params
SDK をプロジェクトに追加し、authProvider インスタンスを作成する 方法の詳細については、SDK のドキュメントを参照してください 。
応答
応答の例を次に示します。
注: ここに示す応答オブジェクトは、読みやすさのために短縮されている場合があります。
HTTP/1.1 200 OK
Content-type: application/json
{
"id": "RGVmYXVsdA==",
"isRemovable": true,
"isInsideOrganization": true,
"role": "write",
"allowedRoles": [
"freeBusyRead",
"limitedRead",
"read",
"write"
],
"emailAddress": {
"name": "Adele Vance",
"address": "AdeleV@contoso.OnMicrosoft.com"
}
}