Developer Platform (January 2020)

Course competencies and objectives

«  Courses (course offerings, templates, schemas)   ·  [   home  ·   reference  ·   community   |   search  ·   index   ·  routing table   ·  scopes table   ]   ·  Dropboxes (Folders, categories, submissions, feedback)  »

Contents

These actions and structures provide access to the structure in a course offering containing its learning competencies and learning objectives. This structure is grouped into a graph structure, with a virtual root node that’s not directly addressable. Each node in the graph can be either an object describing a learning competency, or a learning objective.

Attributes

COMPOBJECT_T

The competencies structure can contain two kind of objects: learning competencies and learning objectives. We use the term COMPOBJECT_T to stand in for an appropriate integer value.

Object Type

Value

Competency

1

Objective

2

Competency.CompetencyObject
{
    "Id": <number:D2LID>,
    "ObjectTypeId": <number:COMPOBJECT_T>,
    "Name": <string>,
    "Description": <string>,
    "ChildrenPage": null|{ <composite:CompetencyObjectsPage> },
    "MoreChildren": <string:APIURL>|null
}
ChildrenPage

If your query retrieved an object with children visible within your specified search depth, this will be a CompetencyObjectsPage JSON block containing the first breadth-sized page of those child records.

MoreChildren

If your query retrieved an object that has more children than would be visible in a single breadth-sized page, this property is not null and will contain an APIURL to fetch (with a GET) the next page of child records.

Competency.CompetencyObjectsPage
{
    "Objects": [ { <composite:CompetencyObject> }, ... ],
    "Next": <string:APIURL>|null
}
Next

If more objects exist beyond the breadth and depth of this current page of results, then this property is not null and will contain an APIURL to fetch (with a GET) the next page of sibling records.

Actions

GET /d2l/api/le/(version)/(orgUnitId)/competencies/structure

Retrieve the structure of course competencies and objectives as visible to the calling user.

Parameters
Query Parameters
  • parentObjectId (D2LID) – Optional. Id of the parent objective or competency (the root level, by default).

  • depth (integer) – Optional. Depth, or Number of child generations to retrieve depth to return (default is 2, minimum is 0, which fetches only children of the parentObjectId).

  • pageSize (integer) – Optional. Breadth, or number of sibling items to retrieve in each data page (default is 25, minimum is 1).

  • bookmark (integer) – Optional. Bookmark one can use for fetching the next data page.

  • forUserId (D2LID) – Optional. If present, further filters the returned competency structure to include only results also viewable by this user ID.

Status Codes
API Versions
  • 1.38+forUserId query parameter added.

  • 1.34+ – Route first appears in LMS v20.19.5.

  • 1.27-1.33Deprecated as of LMS v20.20.1.

  • 1.26-Obsolete as of LMS v20.20.1.

Return. This action returns a CompetencyObjectsPage JSON block containing the portion of the competencies structure matching your request.

Note

This action only returns the competency objects that the calling user context has permission to see. Certain competency objects may be omitted if they are drafts or otherwise not visible to the end user, showing a modified view of the competency structure if these objects are parent nodes. If the calling user has no permission to see any competency objects, this action returns an empty result page.

«  Courses (course offerings, templates, schemas)   ·  [   home  ·   reference  ·   community   |   search  ·   index   ·  routing table   ·  scopes table   ]   ·  Dropboxes (Folders, categories, submissions, feedback)  »