Developer Platform (November 2024)

Dropboxes (Folders, categories, submissions, feedback, special access)

«  Course competencies and objectives   ·  [   home  ·   reference  ·   community   |   search  ·   index   ·  routing table   ·  scopes table   ]   ·  Groups  »

Every org unit can have a series of dropbox folders to use for gathering submissions from enrolled users and allowing assessors to provide assessment and feedback on those submissions.

Attributes

ENTITYDROPBOXSTATUS_T

We categorize the various kinds of entity status into types, and use the term ENTITYDROPBOXSTATUS_T to stand in for an appropriate integer value.

Entity Dropbox Status

Value

Unsubmitted

0

Submitted

1

Draft

2

Published

3

DROPBOXTYPE_T

We categorize the various kinds of dropbox folders into types, and use the term DROPBOXTYPE_T to stand in for an appropriate integer value.

Dropbox Type

Value

Group

1

Individual

2

SUBMISSIONTYPE_T

We categorize the various kinds of submissions into types, and use the term SUBMISSIONTYPE_T to stand in for an appropriate integer value.

Submission Type

Value

File

0

Text

1

OnPaper

2

Observed

3

DROPBOX_COMPLETIONTYPE_T

We categorize the various kinds of completions into types, and use the term DROPBOX_COMPLETIONTYPE_T to stand in for an appropriate integer value.

Completion Type

Value

OnSubmission

0

DueDate

1

ManuallyByLearner

2

OnEvaluation

3

We categorize the various kinds of links into types, and use the term DROPBOX_LINK_ATTACHMENT_T to stand in for an appropriate string value.

Link Attachment Type

External

Internal

MediaContent

Dropbox.DropboxFolder

When you use actions that retrieve dropbox folder information, the service provides a block like this:

{
    "Id": <number:D2LID>,
    "CategoryId": <number:D2LID>|null,
    "Name": <string>,
    "CustomInstructions": "{composite:RichText}",
    "Attachments": [  // Array of File blocks
        {
            "FileId": <number:D2LID>,
            "FileName": <string>,
            "Size": <number:long>
        },
        { <composite:File> }, ...
    ],
    "TotalFiles": <number>,
    "UnreadFiles": <number>,
    "FlaggedFiles": <number>,
    "TotalUsers": <number>,
    "TotalUsersWithSubmissions": <number>,
    "TotalUsersWithFeedback": <number>,
    "Availability": null|{
        "StartDate": <string:UTCDateTime>|null,
        "EndDate": <string:UTCDateTime>|null,
        "StartDateAvailabilityType": <string:AVAILABILITY_T>|null,  // Added with LE API v1.65
        "EndDateAvailabilityType": <string:AVAILABILITY_T>|null  // Added with LE API v1.65
    },
    "GroupTypeId": <number:D2LID>|null,
    "DueDate": <string:UTCDateTime>|null,
    "DisplayInCalendar": <boolean>,
    "Assessment": {
        "ScoreDenominator": <number:decimal>|null,
        "Rubrics": [  // Array of Rubric blocks
             { <composite:Rubric.Rubric> },
             { <composite:Rubric.Rubric> }, ...
        ]
    },
    "NotificationEmail": <string>|null,
    "IsHidden": <boolean>,
    "LinkAttachments": [  // Array of Link blocks
        {
             "LinkId": <number:D2LID>,
             "LinkName": <string>,
             "Href": <string>
        },
        { <composite:Link> }, ...
    ],
    "ActivityId": <string>|null,
    "IsAnonymous": <boolean>,
    "DropboxType": <string:DROPBOXTYPE_T>,
    "SubmissionType": <string:SUBMISSIONTYPE_T>,
    "CompletionType": <string:DROPBOX_COMPLETIONTYPE_T>,
    "GradeItemId": <number:D2LID>|null,
    "AllowOnlyUsersWithSpecialAccess": <boolean>|null
}
Assessment

If this property is present and not null, the dropbox folder has an associated assessment, with an optional ScoreDenominator property, and an array of Rubric blocks.

DisplayInCalendar

A date only appears in user’s calendars if this property is true (it’s false by default). When true, the back-end service uses a priority order to chose the date to put in the calendar. If there’s a due date, that gets used by preference. If not, then the the service uses the end date. If again not, then finally the service uses the start date. When true, the back-end service _must_ have one of these dates to use (so, on create or update, you must provide at least one of them).

DueDate

If this property is present and not null, the dropbox folder has a due date for submission. If the property is present with a non-null value, it contains a UTCDateTime.

GroupTypeId

If the property is present and not null, the dropbox folder is a group-submission folder; otherwise, the dropbox folder is an individual-submission folder. If the property is present with a non-null value, it contains a D2LID for the group’s GroupCategoryId.

NotificationEmail

A comma separated list of email addresses which will be sent a notification when any files are submitted to the folder. If this field is empty or null, no notification will be sent.

TotalUsers, TotalUsersWithSubmissions, and TotalUsersWithFeedback

The number of users for this assignment that can submit to the folder, have already submitted an assignment, and have already received feedback on their submission, respectively. If these properties contain -1, then the number of users enrolled in the corresponding org unit is too large to permit performant calculation of these values (this behaviour can be enabled via D2L support for back-end service), or the requesting user does not have permission to access this information.

ActivityId

If not null, identifies the underlying activity for this dropbox.

GradeItemId

If not null, identifies the grade item associated with this dropbox.

AllowOnlyUsersWithSpecialAccess

When true, allow only users with special access to see this dropbox. If null, then the requesting user does not have permission to manage dropboxes.

StartDateAvailabilityType, EndDateAvailabilityType

Identifies the availability type (AVAILABILITY_T) for the start and end date values for the dropbox.

Dropbox.DropboxFolderUpdateData

When you use actions that create or update a dropbox folder on the service, you should provide a block that looks like this:

{
    "CategoryId": <number:D2LID>|null,
    "Name": <string>,
    "CustomInstructions": "{composite:RichTextInput}",
    "Availability": null|{
        "StartDate": <string:UTCDateTime>|null,
        "EndDate": <string:UTCDateTime>|null,
        "StartDateAvailabilityType": <string:AVAILABILITY_T>|null,  // Added with LE API v1.65
        "EndDateAvailabilityType": <string:AVAILABILITY_T>|null  // Added with LE API v1.65
    },
    "GroupTypeId": <number:D2LID>|null,
    "DueDate": <string:UTCDateTime>|null,
    "DisplayInCalendar": <boolean>,
    "NotificationEmail" : <string>|null,
    "IsHidden": <boolean>|null,
    "Assessment": null|{
        "ScoreDenominator": <number:decimal>|null
    },
    "IsAnonymous": <boolean>|null,
    "DropboxType": <string:DROPBOXTYPE_T>|null,
    "SubmissionType": <string:SUBMISSIONTYPE_T>|null,
    "CompletionType": <string:DROPBOX_COMPLETIONTYPE_T>|null,
    "GradeItemId": <number:D2LID>|null,
    "AllowOnlyUsersWithSpecialAccess": <boolean>|null
}
CustomInstructions

Note that this property uses the RichTextInput structure type.

Availability

If null, the dropbox folder in question is always available; otherwise, it’s availability is restricted to the time window expressed by the StartDate and EndDate properties contained in the Availability object.

If you provide start and end date values, you should also provide values for the corresponding availability type fields (StartDateAvailabilityType and EndDateAvailabilityType) when the feature is available. If you do not provide type values, the back end service uses the default availability type configured for the appropriate org unit. If you provide the type fields and the feature is not available for the orgunit, your actions will return a 400 Bad Request bad request status code.

DisplayInCalendar

A date only appears in user’s calendars if this property is true (it’s false by default). When true, the back-end service uses a priority order to chose the date to put in the calendar. If there’s a due date, that gets used by preference. If not, then the the service uses the end date. If again not, then finally the service uses the start date. When true, the back-end service _must_ have one of these dates to use (so, on create or update, you must provide at least one of them).

GroupTypeId

If the property is present and not null, the dropbox folder is a group-submission folder; otherwise, the dropbox folder is an individual-submission folder. If the property is present with a non-null value, it contains a D2LID for the group’s GroupCategoryId.

NotificationEmail

A comma separated list of email addresses which will be sent a notification when any files are submitted to the folder. If this field is empty or null, no notification will be sent.

IsHidden

If null or not present, the property will not be changed. Defaults to false for new dropbox folders.

Assessment

If null or not present, the property will not be changed. Defaults to null for new dropbox folders. If ScoreDenominator is null or not preset, the property will not be changed. ScoreDenominator defaults to null for new dropbox folders.

IsAnonymous

If null or not present, the property will not be changed. Default is based on anonymous config settings for new dropbox folders. If anonymity is forced on, it will default to true. If default config is on, it will default to true. Otherwise, it will default to false.

When editing a dropbox that has submissions, the IsAnonymous state could be turned on but not off. When editing, if the config forced is on and the folder has IsAnonymous true, it won’t allow changing to false. Dropboxes that have a third-party integration for Anonymous may interfere with the above stated logic.

DropboxType

If null or not present, the property will not be changed. Defaults to Group for new dropbox folders if the GroupTypeId property is present and not null; otherwise, the default is Individual. When changing a dropbox from Individual to Group, the GroupTypeId property must be present and not null. If submissions have been received the type will not be allowed to change.

SubmissionType

If null or not present, the property will not be changed. Default is File for new dropbox folders. If submissions have been received this property will not be allowed to change.

CompletionType

If null or not present, the property will not be changed. Default is OnSubmission for new dropbox folders. If submissions have been received this property will not be allowed to change.

The supported values of this property depends on the value of the SubmissionType value.

Submission Type

On Submission

Due Date

Manually By Learner

On Evaluation

File

X

Text

X

OnPaper

X

X

X

Observed

X

X

X

GradeItemId

If null or not present, the property will not be changed. Defaults to null.

AllowOnlyUsersWithSpecialAccess

If null or not present, the property will not be changed. Default is false for new dropbox folders. The calling user requires permission to manage dropboxes, manage delivery, and set special access to change this property.

Feedback

Dropbox.DropboxFeedback

When you use this API to post feedback against a submission, you provide a feedback block without file attachments, and then use the API to upload files to the existing feedback ID:

{
    "Score": <number:decimal>|null,
    "Feedback": { <composite:RichText> },
    "RubricAssessments": [ // Array of RubricAssessment blocks
        { <composite:RubricAssessment> },
        { <composite:RubricAssessment> }, ...
    ],
    "IsGraded": <boolean>,
    "GradedSymbol": <string>|null
}
Feedback

Note that these properties require a RichText object.

Feedback properties

Note that these properties require a RichText object.

IsGraded

If true, the feedback is in a graded state; otherwise, it’s still in draft state. Once feedback moves from the draft to graded state, and this property gets set to true, it’s inadvisable to set it back to false.

RubricAssessments

Contains an array of RubricAssessment blocks.

GradedSymbol

If the parent dropbox folder is associated with a grade object that is a select box grade object type, then this field can be used to set the score. This is done by using the grade scheme to determine the assigned value associated with the symbol specified. Note if this field is set, it will be used to set the score and not the score field.

Dropbox.DropboxFeedbackOut

When you use this API to retrieve the feedback information assigned to a submission, you get an info block that lists the feedback information along with any file attachments:

{
    "Score": <number:decimal>|null,
    "Feedback": { <composite:RichText> },
    "RubricAssessments": [ // Array of RubricAssessment blocks
        { <composite:RubricAssessment> },
        { <composite:RubricAssessment> }, ...
    ],
    "IsGraded": <boolean>,
    "Files": [ // Array of File blocks
        {
            "FileId": <number:D2LID>,
            "FileName": <string>,
            "Size": <number:long>
        },
        { <composite:File> }, ...
    ],
    "Links": [ // Array of Link blocks
        {
            "Type": <string:DROPBOX_LINK_ATTACHMENT_T>,
            "LinkId": <number:D2LID>,
            "LinkName": <string>,
            "Href": <string>|null
        },
        { <composite:Link> }, ...
    ],
   "GradedSymbol": <string>|null
}
Feedback

Note that these properties require a RichText object.

IsGraded

If true, the feedback is in a graded state; otherwise, it’s still in draft state.

RubricAssessments

Contains an array of RubricAssessment blocks.

GradedSymbol

The grade scheme symbol for the score on the dropbox. Only applicable if the associated grade object has a grade scheme.

Type

Identifies the type of link. When the type is MediaContent the Href value will be null as the link represents a pointer to the actual media file.

Entities

Dropbox.Entity

Entities are those users (or groups of users) that can provide submissions for assessment and/or assess the submissions of other entities and provide feedback.

Entities with an entity type of “User” look like this:

{
    "EntityId": <number:D2LID>,
    "EntityType": "User",
    "DisplayName": <string>
}
DisplayName

The DisplayName will reflect the Anonymous display settings of the dropbox.

Entities with an entity type of “Group” look like this:

{
    "EntityId": <number:D2LID>,
    "EntityType": "Group",
    "Name": <string>
}
Dropbox.EntityDropbox

In each dropbox, each entity (user or group) that has permissions to submit work, or provide feedback on submitted work, will have an associated EntityDropbox once they’ve made a submission:

{
    "Entity": { <composite:Dropbox.Entity> },
    "Status": <string:ENTITYDROPBOXSTATUS_T>,
    "Feedback": { <composite:Dropbox.DropboxFeedbackOut> },
    "Submissions": [ // Array of Submission blocks
        {
            "Id": <number:D2LID>,
            "SubmittedBy": {
                "Id": <string>,
                "DisplayName": <string>
            },
            "SubmissionDate": <string:UTCDateTime>|null,
            "Comment": { <composite:RichText> },
            "Files": [ // Array of File blocks
                {
                    "FileId": <number:D2LID>,
                    "FileName": <string>,
                    "Size": <number:long>,
                    "isRead": <boolean>,
                    "isFlagged": <boolean>
                },
                { <composite:File> }, ...
            ]
        },
        { <composite:Submission> }, ...
    ],
    "CompletionDate": <string:UTCDateTime>|null
}
Submissions.SubmittedBy.DisplayName

The DisplayName will reflect the Anonymous display settings of the dropbox.

Dropbox.EntityCompletionData

When you use this API to set the completion status of an entity, you provide the completion value:

{
   "IsComplete": <boolean>
}
Dropbox.EntityCompletionDate

In each dropbox, each entity (user or group) will have an associated completion date value, a date represents a complete status, a null value represents incomplete:

{
   "CompletionDate": <string:UTCDateTime>|null
}

Folder categories

Dropbox.DropboxCategory

A dropbox folder may belong to a folder category. The following JSON block describes the dropbox category information returned from the service or provided to the service. When you use an action to create or update a dropbox category, the Id field is not required.

{
    "Id": <number:D2LID>,
    "Name": <string>,
    "LastModifiedByUserId": <number:D2LID>|null,
    "LastModifiedDate": <string:UTCDateTime>|null,
}
Dropbox.DropboxCategoryWithFolders

Once you know a dropbox folder category’s ID, you can use the API to fetch its info block that also lists all the dropbox folders that belong to the category:

{
    "Id": <number:D2LID>,
    "Name": <string>,
    "Folders": [ // Array of DropboxFolder blocks
        { <composite:Dropbox.DropboxFolder> },
        { <composite:Dropbox.DropboxFolder> }, ...
    ],
    "LastModifiedByUserId": <number:D2LID>|null,
    "LastModifiedDate": <string:UTCDateTime>|null,
}

Special access

Dropbox.SpecialAccessData

When creating / updating special access, or retrieving special access for a specified user in a dropbox, use a structure like this:

{
   "StartDate": <string:UTCDateTime>|null,
   "EndDate": <string:UTCDateTime>|null,
   "DueDate": <string:UTCDateTime>|null
}

Note

StartDate and EndDate both set to null means that no availability restrictions are applied to the user.

Dropbox.SpecialAccessUserData

When retrieving special access for a dropbox, the service will send back a structure like this:

{
   "UserId": <number:D2LID>,
   "SpecialAccess": <composite:Dropbox.SpecialAccessData>
}

Actions

Each dropbox folder provides a place for org unit entities (users or groups of users) to submit work for assessment. Each dropbox folder represents a single opportunity for assessment (for example, the submission of a single paper for grading, or quiz for testing, and so on).

DELETE /d2l/api/le/(version)/(orgUnitId)/dropbox/folders/(folderId)

Delete a particular dropbox folder in an org unit.

Parameters:
  • version (D2LVERSION) – API version.

  • orgUnitId (D2LID) – Org unit ID.

  • folderId (D2LID) – Folder ID for the specific dropbox folder.

Status Codes:
API Versions:
  • 1.73+ – Route first appears in LMS v20.23.9.

GET /d2l/api/le/(version)/(orgUnitId)/dropbox/folders/

Retrieve all dropbox folders for an org unit.

Parameters:
Query Parameters:
  • onlyCurrentStudentsAndGroups (boolean) – Optional. If true, show only currently enrolled students and active groups.

Status Codes:
API Versions:
  • 1.67+ – Route first appears in LMS v20.23.1.

  • 1.61-66Deprecated as of LMS v20.24.1.

  • 1.60-Obsolete as of LMS v20.24.1.

Return. This action returns a JSON array of DropboxFolder blocks.

GET /d2l/api/le/(version)/(orgUnitId)/dropbox/folders/(folderId)

Retrieve a specific dropbox folder.

Parameters:
  • version (D2LVERSION) – API version.

  • orgUnitId (D2LID) – Org unit ID.

  • folderId (D2LID) – Folder ID for the specific dropbox folder.

Status Codes:
API Versions:
  • 1.67+ – Route first appears in LMS v20.23.1.

  • 1.61-66Deprecated as of LMS v20.24.1.

  • 1.60-Obsolete as of LMS v20.24.1.

Return. This action returns a DropboxFolder JSON block.

GET /d2l/api/le/(version)/(orgUnitId)/dropbox/folders/(folderId)/access/

Retrieve a list of users with access to a specified dropbox folder.

Parameters:
  • version (D2LVERSION) – API version.

  • orgUnitId (D2LID) – Org unit ID.

  • folderId (D2LID) – Folder ID for the specific dropbox folder.

Query Parameters:
  • userId (D2LID) – Optional. Retrieve access for a single user.

  • roleId (D2LID) – Optional. Retrieve access for users with the given role.

Oauth2 Scopes:

dropbox:access:read

Status Codes:
API Versions:
  • 1.67+ – Route first appears in LMS v20.23.1.

  • 1.61-66Deprecated as of LMS v20.24.1.

  • 1.60-Obsolete as of LMS v20.24.1.

Return. This action returns a object list page containing the resulting UserAccess blocks for the segment following your bookmark parameter (or the first segment if that parameter is empty or missing).

GET /d2l/api/le/(version)/(orgUnitId)/dropbox/folders/(folderId)/attachments/(fileId)

Retrieve a file attachment (identified by file ID) from a specific dropbox folder.

Parameters:
  • version (D2LVERSION) – API version.

  • orgUnitId (D2LID) – Org unit ID.

  • folderId (D2LID) – Folder ID for the specific dropbox folder.

  • fileId (D2LID) – File ID for the attachment to retrieve.

Status Codes:
API Versions:
  • 1.67+ – Route first appears in LMS v20.23.1.

  • 1.61-66Deprecated as of LMS v20.24.1.

  • 1.60-Obsolete as of LMS v20.24.1.

Return. This action returns a file stream. This does not apply for link attachments.

GET /d2l/api/le/(version)/dropbox/orgUnits/feedback/

Retrieve a list of org units for which the current user context has an assessment role on their dropbox folders (can see submissions and provide feedback).

Parameters:
Query Parameters:
  • type (integer) – Optional. Provide 0 for all org units, or 1 to filter for only active org units.

Status Codes:
API Versions:
  • 1.67+ – Route first appears in LMS v20.23.1.

  • 1.61-66Deprecated as of LMS v20.24.1.

  • 1.60-Obsolete as of LMS v20.24.1.

Return. This action returns a JSON array of OrgUnitCoreInfo structures to enumerate all the org units for which the current user context may provide feedback.

POST /d2l/api/le/(version)/(orgUnitId)/dropbox/folders/

Create a new dropbox folder in an org unit.

Parameters:
Status Codes:
API Versions:
  • 1.67+ – Route first appears in LMS v20.23.1.

  • 1.61-66Deprecated as of LMS v20.24.1.

  • 1.60-Obsolete as of LMS v20.24.1.

Input. The action’s body should be a DropboxFolderUpdateData JSON data block.

Return. This action returns a DropboxFolder JSON block.

PUT /d2l/api/le/(version)/(orgUnitId)/dropbox/folders/(folderId)

Update a particular dropbox folder in an org unit.

Parameters:
  • version (D2LVERSION) – API version.

  • orgUnitId (D2LID) – Org unit ID.

  • folderId (D2LID) – Folder ID for the specific dropbox folder.

Status Codes:
API Versions:
  • 1.67+ – Route first appears in LMS v20.23.1.

  • 1.61-66Deprecated as of LMS v20.24.1.

  • 1.60-Obsolete as of LMS v20.24.1.

Input. The action’s body should be a DropboxFolderUpdateData JSON data block.

Return. This action returns a DropboxFolder JSON block.

Submissions

When an entity (user or group) wants to submit work for assessment, the submission contains one or more files uploaded. These actions provide ways to programmatically retrieve submissions already completed for a dropbox folder, and ways to submit new ones.

GET /d2l/api/le/(version)/(orgUnitId)/dropbox/folders/(folderId)/submissions/

Retrieve all the submissions for a specific dropbox folder.

Parameters:
  • version (D2LVERSION) – API version.

  • orgUnitId (D2LID) – Org unit ID.

  • folderId (D2LID) – Folder ID for a specific dropbox folder.

Query Parameters:
  • activeOnly (boolean) – Optional. Include only submissions from actively enrolled users.

Status Codes:
API Versions:
  • 1.67+ – Route first appears in LMS v20.23.1.

  • 1.61-66Deprecated as of LMS v20.24.1.

  • 1.60-Obsolete as of LMS v20.24.1.

Return. This action retrieves a JSON array of EntityDropbox structures that fully enumerates all the submissions currently provided to the dropbox folders by all the entities. Any submission that already has feedback will come with the feedback as well.

If you provide the ?activeOnly=true query parameter, the returned array contains submissions only from actively enrolled users; if you omit the parameter, or provide =false for it, the call retrieves all submissions for the dropbox folder.

GET /d2l/api/le/(version)/(orgUnitId)/dropbox/folders/(folderId)/submissions/paged/

Retrieve a page of submissions for a specific dropbox folder.

Parameters:
  • version (D2LVERSION) – API version.

  • orgUnitId (D2LID) – Org unit ID.

  • folderId (D2LID) – Folder ID for a specific dropbox folder.

Query Parameters:
  • activeOnly (boolean) – Optional. Include only submissions from actively enrolled users.

Status Codes:
API Versions:
  • 1.67+ – Route first appears in LMS v20.23.1.

  • 1.61-66Deprecated as of LMS v20.24.1.

  • 1.60-Obsolete as of LMS v20.24.1.

Return. This action returns an object list page containing the resulting EntityDropbox blocks. Any submission that already has feedback will come with the feedback as well.

If you provide the ?activeOnly=true query parameter, the returned array contains submissions only from actively enrolled users; if you omit the parameter, or provide false for it, the call retrieves all submissions for the dropbox folder.

GET /d2l/api/le/(version)/(orgUnitId)/dropbox/folders/(folderId)/submissions/(submissionId)/files/(fileId)

Retrieve one of the files included in a submission for a particular dropbox folder.

Parameters:
  • version (D2LVERSION) – API version.

  • orgUnitId (D2LID) – Org unit ID.

  • folderId (D2LID) – Folder ID for a specific dropbox folder.

  • submissionId (D2LID) – Submission ID.

  • fileId (D2LID) – File ID for submission file attachment.

Oauth2 Scopes:

dropbox:folders:read

Status Codes:
API Versions:
  • 1.67+ – Route first appears in LMS v20.23.1.

  • 1.61-66Deprecated as of LMS v20.24.1.

  • 1.60-Obsolete as of LMS v20.24.1.

Return. This action returns a file stream containing the attachment file data.

GET /d2l/api/le/(version)/(orgUnitId)/dropbox/folders/(folderId)/submissions/(userId)/download

Download all the files submitted by a user for a particular dropbox folder.

Parameters:
  • version (D2LVERSION) – API version.

  • orgUnitId (D2LID) – Org unit ID.

  • folderId (D2LID) – Folder ID for a specific dropbox folder.

  • userId (D2LID) – user ID.

Status Codes:
API Versions:
  • 1.67+ – Route first appears in LMS v20.23.1.

  • 1.61-66Deprecated as of LMS v20.24.1.

  • 1.60-Obsolete as of LMS v20.24.1.

Return. This action returns a file stream containing a zip file.

GET /d2l/api/le/(version)/(orgUnitId)/dropbox/folders/(folderId)/group-submissions/(groupId)/download

Download all the files submitted by users in a group for a particular dropbox folder.

Parameters:
  • version (D2LVERSION) – API version.

  • orgUnitId (D2LID) – Org unit ID.

  • folderId (D2LID) – Folder ID for a specific dropbox folder.

  • groupId (D2LID) – group ID.

Status Codes:
API Versions:
  • 1.67+ – Route first appears in LMS v20.23.1.

  • 1.61-66Deprecated as of LMS v20.24.1.

  • 1.60-Obsolete as of LMS v20.24.1.

Return. This action returns a file stream containing a zip file.

POST /d2l/api/le/(version)/(orgUnitId)/dropbox/folders/(folderId)/submissions/group/(groupId)

Post a new group submission to a particular dropbox folder.

Parameters:
  • version (D2LVERSION) – API version.

  • orgUnitId (D2LID) – Org unit ID.

  • folderId (D2LID) – Folder ID for a specific dropbox folder.

  • groupId (D2LID) – Entity group ID.

JSON Parameters:
  • Description (RichText) – Submission’s description as a part (see input description).

Status Codes:
API Versions:
  • 1.67+ – Route first appears in LMS v20.23.1.

  • 1.61-66Deprecated as of LMS v20.24.1.

  • 1.60-Obsolete as of LMS v20.24.1.

Input. The post’s multipart/mixed body should contain a JSON part encoding the submission’s descriptive comments in RichText, followed by the submission file’s data (the action requires a submission to include a file, not just a description).

GET /d2l/api/le/(version)/(orgUnitId)/dropbox/folders/(folderId)/submissions/mysubmissions/

Retrieve all the submissions made by the current user to a particular dropbox folder.

Parameters:
  • version (D2LVERSION) – API version.

  • orgUnitId (D2LID) – Org unit ID.

  • folderId (D2LID) – Folder ID for a specific dropbox folder.

Oauth2 Scopes:

dropbox:folders:read

Status Codes:
API Versions:
  • 1.77+ – Route first appears in LMS v20.24.8.

Return. This action retrieves a JSON array of EntityDropbox structures that fully enumerates all the submissions currently provided to the dropbox folders by the current user. Existing feedback will also be included if published.

POST /d2l/api/le/(version)/(orgUnitId)/dropbox/folders/(folderId)/submissions/mysubmissions/

Post a new submission for the current user context to a particular dropbox folder.

Parameters:
  • version (D2LVERSION) – API version.

  • orgUnitId (D2LID) – Org unit ID.

  • folderId (D2LID) – Folder ID for a specific dropbox folder.

JSON Parameters:
  • Description (RichText) – Submission’s description as a part (see input description).

Status Codes:
API Versions:
  • 1.67+ – Route first appears in LMS v20.23.1.

  • 1.61-66Deprecated as of LMS v20.24.1.

  • 1.60-Obsolete as of LMS v20.24.1.

Input. The post’s multipart/mixed body should contain a JSON part encoding the submission’s descriptive comments in RichText, followed by the submission file’s data (the action requires a submission to include a file, not just a description).

POST /d2l/api/le/(version)/(orgUnitId)/dropbox/folders/(folderId)/submissions/(submissionId)/files/(fileId)/markAsRead

Mark a submitted file as read.

Parameters:
  • version (D2LVERSION) – API version.

  • orgUnitId (D2LID) – Org unit ID.

  • folderId (D2LID) – Folder ID for a specific dropbox folder.

  • submissionId (D2LID) – Submission ID.

Status Codes:
API Versions:
  • 1.67+ – Route first appears in LMS v20.23.1.

  • 1.61-66Deprecated as of LMS v20.24.1.

  • 1.60-Obsolete as of LMS v20.24.1.

Input. Provide an empty post body. You should ensure that your request includes a Content-Length: 0 HTTP header value (some HTTP client libraries may neglect to do this with empty post calls).

Feedback

Every submission by an entity in a dropbox folder can have an associated feedback item, created by the user that has permission to assess submissions.

DELETE /d2l/api/le/(version)/(orgUnitId)/dropbox/folders/(folderId)/feedback/(entityType)/(entityId)/attachments/(fileId)

Remove a particular file attachment from an entity’s feedback entry within a specified dropbox folder.

Parameters:
  • version (D2LVERSION) – API version.

  • orgUnitId (D2LID) – Org unit ID.

  • folderId (D2LID) – Folder ID for a specific dropbox folder.

  • entityType (string) – Either “user” or “group”, to indicate the entity type.

  • entityId (D2LID) – Entity ID for a specific entity.

  • fileId (D2LID) – File ID for the file to remove.

Status Codes:
API Versions:
  • 1.67+ – Route first appears in LMS v20.23.1.

  • 1.61-66Deprecated as of LMS v20.24.1.

  • 1.60-Obsolete as of LMS v20.24.1.

GET /d2l/api/le/(version)/(orgUnitId)/dropbox/folders/(folderId)/feedback/(entityType)/(entityId)

Retrieve the feedback entry from a dropbox folder for the provided entity.

Parameters:
  • version (D2LVERSION) – API version.

  • orgUnitId (D2LID) – Org unit ID.

  • folderId (D2LID) – Folder ID for a specific dropbox folder.

  • entityType (string) – Either “user” or “group”, to indicate the entity type.

  • entityId (D2LID) – Entity ID for a specific entity.

Status Codes:
API Versions:
  • 1.67+ – Route first appears in LMS v20.23.1.

  • 1.61-66Deprecated as of LMS v20.24.1.

  • 1.60-Obsolete as of LMS v20.24.1.

Return. This action returns a DropboxFeedbackOut JSON block.

GET /d2l/api/le/(version)/(orgUnitId)/dropbox/folders/(folderId)/feedback/(entityType)/(entityId)/attachments/(fileId)

Retrieve a feedback entry’s file attachment from a dropbox folder for the provided entity.

Parameters:
  • version (D2LVERSION) – API version.

  • orgUnitId (D2LID) – Org unit ID.

  • folderId (D2LID) – Folder ID for a specific dropbox folder.

  • entityType (string) – Either “user” or “group”, to indicate the entity type.

  • entityId (D2LID) – Entity ID for a specific entity.

  • fileId (D2LID) – File ID for a specific file attachment.

Status Codes:
API Versions:
  • 1.67+ – Route first appears in LMS v20.23.1.

  • 1.61-66Deprecated as of LMS v20.24.1.

  • 1.60-Obsolete as of LMS v20.24.1.

Return. This action returns a file stream containing the file attachment data.

Retrieve a feedback entry’s linked media content attachment from a dropbox folder for the provided entity.

Parameters:
  • version (D2LVERSION) – API version.

  • orgUnitId (D2LID) – Org unit ID.

  • folderId (D2LID) – Folder ID for a specific dropbox folder.

  • entityType (string) – Either “user” or “group”, to indicate the entity type.

  • entityId (D2LID) – Entity ID for a specific entity.

  • linkId (D2LID) – Link ID for a specific link attachment.

Status Codes:
API Versions:
  • 1.79+ – Route first appears in LMS v20.24.9.

Return. This action returns a file stream containing the link attachment data. Note that this action retrieves only linked media content attachments (those created using Audio/Video recording of feedback).

POST /d2l/api/le/(version)/(orgUnitId)/dropbox/folders/(folderId)/feedback/(entityType)/(entityId)

Post feedback (without attachment) for a particular submission in a specific dropbox folder.

Parameters:
  • version (D2LVERSION) – API version.

  • orgUnitId (D2LID) – Org unit ID.

  • folderId (D2LID) – Folder ID for a specific dropbox folder.

  • entityType (string) – Either “user” or “group”, to indicate the entity type.

  • entityId (D2LID) – Entity ID for a specific entity.

JSON Parameters:
Status Codes:
API Versions:
  • 1.67+ – Route first appears in LMS v20.23.1.

  • 1.61-66Deprecated as of LMS v20.24.1.

  • 1.60-Obsolete as of LMS v20.24.1.

Input. Note that, if you want the service to re-calculate the overall level associated with the feedback for the submission, you should provide null for the OverallLevel property in the data block you provide.

POST /d2l/api/le/(version)/(orgUnitId)/dropbox/folders/(folderId)/feedback/(entityType)/(entityId)/attach

Attach an uploaded file to a particular entity’s feedback entry in a specific dropbox folder.

Parameters:
  • version (D2LVERSION) – API version.

  • orgUnitId (D2LID) – Org unit ID.

  • folderId (D2LID) – Folder ID for a specific dropbox folder.

  • entityType (string) – Either “user” or “group”, to indicate the entity type.

  • entityId (D2LID) – Entity ID for a specific entity.

Form Parameters:
  • fileKey – File key value identifying the uploaded file.

  • fileName – Optional. Display name for the uploading file.

Status Codes:
API Versions:
  • 1.67+ – Route first appears in LMS v20.23.1.

  • 1.61-66Deprecated as of LMS v20.24.1.

  • 1.60-Obsolete as of LMS v20.24.1.

Input. Provide a POST form with the file key the service sent you from your resumable file upload action. Note that you can provide a name parameter for the framework to use for the file; if you provide no name parameter, the framework seeks to gather the file name from the uploaded file itself.

Note

Before you can use this action to provide a feedback attachment, the given combination of org unit, entity type, entity ID must have a pre-existing submission.

POST /d2l/api/le/(version)/(orgUnitId)/dropbox/folders/(folderId)/feedback/(entityType)/(entityId)/upload

Initiate a resumable file upload request for a particular entity’s feedback for a specific dropbox folder.

Parameters:
  • version (D2LVERSION) – API version.

  • orgUnitId (D2LID) – Org unit ID.

  • folderId (D2LID) – Folder ID for a specific dropbox folder.

  • entityType (string) – Either “user” or “group”, to indicate the entity type.

  • entityId (D2LID) – Entity ID for a specific entity.

Status Codes:
API Versions:
  • 1.67+ – Route first appears in LMS v20.23.1.

  • 1.61-66Deprecated as of LMS v20.24.1.

  • 1.60-Obsolete as of LMS v20.24.1.

Input. Initiate a resumable upload process. Your POST request must contain three special headers:

  • X-Upload-Content-Type to indicate the file’s mime type.

  • X-Upload-Content-Length to indicate the file’s total size, in bytes.

  • X-Upload-File-Name to indicate the file name for the file.

Return. If successful, this action initiates a resumable upload process. As part of that process, the service provides you a file key value that you can use to attach the uploaded file data to a feedback entry.

Entities

Every entity in a dropbox folder can have associated feedback and completion date set by a user that has permission to assess submissions

PUT /d2l/api/le/(version)/(orgUnitId)/dropbox/folders/(folderId)/entities/(entityId)/completion

Manually set the completion date value for an entity within a specified observational dropbox folder.

Parameters:
  • version (D2LVERSION) – API version.

  • orgUnitId (D2LID) – Org unit ID.

  • folderId (D2LID) – Folder ID for a specific dropbox folder.

  • entityId (D2LID) – Entity ID for a specific entity.

Status Codes:
API Versions:
  • 1.67+ – Route first appears in LMS v20.23.1.

  • 1.61-66Deprecated as of LMS v20.24.1.

  • 1.60-Obsolete as of LMS v20.24.1.

Input. The action’s body should be a EntityCompletionData JSON data block.

Return. This action returns a EntityCompletionDate JSON block.

Folder categories

All the folders with an org unit can get divided into a series of categories. Each folder can belong to a single category. Categories provide a simple way for org units to arrange submissions into simple groups (for example, “essays”, “quizzes”, and so forth).

DELETE /d2l/api/le/(version)/(orgUnitId)/dropbox/categories/(categoryId)

Delete a specific dropbox folder category from an org unit.

Parameters:
  • version (D2LVERSION) – API version.

  • orgUnitId (D2LID) – Org unit ID.

  • categoryId (D2LID) – Category ID.

Status Codes:
API Versions:
  • 1.67+ – Route first appears in LMS v20.23.1.

  • 1.61-66Deprecated as of LMS v20.24.1.

  • 1.60-Obsolete as of LMS v20.24.1.

GET /d2l/api/le/(version)/(orgUnitId)/dropbox/categories/

Retrieve all dropbox folder categories for the provided org unit.

Parameters:
Status Codes:
API Versions:
  • 1.67+ – Route first appears in LMS v20.23.1.

  • 1.61-66Deprecated as of LMS v20.24.1.

  • 1.60-Obsolete as of LMS v20.24.1.

Return. This action retrieves a JSON array of DropboxCategory blocks.

GET /d2l/api/le/(version)/(orgUnitId)/dropbox/categories/(categoryId)

Retrieve the information for a specific dropbox folder category.

Parameters:
  • version (D2LVERSION) – API version.

  • orgUnitId (D2LID) – Org unit ID.

  • categoryId (D2LID) – Category ID.

Status Codes:
API Versions:
  • 1.67+ – Route first appears in LMS v20.23.1.

  • 1.61-66Deprecated as of LMS v20.24.1.

  • 1.60-Obsolete as of LMS v20.24.1.

Return. This action retrieves a single DropboxCategoryWithFolders JSON block.

POST /d2l/api/le/(version)/(orgUnitId)/dropbox/categories/

Create a new dropbox folder category for the provided org unit.

Parameters:
Status Codes:
API Versions:
  • 1.67+ – Route first appears in LMS v20.23.1.

  • 1.61-66Deprecated as of LMS v20.24.1.

  • 1.60-Obsolete as of LMS v20.24.1.

Input. The action’s body should be a DropboxCategory JSON data block.

Return. This action retrieves a single DropboxCategory block.

PUT /d2l/api/le/(version)/(orgUnitId)/dropbox/categories/(categoryId)

Update the information for a specific dropbox folder category.

Parameters:
  • version (D2LVERSION) – API version.

  • orgUnitId (D2LID) – Org unit ID.

  • categoryId (D2LID) – Category ID.

Status Codes:
API Versions:
  • 1.67+ – Route first appears in LMS v20.23.1.

  • 1.61-66Deprecated as of LMS v20.24.1.

  • 1.60-Obsolete as of LMS v20.24.1.

Input. The action’s body should be a DropboxCategory JSON data block.

Return. This action retrieves a single DropboxCategory block.

Special Access

Members of the classlist can be given access to a dropbox either for a limited time or in perpetuity. The dates are set as UTCDateTime SpecialAccessData JSON data block or in SpecialAccessUserData JSON data blocks if a non-empty set of students’ data is returned in the response.

DELETE /d2l/api/le/(version)/(orgUnitId)/dropbox/folders/(folderId)/specialaccess/(userId)

Delete the special access rule for a user in a specified dropbox folder.

Parameters:
  • version (D2LVERSION) – API version.

  • orgUnitId (D2LID) – Org unit ID.

  • folderId (D2LID) – Folder ID for the specific dropbox folder.

  • userId (D2LID) – User ID.

Oauth2 Scopes:

dropbox:folders:delete

Status Codes:
API Versions:
  • 1.67+ – Route first appears in LMS v20.23.1.

  • 1.61-66Deprecated as of LMS v20.24.1.

  • 1.60-Obsolete as of LMS v20.24.1.

GET /d2l/api/le/(version)/(orgUnitId)/dropbox/folders/(folderId)/specialaccess/

Retrieve special access rules for users in a specified dropbox folder.

Parameters:
  • version (D2LVERSION) – API version.

  • orgUnitId (D2LID) – Org unit ID.

  • folderId (D2LID) – Folder ID for the specific dropbox folder.

Oauth2 Scopes:

dropbox:folders:read

Status Codes:
API Versions:
  • 1.67+ – Route first appears in LMS v20.23.1.

  • 1.61-66Deprecated as of LMS v20.24.1.

  • 1.60-Obsolete as of LMS v20.24.1.

Return. This action returns an object list page containing the resulting SpecialAccessUserData blocks.

GET /d2l/api/le/(version)/(orgUnitId)/dropbox/folders/(folderId)/specialaccess/(userId)

Retrieve the special access rule for a user in a specified dropbox folder.

Parameters:
  • version (D2LVERSION) – API version.

  • orgUnitId (D2LID) – Org unit ID.

  • folderId (D2LID) – Folder ID for the specific dropbox folder.

  • userId (D2LID) – User ID.

Oauth2 Scopes:

dropbox:folders:read

Status Codes:
API Versions:
  • 1.67+ – Route first appears in LMS v20.23.1.

  • 1.61-66Deprecated as of LMS v20.24.1.

  • 1.60-Obsolete as of LMS v20.24.1.

Return. This action returns a SpecialAccessData JSON block.

PUT /d2l/api/le/(version)/(orgUnitId)/dropbox/folders/(folderId)/specialaccess/(userId)

Create or update a special access rule for a user in a dropbox folder.

Parameters:
  • version (D2LVERSION) – API version.

  • orgUnitId (D2LID) – Org unit ID.

  • folderId (D2LID) – Folder ID for the specific dropbox folder.

  • userId (D2LID) – User ID.

JSON Parameters:
Oauth2 Scopes:

dropbox:folders:write

Status Codes:
API Versions:
  • 1.67+ – Route first appears in LMS v20.23.1.

  • 1.61-66Deprecated as of LMS v20.24.1.

  • 1.60-Obsolete as of LMS v20.24.1.

«  Course competencies and objectives   ·  [   home  ·   reference  ·   community   |   search  ·   index   ·  routing table   ·  scopes table   ]   ·  Groups  »