Developer Platform (January 2020)

Dropboxes (Folders, categories, submissions, feedback)

«  Course competencies and objectives   ·  [   home  ·   reference  ·   community   |   search  ·   index   ·  routing table   ·  scopes table   ]   ·  Grades (grade objects, categories, values, schemes)  »

Contents

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

COMPLETIONTYPE_T

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

Completion Type

Value

OnSubmission

0

DueDate

1

ManuallyByLearner

2

OnEvaluation

3

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": {  // the Availability property can also be null, instead of a composite
        "StartDate": <string:UTCDateTime>|null,
        "EndDate": <string:UTCDateTime>|null
    },
    "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:COMPLETIONTYPE_T>,
    "GradeItemId": <number:D2LID>|null  // Added with LE API 1.39 as of LE 20.19.11
}
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.

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
    },
    "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:COMPLETIONTYPE_T>|null,
    "GradeItemId": <number:D2LID>|null  // Added with LE API 1.39 as of LE 20.19.11
}
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.

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.

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,  // Added with LE API 1.35 as of LE 20.19.06
    "LastModifiedDate": <string:UTCDateTime>|null,  // Added with LE API 1.35 as of LE 20.19.06
}
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,  // Added with LE API 1.35 as of LE 20.19.06
    "LastModifiedDate": <string:UTCDateTime>|null,  // Added with LE API 1.35 as of LE 20.19.06
}
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  // Added with LE API 1.39 as of LE 20.19.11
}
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> }, ...
    ],
    "GradedSymbol": <string>|null  // Added with LE API 1.39 as of LE 20.19.11
}
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.

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
}
Submission.Comment

The Comment rich text property enclosed in a submission currently has a size limit of 4000 characters in the plain-text portion of the composite.

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
}

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).

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
  • 200 OK – Action successful.

  • 403 Forbidden – No permission to retrieve dropbox folder information.

API Versions
  • 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 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
  • 200 OK – Action successful.

  • 403 Forbidden – No permission to retrieve this folder’s information.

  • 404 Not Found – No such dropbox folder, or no such org unit.

API Versions
  • 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 DropboxFolder JSON block.

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
  • 200 OK – Action successful.

  • 404 Not Found – No such dropbox folder, or no such org unit, or no such file attachment.

API Versions
  • 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 file stream. This does not apply for link attachments.

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

Create a new dropbox folder in an org unit.

Parameters
Status Codes
API Versions
  • 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.

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.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.

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

Return. This action returns a DropboxFolder JSON block.

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.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 JSON array of OrgUnitCoreInfo structures to enumerate all the org units for which the current user context may provide feedback.

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.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 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/(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.

Status Codes
  • 200 OK – Action successful.

  • 403 Forbidden – No permission to see this folder’s submissions.

  • 404 Not Found – No such folder, or no such org unit, or no file attachment for this submission.

API Versions
  • 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 file stream containing the attachment file data.

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.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.

Input. The post’s multipart/mixed body should contain a JSON part encoding the submission’s descriptive comments in RichText (limited in size to 4000 characters or less in the plain-text portion), 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/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.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.

Input. The post’s multipart/mixed body should contain a JSON part encoding the submission’s descriptive comments in RichText (limited in size to 4000 characters or less in the plain-text portion), 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
  • 200 OK – Action successful.

  • 403 Forbidden – No permission to see this folder’s submissions.

  • 404 Not Found – No such dropbox folder, or no such submission, or no such file, or no such org unit.

API Versions
  • 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.

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
  • 200 OK – Action succeeded.

  • 403 Forbidden – No permission to delete the file attachment.

  • 404 Not Found – No such dropbox folder, or no such org unit, or no such file attachment.

API Versions
  • 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.

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
  • 200 OK – Action succeeded.

  • 403 Forbidden – No permission to see submitted files.

  • 404 Not Found – No such dropbox folder, or no such org unit, or no such entity.

API Versions
  • 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 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
  • 200 OK – Action succeeded.

  • 403 Forbidden – No permission to see submitted files.

  • 404 Not Found – No such dropbox folder, or no such org unit, or no such entity, or no such file attachment.

API Versions
  • 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 file stream containing the file attachment data.

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
  • 200 OK – Action succeeded.

  • 403 Forbidden – No permission to see submitted files, see or modify feedback.

  • 404 Not Found – No such dropbox folder, or no such org unit, or no such entity or entity type.

API Versions
  • 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.

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
  • 200 OK – Action succeeded.

  • 403 Forbidden – No permission to see (or modify) submitted files.

  • 404 Not Found – No such dropbox folder, or no such org unit, or no such entity.

API Versions
  • 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.

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
  • 200 OK – Request to initiate a resumable upload successfully received.

  • 403 Forbidden – No permission to see (or modify) submitted files.

  • 404 Not Found – No such dropbox folder, or no such org unit, or no such entity.

API Versions
  • 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.

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
  • 200 OK – Action succeeded.

  • 400 Bad Request – Action not supported for non-observational dropbox folders.

  • 403 Forbidden – No permission to modify feedback.

  • 404 Not Found – No such dropbox folder, or no such org unit, or no such file attachment.

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

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

  • 1.26-Obsolete as of LMS v20.20.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
  • 200 OK – Action successful.

  • 403 Forbidden – No permission to perform this action.

  • 404 Not Found – No such category exists for this org unit, or no such category.

API Versions
  • 1.35+ – Route first appears in LMS v20.19.06.

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

Retrieve all dropbox folder categories for the provided org unit.

Parameters
Status Codes
API Versions
  • 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 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
  • 200 OK – Action successful.

  • 403 Forbidden – No permission to perform this action.

  • 404 Not Found – No such category exists for this org unit, or no such category.

API Versions
  • 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 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.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.

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.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.

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

Return. This action retrieves a single DropboxCategory block.

«  Course competencies and objectives   ·  [   home  ·   reference  ·   community   |   search  ·   index   ·  routing table   ·  scopes table   ]   ·  Grades (grade objects, categories, values, schemes)  »