ユーザーを更新する
[アーティクル]
07/15/2022
3 人の共同作成者
この記事の内容
名前空間: microsoft.graph
user オブジェクトのプロパティを更新します。 メンバーまたはゲスト ユーザーは、管理者の役割なしで既定のアクセス許可を使用して、すべてのプロパティを更新できるわけではありません。 メンバーとゲストの既定のアクセス許可を比較して 、管理できるプロパティを確認します。
アクセス許可
この API を呼び出すには、次のいずれかのアクセス許可が必要です。アクセス許可の選択方法などの詳細については、「アクセス許可 」を参照してください。
アクセス許可の種類
アクセス許可 (特権の小さいものから大きいものへ)
委任 (職場または学校のアカウント)
User.ReadWrite, User.ReadWrite.All, User.ManageIdentities.All, Directory.ReadWrite.All
委任 (個人用 Microsoft アカウント)
User.ReadWrite
アプリケーション
User.ReadWrite.All、User.ManageIdentities.All、Directory.ReadWrite.All
注意
他のユーザーの businessPhones 、mobilePhone 、または otherMails のプロパティの更新を許可されているのは、管理者以外のユーザーまたは次のロールのいずれかを割り当てられたユーザーのみになります。ディレクトリ閲覧者、ゲスト招待元、メッセージ センター閲覧者およびレポート閲覧者。 詳細については、「Azure AD 組み込みロール 」のヘルプデスク (パスワード) 管理者を参照してください。 User.ReadWrite.All または Directory.ReadWrite.All の委任またはアプリケーションのアクセス許可のいずれかが与えられているアプリの場合、これに該当します。 Directory.AccessAsUser.All アクセス許可が割り当てられたグローバル管理者だけが、これらのプロパティを更新して、特権を持つ管理者を追加できます。
個人の Microsoft アカウントで User.ReadWrite 委任されたアクセス許可を使用してプロファイルを更新するには、個人の Microsoft アカウントを AAD テナントに関連付ける必要があります。
identities プロパティを更新するには、User.ManageIdentities.All アクセス許可が必要です。また、B2C ローカル アカウント を既存の user オブジェクトに追加することは、その user オブジェクトにローカル アカウント ID が既に含まれている場合を除き、許可されていません。
HTTP 要求
PATCH /users/{id | userPrincipalName}
ヘッダー
値
Authorization
ベアラー {token}。必須。
Content-Type
application/json
要求本文
要求本文で、更新する関連フィールドの値を指定します。要求本文に含まれない既存のプロパティは、以前の値のままになるか、他のプロパティ値の変化に基づいて再計算されます。最適なパフォーマンスを得るためには、変更されていない既存の値を含めないでください。
プロパティ
型
説明
aboutMe
String
ユーザーが自分自身について記述する、フリー フォームのテキスト入力フィールド。
accountEnabled
Boolean
アカウントが有効な場合は true であり、それ以外の場合は false です。 このプロパティは、ユーザーの作成時に必要です。 Directory. AccessAsUser. All 委任されたアクセス許可を割り当てられたグローバル管理者は、テナント内のすべての管理者の accountEnabled 状態を更新できます。
ageGroup
ageGroup
ユーザーの年齢グループを設定します。 使用できる値: null、Minor、NotAdult、および Adult。 詳細については、「法的年齢グループ プロパティの定義 」を参照してください。
birthday
DateTimeOffset
ユーザーの誕生日。Timestamp 型は、ISO 8601 形式を使用して日付と時刻の情報を表し、必ず UTC 時間です。たとえば、2014 年 1 月 1 日午前 0 時 (UTC) は、2014-01-01T00:00:00Z です
businessPhones
String collection
ユーザーの電話番号。注:文字列コレクションですが、このプロパティに設定できるのは 1 つの数字のみです。
city
String
ユーザーがいる都市。
CompanyName
String
ユーザーが関連付けられている会社名。 このプロパティは、外部ユーザーが所属する会社を記述するのに役立ちます。 最大の長さは 64 文字です。
consentProvidedForMinor
consentProvidedForMinor
未成年者について同意を得ているかどうかを設定します。 使用できる値: null、Granted、Denied、および NotRequired。 詳細については、「法的年齢グループ プロパティの定義 」を参照してください。
country
String
ユーザーがいる国/地域。たとえば、US や UK です。
department
String
ユーザーが働いている部門の名前。
displayName
String
アドレス帳に表示されるユーザーの名前。これは通常、ユーザーの名前、ミドルネームのイニシャル、姓の組み合わせです。このプロパティは、ユーザーの作成時に必須になります。更新時にクリアすることはできません。
employeeId
String
組織によりユーザーに割り当てられた従業員 ID。 最大の長さは 16 文字です。
employeeType
String
エンタープライズ ワーカーの種類を取得します。 たとえば、Employee、Contractor、Consultant、または Vendor です。 $select でのみ返されます。
givenName
String
ユーザーの名。
employeeHireDate
DateTimeOffset
ユーザーの採用日付。Timestamp 型は、ISO 8601 形式を使用して日付と時刻の情報を表し、必ず UTC 時間です。たとえば、2014 年 1 月 1 日午前 0 時 (UTC) は、2014-01-01T00:00:00Z です
interests
String collection
ユーザーが自分の関心事を記述する一覧。
jobTitle
String
ユーザーの役職。
mail
String
ユーザーの SMTP アドレス (たとえば、jeff@contoso.onmicrosoft.com)。 このプロパティを変更すると、その値が SMTP アドレスとして表示されるように、ユーザーの proxyAddresses コレクションも更新されます。 Azure AD B2C アカウントの場合、このプロパティは一意の SMTP アドレスを使用して最大 10 回まで更新することができます。
mailNickname
String
ユーザーの電子メール エイリアス。ユーザーの作成時に、このプロパティを指定する必要があります。
mobilePhone
String
ユーザーの主な携帯電話の番号。
mySite
String
ユーザーの個人用サイトの URL。
officeLocation
String
ユーザーの勤務先の場所。
onPremisesExtensionAttributes
onPremisesExtensionAttributes
ユーザーの extensionAttribute 1 ~ 15 が含まれています。 個々の拡張属性は選択もフィルター処理もできないことに注意してください。 onPremisesSyncEnabled ユーザーの場合、このプロパティ セットの権限ソースはオンプレミスで、読み取り専用です。 これらの拡張属性は、Exchange カスタム属性 1-15 とも呼ばれます。
onPremisesImmutableId
String
このプロパティは、オンプレミスの Active Directory ユーザー アカウントを Azure AD ユーザー オブジェクトに関連付けるために使用します。ユーザーの userPrincipalName (UPN) プロパティにフェデレーション ドメインを使用する場合は、Graph で新しいユーザー アカウントを作成するときにこのプロパティを指定する必要があります。重要: $ と _ の文字は、このプロパティを指定するときには使用できません。
otherMails
String コレクション
ユーザーの追加のメール アドレスの一覧 (例: ["bob@contoso.com", "Robert@fabrikam.com"])。
passwordPolicies
String
ユーザーのパスワード ポリシーを指定します。この値は列挙値であり、可能な 1 つの値は DisableStrongPassword です。この場合は、既定のポリシーより脆弱なパスワードを指定できます。DisablePasswordExpiration を指定することもできます。2 つを一緒に指定することもできます。例: DisablePasswordExpiration, DisableStrongPassword。
passwordProfile
PasswordProfile
ユーザーのパスワード プロファイルを指定します。プロファイルには、ユーザーのパスワードが含まれています。このプロパティは、ユーザーの作成時に必要です。プロファイルにあるパスワードは、passwordPolicies プロパティによって指定されている最小要件を満たす必要があります。既定では、強力なパスワードが必要です。これは、フェデレーション ユーザーには使用できません。 委任されたアクセスでは、呼び出し元のアプリに、サインインしているユーザーに代わって Directory.AccessAsUser.All 委任されたアクセス許可を割り当てる必要があります。 アプリケーション専用アクセスでは、呼び出し元のアプリに User.ReadWrite.All アプリケーション アクセス許可と少なくとも ユーザー管理者 Azure AD ロール を割り当てる必要があります。
pastProjects
String collection
ユーザーが過去のプロジェクトを列挙する一覧。
postalCode
String
ユーザーの住所の郵便番号。郵便番号は、ユーザーの国/地域に固有です。アメリカ合衆国では、この属性には、ZIP コードが含まれます。
preferredLanguage
String
ユーザーが設定する言語。ISO 639-1 コードに従う必要があります。たとえば en-US です。
responsibilities
String collection
ユーザーが自分の責任の範囲を列挙する一覧。
schools
String collection
ユーザーが在籍した学校を列挙する一覧。
skills
String collection
ユーザーが自分のスキルを列挙する一覧。
state
String
ユーザーの住所の都道府県。
streetAddress
String
ユーザーの勤務先の番地。
surname
String
ユーザーの姓。
usageLocation
String
2 文字の国コード (ISO 規格 3166)。国におけるサービスの利用可能性を確認することが法的に義務付けられているため、ライセンスを割り当てられるユーザーには必須です。例: US、JP、GB。null 許容ではありません。
userPrincipalName
String
ユーザーのユーザー プリンシパル名 (UPN)。UPN は、インターネット標準 RFC 822 に基づいた、インターネット スタイルのユーザーのログイン名です。規則では、これはユーザーの電子メール名にマップされる必要があります。一般的な形式は alias@domain です。このドメインは、検証済みドメインのテナントのコレクション内に存在している必要があります。テナントの検証済みのドメインには、[組織] の verifiedDomains プロパティからアクセスできます。 注: このプロパティにアクセント文字を含めることはできません。 次の文字のみ使用することができます A - Z、a - z、0 - 9、 ' . - _ ! # ^ ~。 許可される文字の完全なリストについては、ユーザー名ポリシー を参照してください。
userType
String
ディレクトリ内のユーザーの種類を分類するために使用する文字列値 (Member、Guest など)。
注意
以下のプロパティは、アプリケーションのアクセス許可のみを持つアプリで更新することはできません: aboutMe 、birthday 、employeeHireDate 、interests 、mySite 、pastProjects 、responsibilities 、schools 、and skills 。
以下のプロパティを更新するには、上記の表にリストされている他のプロパティを含めずに、独自の PATCH 要求でそれらを指定する必要があります: aboutMe 、birthday 、interests 、mySite 、pastProjects 、responsibilities 、schools 、and skills 。
拡張機能と関連データを管理する
次のように、この API を使用して、ディレクトリ、スキーマ、およびユーザーのオープン拡張機能とそのデータを管理します。
既存のユーザーの拡張機能にデータを追加、更新、および格納する
ディレクトリおよびスキーマ拡張機能の場合は、カスタム拡張プロパティの値を null に設定して、格納されているデータをすべて削除します。 オープン拡張機能の場合は、[オープン拡張機能を削除する] API を使用します。
応答
成功した場合、このメソッドは 204 No Content 応答コードを返します。
例
例 1: サインインしているユーザーのプロパティを更新する
要求
次の例は要求を示しています。
PATCH https://graph.microsoft.com/v1.0/me
Content-type: application/json
{
"businessPhones": [
"+1 425 555 0109"
],
"officeLocation": "18/2111"
}
GraphServiceClient graphClient = new GraphServiceClient( authProvider );
var user = new User
{
BusinessPhones = new List<String>()
{
"+1 425 555 0109"
},
OfficeLocation = "18/2111"
};
await graphClient.Me
.Request()
.UpdateAsync(user);
SDK をプロジェクトに追加し、authProvider インスタンスを作成する 方法の詳細については、SDK のドキュメントを参照してください 。
const options = {
authProvider,
};
const client = Client.init(options);
const user = {
businessPhones: [
'+1 425 555 0109'
],
officeLocation: '18/2111'
};
await client.api('/me')
.update(user);
SDK をプロジェクトに追加し、authProvider インスタンスを作成する 方法の詳細については、SDK のドキュメントを参照してください 。
MSHTTPClient *httpClient = [MSClientFactory createHTTPClientWithAuthenticationProvider:authenticationProvider];
NSString *MSGraphBaseURL = @"https://graph.microsoft.com/v1.0/";
NSMutableURLRequest *urlRequest = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:[MSGraphBaseURL stringByAppendingString:@"/me"]]];
[urlRequest setHTTPMethod:@"PATCH"];
[urlRequest setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
MSGraphUser *user = [[MSGraphUser alloc] init];
NSMutableArray *businessPhonesList = [[NSMutableArray alloc] init];
[businessPhonesList addObject: @"+1 425 555 0109"];
[user setBusinessPhones:businessPhonesList];
[user setOfficeLocation:@"18/2111"];
NSError *error;
NSData *userData = [user getSerializedDataWithError:&error];
[urlRequest setHTTPBody:userData];
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();
User user = new User();
LinkedList<String> businessPhonesList = new LinkedList<String>();
businessPhonesList.add("+1 425 555 0109");
user.businessPhones = businessPhonesList;
user.officeLocation = "18/2111";
graphClient.me()
.buildRequest()
.patch(user);
SDK をプロジェクトに追加し、authProvider インスタンスを作成する 方法の詳細については、SDK のドキュメントを参照してください 。
//THE GO SDK IS IN PREVIEW. NON-PRODUCTION USE ONLY
graphClient := msgraphsdk.NewGraphServiceClient(requestAdapter)
requestBody := msgraphsdk.NewUser()
requestBody.SetBusinessPhones( []String {
"+1 425 555 0109",
}
officeLocation := "18/2111"
requestBody.SetOfficeLocation(&officeLocation)
graphClient.Me().Patch(requestBody)
SDK をプロジェクトに追加し、authProvider インスタンスを作成する 方法の詳細については、SDK のドキュメントを参照してください 。
Import-Module Microsoft.Graph.Users
$params = @{
BusinessPhones = @(
"+1 425 555 0109"
)
OfficeLocation = "18/2111"
}
# A UPN can also be used as -UserId.
Update-MgUser -UserId $userId -BodyParameter $params
SDK をプロジェクトに追加し、authProvider インスタンスを作成する 方法の詳細については、SDK のドキュメントを参照してください 。
応答
次の例は応答を示しています。
HTTP/1.1 204 No Content
例 2: 指定したユーザーのプロパティを更新する
要求
次の例は要求を示しています。
PATCH https://graph.microsoft.com/v1.0/users/{id}
Content-type: application/json
{
"businessPhones": [
"+1 425 555 0109"
],
"officeLocation": "18/2111"
}
GraphServiceClient graphClient = new GraphServiceClient( authProvider );
var user = new User
{
BusinessPhones = new List<String>()
{
"+1 425 555 0109"
},
OfficeLocation = "18/2111"
};
await graphClient.Users["{user-id}"]
.Request()
.UpdateAsync(user);
SDK をプロジェクトに追加し、authProvider インスタンスを作成する 方法の詳細については、SDK のドキュメントを参照してください 。
const options = {
authProvider,
};
const client = Client.init(options);
const user = {
businessPhones: [
'+1 425 555 0109'
],
officeLocation: '18/2111'
};
await client.api('/users/{id}')
.update(user);
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}"]]];
[urlRequest setHTTPMethod:@"PATCH"];
[urlRequest setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
MSGraphUser *user = [[MSGraphUser alloc] init];
NSMutableArray *businessPhonesList = [[NSMutableArray alloc] init];
[businessPhonesList addObject: @"+1 425 555 0109"];
[user setBusinessPhones:businessPhonesList];
[user setOfficeLocation:@"18/2111"];
NSError *error;
NSData *userData = [user getSerializedDataWithError:&error];
[urlRequest setHTTPBody:userData];
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();
User user = new User();
LinkedList<String> businessPhonesList = new LinkedList<String>();
businessPhonesList.add("+1 425 555 0109");
user.businessPhones = businessPhonesList;
user.officeLocation = "18/2111";
graphClient.users("{id}")
.buildRequest()
.patch(user);
SDK をプロジェクトに追加し、authProvider インスタンスを作成する 方法の詳細については、SDK のドキュメントを参照してください 。
//THE GO SDK IS IN PREVIEW. NON-PRODUCTION USE ONLY
graphClient := msgraphsdk.NewGraphServiceClient(requestAdapter)
requestBody := msgraphsdk.NewUser()
requestBody.SetBusinessPhones( []String {
"+1 425 555 0109",
}
officeLocation := "18/2111"
requestBody.SetOfficeLocation(&officeLocation)
userId := "user-id"
graphClient.UsersById(&userId).Patch(requestBody)
SDK をプロジェクトに追加し、authProvider インスタンスを作成する 方法の詳細については、SDK のドキュメントを参照してください 。
Import-Module Microsoft.Graph.Users
$params = @{
BusinessPhones = @(
"+1 425 555 0109"
)
OfficeLocation = "18/2111"
}
Update-MgUser -UserId $userId -BodyParameter $params
SDK をプロジェクトに追加し、authProvider インスタンスを作成する 方法の詳細については、SDK のドキュメントを参照してください 。
応答
次の例は応答を示しています。
HTTP/1.1 204 No Content
例 3: ユーザーの passwordProfile を更新してパスワードをリセットする
次の例は、別のユーザーのパスワードをリセットする要求を示しています。
要求
PATCH https://graph.microsoft.com/v1.0/users/{id}
Content-type: application/json
{
"passwordProfile": {
"forceChangePasswordNextSignIn": false,
"password": "xWwvJ]6NMw+bWH-d"
}
}
GraphServiceClient graphClient = new GraphServiceClient( authProvider );
var user = new User
{
PasswordProfile = new PasswordProfile
{
ForceChangePasswordNextSignIn = false,
Password = "xWwvJ]6NMw+bWH-d"
}
};
await graphClient.Users["{user-id}"]
.Request()
.UpdateAsync(user);
SDK をプロジェクトに追加し、authProvider インスタンスを作成する 方法の詳細については、SDK のドキュメントを参照してください 。
const options = {
authProvider,
};
const client = Client.init(options);
const user = {
passwordProfile: {
forceChangePasswordNextSignIn: false,
password: 'xWwvJ]6NMw+bWH-d'
}
};
await client.api('/users/{id}')
.update(user);
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}"]]];
[urlRequest setHTTPMethod:@"PATCH"];
[urlRequest setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
MSGraphUser *user = [[MSGraphUser alloc] init];
MSGraphPasswordProfile *passwordProfile = [[MSGraphPasswordProfile alloc] init];
[passwordProfile setForceChangePasswordNextSignIn: false];
[passwordProfile setPassword:@"xWwvJ]6NMw+bWH-d"];
[user setPasswordProfile:passwordProfile];
NSError *error;
NSData *userData = [user getSerializedDataWithError:&error];
[urlRequest setHTTPBody:userData];
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();
User user = new User();
PasswordProfile passwordProfile = new PasswordProfile();
passwordProfile.forceChangePasswordNextSignIn = false;
passwordProfile.password = "xWwvJ]6NMw+bWH-d";
user.passwordProfile = passwordProfile;
graphClient.users("{id}")
.buildRequest()
.patch(user);
SDK をプロジェクトに追加し、authProvider インスタンスを作成する 方法の詳細については、SDK のドキュメントを参照してください 。
//THE GO SDK IS IN PREVIEW. NON-PRODUCTION USE ONLY
graphClient := msgraphsdk.NewGraphServiceClient(requestAdapter)
requestBody := msgraphsdk.NewUser()
passwordProfile := msgraphsdk.NewPasswordProfile()
requestBody.SetPasswordProfile(passwordProfile)
forceChangePasswordNextSignIn := false
passwordProfile.SetForceChangePasswordNextSignIn(&forceChangePasswordNextSignIn)
password := "xWwvJ]6NMw+bWH-d"
passwordProfile.SetPassword(&password)
userId := "user-id"
graphClient.UsersById(&userId).Patch(requestBody)
SDK をプロジェクトに追加し、authProvider インスタンスを作成する 方法の詳細については、SDK のドキュメントを参照してください 。
Import-Module Microsoft.Graph.Users
$params = @{
PasswordProfile = @{
ForceChangePasswordNextSignIn = $false
Password = "xWwvJ]6NMw+bWH-d"
}
}
Update-MgUser -UserId $userId -BodyParameter $params
SDK をプロジェクトに追加し、authProvider インスタンスを作成する 方法の詳細については、SDK のドキュメントを参照してください 。
応答
HTTP/1.1 204 No Content
例 4: ユーザーのスキーマ拡張の値を追加または更新する
拡張機能の単一のプロパティまたはすべてのプロパティに値を更新または割り当てることができます。
要求
PATCH https://graph.microsoft.com/v1.0/users/4562bcc8-c436-4f95-b7c0-4f8ce89dca5e
Content-type: application/json
{
"ext55gb1l09_msLearnCourses": {
"courseType": "Admin"
}
}
GraphServiceClient graphClient = new GraphServiceClient( authProvider );
var user = new User
{
AdditionalData = new Dictionary<string, object>()
{
{"ext55gb1l09_msLearnCourses", "{\"courseType\":\"Admin\"}"}
}
};
await graphClient.Users["{user-id}"]
.Request()
.UpdateAsync(user);
SDK をプロジェクトに追加し、authProvider インスタンスを作成する 方法の詳細については、SDK のドキュメントを参照してください 。
const options = {
authProvider,
};
const client = Client.init(options);
const user = {
ext55gb1l09_msLearnCourses: {
courseType: 'Admin'
}
};
await client.api('/users/4562bcc8-c436-4f95-b7c0-4f8ce89dca5e')
.update(user);
SDK をプロジェクトに追加し、authProvider インスタンスを作成する 方法の詳細については、SDK のドキュメントを参照してください 。
//THE GO SDK IS IN PREVIEW. NON-PRODUCTION USE ONLY
graphClient := msgraphsdk.NewGraphServiceClient(requestAdapter)
requestBody := msgraphsdk.NewSchemaExtension()
owner := "ef4cb9a8-97c3-4ca7-854b-5cb5ced376fa"
requestBody.SetOwner(&owner)
requestBody.SetProperties( []ExtensionSchemaProperty {
msgraphsdk.NewExtensionSchemaProperty(),
SetAdditionalData(map[string]interface{}{
"name": "courseId",
"type": "Integer",
}
msgraphsdk.NewExtensionSchemaProperty(),
SetAdditionalData(map[string]interface{}{
"name": "courseName",
"type": "String",
}
msgraphsdk.NewExtensionSchemaProperty(),
SetAdditionalData(map[string]interface{}{
"name": "courseType",
"type": "String",
}
msgraphsdk.NewExtensionSchemaProperty(),
SetAdditionalData(map[string]interface{}{
"name": "courseSupervisors",
"type": "String",
}
}
schemaExtensionId := "schemaExtension-id"
graphClient.SchemaExtensionsById(&schemaExtensionId).Patch(requestBody)
SDK をプロジェクトに追加し、authProvider インスタンスを作成する 方法の詳細については、SDK のドキュメントを参照してください 。
GraphServiceClient graphClient = GraphServiceClient.builder().authenticationProvider( authProvider ).buildClient();
SchemaExtension schemaExtension = new SchemaExtension();
schemaExtension.owner = "ef4cb9a8-97c3-4ca7-854b-5cb5ced376fa";
LinkedList<ExtensionSchemaProperty> propertiesList = new LinkedList<ExtensionSchemaProperty>();
ExtensionSchemaProperty properties = new ExtensionSchemaProperty();
properties.name = "courseId";
properties.type = "Integer";
propertiesList.add(properties);
ExtensionSchemaProperty properties1 = new ExtensionSchemaProperty();
properties1.name = "courseName";
properties1.type = "String";
propertiesList.add(properties1);
ExtensionSchemaProperty properties2 = new ExtensionSchemaProperty();
properties2.name = "courseType";
properties2.type = "String";
propertiesList.add(properties2);
ExtensionSchemaProperty properties3 = new ExtensionSchemaProperty();
properties3.name = "courseSupervisors";
properties3.type = "String";
propertiesList.add(properties3);
schemaExtension.properties = propertiesList;
graphClient.schemaExtensions("exto6x7sfft_courses")
.buildRequest()
.patch(schemaExtension);
SDK をプロジェクトに追加し、authProvider インスタンスを作成する 方法の詳細については、SDK のドキュメントを参照してください 。
応答
HTTP/1.1 204 No Content
注: スキーマ拡張の値をユーザー オブジェクトから削除するには、プロパティを null に設定します。以下に例を示します:
PATCH https://graph.microsoft.com/v1.0/users/4562bcc8-c436-4f95-b7c0-4f8ce89dca5e
Content-type: application/json
{
"ext55gb1l09_msLearnCourses": null
}
関連項目