0

我正在开展一个项目,我们计划将一些数据发送回 Desire2Learn。我已经走了很远,我可以查询用户列表,我可以获取他们的个人资料 ID,获取他们的个人资料,然后更新所述个人资料。

我在查看文档时注意到,如果我调用 /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"
    }
]

我相信,我遇到的问题是,为了让我获得 Profile ID,我不能调用上面的 url,而是必须调用/d2l/api/lp/1.3/enrollments/orgUnits/{{ORG_ID}}/users/. 那里的调用返回配置文件 ID,但它也返回所有用户,增量为 100。

我想知道是否有一种方法可以将 ?OrgDefinedId 传递给注册方法并让它返回用户对象?

如果不是这种情况,我想知道,有没有更好的方法来做我想做的事情。目前看来,我将进行大量调用以获取所有用户,以便我们可以获取给定用户的个人资料 ID。

谢谢!

4

1 回答 1

1

当前没有更好的注册调用过滤器,配置文件标识符也不会出现在从.../users/调用返回的管理用户数据记录中。

orgunit调用的GET 类列表还返回包含用户配置文件标识符的数据,它以 JSON 数组而不是分页集的形式返回数据。Enrollment.ClasstlistUser结构包含 LMS UserId ( )Identifier和用户配置文件 ID ( ProfileIdentifier) 数据,可以包含OrgDefinedId属性。但是,为了取回最后的数据,您的 LMS 必须配置为在 Classlist 工具中提供组织定义的 ID。如果不是,那么要在配置文件标识符和组织定义的标识符之间建立联合,您需要使用 LMS UserId 作为公共值,并进行一系列调用以取回可以连接在一起的两个数据集。

于 2013-10-10T12:51:41.733 回答