2013-10-09 2 views
0

저는 Desire2Learn으로 데이터를 보내려는 프로젝트를 진행하고 있습니다. 나는 꽤 멀리있어, 나는 사용자 목록을 쿼리 할 수 ​​있습니다, 나는 그들의 프로필 ID를 얻을 수 있으며, 그들의 프로필을 얻은 다음 프로필을 업데이 트하십시오.프로필 ID를 OrgDefinedID를 기반으로 얻으십시오.

설명서를 살펴보면 /d2l/api/lp/1.3/users/?OrgDefinedId=123456789으로 전화하면 아래 표시된 것처럼 한 명의 사용자 만 반환됩니다.

[ 
    { 
     "OrgId": "{{ORG_ID}}", 
     "UserId": 12345, 
     "FirstName": "Christopher", 
     "MiddleName": null, 
     "LastName": "Sterling", 
     "UserName": "csterli1", 
     "ExternalEmail": "{MY_EMAIL}", 
     "OrgDefinedId": "123456789", 
     "UniqueIdentifier": "{{UID}}", 
     "Activation": { 
      "IsActive": true 
     }, 
     "DisplayName": "Chris Sterling" 
    } 
] 

문제는, 내가 나를 프로필 ID를 얻기 위해서는, 내가 위의 URL을 호출 할 수 없습니다, 대신, 내가 /d2l/api/lp/1.3/enrollments/orgUnits/{{ORG_ID}}/users/를 호출해야한다는 것입니다에 내가 실행 한 것을 믿습니다. 이 호출은 프로필 ID를 반환하지만 모든 사용자를 100 단위로 반환합니다.

내가 OrgDefinedId를 등록 메서드에 전달하고 반환 할 수있는 방법이 있다면 궁금합니다. 사용자 객체?

그게 아니라면, 내가하고 싶은 일을 할 수있는 더 좋은 방법이 있는지 궁금합니다. 현재 우리는 모든 사용자를 확보하기 위해 많은 수의 전화를 만들어서 특정 사용자의 프로필 ID를 얻을 수있는 것처럼 보입니다.

감사합니다.

답변

1

현재 등록 호출에 더 나은 필터가 없으며 프로필 식별자가 .../users/ 호출에서 반환 된 관리 사용자 데이터 레코드에 나타나지 않습니다.

또한 GET classlist for orgunit 호출은 사용자 프로필 식별자가 포함 된 데이터를 반환하고 페이징 된 집합이 아닌 JSON 배열로 데이터를 반환합니다. Enrollment.ClasstlistUser 구조에는 LMS UserId (Identifier) 및 사용자 프로필 ID (ProfileIdentifier) 데이터가 포함되어 있고 에는 OrgDefinedId 속성이 포함되어 있습니다. 마지막 데이터를 다시 얻으려면 LMS가 클래스 목록 도구에서 조직이 정의한 ID를 제공하도록 구성해야합니다. 그렇지 않은 경우 프로필 식별자와 조직에서 정의한 식별자를 결합하려면 LMS UserId를 공통 값으로 사용해야하며 함께 참여할 수있는 두 개의 데이터 세트를 가져 오기 위해 일련의 호출을 수행해야합니다.

관련 문제