1

組織単位のカスケード構造からユーザーの登録を削除する方法は? 私のアプリでは、次のパスを使用して登録を作成します。

POST /d2l/api/lp/1.4/enrollments/

リクエスト本文:

{
 "OrgUnitId": 123,
 "UserId": 4,
 "RoleId": 5
}

この呼び出しにより、3 つの登録が作成されます。

  1. OrgUnitId=123 -> コース提供
  2. OrgUnitId=124 -> セクション
  3. OrgUnitId=125 -> グループ

そのため、トップ レベルの orgUnitId (コース オファリングに関連) しか知りません。その他の登録は自動的に作成されます。

登録を削除しようとすると、次の DELETE 呼び出しを使用します。

/d2l/api/lp/1.4/enrollments/orgUnits/123/users/4

この呼び出しの後、「登録の子」がまだ表示されます。

  • OrgUnitId=124 -> セクション
  • OrgUnitId=125 -> グループ

どうすれば削除できますか?

4

1 に答える 1

0

理想的には、API でこれを処理できますが、別の方法を次に示します。

DELETE 呼び出しは、削除前のステータスを示す EnrollmentData ブロックを返します。

{
"OrgUnitId": <number:D2LID>,
"UserId": <number:D2LID>,
"RoleId": <number:D2LID>,
"IsCascading": <boolean>
}

IsCascading が true の場合、以下の要求を使用して子を取得し、子 OrgUnit で元の DELETE ステートメントを繰り返します。

GET /d2l/api/lp/(version)/orgstructure/(orgUnitId)/descendants/

( http://docs.valence.desire2learn.com/res/orgunit.html#get--d2l-api-lp-%28version%29-orgstructure-%28orgUnitId%29-descendants-を参照)

于 2014-10-10T16:38:46.057 に答える