These attributes and actions collect together functionality around groups; assigning users to the various defined child organizational units of a course that represent a sub-sections of users enrolled in that course.
Sections are a specialized type of group that have similar actions and properties to a group, but which are accessed through separate actions.
A user’s enrollment in the parent course restricts access to groups actions and properties. The role permissions are configured for the tool Groups and Sections Management.
Attributes¶
- GRPENROLL_T¶
We categorize the ways that individual entities can enroll in groups using a number of different general types and use the term GRPENROLL_T to stand in for an appropriate integer value.
Group enrollment style
Values
NumberOfGroupsNoEnrollment
0
PeoplePerGroupAutoEnrollment
1
NumberOfGroupsAutoEnrollment
2
PeoplePerGroupSelfEnrollment
3
SelfEnrollmentNumberOfGroups
4
PeoplePerNumberOfGroupsSelfEnrollment
5
SingleUserMemberSpecificGroup
6
- SECTENROLL_T¶
We categorize the ways that individual entities can enroll into sections using a number of different general types and use the term SECTENROLL_T to stand in for an appropriate integer value.
Section enrollment style
Values
PeoplePerSectionAutoEnrollment
1
NumberOfSectionsAutoEnrollment
2
- GROUPSJOBSTATUS_T¶
Group category creation jobs will have one of several distinct states. We use the term GROUPSJOBSTATUS_T to stand in for an appropriate integer value.
Groups job status
Values
Processing
0
Complete
1
Groups¶
- Group.GroupData¶
Create, Update. When you use actions that provide Group Data information to the service, you should provide a block that looks like this:
{ "Name": <string>, "Code": <string>, "Description": { <composite:RichTextInput> } }
- Code
Note that group code values have these limitations:
They cannot be more than 50 characters in length.
They may not contain these special characters:
\ : * ? “ ” < > | ‘ # , % &
- Description
Note that this property uses the RichTextInput structure type.
Fetch. When you use actions that retrieve Group Data information, the service provides a block like this:
{ "GroupId": <number:D2LID>, "Name": <string>, "Code": <string>, "Description": { <composite:RichText> }, "Enrollments": [ <number:D2LID>, ... ] }
- Enrollments
This property contains a list of user IDs for the explicitly enrolled users in the group.
- Group.GroupCategoryData¶
Create. When you use actions that provide Group Category Data information to the service, you should provide a block that looks like this:
{ "Name": <string>, "Description": { <composite:RichTextInput> }, "EnrollmentStyle": <number:GRPENROLL_T>, "EnrollmentQuantity": <number>|null, "AutoEnroll": <boolean>, "RandomizeEnrollments": <boolean>, "NumberOfGroups": <number>|null, "MaxUsersPerGroup": <number>|null, "AllocateAfterExpiry": <boolean>, "SelfEnrollmentExpiryDate": <string:UTCDateTime>|null, "GroupPrefix": <string>|null, "RestrictedByOrgUnitId": <number:D2LID>|null, "DescriptionsVisibleToEnrolees": <boolean> // Added with LP API v1.42 }
- Description
Note that this property uses the RichTextInput structure type.
- EnrollmentQuantity
If you provide a non-null value for this property, the service will ignore any values you provide for NumberOfGroups and MaxUsersPerGroup.
- NumberOfGroups
If you don’t provide a value for EnrollmentQuantity, then you should provide a non-null value for this property when creating a group category of one of these types:
NumberOfGroupsNoEnrollment (0)
NumberOfGroupsAutoEnrollment (2)
SelfEnrollmentNumberOfGroups (4)
PeoplePerNumberOfGroupsSelfEnrollment (5)
- MaxUsersPerGroup
If you don’t provide a value for EnrollmentQuantity, then you should provide a non-null value for this property when creating a group category of one of these types:
PeoplePerGroupAutoEnrollment (1)
PeoplePerGroupSelfEnrollment (3)
PeoplePerNumberOfGroupsSelfEnrollment (5)
- AllocateAfterExpiry and SelfEnrollmentExpiryDate
You should only set AllocateAfterExpiry to true if a value is provided for SelfEnrollmentExpiryDate. You should only set these values when you create a group category with one of these types:
PeoplePerGroupAutoEnrollment (1)
PeoplePerGroupSelfEnrollment (3)
PeoplePerNumberOfGroupsSelfEnrollment (5)
- GroupPrefix
If you specify a GroupPrefix, the back-end service will prepend it to both the GroupName and the GroupCode; if you don’t provide a value, the service will use default prefix values instead.
- EnrollmentStyle
If you specify an EnrollmentStyle of SingleUserMemberSpecificGroup (added as of LE v1.10 API), values set for NumberOfGroups and MaxUsersPerGroup will be ignored. This style of group creates a single group per user enrolled in the orgunit.
- RestrictedByOrgUnitId
If you specify a RestrictedByOrgUnitId, the orgunit must be the id of a group or section also in the parent orgunit. The group category’s group members are restricted to only members of the group or section specified by the RestrictedByOrgUnitId.
- DescriptionsVisibleToEnrolee
If not specified, this property will be set to false by default.
Fetch. When you use actions that retrieve Group Category Data information, the service provides a block like this:
{ "GroupCategoryId": <number:D2LID>, "Name": <string>, "Description": { <composite:RichText> }, "EnrollmentStyle": <number:GRPENROLL_T>, "EnrollmentQuantity": <number>|null, "MaxUsersPerGroup": <number>|null, "AutoEnroll": <boolean>, "RandomizeEnrollments": <boolean>, "Groups": [ <number:D2LID>, ... ], "AllocateAfterExpiry": <boolean>, "SelfEnrollmentExpiryDate": <string:UTCDateTime>|null, "RestrictedByOrgUnitId": <number:D2LID>|null, "DescriptionsVisibleToEnrolees": <boolean> // Added with LP API v1.42 }
- EnrollmentQuantity
This property may appear, but is deprecated, and you should use MaxUsersPerGroup as a working value instead.
- MaxUsersPerGroup
This property will have a non-null value for groups for group category types:
PeoplePerGroupAutoEnrollment (1)
PeoplePerGroupSelfEnrollment (3)
PeoplePerNumberOfGroupsSelfEnrollment (5)
- Groups
This property contains a list of Group IDs for all the groups that belong to this group category.
Update. When you use actions that update existing Group Category Data information, you should provide a block that looks like this:
{ "Name": <string>, "Description": { <composite:RichTextInput> }, "AutoEnroll": <boolean>, "RandomizeEnrollments": <boolean>, "DescriptionsVisibleToEnrolees": <boolean> // Added with LP API v1.42 }
- Description
Note that this property uses the RichTextInput structure type.
- DescriptionsVisibleToEnrolee
If not specified, this property will be set to false by default.
- Group.GroupEnrollment¶
{ "UserId": <number:D2LID> }
- Group.GroupsJobData¶
{ "OrgUnitId": <number:D2LID>, "CategoryId": <number:D2LID>, "SubmitDate": <string:UTCDateTime>, "Status": <int:GROUPSJOBSTATUS_T> }
- Group.GroupCategoryJobStatus¶
{ "Status": <int:GROUPSJOBSTATUS_T> }
Sections¶
- Section.SectionData¶
These section data structures comprise the properties held by the individual sections that are descendants of a course offering.
Create, Update. When you use actions that provide section property information to the service, you should provide a block that looks like this:
{ "Name": <string>, "Code": <string>, "Description": { <composite:RichTextInput> } }
- Code
Note that section code values have these limitations:
They cannot be more than 50 characters in length.
They may not contain these special characters:
\ : * ? “ ” < > | ‘ # , % &
Fetch. When you use actions to fetch the properties of a section, the service provides a block that looks like this:
{ "SectionId": <number:D2LID>, "Name": <string>, "Code": <string>, "Description": { <composite:RichText> }, "Enrollments": [ <number:D2LID>, ... ] }
- Enrollments
This property contains a list of user IDs for the explicitly enrolled users enrolled in the section.
Enrolled. When you use actions to fetch the section properties for the sections in which you are enrolled, the service provides a block that looks like this:
{ "SectionId": <number:D2LID>, "Name": <string>, "Code:" <string>, "Description": null|{ <composite:RichText> } }
- Description
This property may be null if the section settings for the associated course offering require hiding the section’s description.
- Section.SectionEnrollment¶
{ "UserId": <number:D2LID> }
- Section.SectionSettingsData¶
These section settings structures comprise the settings for all sections that are descendants of a particular course offering. These notes apply to fields in the section settings structures of all forms:
- DescriptionsVisibleToEnrollees
Note that when this property is false, the Descriptions property in the Enrolled form of Section.SectionData will always be null for sections in this course offering.
- Name, Description
A name and description for all of the sections in this course offering collectively.
Create. When you use actions to initialize the settings for all sections in a course offering, you should provide a block that looks like this:
{ "EnrollmentStyle": <number:SECTENROLL_T>, "EnrollmentQuantity": <number>, "AutoEnroll": <boolean>, "RandomizeEnrollments": <boolean>, "DescriptionsVisibleToEnrollees": <boolean> // Added with LP API v1.39 }
- AutoEnroll
If true, automatically enroll a user in a section when they get added to the parent org unit; how this happens depends on your enrollment style:
For “number of sections” style, new users will get auto-enrolled into one of the sections that exist at the time of that user’s enrollment in the parent org unit.
For “people per section style”, new users will get added to the first, not-full section, and new sections will get automatically created to fit new users added to the parent org unit if no partially full sections exist to accommodate them.
- EnrollmentStyle
Determines the type of enrollment that will affect how your sections get populated.
- EnrollmentQuantity
Determines the number of sections to auto-create upon initialization depending upon the enrollment style you chose:
For “number of sections” style, this determines the number of sections to auto-create.
For “people per section style”, this determines the number of people to put in a section: starting with the first user, this many users will be counted off, again and again, to auto-create sections until no enrolled users are left to assign from the parent org unit.
Fetch. When you use actions to fetch the settings for all sections in a course offering, the service provides a block that looks like this:
{ "Name": <string>, "Description": { <composite:RichText> }, "EnrollmentStyle": <number:SECTENROLL_T>, "EnrollmentQuantity": <number>, "AutoEnroll": <boolean>, "RandomizeEnrollments": <boolean>, "DescriptionsVisibleToEnrollees": <boolean> // Added with LP API v1.39 }
Update. When you use actions that update the settings for all sections in a course offering, you should provide a block that looks like this:
{ "Name": <string>, "Description": { <composite:RichTextInput> }, "AutoEnroll": <boolean>, "RandomizeEnrollments": <boolean>, "DescriptionsVisibleToEnrollees": <boolean> // Added with LP API v1.39 }
Actions¶
Groups¶
Note that, as of release 20.22.6, the back-end service no longer supports synchronous creation of group categories. As of release 20.22.6, in order to create a group category, you must now:
Use the
category-creation action
to initiate the asynchronous creation process.Use the
status-check action
to monitor the status of the creation process.Upon completion of the process, use the
retrieve-details action
to read the details of the newly created group category.
- DELETE /d2l/api/lp/(version)/(orgUnitId)/groupcategories/(groupCategoryId)¶
Delete a particular group category from an org unit.
- Parameters:
version (D2LVERSION) – API version.
orgUnitId (D2LID) – Org unit ID.
groupCategoryId (D2LID) – Group category ID.
- Oauth2 Scopes:
groups:group:delete
- Status Codes:
200 OK – Action succeeded.
400 Bad Request – No such org unit, or group category contains groups.
403 Forbidden – No permission to modify groups.
404 Not Found – Group category not found.
429 Too Many Requests – API call-rate limit exceeded.
- API Versions:
1.43+ – Route first appears in LMS v20.23.5.
1.35-1.42 – Deprecated as of LMS v20.24.1.
1.34- – Obsolete as of LMS v20.24.1.
Note
You cannot use this action to delete a group category that currently has associated groups.
- DELETE /d2l/api/lp/(version)/(orgUnitId)/groupcategories/(groupCategoryId)/groups/(groupId)¶
Delete a particular group from an org unit.
- Parameters:
version (D2LVERSION) – API version.
orgUnitId (D2LID) – Org unit ID.
groupCategoryId (D2LID) – Group category ID.
groupId (D2LID) – Group ID.
- Oauth2 Scopes:
groups:group:delete
- Status Codes:
200 OK – Action succeeded.
400 Bad Request – No such org unit.
403 Forbidden – No permission to modify groups.
404 Not Found – Group category not found, or group not found.
409 Conflict – Group category creation is still processing.
429 Too Many Requests – API call-rate limit exceeded.
- API Versions:
1.43+ – Route first appears in LMS v20.23.5.
1.35-1.42 – Deprecated as of LMS v20.24.1.
1.34- – Obsolete as of LMS v20.24.1.
- DELETE /d2l/api/lp/(version)/(orgUnitId)/groupcategories/(groupCategoryId)/groups/(groupId)/enrollments/(userId)¶
Remove a particular user from a group.
- Parameters:
version (D2LVERSION) – API version.
orgUnitId (D2LID) – Org unit ID.
groupCategoryId (D2LID) – Group category ID.
groupId (D2LID) – Group ID.
userId (D2LID) – User ID.
- Oauth2 Scopes:
groups:enrollment:delete
- Status Codes:
200 OK – Action succeeded.
400 Bad Request – No such org unit.
403 Forbidden – No permission to modify groups.
404 Not Found – Group category not found, or group not found, or group does not belong to declared category.
409 Conflict – Group category creation is still processing.
429 Too Many Requests – API call-rate limit exceeded.
- API Versions:
1.43+ – Route first appears in LMS v20.23.5.
1.35-1.42 – Deprecated as of LMS v20.24.1.
1.34- – Obsolete as of LMS v20.24.1.
- GET /d2l/api/lp/(version)/(orgUnitId)/groupcategories/¶
Retrieve a list of all the group categories for the provided org unit.
- Parameters:
version (D2LVERSION) – API version.
orgUnitId (D2LID) – Org unit ID.
- Oauth2 Scopes:
groups:group:read
- Status Codes:
200 OK – Action succeeded.
400 Bad Request – No such org unit.
403 Forbidden – No permission to see groups.
429 Too Many Requests – API call-rate limit exceeded.
- API Versions:
1.43+ – Route first appears in LMS v20.23.5.
1.35-1.42 – Deprecated as of LMS v20.24.1.
1.34- – Obsolete as of LMS v20.24.1.
Return. This action returns a JSON array of
GroupCategoryData
blocks, in the Fetch form.
- GET /d2l/api/lp/(version)/(orgUnitId)/groupcategories/(groupCategoryId)¶
Retrieve a particular group category for an org unit.
- Parameters:
version (D2LVERSION) – API version.
orgUnitId (D2LID) – Org unit ID.
groupCategoryId (D2LID) – Group category ID.
- Oauth2 Scopes:
groups:group:read
- Status Codes:
200 OK – Action succeeded.
400 Bad Request – No such org unit.
403 Forbidden – No permission to see groups.
404 Not Found – Group category not found.
429 Too Many Requests – API call-rate limit exceeded.
- API Versions:
1.43+ – Route first appears in LMS v20.23.5.
1.35-1.42 – Deprecated as of LMS v20.24.1.
1.34- – Obsolete as of LMS v20.24.1.
Return. This action returns a
GroupCategoryData
JSON block, in the Fetch form.
- GET /d2l/api/lp/(version)/(orgUnitId)/groupcategories/(groupCategoryId)/status¶
Retrieve the creation job status of a particular group category for an org unit.
- Parameters:
version (D2LVERSION) – API version.
orgUnitId (D2LID) – Org unit ID.
groupCategoryId (D2LID) – Group category ID.
- Oauth2 Scopes:
groups:group:read
- Status Codes:
200 OK – Action succeeded.
400 Bad Request – No such org unit.
403 Forbidden – No permission to see groups.
404 Not Found – Group category not found.
429 Too Many Requests – API call-rate limit exceeded.
- API Versions:
1.43+ – Route first appears in LMS v20.23.5.
1.38-1.42 – Deprecated as of LMS v20.24.1.
Return. This action returns a
GroupCategoryJobStatus
JSON block.
- GET /d2l/api/lp/(version)/(orgUnitId)/groupcategories/(groupCategoryId)/groups/¶
Retrieve a list of all the groups in a particular group category for an org unit.
- Parameters:
version (D2LVERSION) – API version.
orgUnitId (D2LID) – Org unit ID.
groupCategoryId (D2LID) – Group category ID.
- Oauth2 Scopes:
groups:group:read
- Status Codes:
200 OK – Action succeeded.
403 Forbidden – No permission to see groups.
404 Not Found – Group category not found.
429 Too Many Requests – API call-rate limit exceeded.
- API Versions:
1.43+ – Route first appears in LMS v20.23.5.
1.35-1.42 – Deprecated as of LMS v20.24.1.
1.34- – Obsolete as of LMS v20.24.1.
Return. This action returns a JSON array of
GroupData
data blocks, in the Fetch form.
- GET /d2l/api/lp/(version)/(orgUnitId)/groupcategories/(groupCategoryId)/groups/(groupId)¶
Retrieve a particular group in an org unit.
- Parameters:
version (D2LVERSION) – API version.
orgUnitId (D2LID) – Org unit ID.
groupCategoryId (D2LID) – Group category ID.
groupId (D2LID) – Group ID.
- Oauth2 Scopes:
groups:group:read
- Status Codes:
200 OK – Action succeeded.
400 Bad Request – No such org unit.
403 Forbidden – No permission to see groups.
404 Not Found – Group category not found, group not found.
429 Too Many Requests – API call-rate limit exceeded.
- API Versions:
1.43+ – Route first appears in LMS v20.23.5.
1.35-1.42 – Deprecated as of LMS v20.24.1.
1.34- – Obsolete as of LMS v20.24.1.
Return. This action returns a
GroupData
JSON data block, in the Fetch form.
- POST /d2l/api/lp/(version)/(orgUnitId)/groupcategories/¶
Create a new group category for an org unit.
- Parameters:
version (D2LVERSION) – API version.
orgUnitId (D2LID) – Org unit ID.
- JSON Parameters:
GroupCategoryData (
Group.GroupCategoryData
in Create form) – New group category properties.
- Oauth2 Scopes:
groups:group:create
- Status Codes:
202 Accepted – Action accepted and group category creation is pending.
400 Bad Request – No such org unit, or invalid group category data provided.
403 Forbidden – No permission to modify groups.
429 Too Many Requests – API call-rate limit exceeded.
- API Versions:
1.43+ – Route first appears in LMS v20.23.5.
1.35-1.42 – Deprecated as of LMS v20.24.1.
1.34- – Obsolete as of LMS v20.24.1.
Return. This action returns a
GroupsJobData
JSON block for the newly created group category. Note that actions that interact with the group category’s groups may not be available immediately on creation. You can make a call to the service’sgroup category creation status action
to confirm whether a newly-created group category can be altered.Warning
Note that the behaviour of this action has changed across all API versions. The back-end service no longer supports synchronous creation of group categories. As of release 20.22.6, this action has changed to start an asynchronous process to create a group category, rather than synchronously creating one.
- POST /d2l/api/lp/(version)/(orgUnitId)/groupcategories/(groupCategoryId)/groups/¶
Create a new group for an org unit.
- Parameters:
version (D2LVERSION) – API version.
orgUnitId (D2LID) – Org unit ID.
groupCategoryId (D2LID) – Group category ID.
- JSON Parameters:
GroupData (
Group.GroupData
in Create form) – New group properties.
- Oauth2 Scopes:
groups:group:create
- Status Codes:
200 OK – Action succeeded.
400 Bad Request – Invalid group data provided.
403 Forbidden – No permission to modify groups.
404 Not Found – Group category not found.
409 Conflict – Group category creation is still processing.
429 Too Many Requests – API call-rate limit exceeded.
- API Versions:
1.43+ – Route first appears in LMS v20.23.5.
1.35-1.42 – Deprecated as of LMS v20.24.1.
1.34- – Obsolete as of LMS v20.24.1.
Return. This action returns a
GroupData
JSON block, in the Fetch form, for the newly created group.
- POST /d2l/api/lp/(version)/(orgUnitId)/groupcategories/(groupCategoryId)/groups/(groupId)/enrollments/¶
Enroll a user in a group.
- Parameters:
version (D2LVERSION) – API version.
orgUnitId (D2LID) – Org unit ID.
groupCategoryId (D2LID) – Group category ID.
groupId (D2LID) – Group ID.
- JSON Parameters:
GroupEnrollment (
Group.GroupEnrollment
) – Enrollment block for enrollment in the group.
- Oauth2 Scopes:
groups:enrollment:create
- Status Codes:
200 OK – Action succeeded.
403 Forbidden – No permission to manage groups.
404 Not Found – Group category not found, or group not found, or provided user ID not found.
409 Conflict – Group category creation is still processing.
429 Too Many Requests – API call-rate limit exceeded.
- API Versions:
1.43+ – Route first appears in LMS v20.23.5.
1.35-1.42 – Deprecated as of LMS v20.24.1.
1.34- – Obsolete as of LMS v20.24.1.
- PUT /d2l/api/lp/(version)/(orgUnitId)/groupcategories/(groupCategoryId)¶
Update a particular group category for an org unit.
- Parameters:
version (D2LVERSION) – API version.
orgUnitId (D2LID) – Org unit ID.
groupCategoryId (D2LID) – Group category ID.
- JSON Parameters:
GroupCategoryData (
Group.GroupCategoryData
in Update form) – Updated group category properties.
- Oauth2 Scopes:
groups:group:update
- Status Codes:
200 OK – Action succeeded.
400 Bad Request – Invalid group category data provided.
403 Forbidden – No permission to manage groups.
404 Not Found – Group category not found.
429 Too Many Requests – API call-rate limit exceeded.
- API Versions:
1.43+ – Route first appears in LMS v20.23.5.
1.35-1.42 – Deprecated as of LMS v20.24.1.
1.34- – Obsolete as of LMS v20.24.1.
Return. This action returns a
GroupCategoryData
JSON block, in the Fetch form, for the newly updated group category.
- PUT /d2l/api/lp/(version)/(orgUnitId)/groupcategories/(groupCategoryId)/groups/(groupId)¶
Update a particular group for an org unit.
- Parameters:
version (D2LVERSION) – API version.
orgUnitId (D2LID) – Org unit ID.
groupCategoryId (D2LID) – Group category ID.
groupId (D2LID) – Group ID.
- JSON Parameters:
GroupData (
Group.GroupData
in Update form) – Updated group properties.
- Oauth2 Scopes:
groups:group:update
- Status Codes:
200 OK – Action succeeded.
400 Bad Request – Invalid group data provided.
403 Forbidden – No permission to manage groups.
404 Not Found – Group category not found, or group not found.
409 Conflict – Group category creation is still processing.
429 Too Many Requests – API call-rate limit exceeded.
- API Versions:
1.43+ – Route first appears in LMS v20.23.5.
1.35-1.42 – Deprecated as of LMS v20.24.1.
1.34- – Obsolete as of LMS v20.24.1.
Return. This action returns a
GroupData
JSON block, in the Fetch form, for the newly updated group.
Sections¶
Note that we provide two general categories of actions around sections:
Actions to manage the section settings that apply to all sections in a course offering.
Actions to manage the properties for individual sections in a course offering.
The general workflow you might use would be to first create and configure the settings you want for all the sections in a course offering, and then to create individual sections and manage their properties as needed.
- DELETE /d2l/api/lp/(version)/(orgUnitId)/sections/(sectionId)¶
Delete a section from a provided org unit.
- Parameters:
version (D2LVERSION) – API version.
orgUnitId (D2LID) – Org unit ID.
sectionId (D2LID) – Section ID.
- Oauth2 Scopes:
sections:section:delete
- Status Codes:
200 OK – Action succeeded.
403 Forbidden – No permission to manage sections.
404 Not Found – No such org unit, or org unit has no sections, or no such section.
429 Too Many Requests – API call-rate limit exceeded.
- API Versions:
1.43+ – Route first appears in LMS v20.23.5.
1.35-1.42 – Deprecated as of LMS v20.24.1.
1.34- – Obsolete as of LMS v20.24.1.
- GET /d2l/api/lp/(version)/(orgUnitId)/sections/¶
Retrieve all the sections for a provided org unit.
- Parameters:
version (D2LVERSION) – API version.
orgUnitId (D2LID) – Org unit ID.
- Oauth2 Scopes:
sections:section:read
- Status Codes:
200 OK – Action succeeded.
403 Forbidden – No permission to see sections.
404 Not Found – No such org unit, or org unit has no sections.
429 Too Many Requests – API call-rate limit exceeded.
- API Versions:
1.43+ – Route first appears in LMS v20.23.5.
1.35-1.42 – Deprecated as of LMS v20.24.1.
1.34- – Obsolete as of LMS v20.24.1.
Return. This action returns a JSON array of
SectionData
blocks in the Fetch form.
- GET /d2l/api/lp/(version)/(orgUnitId)/sections/mysections/¶
Retrieve all the sections for a provided org unit in which the calling user is enrolled.
- Parameters:
version (D2LVERSION) – API version.
orgUnitId (D2LID) – Org unit ID.
- Oauth2 Scopes:
sections:own_section:read
- Status Codes:
200 OK – Action succeeded.
403 Forbidden – User is not enrolled in the org unit.
404 Not Found – No such org unit, or org unit is not configured to have sections.
429 Too Many Requests – API call-rate limit exceeded.
- API Versions:
1.43+ – Route first appears in LMS v20.23.5.
1.39-1.42 – Deprecated as of LMS v20.24.1.
Return. This action returns a JSON array of
SectionData
blocks in the Enrolled form for all the sections in which the calling user is enrolled.Note
If the settings for sections in this org unit have the setting DescriptionsVisibleToEnrollees as false, then the Description fields in the return section data elements will be null.
- GET /d2l/api/lp/(version)/(orgUnitId)/sections/settings¶
Retrieve the settings for all sections in an org unit.
- Parameters:
version (D2LVERSION) – API version.
orgUnitId (D2LID) – Org unit ID.
- Oauth2 Scopes:
sections:section:read
- Status Codes:
200 OK – Action succeeded.
403 Forbidden – No permission to see sections.
404 Not Found – No such org unit, or org unit has no set property data.
429 Too Many Requests – API call-rate limit exceeded.
- API Versions:
1.43+ – Route first appears in LMS v20.23.5.
1.35-1.42 – Deprecated as of LMS v20.24.1.
1.34- – Obsolete as of LMS v20.24.1.
Return. This action returns a
SectionSettingsData
JSON block in the Fetch form.
- GET /d2l/api/lp/(version)/(orgUnitId)/sections/(sectionId)¶
Retrieve a section from a particular org unit.
- Parameters:
version (D2LVERSION) – API version.
orgUnitId (D2LID) – Org unit ID.
sectionId (D2LID) – Section ID.
- Oauth2 Scopes:
sections:section:read
- Status Codes:
200 OK – Action succeeded.
403 Forbidden – No permission to see sections.
404 Not Found – No such org unit, or no such section.
429 Too Many Requests – API call-rate limit exceeded.
- API Versions:
1.43+ – Route first appears in LMS v20.23.5.
1.35-1.42 – Deprecated as of LMS v20.24.1.
1.34- – Obsolete as of LMS v20.24.1.
Return. This action returns a
SectionData
JSON block in the Fetch form.
- POST /d2l/api/lp/(version)/(orgUnitId)/sections/¶
Create a new section in a particular org unit.
- Parameters:
version (D2LVERSION) – API version.
orgUnitId (D2LID) – Org unit ID.
- JSON Parameters:
SectionData (
Section.SectionData
in Create form) – New section data.
- Oauth2 Scopes:
sections:section:create
- Status Codes:
200 OK – Action succeeded.
400 Bad Request – Invalid section data provided.
403 Forbidden – No permission to manage sections.
404 Not Found – No such org unit, or org unit has no sections.
429 Too Many Requests – API call-rate limit exceeded.
- API Versions:
1.43+ – Route first appears in LMS v20.23.5.
1.35-1.42 – Deprecated as of LMS v20.24.1.
1.34- – Obsolete as of LMS v20.24.1.
Return. This action returns the
SectionData
JSON block, in its Fetch form, for the org unit’s new section.Note
You can only use this action to add a section to an org unit that’s already been initialized with section settings for the org unit (see
POST /d2l/api/lp/(version)/(orgUnitId)/sections/settings
).
- POST /d2l/api/lp/(version)/(orgUnitId)/sections/settings¶
Initialize the settings for all sections in a particular org unit.
- Parameters:
version (D2LVERSION) – API version.
orgUnitId (D2LID) – Org unit ID.
- JSON Parameters:
SectionSettingsData (
Section.SectionSettingsData
in Create form) – New settings for sections in this org unit.
- Oauth2 Scopes:
sections:section:create
- Status Codes:
200 OK – Action succeeded.
400 Bad Request – Invalid section settings provided, or org unit has already been initialized.
403 Forbidden – No permission to manage sections.
404 Not Found – No such org unit.
429 Too Many Requests – API call-rate limit exceeded.
- API Versions:
1.43+ – Route first appears in LMS v20.23.5.
1.39-1.42 – Deprecated as of LMS v20.24.1.
Input. You can only use this action to initialize the settings for all sections in an org unit; this will also create the first section(s) in the org unit using your initialized settings, depending upon the
enrollment style and quantity
you have provided in yourSectionSettingsData
.Once you’ve used this action to do so, you must subsequently use
PUT /d2l/api/lp/(version)/(orgUnitId)/sections/settings
to manage the section settings for the org unit.POST /d2l/api/lp/(version)/(orgUnitId)/sections/
to create any additional sections as descendants of the org unit.
Return. This action returns the
SectionSettingsData
JSON block, in its Fetch form, for the org unit’s new section properties.Note
As of LP API version 1.39, this action replaces the
older action used to initialize section settings
.
- POST /d2l/api/lp/(version)/(orgUnitId)/sections/(sectionId)/enrollments/¶
Enroll a user in a section for a particular org unit.
- Parameters:
version (D2LVERSION) – API version.
orgUnitId (D2LID) – Org unit ID.
sectionId (D2LID) – Section ID.
- JSON Parameters:
SectionEnrollment (
Section.SectionEnrollment
) – Enrollment block for enrollment in the section.
- Oauth2 Scopes:
sections:enrollment:create
- Status Codes:
200 OK – Action succeeded.
403 Forbidden – No permission to manage sections.
404 Not Found – No such org unit, or section not found, or no enrollment parameter provided, or user to enroll not found.
429 Too Many Requests – API call-rate limit exceeded.
- API Versions:
1.43+ – Route first appears in LMS v20.23.5.
1.35-1.42 – Deprecated as of LMS v20.24.1.
1.34- – Obsolete as of LMS v20.24.1.
Input. Note that the user provided as input to this action must already be explicitly enrolled into the org unit identified by the action’s orgUnitId route parameter.
- PUT /d2l/api/lp/(version)/(orgUnitId)/sections/¶
Initialize the settings for all sections in a particular org unit.
- Parameters:
version (D2LVERSION) – API version.
orgUnitId (D2LID) – Org unit ID.
- JSON Parameters:
SectionSettingsData (
Section.SectionSettingsData
in Create form) – New properties for org unit sections.
- Oauth2 Scopes:
sections:section:update
- API Support:
deprecated
- Status Codes:
200 OK – Action succeeded.
400 Bad Request – Invalid section settings provided, or the section settings have already been initialized.
403 Forbidden – No permission to manage sections.
404 Not Found – No such org unit.
429 Too Many Requests – API call-rate limit exceeded.
- API Versions:
1.43+ – Route first appears in LMS v20.23.5.
1.35-1.42 – Deprecated as of LMS v20.24.1.
1.34- – Obsolete as of LMS v20.24.1.
Input. You can only use this action to initialize the settings for all sections in an org unit; this will also create the first section(s) in the org unit using your initialized settings, depending upon the
enrollment style and quantity
you have provided in yourSectionSettingsData
.Once you’ve used this action to do so, you must subsequently use
POST /d2l/api/lp/(version)/(orgUnitId)/sections/
to create any additional sections as descedants to this org unit.Return. This action returns a JSON array of
SectionData
data blocks, in the Fetch form, for the org unit’s initial section(s).Warning
As of LP API version 1.39, this action is no longer supported or present. Instead, use the newer
POST action
to initialize the settings for all sections in this org unit.
- PUT /d2l/api/lp/(version)/(orgUnitId)/sections/settings¶
Update the section settings for an org unit.
- Parameters:
version (D2LVERSION) – API version.
orgUnitId (D2LID) – Org unit ID.
- JSON Parameters:
SectionSettingsData (
Section.SectionSettingsData
in Update form) – Updated settings for all sections in this org unit.
- Oauth2 Scopes:
sections:section:update
- Status Codes:
200 OK – Action succeeded.
400 Bad Request – Invalid section settings provided.
403 Forbidden – No permission to modify sections.
404 Not Found – No such org unit, or org unit has no current section settings.
429 Too Many Requests – API call-rate limit exceeded.
- API Versions:
1.43+ – Route first appears in LMS v20.23.5.
1.35-1.42 – Deprecated as of LMS v20.24.1.
1.34- – Obsolete as of LMS v20.24.1.
Return. This action returns the
SectionSettingsData
JSON block, in its Fetch form, for the org unit’s updated section properties.
- PUT /d2l/api/lp/(version)/(orgUnitId)/sections/(sectionId)¶
Update information for a section in a particular org unit.
- Parameters:
version (D2LVERSION) – API version.
orgUnitId (D2LID) – Org unit ID.
sectionId (D2LID) – Section ID.
- JSON Parameters:
SectionData (
Section.SectionData
in Update form) – Updated section data.
- Oauth2 Scopes:
sections:section:update
- Status Codes:
200 OK – Action succeeded.
400 Bad Request – Invalid section data provided.
403 Forbidden – No permission to manage sections.
404 Not Found – No such org unit, or no such section or org unit has no sections.
429 Too Many Requests – API call-rate limit exceeded.
- API Versions:
1.43+ – Route first appears in LMS v20.23.5.
1.35-1.42 – Deprecated as of LMS v20.24.1.
1.34- – Obsolete as of LMS v20.24.1.
Return. This action returns the updated
SectionData
JSON block, in its Fetch form.