POST restapi/personal/assignments/{elementId}/assessments/v2

Submits an assessment for one or more students on a specific assignment. This endpoint is only accessible to users with evaluate permission (typically teachers).

Request Information

URI Parameters

NameDescriptionTypeAdditional information
elementId

The elementId for the assignment, unique within the customer scope.

integer

Required

Body Parameters

The assessment data to submit.

Itsolutions.Itslearning.Web.RestApi.Personal.Assignment.Requests.SubmitAssignmentAssessmentRequestV2
NameDescriptionTypeAdditional information
PersonIds

List of person Ids to submit the assessment for. If the list contains more than one person, the same assessment will be applied to all of them.

Collection of integer

None.

AssessmentItemId

Assessment scale item. Null when no scale is used. Null also means "no change".

integer

None.

AssessmentStatusItemId

Assessment status item. Null when the assignment uses simple statuses. Null also means "no change".

integer

None.

Feedback

Feedback from teacher, can contain HTML. Null to not change existing feedback, empty string to clear existing feedback.

string

None.

Score

Entered score value in case when ElementSettingsResponse.UseScore is true. Null means "no change", pass -1 to clear existing score.

decimal number

None.

TaskStatus

If this is passed, AssessmentStatusItemId will be ignored. Used when the assignment uses simple statuses. Null also means "no change".

Itslearning.RestApi.Entities.TaskStatus

None.

DeletedFileIds

List of assessment related file ids to be deleted.

Collection of integer

None.

NewFiles

List of temp files to add to the list of attached to assessment files.

Collection of Itsolutions.Itslearning.Web.RestApi.Personal.FileUpload.UploadedTempFile

None.

ModifiedFiles

List of assessment's modified files.

Collection of Itsolutions.Itslearning.Web.RestApi.Personal.FileUpload.ModifiedElementFileModel

None.

FilesInCloud

Files added to the cloud.

Collection of Itslearning.Web.UI.Controls.Uploaders.Metadata.FileInCloudMetadata

None.

Request Formats

application/json, text/json

Sample:
{
  "PersonIds": [
    1,
    2
  ],
  "AssessmentItemId": 1,
  "AssessmentStatusItemId": 1,
  "Feedback": "sample string 1",
  "Score": 1.1,
  "TaskStatus": "Unknown",
  "DeletedFileIds": [
    1,
    2
  ],
  "NewFiles": [
    {
      "FileRepoId": "sample string 1",
      "SignedFileRepoId": "sample string 2",
      "Name": "sample string 3",
      "MimeType": "sample string 4",
      "SourceType": 1,
      "IsTemplate": true
    },
    {
      "FileRepoId": "sample string 1",
      "SignedFileRepoId": "sample string 2",
      "Name": "sample string 3",
      "MimeType": "sample string 4",
      "SourceType": 1,
      "IsTemplate": true
    }
  ],
  "ModifiedFiles": [
    {
      "FileId": 1,
      "Name": "sample string 2"
    },
    {
      "FileId": 1,
      "Name": "sample string 2"
    }
  ],
  "FilesInCloud": [
    {
      "id": "sample string 1",
      "name": "sample string 2",
      "sourceType": 1,
      "mimeType": "sample string 3",
      "viewUrl": "sample string 4",
      "downloadUrl": "sample string 5",
      "editUrl": "sample string 6",
      "oAuthContext": {
        "oAuthToken": {
          "accessToken": {
            "value": "sample string 1",
            "expirationDateUtc": "2026-08-13T06:57:23Z"
          },
          "refreshToken": "sample string 1",
          "refreshTokenExpired": true
        },
        "oAuthUser": {
          "email": "sample string 1",
          "clientId": "sample string 2",
          "mustBeImpersonated": true
        }
      },
      "isTemplate": true,
      "isRegisteredWithCasper": true,
      "isSupportedByCasper": true,
      "PlagiarismReportUrl": "sample string 10"
    },
    {
      "id": "sample string 1",
      "name": "sample string 2",
      "sourceType": 1,
      "mimeType": "sample string 3",
      "viewUrl": "sample string 4",
      "downloadUrl": "sample string 5",
      "editUrl": "sample string 6",
      "oAuthContext": {
        "oAuthToken": {
          "accessToken": {
            "value": "sample string 1",
            "expirationDateUtc": "2026-08-13T06:57:23Z"
          },
          "refreshToken": "sample string 1",
          "refreshTokenExpired": true
        },
        "oAuthUser": {
          "email": "sample string 1",
          "clientId": "sample string 2",
          "mustBeImpersonated": true
        }
      },
      "isTemplate": true,
      "isRegisteredWithCasper": true,
      "isSupportedByCasper": true,
      "PlagiarismReportUrl": "sample string 10"
    }
  ]
}

application/xml, text/xml

Sample:
<SubmitAssignmentAssessmentRequestV2 xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Itsolutions.Itslearning.Web.RestApi.Personal.Assignment.Requests">
  <AssessmentItemId>1</AssessmentItemId>
  <AssessmentStatusItemId>1</AssessmentStatusItemId>
  <DeletedFileIds xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
    <d2p1:int>1</d2p1:int>
    <d2p1:int>2</d2p1:int>
  </DeletedFileIds>
  <Feedback>sample string 1</Feedback>
  <FilesInCloud xmlns:d2p1="http://schemas.datacontract.org/2004/07/Itslearning.Web.UI.Controls.Uploaders.Metadata">
    <d2p1:FileInCloudMetadata>
      <d2p1:DownloadUrl>sample string 5</d2p1:DownloadUrl>
      <d2p1:EditUrl>sample string 6</d2p1:EditUrl>
      <d2p1:Id>sample string 1</d2p1:Id>
      <d2p1:IsRegisteredWithCasper>true</d2p1:IsRegisteredWithCasper>
      <d2p1:IsSupportedByCasper>true</d2p1:IsSupportedByCasper>
      <d2p1:IsTemplate>true</d2p1:IsTemplate>
      <d2p1:MimeType>sample string 3</d2p1:MimeType>
      <d2p1:Name>sample string 2</d2p1:Name>
      <d2p1:OAuthContext xmlns:d4p1="http://schemas.datacontract.org/2004/07/Itslearning.Web.UI.Controls.Uploaders.Authorisation">
        <d4p1:OAuthToken>
          <d4p1:AccessToken>
            <d4p1:ExpirationDateUtc>2026-08-13T06:57:23Z</d4p1:ExpirationDateUtc>
            <d4p1:Value>sample string 1</d4p1:Value>
          </d4p1:AccessToken>
          <d4p1:RefreshToken>sample string 1</d4p1:RefreshToken>
          <d4p1:RefreshTokenExpired>true</d4p1:RefreshTokenExpired>
        </d4p1:OAuthToken>
        <d4p1:OAuthUser>
          <d4p1:ClientId>sample string 2</d4p1:ClientId>
          <d4p1:Email>sample string 1</d4p1:Email>
          <d4p1:MustBeImpersonated>true</d4p1:MustBeImpersonated>
        </d4p1:OAuthUser>
      </d2p1:OAuthContext>
      <d2p1:PlagiarismReportUrl>sample string 10</d2p1:PlagiarismReportUrl>
      <d2p1:SourceType>Dropbox</d2p1:SourceType>
      <d2p1:ViewUrl>sample string 4</d2p1:ViewUrl>
    </d2p1:FileInCloudMetadata>
    <d2p1:FileInCloudMetadata>
      <d2p1:DownloadUrl>sample string 5</d2p1:DownloadUrl>
      <d2p1:EditUrl>sample string 6</d2p1:EditUrl>
      <d2p1:Id>sample string 1</d2p1:Id>
      <d2p1:IsRegisteredWithCasper>true</d2p1:IsRegisteredWithCasper>
      <d2p1:IsSupportedByCasper>true</d2p1:IsSupportedByCasper>
      <d2p1:IsTemplate>true</d2p1:IsTemplate>
      <d2p1:MimeType>sample string 3</d2p1:MimeType>
      <d2p1:Name>sample string 2</d2p1:Name>
      <d2p1:OAuthContext xmlns:d4p1="http://schemas.datacontract.org/2004/07/Itslearning.Web.UI.Controls.Uploaders.Authorisation">
        <d4p1:OAuthToken>
          <d4p1:AccessToken>
            <d4p1:ExpirationDateUtc>2026-08-13T06:57:23Z</d4p1:ExpirationDateUtc>
            <d4p1:Value>sample string 1</d4p1:Value>
          </d4p1:AccessToken>
          <d4p1:RefreshToken>sample string 1</d4p1:RefreshToken>
          <d4p1:RefreshTokenExpired>true</d4p1:RefreshTokenExpired>
        </d4p1:OAuthToken>
        <d4p1:OAuthUser>
          <d4p1:ClientId>sample string 2</d4p1:ClientId>
          <d4p1:Email>sample string 1</d4p1:Email>
          <d4p1:MustBeImpersonated>true</d4p1:MustBeImpersonated>
        </d4p1:OAuthUser>
      </d2p1:OAuthContext>
      <d2p1:PlagiarismReportUrl>sample string 10</d2p1:PlagiarismReportUrl>
      <d2p1:SourceType>Dropbox</d2p1:SourceType>
      <d2p1:ViewUrl>sample string 4</d2p1:ViewUrl>
    </d2p1:FileInCloudMetadata>
  </FilesInCloud>
  <ModifiedFiles xmlns:d2p1="http://schemas.datacontract.org/2004/07/Itsolutions.Itslearning.Web.RestApi.Personal.FileUpload">
    <d2p1:ModifiedElementFileModel>
      <d2p1:FileId>1</d2p1:FileId>
      <d2p1:Name>sample string 2</d2p1:Name>
    </d2p1:ModifiedElementFileModel>
    <d2p1:ModifiedElementFileModel>
      <d2p1:FileId>1</d2p1:FileId>
      <d2p1:Name>sample string 2</d2p1:Name>
    </d2p1:ModifiedElementFileModel>
  </ModifiedFiles>
  <NewFiles xmlns:d2p1="http://schemas.datacontract.org/2004/07/Itsolutions.Itslearning.Web.RestApi.Personal.FileUpload">
    <d2p1:UploadedTempFile>
      <d2p1:FileRepoId>sample string 1</d2p1:FileRepoId>
      <d2p1:IsTemplate>true</d2p1:IsTemplate>
      <d2p1:MimeType>sample string 4</d2p1:MimeType>
      <d2p1:Name>sample string 3</d2p1:Name>
      <d2p1:SignedFileRepoId>sample string 2</d2p1:SignedFileRepoId>
      <d2p1:SourceType>Dropbox</d2p1:SourceType>
    </d2p1:UploadedTempFile>
    <d2p1:UploadedTempFile>
      <d2p1:FileRepoId>sample string 1</d2p1:FileRepoId>
      <d2p1:IsTemplate>true</d2p1:IsTemplate>
      <d2p1:MimeType>sample string 4</d2p1:MimeType>
      <d2p1:Name>sample string 3</d2p1:Name>
      <d2p1:SignedFileRepoId>sample string 2</d2p1:SignedFileRepoId>
      <d2p1:SourceType>Dropbox</d2p1:SourceType>
    </d2p1:UploadedTempFile>
  </NewFiles>
  <PersonIds xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
    <d2p1:int>1</d2p1:int>
    <d2p1:int>2</d2p1:int>
  </PersonIds>
  <Score>1.1</Score>
  <TaskStatus>Unknown</TaskStatus>
</SubmitAssignmentAssessmentRequestV2>

application/x-www-form-urlencoded

Sample:
No sample available

Response Information

Resource Description

containing the assessment results for each person.

Itsolutions.Itslearning.Web.RestApi.Personal.Element.Responses.SubmitElementAssessmentResponse
NameDescriptionTypeAdditional information
Results

Collection of Itsolutions.Itslearning.Web.RestApi.Personal.Element.Responses.ElementAssessmentResult

None.

Feedback

Text to be displayed in view content block mode. Video and plugin content is preprocessed.

string

None.

Response Formats

application/json, text/json

Sample:
{
  "Results": [
    {
      "PersonId": 1,
      "AssessmentItemId": 1,
      "AssessmentStatusItemId": 1,
      "IsFeedbackChanged": true,
      "Score": 1.1,
      "TaskStatus": "Unknown"
    },
    {
      "PersonId": 1,
      "AssessmentItemId": 1,
      "AssessmentStatusItemId": 1,
      "IsFeedbackChanged": true,
      "Score": 1.1,
      "TaskStatus": "Unknown"
    }
  ],
  "Feedback": "sample string 1"
}

application/xml, text/xml

Sample:
<SubmitElementAssessmentResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Itsolutions.Itslearning.Web.RestApi.Personal.Element.Responses">
  <Feedback>sample string 1</Feedback>
  <Results>
    <ElementAssessmentResult>
      <AssessmentItemId>1</AssessmentItemId>
      <AssessmentStatusItemId>1</AssessmentStatusItemId>
      <IsFeedbackChanged>true</IsFeedbackChanged>
      <PersonId>1</PersonId>
      <Score>1.1</Score>
      <TaskStatus>Unknown</TaskStatus>
    </ElementAssessmentResult>
    <ElementAssessmentResult>
      <AssessmentItemId>1</AssessmentItemId>
      <AssessmentStatusItemId>1</AssessmentStatusItemId>
      <IsFeedbackChanged>true</IsFeedbackChanged>
      <PersonId>1</PersonId>
      <Score>1.1</Score>
      <TaskStatus>Unknown</TaskStatus>
    </ElementAssessmentResult>
  </Results>
</SubmitElementAssessmentResponse>