Learn365 では、API を使ってユーザー プロパティ(情報)を更新することができます。
更新できる対象には、システム列(例:部署、役職など)と、カスタム列(API で作成)の両方が含まれます。
ここでは、Learn365 API を通じてユーザー プロパティ(情報)を更新する手順を説明します。
注記:
- 「ユーザー名」と「ユーザーはコースカタログにます」列の編集はできません。
- カスタム同期は、列ごとに個別に設定できます。
特定の列でカスタム同期をオンにすると、その列の情報は Microsoft Entra ID から同期されなくなり、ユーザー 画面に表示する内容を独自に設定できるようになります。カスタム同期がオフになっている列は、Microsoft Entra ID から自動的に情報が取得されます。- Learn365 アカウントおよび Flow365 アカウントの両方のユーザー情報を更新することができます。
ユーザー プロパティの更新
- PUT /odata/v2/Users('{LoginName}') エンドポイントでユーザーの情報をまとめて更新できます。
- POST /odata/v2/Users('{LoginName}')/UpdateUserFieldValues エンドポイントで カスタム列の情報を更新できます。
ユーザーの情報をまとめて更新する
ユーザーの情報を更新するには、以下の情報が必要です。
- ユーザーのログイン名:ログイン名の取得については、こちらをご参照ください。
- マネージャー ID:ユーザーのマネージャーを更新する場合に必要です。マネージャー ID の取得については、こちらをご参照ください。
- 列 ID:カスタム列の情報を更新する場合は、その列の ID が必要です。GET /odata/v2/UserFields エンドポイントを実行すると、システム列とカスタム列のすべての情報が取得でき、その中に列 ID も含まれています。
注記:PUT メソッドでユーザー情報を更新する場合は注意が必要です!
ユーザー情報の更新に使用する PUT メソッドは、指定した項目だけでなく、ユーザー情報全体を上書きします。
そのため、リクエストに含めなかった項目は「空の値」で上書きされます。
更新するときは、変更したい項目だけでなく、必要な項目はすべて含める必要があります。
手順:
1.https://api.365.systems/ にアクセスし、API キーで認証します。
2.Users セクションに移動し、 PUT /odata/v2/Users('{LoginName}') update user's info エンドポイントを選択し、右上の[Try it out]をクリックします。
3.パラメータを入力します。
- LoginName*:「key: LoginName」フィールドに、情報を更新するユーザーのログイン名を入力します。
-
user*:「Edit Value」フィールドに、詳細情報を入力します。
"Title": "string" パラメータは必須です。「string」をシステムに表示されるユーザーのフルネームに置き換えます。
※ 「Edit Value」フィールドで入力されていないパラメータは、”null” 値で上書きされますので注意してください。現在の情報をそのまま残す場合は、それらすべてをこのフィールドで指定します。
システム列のすべてのパラメーターは、ManagerId を除き、文字列です。ManagerId を更新するには、マネージャーのユーザ ーID を入力します。
カスタム列の情報を変更する場合は、”UserFieldValues”配列の中で以下を指定します。
- FieldId:カスタム列の ID
- Value:その列に設定する新しい値
例:すべてのシステム列と 1 つのカスタム列のユーザーの情報を更新する場合
{
"Department": "Research",
"Title": "Joanne Stefani",
"Email": "jstefani@compafi464.onmicrosoft.com",
"City": "Paris",
"Country": "France",
"Office": "Paris",
"JobTitle": "Researcher",
"Company": "Test Ltd.",
"ManagerId": "a98cf457-b3cc-4314-b995-d756fea98de3",
"UserFieldValues":
[
{"FieldId": "1c737e52-ee3b-45b1-aaec-cf981ade934c", "Value": "Senior"}
]
}
4.[Execute]を選択してリクエストを実行します。
5.Responses ブロックで結果を確認します。
- Code 2xx(例:200)は、リクエストが正しく動作したことを示します。
- エラーが発生した場合、Responses bodyには、問題を説明するコードキーとメッセージキーを含むエラーオブジェクトが含まれます。
カスタム列の情報を更新する
ユーザーの情報を更新するには、以下の情報が必要です。
- ユーザーのログイン名:ログイン名の取得については、こちらをご参照ください。
- 列 ID:カスタム列の情報を更新する場合は、その列の ID が必要です。GET /odata/v2/UserFields エンドポイントを実行すると、システム列とカスタム列のすべての情報が取得でき、その中に列 ID も含まれています。
手順:
1. https://api.365.systems/ にアクセスし、API キーで認証します。
2.Users セクションを展開し、 POST /odata/v2/Users('{LoginName}')/UpdateUserFieldValues Update user's field values エンドポイントを選択し、右上の[Try it out]をクリックします。
3.パラメータを入力します。
- LoginName*:「key: LoginName」フィールドに、情報を更新するユーザーのログイン名を入力します。
- 「Edit Value」フィールドで、、”UserFieldValues”配列の中で以下を指定します。
- FieldId:カスタム列の ID
- Value:その列に設定する新しい値
UserFieldValues 配列の中に複数のオブジェクトを入れることで、複数のカスタム列を一度に更新することができます。
例:複数のカスタム列を更新する
{
"UserFieldValues": [
{ "FieldId": "1c737e52-ee3b-45b1-aaec-cf981ade934c", "Value": "Middle"},
{ "FieldId": "d6ba00b6-692a-4b32-aa55-8cf12cd35fc7", "Value": 12}
]
}
4.[Execute]を選択してリクエストを実行します。
5.Responses ブロックで結果を確認します。
- Code 2xx(200など)は、リクエストが正しく動作したことを示します。
- エラーが発生した場合、Responses bodyには、問題を説明するコードキーとメッセージキーを含むエラーオブジェクトが含まれます。