Submissions

Formerly "Dropbox"
Submissions are uniquely identified by a Section ID, Grade Item ID, User ID, and Revision ID.

Table of Contents

Fields

Revision Item

Field Name Description Type Required
revision_id Revision ID

A unique identifier grouping a collection of items and representing a single students submission for a single assignment.

integer
created Created

The time the revision was submitted.

integer
late Late

Indicates whether or not this revision was turned in late.

integer
num_items Number of Items

The number of items associated with this revision.

integer
draft Draft

Whether or not the revision is a draft. A user can only have one active draft, and if they have an active draft they cannot create another revision until this draft is submitted or deleted.

integer {0,1}
body Content of Revision

The content of the Revision. This is expected in POST calls to dropbox/assignment_id/create. Otherwise it is not really used.

string

Operations

create

The {action} parameter dictates whether a revision with files attached is created, or a revision is created from text or HTML. Files the action is {file}, creation from text/html the action is {create}.

  • file action will create a submission from file IDs passed in as file attachments

  • create action will look for a <body> attribute in the request body. When using create, keep in mind a user can only have one active revision. If they try to POST a file revision, they will be denied. Also, if the <draft> flag is not set, the API will default to submitting this revision. If you would like it saved as a draft the <draft> flag must be set to TRUE.

  • File Uploads Accepted

This endpoint has changed as of 2/15/15. The existing endpoint is still available but no longer maintained:

POST https://api.schoology.com/v1/dropbox/{grade_item_id}/{action}
Path

POST https://api.schoology.com/v1/sections/{section_id}/submissions/{grade_item_id}/{action}

Content

none

Return

Revision items and drop item attachments if requested grouped by user

JSON
{
    "revision": [
        {
            "revision_id": 37,
            "uid": 48289,
            "created": 1389656715,
            "num_items": 1,
            "late": 0,
            "draft": 0,
            "attachments": {
                "files": {
                    "file": [
                        {
                            "id": 6035,
                            "type": "",
                            "title": "logo-1239021.jpg",
                            "filename": "logo-1239021.jpg",
                            "filesize": 3825,
                            "md5_checksum": "...",
                            "timestamp": 1389656715,
                            "filemime": "image\/jpeg",
                            "download_path": "http:\/\/...",
                            "extension": "jpg",
                            "converted_status": 4,
                            "converted_type": 3,
                            "dimensions": "",
                            "thumbnail": "http:\/\/...",
                            "thumbnail_dimensions": "120x90"
                        }
                    ]
                }
            }
        }
    ]
}
XML
<?xml version="1.0" encoding="utf-8" ?>
<result>
    <revision>
        <revision_id>37</revision_id>
        <uid>48289</uid>
        <created>1389656715</created>
        <num_items>1</num_items>
        <late>0</late>
        <draft>0</draft>
        <attachments>
            <files>
                <file>
                    <id>6035</id>
                    <type />
                    <title>logo-1239021.jpg</title>
                    <filename>logo-1239021.jpg</filename>
                    <filesize>3825</filesize>
                    <md5_checksum>...</md5_checksum>
                    <timestamp>1389656715</timestamp>
                    <filemime>image/jpeg</filemime>
                    <download_path>http:\/\/...</download_path>
                    <extension>jpg</extension>
                    <converted_status>4</converted_status>
                    <converted_type>3</converted_type>
                    <dimensions />
                    <thumbnail>http:\/\/...</thumbnail>
                    <thumbnail_dimensions>120x90</thumbnail_dimensions>
                </file>
            </files>
        </attachments>
    </revision>
</result>

list

All the Revisions for a requested grade item, sorted by the most recent revision and grouped by user. The following query strings can (optionally) be appended to the path to filter results:

  • with_attachments: retrieve attachments of this piece of content.
  • all_revisions: optional argument to get all revisions instead of just the most recent one. Accepts a boolean.

This endpoint has changed as of 2/15/15. The existing endpoint is still available but no longer maintained:

GET https://api.schoology.com/v1/dropbox/{grade_item_id}/
Path

GET https://api.schoology.com/v1/sections/{section_id}/submissions/{grade_item_id}/

Content

none

Return

Revision items and drop item attachments if requested grouped by user

JSON
{
    "revision": [
        {
            "revision_id": 2,
            "uid": 48289,
            "created": 1389654349,
            "num_items": 1,
            "late": 0,
            "draft": 0
        }
    ],
    "links": {
        "self": "http:\/\/...?start=0&limit=20"
    }
}
XML
<?xml version="1.0" encoding="utf-8" ?>
<result>
    <revision>
        <revision_id>2</revision_id>
        <uid>48289</uid>
        <created>1389654349</created>
        <num_items>1</num_items>
        <late>0</late>
        <draft>0</draft>
    </revision>
    <links>
        <self>http:\/\/...?start=0&amp;limit=20</self>
    </links>
</result>

view

Revisions for a given user for a given grade item, sorted by the most recent revision. The following query strings can (optionally) be appended to the path to filter results:

  • with_attachments: retrieve attachments of this piece of content.

This endpoint has changed as of 2/15/15. The existing endpoint is still available but no longer maintained:

GET https://api.schoology.com/v1/dropbox/{grade_item_id}/{user_id}
Path

GET https://api.schoology.com/v1/sections/{section_id}/submissions/{grade_item_id}/{user_id}

Content

none

Return

Revision items and drop item attachments if requested

JSON
{
    "revision": [
        {
            "revision_id": 1,
            "uid": 48289,
            "created": 1388424197,
            "num_items": 1,
            "late": 0,
            "draft": 0
        },
        {
            "revision_id": 2,
            "uid": 48289,
            "created": 1389654349,
            "num_items": 1,
            "late": 0,
            "draft": 0
        }
    ]
}
XML
<?xml version="1.0" encoding="utf-8" ?>
<result>
    <revision>
        <revision_id>1</revision_id>
        <uid>48289</uid>
        <created>1388424197</created>
        <num_items>1</num_items>
        <late>0</late>
        <draft>0</draft>
    </revision>
    <revision>
        <revision_id>2</revision_id>
        <uid>48289</uid>
        <created>1389654349</created>
        <num_items>1</num_items>
        <late>0</late>
        <draft>0</draft>
    </revision>
</result>

view

Specific revision for a given user for a given grade item. The following query strings can (optionally) be appended to the path to filter results:

  • with_attachments: retrieve attachments of this piece of content.

This endpoint has changed as of 2/15/15. The existing endpoint is still available but no longer maintained:

GET https://api.schoology.com/v1/dropbox/{grade_item_id}/{user_id}/revision/{revision_id}
Path

GET https://api.schoology.com/v1/sections/{section_id}/submissions/{grade_item_id}/{user_id}/revision/{revision_id}

Content

none

Return

Revision items and drop item attachments if requested

JSON
{
    "revision": [
        {
            "revision_id": 1,
            "uid": 48289,
            "created": 1388424197,
            "num_items": 1,
            "late": 0,
            "draft": 0
        }
    ]
}
XML
<?xml version="1.0" encoding="utf-8" ?>
<result>
    <revision>
        <revision_id>1</revision_id>
        <uid>48289</uid>
        <created>1388424197</created>
        <num_items>1</num_items>
        <late>0</late>
        <draft>0</draft>
    </revision>
</result>

delete

Delete assignment submission revision

This endpoint has changed as of 2/15/15. The existing endpoint is still available but no longer maintained:

DELETE https://api.schoology.com/v1/dropbox/{grade_item_id}/{user_id}/revision/{revision_id}
Path

DELETE https://api.schoology.com/v1/sections/{section_id}/submissions/{grade_item_id}/{user_id}/revision/{revision_id}

Content

none

Return

none

Operations - Submission Comments

list

View a list of submission comments for a given user and given grade item id in a section

This endpoint has changed as of 2/15/15. The existing endpoint is still available but no longer maintained:

GET https://api.schoology.com/v1/dropbox/{grade_item_id}/{user_id}/comments
Path

GET https://api.schoology.com/v1/sections/{section_id}/submissions/{grade_item_id}/{user_id}/comments

Content

none

Return

Submission comments

JSON
{
  "comment": [
    {
      "id": 1559,
      "uid": 29,
      "comment": "Revision 1 submitted",
      "created": 1424808366
    },
    {
      "id": 1561,
      "uid": 29,
      "comment": "Revision 2 submitted",
      "created": 1424808400
    },
    {
      "id": 1607,
      "uid": 7,
      "comment": "Nice work!",
      "created": 1425396600
    },
    {
      "id": 1609,
      "uid": 7,
      "comment": "Great improvement",
      "created": 1425396611
    }
  ],
  "total": 15,
  "links": {
    "self": "https:\/\/...?start=0&limit=20"
  }
}
XML
<?xml version="1.0" encoding="utf-8" ?>
<result>
	<comment>
		<id>1559</id>
		<uid>29</uid>
		<comment>Revision 1 submitted</comment>
		<created>1424808366</created>
	</comment>
	<comment>
		<id>1561</id>
		<uid>29</uid>
		<comment>Revision 2 submitted</comment>
		<created>1424808400</created>
	</comment>
	<comment>
		<id>1607</id>
		<uid>7</uid>
		<comment>Nice work!</comment>
		<created>1425396600</created>
	</comment>
	<comment>
		<id>1609</id>
		<uid>7</uid>
		<comment>Great improvement</comment>
		<created>1425396611</created>
	</comment>
	<total>15</total>
	<links>
		<self>https://...?start=0&amp;limit=20</self>
	</links>
</result>

view

View a specific submission comment for a given user and given grade item id in a section

This endpoint has changed as of 2/15/15. The existing endpoint is still available but no longer maintained:

GET https://api.schoology.com/v1/dropbox/{grade_item_id}/{user_id}/comments/{comment_id}
Path

GET https://api.schoology.com/v1/sections/{section_id}/submissions/{grade_item_id}/{user_id}/comments/{comment_id}

Content

none

Return

Submission comment

JSON
{
  "id": 1607,
  "uid": 7,
  "comment": "Nice work!",
  "created": 1425396600
}
XML
<?xml version="1.0" encoding="utf-8" ?>
<result>
	<id>1607</id>
	<uid>7</uid>
	<comment>Nice work!</comment>
	<created>1425396600</created>
</result>

delete

Delete a submission comment

This endpoint has changed as of 2/15/15. The existing endpoint is still available but no longer maintained:

DELETE https://api.schoology.com/v1/dropbox/{grade_item_id}/{user_id}/comments/{comment_id}
Path

DELETE https://api.schoology.com/v1/sections/{section_id}/submissions/{grade_item_id}/{user_id}/comments/{comment_id}

Content

none

Return

none